diff --git a/.vitepress/modelApiReferenceSidebar.generated.ts b/.vitepress/modelApiReferenceSidebar.generated.ts index 7d499a18..2a909f74 100644 --- a/.vitepress/modelApiReferenceSidebar.generated.ts +++ b/.vitepress/modelApiReferenceSidebar.generated.ts @@ -5,32 +5,32 @@ export const platformApiReferencePlatforms = [ { "text": "YouTube", "slug": "youtube", - "operationCount": 38 + "operationCount": 33 }, { "text": "TikTok", "slug": "tiktok", - "operationCount": 160 + "operationCount": 144 }, { "text": "Instagram", "slug": "instagram", - "operationCount": 93 + "operationCount": 81 }, { "text": "DataForSEO", "slug": "dataforseo", - "operationCount": 86 + "operationCount": 74 }, { "text": "Agent Body", "slug": "agentbody", - "operationCount": 9 + "operationCount": 6 }, { "text": "Bilibili", "slug": "bilibili", - "operationCount": 41 + "operationCount": 38 }, { "text": "Cloudsway", @@ -40,7 +40,7 @@ export const platformApiReferencePlatforms = [ { "text": "Douyin", "slug": "douyin", - "operationCount": 309 + "operationCount": 262 }, { "text": "Exa", @@ -55,7 +55,7 @@ export const platformApiReferencePlatforms = [ { "text": "Kuaishou", "slug": "kuaishou", - "operationCount": 38 + "operationCount": 36 }, { "text": "Lemon8", @@ -80,7 +80,7 @@ export const platformApiReferencePlatforms = [ { "text": "Reddit", "slug": "reddit", - "operationCount": 27 + "operationCount": 24 }, { "text": "SandBase", @@ -90,7 +90,7 @@ export const platformApiReferencePlatforms = [ { "text": "Scholar", "slug": "scholar", - "operationCount": 4 + "operationCount": 3 }, { "text": "Tavily", @@ -102,15 +102,10 @@ export const platformApiReferencePlatforms = [ "slug": "telegram", "operationCount": 7 }, - { - "text": "Temp Mail", - "slug": "temp-mail", - "operationCount": 3 - }, { "text": "Threads", "slug": "threads", - "operationCount": 11 + "operationCount": 9 }, { "text": "Toutiao", @@ -130,7 +125,7 @@ export const platformApiReferencePlatforms = [ { "text": "WeChat MP", "slug": "wechat-mp", - "operationCount": 9 + "operationCount": 8 }, { "text": "WeChat Search", @@ -140,17 +135,17 @@ export const platformApiReferencePlatforms = [ { "text": "Weibo", "slug": "weibo", - "operationCount": 64 + "operationCount": 52 }, { "text": "Xiaohongshu", "slug": "xiaohongshu", - "operationCount": 36 + "operationCount": 34 }, { "text": "Xigua", "slug": "xigua", - "operationCount": 7 + "operationCount": 6 }, { "text": "Zhihu", @@ -171,76 +166,40 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "OpenAI", collapsed: true, items: [ + { text: "GPT-6.1 Sol Pro", link: "/model-api-reference/llm-models/openai/gpt-6.1-sol-pro" }, + { text: "GPT-6.1 Sol", link: "/model-api-reference/llm-models/openai/gpt-6.1-sol" }, + { text: "GPT-6 Luna Pro", link: "/model-api-reference/llm-models/openai/gpt-6-luna-pro" }, + { text: "GPT-6 Luna", link: "/model-api-reference/llm-models/openai/gpt-6-luna" }, + { text: "GPT-6 Sol Pro", link: "/model-api-reference/llm-models/openai/gpt-6-sol-pro" }, + { text: "GPT-6 Sol", link: "/model-api-reference/llm-models/openai/gpt-6-sol" }, { text: "GPT-6 Astra", link: "/model-api-reference/llm-models/openai/gpt-6-astra" }, + { text: "GPT-6 Astra Pro", link: "/model-api-reference/llm-models/openai/gpt-6-astra-pro" }, { text: "GPT-5.6 Luna Pro", link: "/model-api-reference/llm-models/openai/gpt-5.6-luna-pro" }, { text: "GPT-5.6 Luna", link: "/model-api-reference/llm-models/openai/gpt-5.6-luna" }, { text: "GPT-5.6 Terra Pro", link: "/model-api-reference/llm-models/openai/gpt-5.6-terra-pro" }, { text: "GPT-5.6 Terra", link: "/model-api-reference/llm-models/openai/gpt-5.6-terra" }, { text: "GPT-5.6 Sol Pro", link: "/model-api-reference/llm-models/openai/gpt-5.6-sol-pro" }, { text: "GPT-5.6 Sol", link: "/model-api-reference/llm-models/openai/gpt-5.6-sol" }, - { text: "GPT Chat Latest", link: "/model-api-reference/llm-models/openai/gpt-chat-latest" }, { text: "GPT-5.5 Pro", link: "/model-api-reference/llm-models/openai/gpt-5.5-pro" }, { text: "GPT-5.5", link: "/model-api-reference/llm-models/openai/gpt-5.5" }, - { text: "GPT-5.4 Image 2", link: "/model-api-reference/llm-models/openai/gpt-5.4-image-2" }, { text: "GPT-5.4 Nano", link: "/model-api-reference/llm-models/openai/gpt-5.4-nano" }, { text: "GPT-5.4 Mini", link: "/model-api-reference/llm-models/openai/gpt-5.4-mini" }, - { text: "GPT-5.4 Pro", link: "/model-api-reference/llm-models/openai/gpt-5.4-pro" }, { text: "GPT-5.4", link: "/model-api-reference/llm-models/openai/gpt-5.4" }, - { text: "GPT-5.3 Chat", link: "/model-api-reference/llm-models/openai/gpt-5.3-chat" }, { text: "GPT-5.3-Codex", link: "/model-api-reference/llm-models/openai/gpt-5.3-codex" }, - { text: "GPT Audio", link: "/model-api-reference/llm-models/openai/gpt-audio" }, - { text: "GPT Audio Mini", link: "/model-api-reference/llm-models/openai/gpt-audio-mini" }, - { text: "GPT-5.2-Codex", link: "/model-api-reference/llm-models/openai/gpt-5.2-codex" }, - { text: "GPT-5.2 Chat", link: "/model-api-reference/llm-models/openai/gpt-5.2-chat" }, - { text: "GPT-5.2 Pro", link: "/model-api-reference/llm-models/openai/gpt-5.2-pro" }, { text: "GPT-5.2", link: "/model-api-reference/llm-models/openai/gpt-5.2" }, - { text: "GPT-5.1-Codex-Max", link: "/model-api-reference/llm-models/openai/gpt-5.1-codex-max" }, { text: "GPT-5.1", link: "/model-api-reference/llm-models/openai/gpt-5.1" }, - { text: "GPT-5.1 Chat", link: "/model-api-reference/llm-models/openai/gpt-5.1-chat" }, { text: "GPT-5.1-Codex", link: "/model-api-reference/llm-models/openai/gpt-5.1-codex" }, - { text: "GPT-5.1-Codex-Mini", link: "/model-api-reference/llm-models/openai/gpt-5.1-codex-mini" }, - { text: "gpt-oss-safeguard-20b", link: "/model-api-reference/llm-models/openai/gpt-oss-safeguard-20b" }, - { text: "GPT-5 Image Mini", link: "/model-api-reference/llm-models/openai/gpt-5-image-mini" }, - { text: "GPT-5 Image", link: "/model-api-reference/llm-models/openai/gpt-5-image" }, - { text: "o3 Deep Research", link: "/model-api-reference/llm-models/openai/o3-deep-research" }, - { text: "o4 Mini Deep Research", link: "/model-api-reference/llm-models/openai/o4-mini-deep-research" }, - { text: "GPT-5 Pro", link: "/model-api-reference/llm-models/openai/gpt-5-pro" }, - { text: "GPT-5 Codex", link: "/model-api-reference/llm-models/openai/gpt-5-codex" }, - { text: "GPT-4o Audio", link: "/model-api-reference/llm-models/openai/gpt-4o-audio-preview" }, - { text: "GPT-5 Chat", link: "/model-api-reference/llm-models/openai/gpt-5-chat" }, { text: "GPT-5", link: "/model-api-reference/llm-models/openai/gpt-5" }, { text: "GPT-5 Mini", link: "/model-api-reference/llm-models/openai/gpt-5-mini" }, - { text: "GPT-5 Nano", link: "/model-api-reference/llm-models/openai/gpt-5-nano" }, { text: "gpt-oss-120b", link: "/model-api-reference/llm-models/openai/gpt-oss-120b" }, - { text: "gpt-oss-20b", link: "/model-api-reference/llm-models/openai/gpt-oss-20b" }, - { text: "o3 Pro", link: "/model-api-reference/llm-models/openai/o3-pro" }, - { text: "o4 Mini High", link: "/model-api-reference/llm-models/openai/o4-mini-high" }, - { text: "o3", link: "/model-api-reference/llm-models/openai/o3" }, - { text: "o4 Mini", link: "/model-api-reference/llm-models/openai/o4-mini" }, { text: "GPT-4.1", link: "/model-api-reference/llm-models/openai/gpt-4.1" }, { text: "GPT-4.1 Mini", link: "/model-api-reference/llm-models/openai/gpt-4.1-mini" }, { text: "GPT-4.1 Nano", link: "/model-api-reference/llm-models/openai/gpt-4.1-nano" }, - { text: "o1-pro", link: "/model-api-reference/llm-models/openai/o1-pro" }, - { text: "GPT-4o-mini Search Preview", link: "/model-api-reference/llm-models/openai/gpt-4o-mini-search-preview" }, - { text: "GPT-4o Search Preview", link: "/model-api-reference/llm-models/openai/gpt-4o-search-preview" }, - { text: "o3 Mini High", link: "/model-api-reference/llm-models/openai/o3-mini-high" }, - { text: "o3 Mini", link: "/model-api-reference/llm-models/openai/o3-mini" }, - { text: "o1", link: "/model-api-reference/llm-models/openai/o1" }, { text: "GPT-4o (2024-11-20)", link: "/model-api-reference/llm-models/openai/gpt-4o-2024-11-20" }, { text: "GPT-4o (2024-08-06)", link: "/model-api-reference/llm-models/openai/gpt-4o-2024-08-06" }, { text: "GPT-4o-mini", link: "/model-api-reference/llm-models/openai/gpt-4o-mini" }, - { text: "GPT-4o-mini (2024-07-18)", link: "/model-api-reference/llm-models/openai/gpt-4o-mini-2024-07-18" }, { text: "GPT-4o", link: "/model-api-reference/llm-models/openai/gpt-4o" }, { text: "GPT-4o (2024-05-13)", link: "/model-api-reference/llm-models/openai/gpt-4o-2024-05-13" }, - { text: "GPT-4 Turbo", link: "/model-api-reference/llm-models/openai/gpt-4-turbo" }, - { text: "GPT-3.5 Turbo (older v0613)", link: "/model-api-reference/llm-models/openai/gpt-3.5-turbo-0613" }, - { text: "GPT-4 Turbo Preview", link: "/model-api-reference/llm-models/openai/gpt-4-turbo-preview" }, - { text: "GPT-4 Turbo (older v1106)", link: "/model-api-reference/llm-models/openai/gpt-4-1106-preview" }, - { text: "GPT-3.5 Turbo Instruct", link: "/model-api-reference/llm-models/openai/gpt-3.5-turbo-instruct" }, - { text: "GPT-3.5 Turbo 16k", link: "/model-api-reference/llm-models/openai/gpt-3.5-turbo-16k" }, - { text: "GPT-3.5 Turbo", link: "/model-api-reference/llm-models/openai/gpt-3.5-turbo" }, - { text: "GPT-4", link: "/model-api-reference/llm-models/openai/gpt-4" }, - { text: "GPT-4 (older v0314)", link: "/model-api-reference/llm-models/openai/gpt-4-0314" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -248,27 +207,22 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "Anthropic", collapsed: true, items: [ + { text: "Claude Haiku 5.5", link: "/model-api-reference/llm-models/anthropic/claude-haiku-5.5" }, + { text: "Claude Sonnet 5.5", link: "/model-api-reference/llm-models/anthropic/claude-sonnet-5.5" }, + { text: "Claude Opus 5.5", link: "/model-api-reference/llm-models/anthropic/claude-opus-5.5" }, { text: "Claude Fable 5.1", link: "/model-api-reference/llm-models/anthropic/claude-fable-5.1" }, { text: "Claude Opus 5", link: "/model-api-reference/llm-models/anthropic/claude-opus-5" }, { text: "Claude Sonnet 5", link: "/model-api-reference/llm-models/anthropic/claude-sonnet-5" }, { text: "Claude Fable 5", link: "/model-api-reference/llm-models/anthropic/claude-fable-5" }, - { text: "Claude Opus 4.8 (Fast)", link: "/model-api-reference/llm-models/anthropic/claude-opus-4.8-fast" }, { text: "Claude Opus 4.8", link: "/model-api-reference/llm-models/anthropic/claude-opus-4.8" }, - { text: "Claude Opus 4.7 (Fast)", link: "/model-api-reference/llm-models/anthropic/claude-opus-4.7-fast" }, { text: "Claude Opus 4.7", link: "/model-api-reference/llm-models/anthropic/claude-opus-4.7" }, - { text: "Claude Opus 4.6 (Fast)", link: "/model-api-reference/llm-models/anthropic/claude-opus-4.6-fast" }, { text: "Claude Sonnet 4.6", link: "/model-api-reference/llm-models/anthropic/claude-sonnet-4.6" }, { text: "Claude Opus 4.6", link: "/model-api-reference/llm-models/anthropic/claude-opus-4.6" }, { text: "Claude Opus 4.5", link: "/model-api-reference/llm-models/anthropic/claude-opus-4.5" }, { text: "Claude Haiku 4.5", link: "/model-api-reference/llm-models/anthropic/claude-haiku-4.5" }, { text: "Claude Sonnet 4.5", link: "/model-api-reference/llm-models/anthropic/claude-sonnet-4.5" }, { text: "Claude Opus 4.1", link: "/model-api-reference/llm-models/anthropic/claude-opus-4.1" }, - { text: "Claude Opus 4", link: "/model-api-reference/llm-models/anthropic/claude-opus-4" }, - { text: "Claude Sonnet 4", link: "/model-api-reference/llm-models/anthropic/claude-sonnet-4" }, - { text: "Claude 3.7 Sonnet", link: "/model-api-reference/llm-models/anthropic/claude-3.7-sonnet" }, - { text: "Claude 3.7 Sonnet (thinking)", link: "/model-api-reference/llm-models/anthropic/claude-3.7-sonnet-thinking" }, - { text: "Claude 3.5 Haiku", link: "/model-api-reference/llm-models/anthropic/claude-3.5-haiku" }, - { text: "Claude 3 Haiku", link: "/model-api-reference/llm-models/anthropic/claude-3-haiku" }, + { text: "Claude Fable 5.5", link: "/model-api-reference/llm-models/anthropic/claude-fable-5.5" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -276,37 +230,23 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "Google", collapsed: true, items: [ + { text: "Nano Banana 2.1 (Gemini Nano Banana 2.1)", link: "/model-api-reference/llm-models/google/gemini-nano-banana-2.1" }, + { text: "Gemini 4 Argon", link: "/model-api-reference/llm-models/google/gemini-4-argon" }, { text: "Gemini 3.8 Flash", link: "/model-api-reference/llm-models/google/gemini-3.8-flash" }, { text: "Gemini 3.7 Flash", link: "/model-api-reference/llm-models/google/gemini-3.7-flash" }, - { text: "Gemini 3.5 Flash Lite", link: "/model-api-reference/llm-models/google/gemini-3.5-flash-lite" }, { text: "Gemini 3.6 Flash", link: "/model-api-reference/llm-models/google/gemini-3.6-flash" }, + { text: "Gemini 3.5 Flash Lite", link: "/model-api-reference/llm-models/google/gemini-3.5-flash-lite" }, { text: "Nano Banana 2 (Gemini 3.1 Flash Image)", link: "/model-api-reference/llm-models/google/gemini-3.1-flash-image" }, { text: "Nano Banana Pro (Gemini 3 Pro Image)", link: "/model-api-reference/llm-models/google/gemini-3-pro-image" }, { text: "Gemini 3.5 Flash", link: "/model-api-reference/llm-models/google/gemini-3.5-flash" }, { text: "Gemini 3.1 Flash Lite", link: "/model-api-reference/llm-models/google/gemini-3.1-flash-lite" }, - { text: "Gemma 4 26B A4B", link: "/model-api-reference/llm-models/google/gemma-4-26b-a4b-it" }, - { text: "Gemma 4 31B", link: "/model-api-reference/llm-models/google/gemma-4-31b-it" }, - { text: "Lyria 3 Pro Preview", link: "/model-api-reference/llm-models/google/lyria-3-pro-preview" }, - { text: "Lyria 3 Clip Preview", link: "/model-api-reference/llm-models/google/lyria-3-clip-preview" }, { text: "Gemini 3.1 Flash Lite Preview", link: "/model-api-reference/llm-models/google/gemini-3.1-flash-lite-preview" }, - { text: "Nano Banana 2 (Gemini 3.1 Flash Image Preview)", link: "/model-api-reference/llm-models/google/gemini-3.1-flash-image-preview" }, { text: "Gemini 3.1 Pro Preview Custom Tools", link: "/model-api-reference/llm-models/google/gemini-3.1-pro-preview-customtools" }, { text: "Gemini 3.1 Pro Preview", link: "/model-api-reference/llm-models/google/gemini-3.1-pro-preview" }, { text: "Gemini 3 Flash Preview", link: "/model-api-reference/llm-models/google/gemini-3-flash-preview" }, - { text: "Nano Banana Pro (Gemini 3 Pro Image Preview)", link: "/model-api-reference/llm-models/google/gemini-3-pro-image-preview" }, - { text: "Nano Banana (Gemini 2.5 Flash Image)", link: "/model-api-reference/llm-models/google/gemini-2.5-flash-image" }, - { text: "Gemini 2.5 Flash Lite Preview 09-2025", link: "/model-api-reference/llm-models/google/gemini-2.5-flash-lite-preview-09-2025" }, { text: "Gemini 2.5 Flash Lite", link: "/model-api-reference/llm-models/google/gemini-2.5-flash-lite" }, { text: "Gemini 2.5 Flash", link: "/model-api-reference/llm-models/google/gemini-2.5-flash" }, { text: "Gemini 2.5 Pro", link: "/model-api-reference/llm-models/google/gemini-2.5-pro" }, - { text: "Gemini 2.5 Pro Preview 06-05", link: "/model-api-reference/llm-models/google/gemini-2.5-pro-preview" }, - { text: "Gemma 3n 4B", link: "/model-api-reference/llm-models/google/gemma-3n-e4b-it" }, - { text: "Gemini 2.5 Pro Preview 05-06", link: "/model-api-reference/llm-models/google/gemini-2.5-pro-preview-05-06" }, - { text: "Gemma 3 4B", link: "/model-api-reference/llm-models/google/gemma-3-4b-it" }, - { text: "Gemma 3 12B", link: "/model-api-reference/llm-models/google/gemma-3-12b-it" }, - { text: "Gemma 3 27B", link: "/model-api-reference/llm-models/google/gemma-3-27b-it" }, - { text: "Gemini 2.0 Flash Lite", link: "/model-api-reference/llm-models/google/gemini-2.0-flash-lite-001" }, - { text: "Gemma 2 27B", link: "/model-api-reference/llm-models/google/gemma-2-27b-it" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -316,19 +256,11 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ items: [ { text: "DeepSeek V4.1 Flash", link: "/model-api-reference/llm-models/deepseek/deepseek-v4.1-flash" }, { text: "DeepSeek V4 Flash Vision Exp (Experimental)", link: "/model-api-reference/llm-models/deepseek/deepseek-v4-flash-vision-exp" }, + { text: "DeepSeek V4 Pro 0813", link: "/model-api-reference/llm-models/deepseek/deepseek-v4-pro-0813" }, { text: "DeepSeek V4 Flash 0731", link: "/model-api-reference/llm-models/deepseek/deepseek-v4-flash-0731" }, { text: "DeepSeek V4 Pro", link: "/model-api-reference/llm-models/deepseek/deepseek-v4-pro" }, { text: "DeepSeek V4 Flash", link: "/model-api-reference/llm-models/deepseek/deepseek-v4-flash" }, - { text: "DeepSeek V3.2 Speciale", link: "/model-api-reference/llm-models/deepseek/deepseek-v3.2-speciale" }, { text: "DeepSeek V3.2", link: "/model-api-reference/llm-models/deepseek/deepseek-v3.2" }, - { text: "DeepSeek V3.2 Exp", link: "/model-api-reference/llm-models/deepseek/deepseek-v3.2-exp" }, - { text: "DeepSeek V3.1 Terminus", link: "/model-api-reference/llm-models/deepseek/deepseek-v3.1-terminus" }, - { text: "DeepSeek V3.1", link: "/model-api-reference/llm-models/deepseek/deepseek-chat-v3.1" }, - { text: "R1 0528", link: "/model-api-reference/llm-models/deepseek/deepseek-r1-0528" }, - { text: "DeepSeek V3 0324", link: "/model-api-reference/llm-models/deepseek/deepseek-chat-v3-0324" }, - { text: "R1 Distill Qwen 32B", link: "/model-api-reference/llm-models/deepseek/deepseek-r1-distill-qwen-32b" }, - { text: "R1 Distill Llama 70B", link: "/model-api-reference/llm-models/deepseek/deepseek-r1-distill-llama-70b" }, - { text: "R1", link: "/model-api-reference/llm-models/deepseek/deepseek-r1" }, { text: "DeepSeek V3", link: "/model-api-reference/llm-models/deepseek/deepseek-chat" }, ], }, @@ -337,61 +269,24 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "Alibaba", collapsed: true, items: [ + { text: "Qwen: Qwen3.8 Max Prime", link: "/model-api-reference/llm-models/alibaba/qwen3.8-max-prime" }, + { text: "Qwen: Qwen3.8 Omni Flash", link: "/model-api-reference/llm-models/alibaba/qwen3.8-omni-flash" }, + { text: "Qwen: Qwen3.8 Max (0902)", link: "/model-api-reference/llm-models/alibaba/qwen3.8-max-0902" }, { text: "Qwen: Qwen3.8 27B", link: "/model-api-reference/llm-models/alibaba/qwen3.8-27b" }, { text: "Qwen: Qwen3.8 2.4T A95B", link: "/model-api-reference/llm-models/alibaba/qwen3.8-2.4t-a95b" }, { text: "Qwen: Qwen3.8 Max", link: "/model-api-reference/llm-models/alibaba/qwen3.8-max" }, + { text: "Qwen: Qwen3.7 Flash", link: "/model-api-reference/llm-models/alibaba/qwen3.7-flash" }, { text: "Qwen: Qwen3.7 Plus", link: "/model-api-reference/llm-models/alibaba/qwen3.7-plus" }, { text: "Qwen: Qwen3.7 Max", link: "/model-api-reference/llm-models/alibaba/qwen3.7-max" }, - { text: "Qwen: Qwen3.5 Plus 2026-04-20", link: "/model-api-reference/llm-models/alibaba/qwen3.5-plus-20260420" }, - { text: "Qwen: Qwen3.6 Flash", link: "/model-api-reference/llm-models/alibaba/qwen3.6-flash" }, - { text: "Qwen: Qwen3.6 35B A3B", link: "/model-api-reference/llm-models/alibaba/qwen3.6-35b-a3b" }, - { text: "Qwen: Qwen3.6 Max Preview", link: "/model-api-reference/llm-models/alibaba/qwen3.6-max-preview" }, { text: "Qwen: Qwen3.6 27B", link: "/model-api-reference/llm-models/alibaba/qwen3.6-27b" }, { text: "Qwen: Qwen3.6 Plus", link: "/model-api-reference/llm-models/alibaba/qwen3.6-plus" }, - { text: "Qwen: Qwen3.5-9B", link: "/model-api-reference/llm-models/alibaba/qwen3.5-9b" }, { text: "Qwen: Qwen3.5-35B-A3B", link: "/model-api-reference/llm-models/alibaba/qwen3.5-35b-a3b" }, - { text: "Qwen: Qwen3.5-27B", link: "/model-api-reference/llm-models/alibaba/qwen3.5-27b" }, - { text: "Qwen: Qwen3.5-122B-A10B", link: "/model-api-reference/llm-models/alibaba/qwen3.5-122b-a10b" }, - { text: "Qwen: Qwen3.5-Flash", link: "/model-api-reference/llm-models/alibaba/qwen3.5-flash-02-23" }, - { text: "Qwen: Qwen3.5 Plus 2026-02-15", link: "/model-api-reference/llm-models/alibaba/qwen3.5-plus-02-15" }, - { text: "Qwen: Qwen3.5 397B A17B", link: "/model-api-reference/llm-models/alibaba/qwen3.5-397b-a17b" }, - { text: "Qwen: Qwen3 Max Thinking", link: "/model-api-reference/llm-models/alibaba/qwen3-max-thinking" }, - { text: "Qwen: Qwen3 Coder Next", link: "/model-api-reference/llm-models/alibaba/qwen3-coder-next" }, - { text: "Qwen: Qwen3 VL 32B Instruct", link: "/model-api-reference/llm-models/alibaba/qwen3-vl-32b-instruct" }, - { text: "Qwen: Qwen3 VL 8B Thinking", link: "/model-api-reference/llm-models/alibaba/qwen3-vl-8b-thinking" }, { text: "Qwen: Qwen3 VL 8B Instruct", link: "/model-api-reference/llm-models/alibaba/qwen3-vl-8b-instruct" }, - { text: "Qwen: Qwen3 VL 30B A3B Thinking", link: "/model-api-reference/llm-models/alibaba/qwen3-vl-30b-a3b-thinking" }, { text: "Qwen: Qwen3 VL 30B A3B Instruct", link: "/model-api-reference/llm-models/alibaba/qwen3-vl-30b-a3b-instruct" }, - { text: "Qwen: Qwen3 VL 235B A22B Thinking", link: "/model-api-reference/llm-models/alibaba/qwen3-vl-235b-a22b-thinking" }, { text: "Qwen: Qwen3 VL 235B A22B Instruct", link: "/model-api-reference/llm-models/alibaba/qwen3-vl-235b-a22b-instruct" }, - { text: "Qwen: Qwen3 Max", link: "/model-api-reference/llm-models/alibaba/qwen3-max" }, - { text: "Qwen: Qwen3 Coder Plus", link: "/model-api-reference/llm-models/alibaba/qwen3-coder-plus" }, - { text: "Tongyi DeepResearch 30B A3B", link: "/model-api-reference/llm-models/alibaba/tongyi-deepresearch-30b-a3b" }, - { text: "Qwen: Qwen3 Coder Flash", link: "/model-api-reference/llm-models/alibaba/qwen3-coder-flash" }, - { text: "Qwen: Qwen3 Next 80B A3B Thinking", link: "/model-api-reference/llm-models/alibaba/qwen3-next-80b-a3b-thinking" }, - { text: "Qwen: Qwen3 Next 80B A3B Instruct", link: "/model-api-reference/llm-models/alibaba/qwen3-next-80b-a3b-instruct" }, - { text: "Qwen: Qwen Plus 0728", link: "/model-api-reference/llm-models/alibaba/qwen-plus-2025-07-28" }, - { text: "Qwen: Qwen Plus 0728 (thinking)", link: "/model-api-reference/llm-models/alibaba/qwen-plus-2025-07-28-thinking" }, - { text: "Qwen: Qwen3 30B A3B Thinking 2507", link: "/model-api-reference/llm-models/alibaba/qwen3-30b-a3b-thinking-2507" }, - { text: "Qwen: Qwen3 Coder 30B A3B Instruct", link: "/model-api-reference/llm-models/alibaba/qwen3-coder-30b-a3b-instruct" }, - { text: "Qwen: Qwen3 30B A3B Instruct 2507", link: "/model-api-reference/llm-models/alibaba/qwen3-30b-a3b-instruct-2507" }, - { text: "Qwen: Qwen3 235B A22B Thinking 2507", link: "/model-api-reference/llm-models/alibaba/qwen3-235b-a22b-thinking-2507" }, - { text: "Qwen: Qwen3 Coder 480B A35B", link: "/model-api-reference/llm-models/alibaba/qwen3-coder" }, - { text: "Qwen: Qwen3 235B A22B Instruct 2507", link: "/model-api-reference/llm-models/alibaba/qwen3-235b-a22b-2507" }, - { text: "Qwen: Qwen VL Plus", link: "/model-api-reference/llm-models/alibaba/qwen-vl-plus" }, - { text: "Qwen: Qwen VL Max", link: "/model-api-reference/llm-models/alibaba/qwen-vl-max" }, - { text: "Qwen: Qwen3 30B A3B", link: "/model-api-reference/llm-models/alibaba/qwen3-30b-a3b" }, { text: "Qwen: Qwen3 8B", link: "/model-api-reference/llm-models/alibaba/qwen3-8b" }, - { text: "Qwen: Qwen3 14B", link: "/model-api-reference/llm-models/alibaba/qwen3-14b" }, { text: "Qwen: Qwen3 32B", link: "/model-api-reference/llm-models/alibaba/qwen3-32b" }, - { text: "Qwen: Qwen3 235B A22B", link: "/model-api-reference/llm-models/alibaba/qwen3-235b-a22b" }, { text: "Qwen: Qwen2.5 VL 72B Instruct", link: "/model-api-reference/llm-models/alibaba/qwen2.5-vl-72b-instruct" }, - { text: "Qwen: Qwen-Plus", link: "/model-api-reference/llm-models/alibaba/qwen-plus" }, - { text: "Qwen: Qwen-Turbo", link: "/model-api-reference/llm-models/alibaba/qwen-turbo" }, - { text: "Qwen2.5 Coder 32B Instruct", link: "/model-api-reference/llm-models/alibaba/qwen-2.5-coder-32b-instruct" }, - { text: "Qwen: Qwen2.5 7B Instruct", link: "/model-api-reference/llm-models/alibaba/qwen-2.5-7b-instruct" }, - { text: "Qwen: Qwen-Max", link: "/model-api-reference/llm-models/alibaba/qwen-max" }, - { text: "Qwen2.5 72B Instruct", link: "/model-api-reference/llm-models/alibaba/qwen-2.5-72b-instruct" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -399,18 +294,7 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "Meta", collapsed: true, items: [ - { text: "Llama Guard 4 12B", link: "/model-api-reference/llm-models/meta/llama-guard-4-12b" }, - { text: "Llama 4 Maverick", link: "/model-api-reference/llm-models/meta/llama-4-maverick" }, - { text: "Llama 4 Scout", link: "/model-api-reference/llm-models/meta/llama-4-scout" }, { text: "Llama 3.3 70B Instruct", link: "/model-api-reference/llm-models/meta/llama-3.3-70b-instruct" }, - { text: "Llama 3.2 11B Vision Instruct", link: "/model-api-reference/llm-models/meta/llama-3.2-11b-vision-instruct" }, - { text: "Llama 3.2 1B Instruct", link: "/model-api-reference/llm-models/meta/llama-3.2-1b-instruct" }, - { text: "Llama 3.2 3B Instruct", link: "/model-api-reference/llm-models/meta/llama-3.2-3b-instruct" }, - { text: "Llama 3.1 70B Instruct", link: "/model-api-reference/llm-models/meta/llama-3.1-70b-instruct" }, - { text: "Llama 3.1 8B Instruct", link: "/model-api-reference/llm-models/meta/llama-3.1-8b-instruct" }, - { text: "Llama Guard 3 8B", link: "/model-api-reference/llm-models/meta/llama-guard-3-8b" }, - { text: "Llama 3 70B Instruct", link: "/model-api-reference/llm-models/meta/llama-3-70b-instruct" }, - { text: "Llama 3 8B Instruct", link: "/model-api-reference/llm-models/meta/llama-3-8b-instruct" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -419,19 +303,6 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ collapsed: true, items: [ { text: "ByteDance: Seed-2.1-Pro", link: "/model-api-reference/llm-models/bytedance/seed-2.1-pro" }, - { text: "ByteDance: Seed-2.1-Turbo", link: "/model-api-reference/llm-models/bytedance/seed-2.1-turbo" }, - { text: "ByteDance: UI-TARS 7B", link: "/model-api-reference/llm-models/bytedance/ui-tars-1.5-7b" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "ByteDance Seed", - collapsed: true, - items: [ - { text: "ByteDance Seed: Seed-2.0-Lite", link: "/model-api-reference/llm-models/bytedance-seed/seed-2.0-lite" }, - { text: "ByteDance Seed: Seed-2.0-Mini", link: "/model-api-reference/llm-models/bytedance-seed/seed-2.0-mini" }, - { text: "ByteDance Seed: Seed 1.6 Flash", link: "/model-api-reference/llm-models/bytedance-seed/seed-1.6-flash" }, - { text: "ByteDance Seed: Seed 1.6", link: "/model-api-reference/llm-models/bytedance-seed/seed-1.6" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -439,264 +310,10 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "xAI", collapsed: true, items: [ + { text: "Grok 4.7", link: "/model-api-reference/llm-models/x-ai/grok-4.7" }, { text: "Grok 4.6", link: "/model-api-reference/llm-models/x-ai/grok-4.6" }, - { text: "Grok Build 0.1", link: "/model-api-reference/llm-models/x-ai/grok-build-0.1" }, + { text: "Grok 4.5", link: "/model-api-reference/llm-models/x-ai/grok-4.5" }, { text: "Grok 4.3", link: "/model-api-reference/llm-models/x-ai/grok-4.3" }, - { text: "Grok 4.20 Multi-Agent", link: "/model-api-reference/llm-models/x-ai/grok-4.20-multi-agent" }, - { text: "Grok 4.20", link: "/model-api-reference/llm-models/x-ai/grok-4.20" }, - { text: "Grok Code Fast 1", link: "/model-api-reference/llm-models/x-ai/grok-code-fast-1" }, - { text: "Grok 4", link: "/model-api-reference/llm-models/x-ai/grok-4" }, - { text: "Grok 3 Mini", link: "/model-api-reference/llm-models/x-ai/grok-3-mini" }, - { text: "Grok 3", link: "/model-api-reference/llm-models/x-ai/grok-3" }, - { text: "Grok 3 Mini Beta", link: "/model-api-reference/llm-models/x-ai/grok-3-mini-beta" }, - { text: "Grok 3 Beta", link: "/model-api-reference/llm-models/x-ai/grok-3-beta" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Mistral", - collapsed: true, - items: [ - { text: "Mistral Medium 3.5", link: "/model-api-reference/llm-models/mistral/mistral-medium-3-5" }, - { text: "Mistral Small 4", link: "/model-api-reference/llm-models/mistral/mistral-small-2603" }, - { text: "Devstral 2 2512", link: "/model-api-reference/llm-models/mistral/devstral-2512" }, - { text: "Ministral 3 14B 2512", link: "/model-api-reference/llm-models/mistral/ministral-14b-2512" }, - { text: "Ministral 3 8B 2512", link: "/model-api-reference/llm-models/mistral/ministral-8b-2512" }, - { text: "Ministral 3 3B 2512", link: "/model-api-reference/llm-models/mistral/ministral-3b-2512" }, - { text: "Mistral Large 3 2512", link: "/model-api-reference/llm-models/mistral/mistral-large-2512" }, - { text: "Voxtral Small 24B 2507", link: "/model-api-reference/llm-models/mistral/voxtral-small-24b-2507" }, - { text: "Mistral Medium 3.1", link: "/model-api-reference/llm-models/mistral/mistral-medium-3.1" }, - { text: "Codestral 2508", link: "/model-api-reference/llm-models/mistral/codestral-2508" }, - { text: "Devstral Medium", link: "/model-api-reference/llm-models/mistral/devstral-medium" }, - { text: "Mistral Small 3.2 24B", link: "/model-api-reference/llm-models/mistral/mistral-small-3.2-24b-instruct" }, - { text: "Devstral Small 1.1", link: "/model-api-reference/llm-models/mistral/devstral-small" }, - { text: "Mistral Medium 3", link: "/model-api-reference/llm-models/mistral/mistral-medium-3" }, - { text: "Mistral Small 3.1 24B", link: "/model-api-reference/llm-models/mistral/mistral-small-3.1-24b-instruct" }, - { text: "Saba", link: "/model-api-reference/llm-models/mistral/mistral-saba" }, - { text: "Mistral Small 3", link: "/model-api-reference/llm-models/mistral/mistral-small-24b-instruct-2501" }, - { text: "Mistral Large 2407", link: "/model-api-reference/llm-models/mistral/mistral-large-2407" }, - { text: "Mistral Large 2411", link: "/model-api-reference/llm-models/mistral/mistral-large-2411" }, - { text: "Pixtral Large 2411", link: "/model-api-reference/llm-models/mistral/pixtral-large-2411" }, - { text: "Mistral Nemo", link: "/model-api-reference/llm-models/mistral/mistral-nemo" }, - { text: "Mixtral 8x22B Instruct", link: "/model-api-reference/llm-models/mistral/mixtral-8x22b-instruct" }, - { text: "Mistral Large", link: "/model-api-reference/llm-models/mistral/mistral-large" }, - { text: "Mistral 7B Instruct v0.1", link: "/model-api-reference/llm-models/mistral/mistral-7b-instruct-v0.1" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Perplexity", - collapsed: true, - items: [ - { text: "Sonar Pro Search", link: "/model-api-reference/llm-models/perplexity/sonar-pro-search" }, - { text: "Sonar Reasoning Pro", link: "/model-api-reference/llm-models/perplexity/sonar-reasoning-pro" }, - { text: "Sonar Pro", link: "/model-api-reference/llm-models/perplexity/sonar-pro" }, - { text: "Sonar Deep Research", link: "/model-api-reference/llm-models/perplexity/sonar-deep-research" }, - { text: "Sonar", link: "/model-api-reference/llm-models/perplexity/sonar" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Cohere", - collapsed: true, - items: [ - { text: "Command A", link: "/model-api-reference/llm-models/cohere/command-a" }, - { text: "Command R7B (12-2024)", link: "/model-api-reference/llm-models/cohere/command-r7b-12-2024" }, - { text: "Command R (08-2024)", link: "/model-api-reference/llm-models/cohere/command-r-08-2024" }, - { text: "Command R+ (08-2024)", link: "/model-api-reference/llm-models/cohere/command-r-plus-08-2024" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Ai21", - collapsed: true, - items: [ - { text: "AI21: Jamba Large 1.7", link: "/model-api-reference/llm-models/ai21/jamba-large-1.7" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Aion-Labs", - collapsed: true, - items: [ - { text: "AionLabs: Aion-2.0", link: "/model-api-reference/llm-models/aion-labs/aion-2.0" }, - { text: "AionLabs: Aion-1.0", link: "/model-api-reference/llm-models/aion-labs/aion-1.0" }, - { text: "AionLabs: Aion-1.0-Mini", link: "/model-api-reference/llm-models/aion-labs/aion-1.0-mini" }, - { text: "AionLabs: Aion-RP 1.0 (8B)", link: "/model-api-reference/llm-models/aion-labs/aion-rp-llama-3.1-8b" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Alfredpros", - collapsed: true, - items: [ - { text: "AlfredPros: CodeLLaMa 7B Instruct Solidity", link: "/model-api-reference/llm-models/alfredpros/codellama-7b-instruct-solidity" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Allenai", - collapsed: true, - items: [ - { text: "AllenAI: Olmo 3 32B Think", link: "/model-api-reference/llm-models/allenai/olmo-3-32b-think" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Alpindale", - collapsed: true, - items: [ - { text: "Goliath 120B", link: "/model-api-reference/llm-models/alpindale/goliath-120b" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Amazon", - collapsed: true, - items: [ - { text: "Nova 2 Lite", link: "/model-api-reference/llm-models/amazon/nova-2-lite-v1" }, - { text: "Nova Premier 1.0", link: "/model-api-reference/llm-models/amazon/nova-premier-v1" }, - { text: "Nova Lite 1.0", link: "/model-api-reference/llm-models/amazon/nova-lite-v1" }, - { text: "Nova Micro 1.0", link: "/model-api-reference/llm-models/amazon/nova-micro-v1" }, - { text: "Nova Pro 1.0", link: "/model-api-reference/llm-models/amazon/nova-pro-v1" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Anthracite-Org", - collapsed: true, - items: [ - { text: "Magnum v4 72B", link: "/model-api-reference/llm-models/anthracite-org/magnum-v4-72b" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Arcee-Ai", - collapsed: true, - items: [ - { text: "Arcee AI: Trinity Large Thinking", link: "/model-api-reference/llm-models/arcee-ai/trinity-large-thinking" }, - { text: "Arcee AI: Trinity Large Preview", link: "/model-api-reference/llm-models/arcee-ai/trinity-large-preview" }, - { text: "Arcee AI: Trinity Mini", link: "/model-api-reference/llm-models/arcee-ai/trinity-mini" }, - { text: "Arcee AI: Spotlight", link: "/model-api-reference/llm-models/arcee-ai/spotlight" }, - { text: "Arcee AI: Maestro Reasoning", link: "/model-api-reference/llm-models/arcee-ai/maestro-reasoning" }, - { text: "Arcee AI: Virtuoso Large", link: "/model-api-reference/llm-models/arcee-ai/virtuoso-large" }, - { text: "Arcee AI: Coder Large", link: "/model-api-reference/llm-models/arcee-ai/coder-large" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Baidu", - collapsed: true, - items: [ - { text: "Qianfan-OCR-Fast", link: "/model-api-reference/llm-models/baidu/qianfan-ocr-fast" }, - { text: "ERNIE 4.5 21B A3B Thinking", link: "/model-api-reference/llm-models/baidu/ernie-4.5-21b-a3b-thinking" }, - { text: "ERNIE 4.5 21B A3B", link: "/model-api-reference/llm-models/baidu/ernie-4.5-21b-a3b" }, - { text: "ERNIE 4.5 VL 28B A3B", link: "/model-api-reference/llm-models/baidu/ernie-4.5-vl-28b-a3b" }, - { text: "ERNIE 4.5 VL 424B A47B", link: "/model-api-reference/llm-models/baidu/ernie-4.5-vl-424b-a47b" }, - { text: "ERNIE 4.5 300B A47B", link: "/model-api-reference/llm-models/baidu/ernie-4.5-300b-a47b" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "cc", - collapsed: true, - items: [ - { text: "CC: Claude Fable 5", link: "/model-api-reference/llm-models/cc/claude-fable-5" }, - { text: "CC: Claude Opus 4.6", link: "/model-api-reference/llm-models/cc/claude-opus-4.6" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Deepcogito", - collapsed: true, - items: [ - { text: "Deep Cogito: Cogito v2.1 671B", link: "/model-api-reference/llm-models/deepcogito/cogito-v2.1-671b" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Essentialai", - collapsed: true, - items: [ - { text: "EssentialAI: Rnj 1 Instruct", link: "/model-api-reference/llm-models/essentialai/rnj-1-instruct" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Gryphe", - collapsed: true, - items: [ - { text: "MythoMax 13B", link: "/model-api-reference/llm-models/gryphe/mythomax-l2-13b" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Ibm-Granite", - collapsed: true, - items: [ - { text: "IBM: Granite 4.1 8B", link: "/model-api-reference/llm-models/ibm-granite/granite-4.1-8b" }, - { text: "IBM: Granite 4.0 Micro", link: "/model-api-reference/llm-models/ibm-granite/granite-4.0-h-micro" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Inception", - collapsed: true, - items: [ - { text: "Mercury 2", link: "/model-api-reference/llm-models/inception/mercury-2" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Inclusionai", - collapsed: true, - items: [ - { text: "inclusionAI: Ring-2.6-1T", link: "/model-api-reference/llm-models/inclusionai/ring-2.6-1t" }, - { text: "inclusionAI: Ling-2.6-1T", link: "/model-api-reference/llm-models/inclusionai/ling-2.6-1t" }, - { text: "inclusionAI: Ling-2.6-flash", link: "/model-api-reference/llm-models/inclusionai/ling-2.6-flash" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Inflection", - collapsed: true, - items: [ - { text: "Inflection 3 Productivity", link: "/model-api-reference/llm-models/inflection/inflection-3-productivity" }, - { text: "Inflection 3 Pi", link: "/model-api-reference/llm-models/inflection/inflection-3-pi" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Kwaipilot", - collapsed: true, - items: [ - { text: "KAT-Coder-Pro V2", link: "/model-api-reference/llm-models/kwaipilot/kat-coder-pro-v2" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Liquid", - collapsed: true, - items: [ - { text: "LiquidAI: LFM2-24B-A2B", link: "/model-api-reference/llm-models/liquid/lfm-2-24b-a2b" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Mancer", - collapsed: true, - items: [ - { text: "Weaver (alpha)", link: "/model-api-reference/llm-models/mancer/weaver" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Microsoft", - collapsed: true, - items: [ - { text: "Phi 4 Mini Instruct", link: "/model-api-reference/llm-models/microsoft/phi-4-mini-instruct" }, - { text: "Phi 4", link: "/model-api-reference/llm-models/microsoft/phi-4" }, - { text: "WizardLM-2 8x22B", link: "/model-api-reference/llm-models/microsoft/wizardlm-2-8x22b" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -707,11 +324,6 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ { text: "MiniMax: MiniMax M3", link: "/model-api-reference/llm-models/minimax/minimax-m3" }, { text: "MiniMax: MiniMax M2.7", link: "/model-api-reference/llm-models/minimax/minimax-m2.7" }, { text: "MiniMax: MiniMax M2.5", link: "/model-api-reference/llm-models/minimax/minimax-m2.5" }, - { text: "MiniMax: MiniMax M2-her", link: "/model-api-reference/llm-models/minimax/minimax-m2-her" }, - { text: "MiniMax: MiniMax M2.1", link: "/model-api-reference/llm-models/minimax/minimax-m2.1" }, - { text: "MiniMax: MiniMax M2", link: "/model-api-reference/llm-models/minimax/minimax-m2" }, - { text: "MiniMax: MiniMax M1", link: "/model-api-reference/llm-models/minimax/minimax-m1" }, - { text: "MiniMax: MiniMax-01", link: "/model-api-reference/llm-models/minimax/minimax-01" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -720,137 +332,8 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ collapsed: true, items: [ { text: "MoonshotAI: Kimi K3", link: "/model-api-reference/llm-models/moonshotai/kimi-k3" }, - { text: "MoonshotAI: Kimi K2.7 Code", link: "/model-api-reference/llm-models/moonshotai/kimi-k2.7-code" }, { text: "MoonshotAI: Kimi K2.6", link: "/model-api-reference/llm-models/moonshotai/kimi-k2.6" }, { text: "MoonshotAI: Kimi K2.5", link: "/model-api-reference/llm-models/moonshotai/kimi-k2.5" }, - { text: "MoonshotAI: Kimi K2 Thinking", link: "/model-api-reference/llm-models/moonshotai/kimi-k2-thinking" }, - { text: "MoonshotAI: Kimi K2 0905", link: "/model-api-reference/llm-models/moonshotai/kimi-k2-0905" }, - { text: "MoonshotAI: Kimi K2 0711", link: "/model-api-reference/llm-models/moonshotai/kimi-k2" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Morph", - collapsed: true, - items: [ - { text: "Morph V3 Large", link: "/model-api-reference/llm-models/morph/morph-v3-large" }, - { text: "Morph V3 Fast", link: "/model-api-reference/llm-models/morph/morph-v3-fast" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Nex-Agi", - collapsed: true, - items: [ - { text: "Nex AGI: Nex-N2-Pro", link: "/model-api-reference/llm-models/nex-agi/nex-n2-pro" }, - { text: "Nex AGI: DeepSeek V3.1 Nex N1", link: "/model-api-reference/llm-models/nex-agi/deepseek-v3.1-nex-n1" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Nousresearch", - collapsed: true, - items: [ - { text: "Nous: Hermes 4 70B", link: "/model-api-reference/llm-models/nousresearch/hermes-4-70b" }, - { text: "Nous: Hermes 4 405B", link: "/model-api-reference/llm-models/nousresearch/hermes-4-405b" }, - { text: "Nous: Hermes 3 70B Instruct", link: "/model-api-reference/llm-models/nousresearch/hermes-3-llama-3.1-70b" }, - { text: "Nous: Hermes 3 405B Instruct", link: "/model-api-reference/llm-models/nousresearch/hermes-3-llama-3.1-405b" }, - { text: "NousResearch: Hermes 2 Pro - Llama-3 8B", link: "/model-api-reference/llm-models/nousresearch/hermes-2-pro-llama-3-8b" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "NVIDIA", - collapsed: true, - items: [ - { text: "Nemotron 3 Ultra", link: "/model-api-reference/llm-models/nvidia/nemotron-3-ultra-550b-a55b" }, - { text: "Nemotron 3 Super", link: "/model-api-reference/llm-models/nvidia/nemotron-3-super-120b-a12b" }, - { text: "Nemotron 3 Nano 30B A3B", link: "/model-api-reference/llm-models/nvidia/nemotron-3-nano-30b-a3b" }, - { text: "Llama 3.3 Nemotron Super 49B V1.5", link: "/model-api-reference/llm-models/nvidia/llama-3.3-nemotron-super-49b-v1.5" }, - { text: "Nemotron Nano 9B V2", link: "/model-api-reference/llm-models/nvidia/nemotron-nano-9b-v2" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Openrouter", - collapsed: true, - items: [ - { text: "OpenRouter: Fusion", link: "/model-api-reference/llm-models/openrouter/fusion" }, - { text: "Pareto Code Router", link: "/model-api-reference/llm-models/openrouter/pareto-code" }, - { text: "Body Builder (beta)", link: "/model-api-reference/llm-models/openrouter/bodybuilder" }, - { text: "Auto Router", link: "/model-api-reference/llm-models/openrouter/auto" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Perceptron", - collapsed: true, - items: [ - { text: "Perceptron Mk1", link: "/model-api-reference/llm-models/perceptron/perceptron-mk1" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Poolside", - collapsed: true, - items: [ - { text: "Laguna M.1", link: "/model-api-reference/llm-models/poolside/laguna-m.1" }, - { text: "Laguna XS.2", link: "/model-api-reference/llm-models/poolside/laguna-xs.2" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Prime-Intellect", - collapsed: true, - items: [ - { text: "Prime Intellect: INTELLECT-3", link: "/model-api-reference/llm-models/prime-intellect/intellect-3" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Rekaai", - collapsed: true, - items: [ - { text: "Reka Edge", link: "/model-api-reference/llm-models/rekaai/reka-edge" }, - { text: "Reka Flash 3", link: "/model-api-reference/llm-models/rekaai/reka-flash-3" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Relace", - collapsed: true, - items: [ - { text: "Relace Search", link: "/model-api-reference/llm-models/relace/relace-search" }, - { text: "Relace Apply 3", link: "/model-api-reference/llm-models/relace/relace-apply-3" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Sao10k", - collapsed: true, - items: [ - { text: "Sao10K: Llama 3.1 70B Hanami x1", link: "/model-api-reference/llm-models/sao10k/l3.1-70b-hanami-x1" }, - { text: "Sao10K: Llama 3.3 Euryale 70B", link: "/model-api-reference/llm-models/sao10k/l3.3-euryale-70b" }, - { text: "Sao10K: Llama 3.1 Euryale 70B v2.2", link: "/model-api-reference/llm-models/sao10k/l3.1-euryale-70b" }, - { text: "Sao10K: Llama 3 8B Lunaris", link: "/model-api-reference/llm-models/sao10k/l3-lunaris-8b" }, - { text: "Llama 3 Euryale 70B v2.1", link: "/model-api-reference/llm-models/sao10k/l3-euryale-70b" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Stepfun", - collapsed: true, - items: [ - { text: "StepFun: Step 3.7 Flash", link: "/model-api-reference/llm-models/stepfun/step-3.7-flash" }, - { text: "StepFun: Step 3.5 Flash", link: "/model-api-reference/llm-models/stepfun/step-3.5-flash" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Switchpoint", - collapsed: true, - items: [ - { text: "Switchpoint Router", link: "/model-api-reference/llm-models/switchpoint/router" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -860,19 +343,6 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ items: [ { text: "Hy4 preview", link: "/model-api-reference/llm-models/tencent/hy4-preview" }, { text: "Hy3", link: "/model-api-reference/llm-models/tencent/hy3" }, - { text: "Hy3 preview", link: "/model-api-reference/llm-models/tencent/hy3-preview" }, - { text: "Hunyuan A13B Instruct", link: "/model-api-reference/llm-models/tencent/hunyuan-a13b-instruct" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Thedrummer", - collapsed: true, - items: [ - { text: "TheDrummer: Cydonia 24B V4.1", link: "/model-api-reference/llm-models/thedrummer/cydonia-24b-v4.1" }, - { text: "TheDrummer: Skyfall 36B V2", link: "/model-api-reference/llm-models/thedrummer/skyfall-36b-v2" }, - { text: "TheDrummer: UnslopNemo 12B", link: "/model-api-reference/llm-models/thedrummer/unslopnemo-12b" }, - { text: "TheDrummer: Rocinante 12B", link: "/model-api-reference/llm-models/thedrummer/rocinante-12b" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -884,39 +354,12 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Undi95", - collapsed: true, - items: [ - { text: "ReMM SLERP 13B", link: "/model-api-reference/llm-models/undi95/remm-slerp-l2-13b" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Upstage", - collapsed: true, - items: [ - { text: "Solar Pro 4", link: "/model-api-reference/llm-models/upstage/solar-pro4" }, - { text: "Solar Pro 3", link: "/model-api-reference/llm-models/upstage/solar-pro-3" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Writer", - collapsed: true, - items: [ - { text: "Palmyra X5", link: "/model-api-reference/llm-models/writer/palmyra-x5" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. { text: "Xiaomi", collapsed: true, items: [ - { text: "MiMo-V2.5-Pro", link: "/model-api-reference/llm-models/xiaomi/mimo-v2.5-pro" }, - { text: "MiMo-V2.5", link: "/model-api-reference/llm-models/xiaomi/mimo-v2.5" }, - { text: "MiMo-V2-Omni", link: "/model-api-reference/llm-models/xiaomi/mimo-v2-omni" }, - { text: "MiMo-V2-Pro", link: "/model-api-reference/llm-models/xiaomi/mimo-v2-pro" }, + { text: "MiMo-V2.6-Flash", link: "/model-api-reference/llm-models/xiaomi/mimo-v2.6-flash" }, + { text: "MiMo-V2.6-Pro", link: "/model-api-reference/llm-models/xiaomi/mimo-v2.6-pro" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -924,20 +367,12 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "Z-Ai", collapsed: true, items: [ + { text: "Z.ai: GLM 5.3 FlashX", link: "/model-api-reference/llm-models/z-ai/glm-5.3-flashx" }, + { text: "Z.ai: GLM 5.3 Flash", link: "/model-api-reference/llm-models/z-ai/glm-5.3-flash" }, { text: "Z.ai: GLM 5.3", link: "/model-api-reference/llm-models/z-ai/glm-5.3" }, { text: "Z.ai: GLM 5.2", link: "/model-api-reference/llm-models/z-ai/glm-5.2" }, - { text: "Z.ai: GLM 5.1", link: "/model-api-reference/llm-models/z-ai/glm-5.1" }, - { text: "Z.ai: GLM 5V Turbo", link: "/model-api-reference/llm-models/z-ai/glm-5v-turbo" }, - { text: "Z.ai: GLM 5 Turbo", link: "/model-api-reference/llm-models/z-ai/glm-5-turbo" }, - { text: "Z.ai: GLM 5", link: "/model-api-reference/llm-models/z-ai/glm-5" }, - { text: "Z.ai: GLM 4.7 Flash", link: "/model-api-reference/llm-models/z-ai/glm-4.7-flash" }, - { text: "Z.ai: GLM 4.7", link: "/model-api-reference/llm-models/z-ai/glm-4.7" }, - { text: "Z.ai: GLM 4.6V", link: "/model-api-reference/llm-models/z-ai/glm-4.6v" }, - { text: "Z.ai: GLM 4.6", link: "/model-api-reference/llm-models/z-ai/glm-4.6" }, - { text: "Z.ai: GLM 4.5V", link: "/model-api-reference/llm-models/z-ai/glm-4.5v" }, - { text: "Z.ai: GLM 4.5", link: "/model-api-reference/llm-models/z-ai/glm-4.5" }, { text: "Z.ai: GLM 4.5 Air", link: "/model-api-reference/llm-models/z-ai/glm-4.5-air" }, - { text: "Z.ai: GLM 4 32B", link: "/model-api-reference/llm-models/z-ai/glm-4-32b" }, + { text: "Z.ai: GLM 5.5", link: "/model-api-reference/llm-models/z-ai/glm-5.5" }, ], }, ], @@ -952,20 +387,15 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "OpenAI", collapsed: true, items: [ - { text: "GPT Image 2 Official API", link: "/model-api-reference/image-generation/openai/gpt-image-2-official" }, - { text: "GPT Image 2 Official Edit API", link: "/model-api-reference/image-generation/openai/gpt-image-2-official/edit" }, - { text: "GPT Image 2.5 Flare", link: "/model-api-reference/image-generation/openai/gpt-image-2.5-flare" }, + { text: "GPT Image 2.5 Flare Text to Image", link: "/model-api-reference/image-generation/openai/gpt-image-2.5-flare" }, { text: "GPT Image 2.5 Flare Edit", link: "/model-api-reference/image-generation/openai/gpt-image-2.5-flare/edit" }, - { text: "GPT Image 2.5 Sunburst", link: "/model-api-reference/image-generation/openai/gpt-image-2.5-sunburst" }, + { text: "GPT Image 2.5 Sunburst Text to Image", link: "/model-api-reference/image-generation/openai/gpt-image-2.5-sunburst" }, { text: "GPT Image 2.5 Sunburst Edit", link: "/model-api-reference/image-generation/openai/gpt-image-2.5-sunburst/edit" }, - { text: "GPT Image 2", link: "/model-api-reference/image-generation/openai/gpt-image-2" }, - { text: "GPT Image 2 Editing", link: "/model-api-reference/image-generation/openai/gpt-image-2/edit" }, - { text: "GPT-Image 1.5", link: "/model-api-reference/image-generation/openai/gpt-image-1.5/edit" }, - { text: "GPT Image 1.5", link: "/model-api-reference/image-generation/openai/gpt-image-1.5" }, + { text: "GPT Image 2 Text to Image", link: "/model-api-reference/image-generation/openai/gpt-image-2" }, + { text: "GPT Image 2 Edit", link: "/model-api-reference/image-generation/openai/gpt-image-2/edit" }, + { text: "GPT Image 1.5 Edit", link: "/model-api-reference/image-generation/openai/gpt-image-1.5/edit" }, + { text: "GPT Image 1.5 Text to Image", link: "/model-api-reference/image-generation/openai/gpt-image-1.5" }, { text: "GPT Image 1 Mini Edit", link: "/model-api-reference/image-generation/openai/gpt-image-1-mini/edit" }, - { text: "GPT Image 1 Mini", link: "/model-api-reference/image-generation/openai/gpt-image-1-mini" }, - { text: "GPT Image 1", link: "/model-api-reference/image-generation/openai/gpt-image-1" }, - { text: "GPT Image 1 Edit", link: "/model-api-reference/image-generation/openai/gpt-image-1/edit" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -973,22 +403,14 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "Google", collapsed: true, items: [ - { text: "Nano Banana 2 Lite", link: "/model-api-reference/image-generation/google/nano-banana-2-lite" }, - { text: "Nano Banana Lite", link: "/model-api-reference/image-generation/google/nano-banana-lite" }, - { text: "Nano Banana Lite Edit", link: "/model-api-reference/image-generation/google/nano-banana-lite/edit" }, - { text: "Nano Banana 2 Image Editing", link: "/model-api-reference/image-generation/google/nano-banana-2/edit" }, - { text: "Nano Banana 2", link: "/model-api-reference/image-generation/google/nano-banana-2" }, - { text: "Gemini 3.1 Flash Image Preview", link: "/model-api-reference/image-generation/google/gemini-3.1-flash-image-preview/edit" }, - { text: "Nano Banana Pro Image Editing", link: "/model-api-reference/image-generation/google/nano-banana-pro/edit" }, - { text: "Nano Banana Pro", link: "/model-api-reference/image-generation/google/nano-banana-pro" }, - { text: "Gemini 2.5 Flash Image Edit", link: "/model-api-reference/image-generation/google/gemini-2.5-flash-image/edit" }, - { text: "Nano Banana Image Editing", link: "/model-api-reference/image-generation/google/nano-banana/edit" }, - { text: "Nano Banana", link: "/model-api-reference/image-generation/google/nano-banana" }, - { text: "Imagen 4 (Google: imagen-4 / preview / fast)", link: "/model-api-reference/image-generation/google/imagen-4/preview/fast" }, - { text: "Imagen 4 Ultra", link: "/model-api-reference/image-generation/google/imagen-4/preview/ultra" }, - { text: "Imagen 4 (Google: imagen-4 / preview)", link: "/model-api-reference/image-generation/google/imagen-4/preview" }, - { text: "Imagen3", link: "/model-api-reference/image-generation/google/imagen-3" }, - { text: "Imagen3 Fast", link: "/model-api-reference/image-generation/google/imagen-3/fast" }, + { text: "Nano Banana 2.1 Text to Image", link: "/model-api-reference/image-generation/google/nano-banana-2.1" }, + { text: "Nano Banana 2.1 Edit", link: "/model-api-reference/image-generation/google/nano-banana-2.1/edit" }, + { text: "Nano Banana 2 Lite Text to Image", link: "/model-api-reference/image-generation/google/nano-banana-2-lite" }, + { text: "Nano Banana 2 Lite Edit", link: "/model-api-reference/image-generation/google/nano-banana-2-lite/edit" }, + { text: "Nano Banana 2 Edit", link: "/model-api-reference/image-generation/google/nano-banana-2/edit" }, + { text: "Nano Banana 2 Text to Image", link: "/model-api-reference/image-generation/google/nano-banana-2" }, + { text: "Nano Banana Pro Edit", link: "/model-api-reference/image-generation/google/nano-banana-pro/edit" }, + { text: "Nano Banana Pro Text to Image", link: "/model-api-reference/image-generation/google/nano-banana-pro" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -996,12 +418,8 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "Ideogram", collapsed: true, items: [ - { text: "Ideogram Object Removal", link: "/model-api-reference/image-generation/ideogram/object-removal" }, - { text: "V4.0q [instant]", link: "/model-api-reference/image-generation/ideogram/4.0/instant" }, - { text: "V4.0q [fast]", link: "/model-api-reference/image-generation/ideogram/4.0/fast" }, - { text: "Ideogram V4.0q Tiling", link: "/model-api-reference/image-generation/ideogram/4.0/tiling" }, - { text: "Ideogram V4.0q Image to Image", link: "/model-api-reference/image-generation/ideogram/4.0/image-to-image" }, - { text: "Ideogram (Ideogram: custom-models)", link: "/model-api-reference/image-generation/ideogram/custom-models" }, + { text: "Ideogram 4.5 Edit", link: "/model-api-reference/image-generation/ideogram/4.5/edit" }, + { text: "Ideogram 4.5 Text to Image", link: "/model-api-reference/image-generation/ideogram/4.5" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -1009,18 +427,15 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "ByteDance", collapsed: true, items: [ - { text: "Seedream 5.0 Pro Image Editing", link: "/model-api-reference/image-generation/bytedance/seedream/5.0/pro/edit" }, + { text: "Seedream 5.0 Flash Text to Image", link: "/model-api-reference/image-generation/bytedance/seedream/5.0/flash" }, + { text: "Seedream 5.0 Flash Edit", link: "/model-api-reference/image-generation/bytedance/seedream/5.0/flash/edit" }, + { text: "Seedream 5.0 Pro Edit", link: "/model-api-reference/image-generation/bytedance/seedream/5.0/pro/edit" }, { text: "Seedream 5.0 Pro Text to Image", link: "/model-api-reference/image-generation/bytedance/seedream/5.0/pro" }, - { text: "SeedVR2 (ByteDance: seedvr / upscale / image / seamless)", link: "/model-api-reference/image-generation/bytedance/seedvr/upscale/image/seamless" }, - { text: "Bytedance Seed 2.0 Mini", link: "/model-api-reference/image-generation/bytedance/seed/v2/mini" }, - { text: "Seedream v5.0 Lite", link: "/model-api-reference/image-generation/bytedance/seedream/5.0/lite" }, - { text: "Seedream v4.5", link: "/model-api-reference/image-generation/bytedance/seedream/4.5" }, - { text: "Seedream v4.5 Image Editing", link: "/model-api-reference/image-generation/bytedance/seedream/4.5/edit" }, - { text: "SeedVR2 (ByteDance: seedvr / upscale / image)", link: "/model-api-reference/image-generation/bytedance/seedvr/upscale/image" }, - { text: "Bytedance Seedream v4 Edit", link: "/model-api-reference/image-generation/bytedance/seedream/4.0/edit" }, - { text: "Bytedance Seedream v4", link: "/model-api-reference/image-generation/bytedance/seedream/4.0" }, - { text: "Dreamina 3.1", link: "/model-api-reference/image-generation/bytedance/dreamina/3.1" }, - { text: "Seedream v5.0 Lite Editing", link: "/model-api-reference/image-generation/bytedance/seedream/5.0/lite/edit" }, + { text: "Seedream 5.0 Lite Text to Image", link: "/model-api-reference/image-generation/bytedance/seedream/5.0/lite" }, + { text: "Seedream 4.5 Text to Image", link: "/model-api-reference/image-generation/bytedance/seedream/4.5" }, + { text: "Seedream 4.5 Edit", link: "/model-api-reference/image-generation/bytedance/seedream/4.5/edit" }, + { text: "SeedVR2 Image Upscale", link: "/model-api-reference/image-generation/bytedance/seedvr/upscale/image" }, + { text: "Seedream 5.0 Lite Edit", link: "/model-api-reference/image-generation/bytedance/seedream/5.0/lite/edit" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -1029,39 +444,7 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ collapsed: true, items: [ { text: "Recraft V4.1 Utility", link: "/model-api-reference/image-generation/recraft/recraft/v4.1/utility" }, - { text: "Recraft V4.1 Utility Pro", link: "/model-api-reference/image-generation/recraft/recraft/v4.1/utility/pro" }, - { text: "Recraft V4.1 Vector", link: "/model-api-reference/image-generation/recraft/recraft/v4.1/vector" }, { text: "Recraft V4.1", link: "/model-api-reference/image-generation/recraft/recraft/v4.1" }, - { text: "Recraft V4.1 Pro Vector", link: "/model-api-reference/image-generation/recraft/recraft/v4.1/pro/vector" }, - { text: "Recraft V4.1 Pro", link: "/model-api-reference/image-generation/recraft/recraft/v4.1/pro" }, - { text: "Recraft V4 Pro (Vector)", link: "/model-api-reference/image-generation/recraft/recraft/v4/pro/vector" }, - { text: "Recraft V4 (Vector)", link: "/model-api-reference/image-generation/recraft/recraft/v4/vector" }, - { text: "Recraft V4 Pro", link: "/model-api-reference/image-generation/recraft/recraft/v4/pro" }, - { text: "Recraft V4", link: "/model-api-reference/image-generation/recraft/recraft/v4" }, - { text: "Recraft Vectorize", link: "/model-api-reference/image-generation/recraft/recraft/vectorize" }, - { text: "Recraft Creative Upscale", link: "/model-api-reference/image-generation/recraft/recraft/upscale/creative" }, - { text: "Recraft Crisp Upscale", link: "/model-api-reference/image-generation/recraft/recraft/upscale/crisp" }, - { text: "Recraft V3 Create Style", link: "/model-api-reference/image-generation/recraft/recraft/v3/create-style" }, - { text: "Recraft V3 Edit", link: "/model-api-reference/image-generation/recraft/recraft/v3/edit" }, - { text: "Recraft V3", link: "/model-api-reference/image-generation/recraft/recraft/v3" }, - { text: "Recraft 20b", link: "/model-api-reference/image-generation/recraft/recraft-20b" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Luma", - collapsed: true, - items: [ - { text: "Luma Uni-1 Edit", link: "/model-api-reference/image-generation/luma/agent/uni-1/1.0/edit" }, - { text: "Luma Uni-1 Text to Image Max", link: "/model-api-reference/image-generation/luma/agent/uni-1/1.0/max" }, - { text: "Luma Uni-1 Edit Max", link: "/model-api-reference/image-generation/luma/agent/uni-1/1.0/max/edit" }, - { text: "Luma Uni-1 Text to Image", link: "/model-api-reference/image-generation/luma/agent/uni-1/1.0/text-to-image" }, - { text: "Luma Photon Flash Edit", link: "/model-api-reference/image-generation/luma/photon-flash-1/edit" }, - { text: "Luma Photon Edit", link: "/model-api-reference/image-generation/luma/photon-1/edit" }, - { text: "Luma Photon Flash Reframe", link: "/model-api-reference/image-generation/luma/photon-flash-1/reframe" }, - { text: "Luma Photon Reframe", link: "/model-api-reference/image-generation/luma/photon-1/reframe" }, - { text: "Luma Photon Flash", link: "/model-api-reference/image-generation/luma/photon-flash-1" }, - { text: "Luma Photon", link: "/model-api-reference/image-generation/luma/photon-1" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -1069,7 +452,7 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "Z-Image", collapsed: true, items: [ - { text: "Z-Image Turbo (Z-Image: turbo)", link: "/model-api-reference/image-generation/z-image/turbo" }, + { text: "Z-Image Turbo Text to Image", link: "/model-api-reference/image-generation/z-image/turbo" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -1077,84 +460,22 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "Alibaba", collapsed: true, items: [ - { text: "Qwen Image 3", link: "/model-api-reference/image-generation/alibaba/qwen-image-3" }, - { text: "Qwen Image 3 Edit", link: "/model-api-reference/image-generation/alibaba/qwen-image-3/edit" }, { text: "Qwen Image 3 Text to Image", link: "/model-api-reference/image-generation/alibaba/qwen-image-3/text-to-image" }, - { text: "Wan 2.7 Pro Edit", link: "/model-api-reference/image-generation/alibaba/wan/2.7/pro/edit" }, - { text: "Wan 2.7 Edit", link: "/model-api-reference/image-generation/alibaba/wan/2.7/edit" }, - { text: "Wan 2.7", link: "/model-api-reference/image-generation/alibaba/wan/2.7" }, - { text: "Wan 2.7 Pro", link: "/model-api-reference/image-generation/alibaba/wan/2.7/pro" }, - { text: "Z-Image Turbo Seamless Tiling (Alibaba: z-image / turbo / tiling / lora)", link: "/model-api-reference/image-generation/alibaba/z-image/turbo/tiling/lora" }, - { text: "Z-Image Turbo Seamless Tiling (Alibaba: z-image / turbo / tiling)", link: "/model-api-reference/image-generation/alibaba/z-image/turbo/tiling" }, - { text: "Qwen Image 2 (Alibaba: qwen-image-2 / pro / text-to-image)", link: "/model-api-reference/image-generation/alibaba/qwen-image-2/pro/text-to-image" }, - { text: "Qwen Image 2 Pro", link: "/model-api-reference/image-generation/alibaba/qwen-image-2/pro" }, - { text: "Qwen Image 2 (Alibaba: qwen-image-2)", link: "/model-api-reference/image-generation/alibaba/qwen-image-2" }, - { text: "Qwen Image 2 (Alibaba: qwen-image-2 / text-to-image)", link: "/model-api-reference/image-generation/alibaba/qwen-image-2/text-to-image" }, - { text: "Qwen Image 2 Pro Edit", link: "/model-api-reference/image-generation/alibaba/qwen-image-2/pro/edit" }, - { text: "Qwen Image 2 Edit", link: "/model-api-reference/image-generation/alibaba/qwen-image-2/edit" }, - { text: "Qwen Image Max", link: "/model-api-reference/image-generation/alibaba/qwen-image/max" }, - { text: "Qwen Image Max Edit", link: "/model-api-reference/image-generation/alibaba/qwen-image/max/edit" }, - { text: "Z Image Base (LoRA)", link: "/model-api-reference/image-generation/alibaba/z-image/base/lora" }, + { text: "Qwen Image 3 Edit", link: "/model-api-reference/image-generation/alibaba/qwen-image-3/edit" }, + { text: "Wan 2.7 Pro Image to Image", link: "/model-api-reference/image-generation/alibaba/wan/2.7/pro/image-to-image" }, + { text: "Wan 2.7 Image to Image", link: "/model-api-reference/image-generation/alibaba/wan/2.7/image-to-image" }, + { text: "Wan 2.7 Text to Image", link: "/model-api-reference/image-generation/alibaba/wan/2.7/text-to-image" }, + { text: "Wan 2.7 Pro Text to Image", link: "/model-api-reference/image-generation/alibaba/wan/2.7/pro/text-to-image" }, + { text: "Qwen Image 2", link: "/model-api-reference/image-generation/alibaba/qwen-image-2" }, { text: "Z Image Base", link: "/model-api-reference/image-generation/alibaba/z-image/base" }, { text: "Qwen Image Edit 2511 Multiple Angles", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit/2511/multiple-angles" }, - { text: "Qwen Image 2512 LoRA", link: "/model-api-reference/image-generation/alibaba/qwen-image/2512/lora" }, - { text: "Qwen Image Edit 2511 LoRA", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit/2511/lora" }, - { text: "Qwen Image 2512", link: "/model-api-reference/image-generation/alibaba/qwen-image/2512" }, - { text: "Qwen Image Layered LoRA", link: "/model-api-reference/image-generation/alibaba/qwen-image/layered/lora" }, - { text: "Wan 2.6", link: "/model-api-reference/image-generation/alibaba/wan/2.6" }, - { text: "Wan 2.6 Edit", link: "/model-api-reference/image-generation/alibaba/wan/2.6/edit" }, + { text: "Wan 2.6 Text to Image", link: "/model-api-reference/image-generation/alibaba/wan/2.6/text-to-image" }, + { text: "Wan 2.6 Image to Image", link: "/model-api-reference/image-generation/alibaba/wan/2.6/image-to-image" }, { text: "Qwen Image Edit 2511", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit/2511" }, - { text: "Qwen Image Layered", link: "/model-api-reference/image-generation/alibaba/qwen-image/layered" }, - { text: "Z-Image Turbo Inpaint LoRA", link: "/model-api-reference/image-generation/alibaba/z-image/turbo/inpaint/lora" }, - { text: "Z-Image Turbo Inpaint", link: "/model-api-reference/image-generation/alibaba/z-image/turbo/inpaint" }, - { text: "Qwen Image Edit 2509 Lora Gallery (Alibaba: qwen-image-edit-2509-lora-gallery / remove-element)", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit-2509-lora-gallery/remove-element" }, - { text: "Qwen Image Edit 2509 Lora Gallery (Alibaba: qwen-image-edit / 2509-lora-gallery / lighting-restoration)", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit/2509-lora-gallery/lighting-restoration" }, - { text: "Qwen Image Edit 2509 Lora Gallery (Alibaba: qwen-image-edit / 2509-lora-gallery / integrate-product)", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit/2509-lora-gallery/integrate-product" }, - { text: "Qwen Image Edit 2509 Lora Gallery (Alibaba: qwen-image-edit / 2509-lora-gallery / face-to-full-portrait)", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit/2509-lora-gallery/face-to-full-portrait" }, - { text: "Qwen Image Edit 2509 Lora Gallery (Alibaba: qwen-image-edit / 2509-lora-gallery / add-background)", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit/2509-lora-gallery/add-background" }, - { text: "Qwen Image Edit 2509 Lora Gallery (Alibaba: qwen-image-edit-2509-lora-gallery / multiple-angles)", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit-2509-lora-gallery/multiple-angles" }, - { text: "Qwen Image Edit 2509 LoRA", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit/2509/lora" }, - { text: "Qwen Image Edit 2509", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit-2509" }, - { text: "Qwen Image Edit Plus Lora Gallery (Alibaba: qwen-image-edit-plus / lora-gallery / lighting-restoration)", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit-plus/lora-gallery/lighting-restoration" }, - { text: "Z-Image Turbo Edit LoRA", link: "/model-api-reference/image-generation/alibaba/z-image/turbo/edit/lora" }, { text: "Z-Image Turbo Edit", link: "/model-api-reference/image-generation/alibaba/z-image/turbo/edit" }, - { text: "Z-Image Turbo LoRA", link: "/model-api-reference/image-generation/alibaba/z-image/turbo/lora" }, - { text: "Z-Image Turbo (Alibaba: z-image / turbo)", link: "/model-api-reference/image-generation/alibaba/z-image/turbo" }, - { text: "Qwen Image Edit Plus Lora Gallery (Alibaba: qwen-image-edit-plus-lora-gallery / multiple-angles)", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit-plus-lora-gallery/multiple-angles" }, - { text: "Qwen Image Edit Plus Lora Gallery (Alibaba: qwen-image-edit-plus / lora-gallery / remove-lighting)", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit-plus/lora-gallery/remove-lighting" }, - { text: "Qwen Image Edit Plus Lora Gallery (Alibaba: qwen-image-edit-plus-lora-gallery / remove-element)", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit-plus-lora-gallery/remove-element" }, - { text: "Qwen Image Edit Plus Lora Gallery (Alibaba: qwen-image-edit-plus / lora-gallery / next-scene)", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit-plus/lora-gallery/next-scene" }, - { text: "Qwen Image Edit Plus Lora Gallery (Alibaba: qwen-image-edit-plus / lora-gallery / integrate-product)", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit-plus/lora-gallery/integrate-product" }, - { text: "Qwen Image Edit Plus Lora Gallery (Alibaba: qwen-image-edit-plus-lora-gallery / group-photo)", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit-plus-lora-gallery/group-photo" }, - { text: "Qwen Image Edit Plus Lora Gallery (Alibaba: qwen-image-edit-plus / lora-gallery / add-background)", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit-plus/lora-gallery/add-background" }, - { text: "Qwen Image Edit Plus LoRA", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit/plus/lora" }, - { text: "Qwen Image Edit (Alibaba: qwen-image-edit)", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit" }, - { text: "Qwen Image Edit (Alibaba: qwen-image-edit / image-to-image)", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit/image-to-image" }, - { text: "Wan 2.5 Image Edit", link: "/model-api-reference/image-generation/alibaba/wan/2.5/image-edit" }, + { text: "Qwen Image Edit", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit" }, + { text: "Wan 2.5 Image to Image", link: "/model-api-reference/image-generation/alibaba/wan/2.5/image-to-image" }, { text: "Wan 2.5 Text to Image", link: "/model-api-reference/image-generation/alibaba/wan/2.5/text-to-image" }, - { text: "Qwen Image Edit Plus", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit-plus" }, - { text: "Qwen Image Edit Inpaint", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit/inpaint" }, - { text: "Qwen Image Edit LoRA", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit/lora" }, - { text: "Wan 2.2 Image Edit", link: "/model-api-reference/image-generation/alibaba/wan/2.2/image-edit" }, - { text: "Qwen Image Edit (Alibaba: qwen-image / edit)", link: "/model-api-reference/image-generation/alibaba/qwen-image/edit" }, - { text: "Wan 2.2 Text to Image LoRA", link: "/model-api-reference/image-generation/alibaba/wan/2.2/text-to-image/lora" }, - { text: "Wan 2.2 5B Text to Image", link: "/model-api-reference/image-generation/alibaba/wan/2.2/5b/text-to-image" }, - { text: "Wan 2.2 Text to Image", link: "/model-api-reference/image-generation/alibaba/wan/2.2/text-to-image" }, - { text: "Qwen Image", link: "/model-api-reference/image-generation/alibaba/qwen-image" }, - { text: "Face Swap", link: "/model-api-reference/image-generation/alibaba/face-swap" }, - { text: "Head Swap", link: "/model-api-reference/image-generation/alibaba/head-swap" }, - { text: "Qwen Image Edit Exp0622", link: "/model-api-reference/image-generation/alibaba/qwen-image-edit-exp0622" }, - { text: "Z-Image Exp0622", link: "/model-api-reference/image-generation/alibaba/z-image-exp0622" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Baidu", - collapsed: true, - items: [ - { text: "ERNIE-Image Trainer", link: "/model-api-reference/image-generation/baidu/ernie-image-trainer" }, - { text: "Ernie Image (Baidu: ernie-image)", link: "/model-api-reference/image-generation/baidu/ernie-image" }, - { text: "Ernie Image (Baidu: ernie-image / turbo)", link: "/model-api-reference/image-generation/baidu/ernie-image/turbo" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -1162,123 +483,26 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "BFL", collapsed: true, items: [ - { text: "FLUX Virtual Try-On", link: "/model-api-reference/image-generation/bfl/flux-pro/1.0/vto" }, - { text: "Flux Pro Erase", link: "/model-api-reference/image-generation/bfl/flux-pro/1.0/erase" }, - { text: "Flux 2 Pro (BFL: flux-2-pro / outpaint)", link: "/model-api-reference/image-generation/bfl/flux-2-pro/outpaint" }, - { text: "FLUX.2 [klein] 9B LoRA (BFL: flux-2 / klein / 9b / edit / lora)", link: "/model-api-reference/image-generation/bfl/flux-2/klein/9b/edit/lora" }, - { text: "FLUX.2 [klein] 9B LoRA (BFL: flux-2 / klein / 9b / lora)", link: "/model-api-reference/image-generation/bfl/flux-2/klein/9b/lora" }, - { text: "FLUX.2 [klein] 4B LoRA (BFL: flux-2 / klein / 4b / edit / lora)", link: "/model-api-reference/image-generation/bfl/flux-2/klein/4b/edit/lora" }, - { text: "FLUX.2 [klein] 4B LoRA (BFL: flux-2 / klein / 4b / lora)", link: "/model-api-reference/image-generation/bfl/flux-2/klein/4b/lora" }, - { text: "Flux 2 [klein] Realtime", link: "/model-api-reference/image-generation/bfl/flux-2/klein/realtime" }, - { text: "FLUX.2 [klein] 9B Base LoRA (BFL: flux-2 / klein / 9b / base / edit / lora)", link: "/model-api-reference/image-generation/bfl/flux-2/klein/9b/base/edit/lora" }, - { text: "FLUX.2 [klein] 9B Base LoRA (BFL: flux-2 / klein / 9b / base / lora)", link: "/model-api-reference/image-generation/bfl/flux-2/klein/9b/base/lora" }, - { text: "FLUX.2 [klein] 4B Base LoRA (BFL: flux-2 / klein / 4b / base / edit / lora)", link: "/model-api-reference/image-generation/bfl/flux-2/klein/4b/base/edit/lora" }, - { text: "FLUX.2 [klein] 4B Base LoRA (BFL: flux-2 / klein / 4b / base / lora)", link: "/model-api-reference/image-generation/bfl/flux-2/klein/4b/base/lora" }, - { text: "Flux 2 Klein 4b (BFL: flux-2 / klein / 4b / base / edit)", link: "/model-api-reference/image-generation/bfl/flux-2/klein/4b/base/edit" }, - { text: "Flux 2 Klein 9b (BFL: flux-2 / klein / 9b / base)", link: "/model-api-reference/image-generation/bfl/flux-2/klein/9b/base" }, - { text: "Flux 2 Klein 9b (BFL: flux-2 / klein / 9b / base / edit)", link: "/model-api-reference/image-generation/bfl/flux-2/klein/9b/base/edit" }, - { text: "Flux 2 Klein 4b (BFL: flux-2 / klein / 4b / base)", link: "/model-api-reference/image-generation/bfl/flux-2/klein/4b/base" }, - { text: "Flux 2 Klein 4b (BFL: flux-2 / klein / 4b / edit)", link: "/model-api-reference/image-generation/bfl/flux-2/klein/4b/edit" }, - { text: "Flux 2 Klein 9b (BFL: flux-2 / klein / 9b / edit)", link: "/model-api-reference/image-generation/bfl/flux-2/klein/9b/edit" }, - { text: "Flux 2 Klein 9b (BFL: flux-2 / klein / 9b)", link: "/model-api-reference/image-generation/bfl/flux-2/klein/9b" }, - { text: "Flux 2 Klein 4b (BFL: flux-2 / klein / 4b)", link: "/model-api-reference/image-generation/bfl/flux-2/klein/4b" }, + { text: "Flux 3 Text to Image", link: "/model-api-reference/image-generation/bfl/flux-3/text-to-image" }, + { text: "Flux 3 Edit", link: "/model-api-reference/image-generation/bfl/flux-3/edit" }, + { text: "Flux 2 Klein 4B Edit", link: "/model-api-reference/image-generation/bfl/flux-2/klein/4b/edit" }, + { text: "Flux 2 Klein 9B Edit", link: "/model-api-reference/image-generation/bfl/flux-2/klein/9b/edit" }, + { text: "Flux 2 Klein 9B Text to Image", link: "/model-api-reference/image-generation/bfl/flux-2/klein/9b" }, + { text: "Flux 2 Klein 4B Text to Image", link: "/model-api-reference/image-generation/bfl/flux-2/klein/4b" }, { text: "Flux 2 Flash Edit", link: "/model-api-reference/image-generation/bfl/flux-2/flash/edit" }, - { text: "Flux 2 Flash", link: "/model-api-reference/image-generation/bfl/flux-2/flash" }, + { text: "Flux 2 Flash Text to Image", link: "/model-api-reference/image-generation/bfl/flux-2/flash" }, { text: "Flux 2 Turbo Edit", link: "/model-api-reference/image-generation/bfl/flux-2/turbo/edit" }, - { text: "Flux 2 Turbo", link: "/model-api-reference/image-generation/bfl/flux-2/turbo" }, - { text: "Flux 2 Max", link: "/model-api-reference/image-generation/bfl/flux-2/max" }, + { text: "Flux 2 Turbo Text to Image", link: "/model-api-reference/image-generation/bfl/flux-2/turbo" }, + { text: "Flux 2 Max Text to Image", link: "/model-api-reference/image-generation/bfl/flux-2/max" }, { text: "Flux 2 Max Edit", link: "/model-api-reference/image-generation/bfl/flux-2/max/edit" }, - { text: "Flux 2 Lora Gallery (BFL: flux-2 / lora-gallery / sepia-vintage)", link: "/model-api-reference/image-generation/bfl/flux-2/lora-gallery/sepia-vintage" }, - { text: "Flux 2 Lora Gallery (BFL: flux-2 / virtual-tryon)", link: "/model-api-reference/image-generation/bfl/flux-2/virtual-tryon" }, - { text: "Flux 2 Lora Gallery (BFL: flux-2 / lora-gallery / satellite-view-style)", link: "/model-api-reference/image-generation/bfl/flux-2/lora-gallery/satellite-view-style" }, - { text: "Flux 2 Lora Gallery (BFL: flux-2-lora-gallery / realism)", link: "/model-api-reference/image-generation/bfl/flux-2-lora-gallery/realism" }, - { text: "Flux 2 Lora Gallery (BFL: flux-2-lora-gallery / multiple-angles)", link: "/model-api-reference/image-generation/bfl/flux-2-lora-gallery/multiple-angles" }, - { text: "Flux 2 Lora Gallery (BFL: flux-2 / lora-gallery / hdr-style)", link: "/model-api-reference/image-generation/bfl/flux-2/lora-gallery/hdr-style" }, - { text: "Flux 2 Lora Gallery (BFL: flux-2-lora-gallery / face-to-full-portrait)", link: "/model-api-reference/image-generation/bfl/flux-2-lora-gallery/face-to-full-portrait" }, - { text: "Flux 2 Lora Gallery (BFL: flux-2-lora-gallery / apartment-staging)", link: "/model-api-reference/image-generation/bfl/flux-2-lora-gallery/apartment-staging" }, - { text: "Flux 2 Lora Gallery (BFL: flux-2 / lora-gallery / add-background)", link: "/model-api-reference/image-generation/bfl/flux-2/lora-gallery/add-background" }, { text: "Flux 2 Flex Edit", link: "/model-api-reference/image-generation/bfl/flux-2/flex/edit" }, - { text: "Flux 2 Flex", link: "/model-api-reference/image-generation/bfl/flux-2/flex" }, - { text: "Flux 2 (BFL: flux-2 / lora / edit)", link: "/model-api-reference/image-generation/bfl/flux-2/lora/edit" }, - { text: "Flux 2 (BFL: flux-2 / lora)", link: "/model-api-reference/image-generation/bfl/flux-2/lora" }, + { text: "Flux 2 Flex Text to Image", link: "/model-api-reference/image-generation/bfl/flux-2/flex" }, { text: "Flux 2 Dev Edit", link: "/model-api-reference/image-generation/bfl/flux-2/dev/edit" }, - { text: "Flux 2 Dev", link: "/model-api-reference/image-generation/bfl/flux-2/dev" }, - { text: "Flux 2 Pro (BFL: flux-2 / pro)", link: "/model-api-reference/image-generation/bfl/flux-2/pro" }, + { text: "Flux 2 Dev Text to Image", link: "/model-api-reference/image-generation/bfl/flux-2/dev" }, + { text: "Flux 2 Pro Text to Image", link: "/model-api-reference/image-generation/bfl/flux-2/pro" }, { text: "Flux 2 Pro Edit", link: "/model-api-reference/image-generation/bfl/flux-2/pro/edit" }, - { text: "Flux Vision Upscaler", link: "/model-api-reference/image-generation/bfl/flux-vision-upscaler" }, - { text: "FLUX.1 SRPO [dev] (BFL: flux-1 / srpo / image-to-image)", link: "/model-api-reference/image-generation/bfl/flux-1/srpo/image-to-image" }, - { text: "FLUX.1 SRPO [dev] (BFL: flux-1 / srpo)", link: "/model-api-reference/image-generation/bfl/flux-1/srpo" }, - { text: "FLUX.1 Krea [dev] Inpainting with LoRAs", link: "/model-api-reference/image-generation/bfl/flux-krea-lora/inpainting" }, - { text: "FLUX.1 Krea [dev] with LoRAs (BFL: flux-krea-lora)", link: "/model-api-reference/image-generation/bfl/flux-krea-lora" }, - { text: "FLUX.1 Krea [dev] with LoRAs (BFL: flux-krea-lora / image-to-image)", link: "/model-api-reference/image-generation/bfl/flux-krea-lora/image-to-image" }, - { text: "FLUX.1 Krea [dev] (BFL: flux-1 / krea / image-to-image)", link: "/model-api-reference/image-generation/bfl/flux-1/krea/image-to-image" }, - { text: "FLUX.1 Krea [dev] Redux", link: "/model-api-reference/image-generation/bfl/flux-1/krea/redux" }, - { text: "FLUX.1 Krea [dev] (BFL: flux-1 / krea)", link: "/model-api-reference/image-generation/bfl/flux-1/krea" }, - { text: "Flux Kontext Lora (BFL: flux-kontext-lora / inpaint)", link: "/model-api-reference/image-generation/bfl/flux-kontext-lora/inpaint" }, - { text: "Flux Kontext Lora (BFL: flux-kontext-lora / text-to-image)", link: "/model-api-reference/image-generation/bfl/flux-kontext-lora/text-to-image" }, - { text: "Flux Kontext Lora (BFL: flux-kontext-lora)", link: "/model-api-reference/image-generation/bfl/flux-kontext-lora" }, - { text: "FLUX.1 [schnell] Redux", link: "/model-api-reference/image-generation/bfl/flux-1/schnell/redux" }, - { text: "FLUX.1 [dev] Redux", link: "/model-api-reference/image-generation/bfl/flux-1/dev/redux" }, - { text: "FLUX.1 [dev]", link: "/model-api-reference/image-generation/bfl/flux-1/dev/image-to-image" }, - { text: "FLUX.1 Kontext [max] (BFL: flux-2 / kontext / max / multi)", link: "/model-api-reference/image-generation/bfl/flux-2/kontext/max/multi" }, - { text: "FLUX.1 Kontext [pro] (BFL: flux-2 / kontext / pro / multi)", link: "/model-api-reference/image-generation/bfl/flux-2/kontext/pro/multi" }, - { text: "Flux 1 Kontext Max", link: "/model-api-reference/image-generation/bfl/flux-1/kontext-max" }, - { text: "FLUX.1 Kontext [max] (BFL: flux-2 / kontext / max / text-to-image)", link: "/model-api-reference/image-generation/bfl/flux-2/kontext/max/text-to-image" }, - { text: "FLUX.1 Kontext [pro] (BFL: flux-2 / kontext / pro / text-to-image)", link: "/model-api-reference/image-generation/bfl/flux-2/kontext/pro/text-to-image" }, { text: "FLUX.1 Kontext [dev]", link: "/model-api-reference/image-generation/bfl/flux-2/kontext/dev" }, - { text: "Flux 1 Kontext", link: "/model-api-reference/image-generation/bfl/flux-1/kontext" }, - { text: "Flux 1 Dev", link: "/model-api-reference/image-generation/bfl/flux-1/dev" }, - { text: "FLUX.1 [dev] Control LoRA Canny (BFL: flux-control-lora-canny)", link: "/model-api-reference/image-generation/bfl/flux-control-lora-canny" }, - { text: "FLUX.1 [dev] Control LoRA Depth (BFL: flux-control-lora-depth)", link: "/model-api-reference/image-generation/bfl/flux-control-lora-depth" }, - { text: "FLUX.1 [dev] Control LoRA Canny (BFL: flux-control-lora-canny / image-to-image)", link: "/model-api-reference/image-generation/bfl/flux-control-lora-canny/image-to-image" }, - { text: "FLUX.1 [dev] Control LoRA Depth (BFL: flux-control-lora-depth / image-to-image)", link: "/model-api-reference/image-generation/bfl/flux-control-lora-depth/image-to-image" }, - { text: "Flux 1.1 Pro", link: "/model-api-reference/image-generation/bfl/flux-1.1/pro" }, - { text: "FLUX.1 [dev] Canny with LoRAs", link: "/model-api-reference/image-generation/bfl/flux-lora-canny" }, - { text: "FLUX1.1 [pro] ultra Fine-tuned", link: "/model-api-reference/image-generation/bfl/flux-pro/v1.1-ultra-finetuned" }, - { text: "FLUX.1 [dev] Fill with LoRAs", link: "/model-api-reference/image-generation/bfl/flux-lora-fill" }, - { text: "Flux 1.1 Pro Ultra", link: "/model-api-reference/image-generation/bfl/flux-1.1/pro-ultra" }, { text: "Flux 1 Schnell", link: "/model-api-reference/image-generation/bfl/flux-1/schnell" }, - { text: "Flux 1 Fill", link: "/model-api-reference/image-generation/bfl/flux-1/fill" }, - { text: "FLUX1.1 [pro] ultra Redux", link: "/model-api-reference/image-generation/bfl/flux-1.1/ultra/redux" }, - { text: "FLUX1.1 [pro] Redux", link: "/model-api-reference/image-generation/bfl/flux-pro/v1.1/redux" }, - { text: "FLUX.1 [dev] Depth with LoRAs", link: "/model-api-reference/image-generation/bfl/flux-lora-depth" }, - { text: "FLUX.1 [dev] Differential Diffusion", link: "/model-api-reference/image-generation/bfl/flux-differential-diffusion" }, - { text: "Flux 1 Pulid", link: "/model-api-reference/image-generation/bfl/flux-1/pulid" }, - { text: "FLUX.1 [dev] Inpainting with LoRAs", link: "/model-api-reference/image-generation/bfl/flux-lora/inpainting" }, - { text: "FLUX.1 [dev] with Controlnets and Loras (BFL: flux-general / rf-inversion)", link: "/model-api-reference/image-generation/bfl/flux-general/rf-inversion" }, - { text: "FLUX.1 [dev] with Controlnets and Loras (BFL: flux-general)", link: "/model-api-reference/image-generation/bfl/flux-general" }, - { text: "FLUX.1 [dev] with Controlnets and Loras (BFL: flux-general / image-to-image)", link: "/model-api-reference/image-generation/bfl/flux-general/image-to-image" }, - { text: "FLUX.1 [dev] with Controlnets and Loras (BFL: flux-general / inpainting)", link: "/model-api-reference/image-generation/bfl/flux-general/inpainting" }, - { text: "FLUX.1 [dev] with LoRAs", link: "/model-api-reference/image-generation/bfl/flux-lora/image-to-image" }, - { text: "FLUX.1 [dev] with Controlnets and Loras (BFL: flux-general / differential-diffusion)", link: "/model-api-reference/image-generation/bfl/flux-general/differential-diffusion" }, - { text: "Flux 1 Lora", link: "/model-api-reference/image-generation/bfl/flux-1/lora" }, - { text: "FLUX.1 Subject", link: "/model-api-reference/image-generation/bfl/flux-subject" }, - { text: "Flux 1 Dev Edit", link: "/model-api-reference/image-generation/bfl/flux-1/dev/edit" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Bria", - collapsed: true, - items: [ - { text: "Extract Object", link: "/model-api-reference/image-generation/bria/extract-object" }, - { text: "Bria Embed Product", link: "/model-api-reference/image-generation/bria/embed-product" }, - { text: "Bria Upscale Creative", link: "/model-api-reference/image-generation/bria/upscale/creative" }, - { text: "Bria Replace Background", link: "/model-api-reference/image-generation/bria/replace-background" }, - { text: "Bria Fibo Edit", link: "/model-api-reference/image-generation/bria/fibo/edit" }, - { text: "Bria Fibo Lite", link: "/model-api-reference/image-generation/bria/fibo-lite" }, - { text: "Bria Fibo", link: "/model-api-reference/image-generation/bria/fibo" }, - { text: "Bria Reimagine 3.2", link: "/model-api-reference/image-generation/bria/reimagine/3.2" }, - { text: "Bria Reimagine", link: "/model-api-reference/image-generation/bria/reimagine" }, - { text: "BRIA RMBG 2.0", link: "/model-api-reference/image-generation/bria/background/remove" }, - { text: "Bria Expand Image", link: "/model-api-reference/image-generation/bria/expand" }, - { text: "Bria Eraser", link: "/model-api-reference/image-generation/bria/eraser" }, - { text: "Bria Product Shot", link: "/model-api-reference/image-generation/bria/product-shot" }, - { text: "Bria Background Replace", link: "/model-api-reference/image-generation/bria/background/replace" }, - { text: "Bria GenFill", link: "/model-api-reference/image-generation/bria/genfill" }, - { text: "Bria Text-to-Image Fast", link: "/model-api-reference/image-generation/bria/text-to-image/fast" }, - { text: "Bria Text to Image HD", link: "/model-api-reference/image-generation/bria/text-to-image/hd" }, - { text: "Bria Text-to-Image Base", link: "/model-api-reference/image-generation/bria/text-to-image/base" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -1290,37 +514,11 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "ElevenLabs", - collapsed: true, - items: [ - { text: "ElevenLabs Speech to Text", link: "/model-api-reference/image-generation/elevenlabs/speech-to-text" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "FASHN", - collapsed: true, - items: [ - { text: "FASHN Virtual Try-On V1.6", link: "/model-api-reference/image-generation/fashn/tryon/v1.6" }, - { text: "FASHN Virtual Try-On V1.5", link: "/model-api-reference/image-generation/fashn/tryon/v1.5" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. { text: "HiDream", collapsed: true, items: [ - { text: "HiDream O1 Dev Edit", link: "/model-api-reference/image-generation/hidream-ai/hidream-o1/dev/edit" }, - { text: "HiDream O1 Edit", link: "/model-api-reference/image-generation/hidream-ai/hidream-o1/edit" }, - { text: "HiDream O1", link: "/model-api-reference/image-generation/hidream-ai/hidream-o1" }, { text: "HiDream O1 Dev", link: "/model-api-reference/image-generation/hidream-ai/hidream-o1/dev" }, - { text: "HiDream I1 Full Edit", link: "/model-api-reference/image-generation/hidream-ai/hidream-i1/full/edit" }, - { text: "HiDream I1 Full", link: "/model-api-reference/image-generation/hidream-ai/hidream-i1/full" }, - { text: "HiDream I1 Dev", link: "/model-api-reference/image-generation/hidream-ai/hidream-i1/dev" }, - { text: "HiDream I1 Fast", link: "/model-api-reference/image-generation/hidream-ai/hidream-i1/fast" }, - { text: "HiDream E1", link: "/model-api-reference/image-generation/hidream-ai/hidream-e1/1" }, - { text: "HiDream E1 Full", link: "/model-api-reference/image-generation/hidream-ai/hidream-e1/full" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -1328,8 +526,10 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "hyper3d", collapsed: true, items: [ - { text: "Hyper3d", link: "/model-api-reference/image-generation/hyper3d/rodin/v2" }, - { text: "Hyper3D Rodin", link: "/model-api-reference/image-generation/hyper3d/rodin" }, + { text: "Rodin 2.5 Fast Text to 3D", link: "/model-api-reference/image-generation/hyper3d/rodin/2.5/fast/text-to-3d" }, + { text: "Rodin 2.5 Fast Image to 3D", link: "/model-api-reference/image-generation/hyper3d/rodin/2.5/fast/image-to-3d" }, + { text: "Rodin 2.5 Text to 3D", link: "/model-api-reference/image-generation/hyper3d/rodin/2.5/text-to-3d" }, + { text: "Rodin 2.5 Image to 3D", link: "/model-api-reference/image-generation/hyper3d/rodin/2.5/image-to-3d" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -1337,38 +537,8 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "Ideogram", collapsed: true, items: [ - { text: "Ideogram Remove Background", link: "/model-api-reference/image-generation/ideogram-ai/ideogram/remove-background" }, - { text: "Ideogram (ideogram-ai: ideogram / custom-models / generate)", link: "/model-api-reference/image-generation/ideogram-ai/ideogram/custom-models/generate" }, - { text: "Ideogram V3 Layerize Text", link: "/model-api-reference/image-generation/ideogram-ai/ideogram-v3/layerize-text" }, - { text: "Ideogram V3 Transparent", link: "/model-api-reference/image-generation/ideogram-ai/ideogram-v3/transparent" }, - { text: "Ideogram V3 Character Edit", link: "/model-api-reference/image-generation/ideogram-ai/ideogram-v3/character/edit" }, - { text: "Ideogram V3 Character", link: "/model-api-reference/image-generation/ideogram-ai/ideogram-v3/character" }, - { text: "Ideogram V3 Character Remix", link: "/model-api-reference/image-generation/ideogram-ai/ideogram-v3/character/remix" }, - { text: "Ideogram V3 Reframe", link: "/model-api-reference/image-generation/ideogram-ai/ideogram-v3/reframe" }, - { text: "Ideogram 3.0", link: "/model-api-reference/image-generation/ideogram-ai/ideogram-v3" }, - { text: "Ideogram V3 Replace Background", link: "/model-api-reference/image-generation/ideogram-ai/ideogram-v3/replace-background" }, - { text: "Ideogram V3 Remix", link: "/model-api-reference/image-generation/ideogram-ai/ideogram-v3/remix" }, - { text: "Ideogram V3 Edit", link: "/model-api-reference/image-generation/ideogram-ai/ideogram-v3/edit" }, - { text: "Ideogram V2A Turbo", link: "/model-api-reference/image-generation/ideogram-ai/ideogram-v2a/turbo" }, - { text: "Ideogram V2A", link: "/model-api-reference/image-generation/ideogram-ai/ideogram-v2a" }, - { text: "Ideogram V2A Remix", link: "/model-api-reference/image-generation/ideogram-ai/ideogram-v2a/remix" }, - { text: "Ideogram V2A Turbo Remix", link: "/model-api-reference/image-generation/ideogram-ai/ideogram-v2a/turbo/remix" }, - { text: "Ideogram Upscale", link: "/model-api-reference/image-generation/ideogram-ai/ideogram/upscale" }, - { text: "Ideogram V2 Edit", link: "/model-api-reference/image-generation/ideogram-ai/ideogram-v2/edit" }, - { text: "Ideogram V2", link: "/model-api-reference/image-generation/ideogram-ai/ideogram-v2" }, - { text: "Ideogram V2 Turbo", link: "/model-api-reference/image-generation/ideogram-ai/ideogram-v2/turbo" }, - { text: "Ideogram V2 Remix", link: "/model-api-reference/image-generation/ideogram-ai/ideogram-v2/remix" }, - { text: "Ideogram V2 Turbo Remix", link: "/model-api-reference/image-generation/ideogram-ai/ideogram-v2/turbo/remix" }, - { text: "Ideogram V2 Turbo Edit", link: "/model-api-reference/image-generation/ideogram-ai/ideogram-v2/turbo/edit" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "ImagineArt", - collapsed: true, - items: [ - { text: "Imagineart 2.0 Edit Preview", link: "/model-api-reference/image-generation/imagineart/imagineart-2.0-edit-preview/image-to-image" }, - { text: "Imagineart 2.0 Preview", link: "/model-api-reference/image-generation/imagineart/imagineart-2.0-preview/text-to-image" }, + { text: "Ideogram 3.0 Text to Image", link: "/model-api-reference/image-generation/ideogram-ai/ideogram-v3" }, + { text: "Ideogram 3.0 Edit", link: "/model-api-reference/image-generation/ideogram-ai/ideogram-v3/edit" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -1376,32 +546,8 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "KwaiVGI", collapsed: true, items: [ - { text: "Kling Image V3", link: "/model-api-reference/image-generation/kwaivgi/kling-image/v3" }, - { text: "Kling Image V3 Edit", link: "/model-api-reference/image-generation/kwaivgi/kling-image/v3/edit" }, - { text: "Kling Image (KwaiVGI: kling-image / o3 / edit)", link: "/model-api-reference/image-generation/kwaivgi/kling-image/o3/edit" }, - { text: "Kling Image (KwaiVGI: kling-image / o3)", link: "/model-api-reference/image-generation/kwaivgi/kling-image/o3" }, - { text: "Kling O1 Image", link: "/model-api-reference/image-generation/kwaivgi/kling-image/o1" }, - { text: "Kling Kolors Virtual TryOn v1.5", link: "/model-api-reference/image-generation/kwaivgi/kolors-tryon" }, - { text: "Kolors Image to Image", link: "/model-api-reference/image-generation/kwaivgi/kolors/image-to-image" }, - { text: "Kolors", link: "/model-api-reference/image-generation/kwaivgi/kolors" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Lightricks", - collapsed: true, - items: [ - { text: "LTX-2.3 22B Video to Video Trainer", link: "/model-api-reference/image-generation/lightricks/ltx23-v2v-trainer" }, - { text: "LTX-2.3 22B Video Trainer", link: "/model-api-reference/image-generation/lightricks/ltx23-video-trainer" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "meituan", - collapsed: true, - items: [ - { text: "Longcat Image (meituan: longcat-image / edit)", link: "/model-api-reference/image-generation/meituan/longcat-image/edit" }, - { text: "Longcat Image (meituan: longcat-image)", link: "/model-api-reference/image-generation/meituan/longcat-image" }, + { text: "Kling Image O3 Edit", link: "/model-api-reference/image-generation/kwaivgi/kling-image/o3/edit" }, + { text: "Kling Image O3 Text to Image", link: "/model-api-reference/image-generation/kwaivgi/kling-image/o3" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -1409,16 +555,9 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "Meshy", collapsed: true, items: [ - { text: "Meshy Rigging Multi Animation", link: "/model-api-reference/image-generation/meshy/rigging/multi-animation" }, - { text: "Meshy Rigging", link: "/model-api-reference/image-generation/meshy/rigging" }, - { text: "Meshy 6 - Multi Image To 3D", link: "/model-api-reference/image-generation/meshy/meshy-v6/multi-image-to-3d" }, - { text: "Meshy 6 (Meshy: meshy-v6)", link: "/model-api-reference/image-generation/meshy/meshy-v6" }, - { text: "Meshy 6 (Meshy: meshy-v6 / text-to-3d)", link: "/model-api-reference/image-generation/meshy/meshy-v6/text-to-3d" }, - { text: "Meshy 5 Retexture", link: "/model-api-reference/image-generation/meshy/meshy/v5/retexture" }, - { text: "Meshy 5 Remesh", link: "/model-api-reference/image-generation/meshy/meshy/v5/remesh" }, - { text: "Meshy 6 Preview (Meshy: meshy-v6-preview / text-to-3d)", link: "/model-api-reference/image-generation/meshy/meshy-v6-preview/text-to-3d" }, - { text: "Meshy 5 Multi", link: "/model-api-reference/image-generation/meshy/meshy/v5/multi-image-to-3d" }, - { text: "Meshy 6 Preview (Meshy: meshy-v6-preview)", link: "/model-api-reference/image-generation/meshy/meshy-v6-preview" }, + { text: "Meshy 7.1 Multi-Image to 3D", link: "/model-api-reference/image-generation/meshy/7.1/multi-image-to-3d" }, + { text: "Meshy 7.1 Image to 3D", link: "/model-api-reference/image-generation/meshy/7.1/image-to-3d" }, + { text: "Meshy 7.1 Text to 3D", link: "/model-api-reference/image-generation/meshy/7.1/text-to-3d" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -1426,15 +565,8 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "Meta", collapsed: true, items: [ - { text: "Sam 3 1 (Meta: sam-3-1 / image-rle)", link: "/model-api-reference/image-generation/meta/sam-3-1/image-rle" }, - { text: "Sam 3 1 (Meta: sam-3-1 / image)", link: "/model-api-reference/image-generation/meta/sam-3-1/image" }, - { text: "SAM 3 3D Align", link: "/model-api-reference/image-generation/meta/sam-3/3d-align" }, - { text: "Sam 3 (Meta: sam-3 / 3d-body)", link: "/model-api-reference/image-generation/meta/sam-3/3d-body" }, - { text: "Sam 3 (Meta: sam-3 / 3d-objects)", link: "/model-api-reference/image-generation/meta/sam-3/3d-objects" }, - { text: "Sam 3 (Meta: sam-3 / image-rle)", link: "/model-api-reference/image-generation/meta/sam-3/image-rle" }, - { text: "SAM 3 Embed", link: "/model-api-reference/image-generation/meta/sam-3/image/embed" }, + { text: "SAM 3 3D Objects", link: "/model-api-reference/image-generation/meta/sam-3/3d-objects" }, { text: "SAM 3 Image", link: "/model-api-reference/image-generation/meta/sam-3/image" }, - { text: "Demucs", link: "/model-api-reference/image-generation/meta/demucs" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -1442,8 +574,8 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "Microsoft", collapsed: true, items: [ - { text: "MAI Image 2.5 Pro (Edit)", link: "/model-api-reference/image-generation/microsoft/mai-image-2.5-pro/edit" }, - { text: "Mai Image 2.5", link: "/model-api-reference/image-generation/microsoft/mai-image-2.5/edit" }, + { text: "MAI Image 2.5 Pro Edit", link: "/model-api-reference/image-generation/microsoft/mai-image-2.5-pro/edit" }, + { text: "MAI Image 2.5 Edit", link: "/model-api-reference/image-generation/microsoft/mai-image-2.5/edit" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -1455,93 +587,11 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "MiniMax", - collapsed: true, - items: [ - { text: "Minimax Image Subject Reference", link: "/model-api-reference/image-generation/minimax/image-01/subject-reference" }, - { text: "MiniMax (Hailuo AI) Text to Image", link: "/model-api-reference/image-generation/minimax/image-01" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Mirelo", - collapsed: true, - items: [ - { text: "Mirelo SFX1.6 (Mirelo: sfx1.6 / inpaint-audio)", link: "/model-api-reference/image-generation/mirelo/sfx1.6/inpaint-audio" }, - { text: "Mirelo SFX1.6 (Mirelo: sfx1.6 / extend-audio)", link: "/model-api-reference/image-generation/mirelo/sfx1.6/extend-audio" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "NVIDIA", - collapsed: true, - items: [ - { text: "Cosmos 3 Super", link: "/model-api-reference/image-generation/nvidia/cosmos-3-super/text-to-image" }, - { text: "Nemotron 3 Nano Omni (NVIDIA: nemotron-3-nano-omni / vision)", link: "/model-api-reference/image-generation/nvidia/nemotron-3-nano-omni/vision" }, - { text: "Nemotron 3 Nano Omni (NVIDIA: nemotron-3-nano-omni / audio)", link: "/model-api-reference/image-generation/nvidia/nemotron-3-nano-omni/audio" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "patina", - collapsed: true, - items: [ - { text: "PATINA (patina: material / extract)", link: "/model-api-reference/image-generation/patina/material/extract" }, - { text: "PATINA (patina: material)", link: "/model-api-reference/image-generation/patina/material" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "pixal3d", - collapsed: true, - items: [ - { text: "Pixal3d", link: "/model-api-reference/image-generation/pixal3d/pixal3d" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Reve", - collapsed: true, - items: [ - { text: "Reve 2.1 (Reve: 2.1 / remix)", link: "/model-api-reference/image-generation/reve/2.1/remix" }, - { text: "Reve 2.1 (Reve: 2.1 / edit)", link: "/model-api-reference/image-generation/reve/2.1/edit" }, - { text: "Reve 2.1 (Reve: 2.1 / text-to-image)", link: "/model-api-reference/image-generation/reve/2.1/text-to-image" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. { text: "sandbase-ai", collapsed: true, items: [ - { text: "Phota Text to Image", link: "/model-api-reference/image-generation/sandbase-ai/phota" }, - { text: "Hy Wu Edit", link: "/model-api-reference/image-generation/sandbase-ai/hy-wu-edit" }, - { text: "Firered Image Edit V1.1", link: "/model-api-reference/image-generation/sandbase-ai/firered-image-edit-v1.1" }, { text: "try-on", link: "/model-api-reference/image-generation/sandbase-ai/cat-vton" }, - { text: "Sana", link: "/model-api-reference/image-generation/sandbase-ai/sana" }, - { text: "Creative Upscaler", link: "/model-api-reference/image-generation/sandbase-ai/creative-upscaler" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Stability AI", - collapsed: true, - items: [ - { text: "Stable Diffusion 3.5 Large", link: "/model-api-reference/image-generation/stability-ai/sd/3.5-large" }, - { text: "Stable Diffusion 3.5 Medium", link: "/model-api-reference/image-generation/stability-ai/sd/3.5-medium" }, - { text: "Stable Diffusion V3 (Stability AI: stable-diffusion-v3-medium)", link: "/model-api-reference/image-generation/stability-ai/stable-diffusion-v3-medium" }, - { text: "SDXL ControlNet Union (Stability AI: sdxl-controlnet-union / image-to-image)", link: "/model-api-reference/image-generation/stability-ai/sdxl-controlnet-union/image-to-image" }, - { text: "SDXL ControlNet Union (Stability AI: sdxl-controlnet-union)", link: "/model-api-reference/image-generation/stability-ai/sdxl-controlnet-union" }, - { text: "SDXL ControlNet Union (Stability AI: sdxl-controlnet-union / inpainting)", link: "/model-api-reference/image-generation/stability-ai/sdxl-controlnet-union/inpainting" }, - { text: "Stable Cascade", link: "/model-api-reference/image-generation/stability-ai/stable-cascade" }, - { text: "Stable Diffusion XL (Stability AI: fast-sdxl)", link: "/model-api-reference/image-generation/stability-ai/fast-sdxl" }, - { text: "Stable Diffusion V3 (Stability AI: stable-diffusion-v3-medium / image-to-image)", link: "/model-api-reference/image-generation/stability-ai/stable-diffusion-v3-medium/image-to-image" }, - { text: "SoteDiffusion", link: "/model-api-reference/image-generation/stability-ai/stable-cascade/sote-diffusion" }, - { text: "Stable Diffusion XL (Stability AI: fast-sdxl / image-to-image)", link: "/model-api-reference/image-generation/stability-ai/fast-sdxl/image-to-image" }, - { text: "Stable Diffusion v1.5", link: "/model-api-reference/image-generation/stability-ai/stable-diffusion-v15" }, - { text: "Stable Diffusion XL (Stability AI: fast-sdxl / inpainting)", link: "/model-api-reference/image-generation/stability-ai/fast-sdxl/inpainting" }, - { text: "ControlNet SDXL (Stability AI: fast-sdxl-controlnet-canny)", link: "/model-api-reference/image-generation/stability-ai/fast-sdxl-controlnet-canny" }, - { text: "ControlNet SDXL (Stability AI: fast-sdxl-controlnet-canny / image-to-image)", link: "/model-api-reference/image-generation/stability-ai/fast-sdxl-controlnet-canny/image-to-image" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -1549,29 +599,11 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "Tencent", collapsed: true, items: [ - { text: "Hunyuan 3D 3.1 Rapid Text to 3D", link: "/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/rapid/text-to-3d" }, { text: "Hunyuan Image 3.0 Edit", link: "/model-api-reference/image-generation/tencent/hunyuan-image/3.0/edit" }, - { text: "Hunyuan Image 3.0 Instruct", link: "/model-api-reference/image-generation/tencent/hunyuan-image/3.0/instruct" }, - { text: "Hunyuan 3D Smart Topology", link: "/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/smart-topology" }, - { text: "Hunyuan 3D 3.1 Rapid Image to 3D", link: "/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/rapid/image-to-3d" }, { text: "Hunyuan 3D 3.1 Pro Text to 3D", link: "/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/pro/text-to-3d" }, { text: "Hunyuan 3D 3.1 Pro Image to 3D", link: "/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/pro/image-to-3d" }, - { text: "Hunyuan 3D Part Splitter", link: "/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/part" }, - { text: "Hunyuan Motion Fast", link: "/model-api-reference/image-generation/tencent/hunyuan-motion/fast" }, - { text: "Hunyuan Motion", link: "/model-api-reference/image-generation/tencent/hunyuan-motion" }, - { text: "Hunyuan3d V3 (Tencent: hunyuan-3d / v3 / text-to-3d)", link: "/model-api-reference/image-generation/tencent/hunyuan-3d/v3/text-to-3d" }, - { text: "Hunyuan3d V3 (Tencent: hunyuan-3d / v3 / sketch-to-3d)", link: "/model-api-reference/image-generation/tencent/hunyuan-3d/v3/sketch-to-3d" }, - { text: "Hunyuan3d V3 (Tencent: hunyuan-3d / v3)", link: "/model-api-reference/image-generation/tencent/hunyuan-3d/v3" }, - { text: "Hunyuan Image 3.0", link: "/model-api-reference/image-generation/tencent/hunyuan-image/3.0" }, - { text: "Hunyuan Image", link: "/model-api-reference/image-generation/tencent/hunyuan-image/2.1" }, - { text: "Hunyuan World (Tencent: hunyuan-world)", link: "/model-api-reference/image-generation/tencent/hunyuan-world" }, - { text: "Hunyuan World (Tencent: hunyuan_world / image-to-world)", link: "/model-api-reference/image-generation/tencent/hunyuan_world/image-to-world" }, - { text: "Hunyuan3D (Tencent: hunyuan-3d / v2)", link: "/model-api-reference/image-generation/tencent/hunyuan-3d/v2" }, - { text: "Hunyuan3D (Tencent: hunyuan-3d / v2 / multi-view)", link: "/model-api-reference/image-generation/tencent/hunyuan-3d/v2/multi-view" }, - { text: "Hunyuan3D (Tencent: hunyuan-3d / v2 / mini-turbo)", link: "/model-api-reference/image-generation/tencent/hunyuan-3d/v2/mini-turbo" }, - { text: "Hunyuan3D (Tencent: hunyuan-3d / v2 / mini)", link: "/model-api-reference/image-generation/tencent/hunyuan-3d/v2/mini" }, - { text: "Hunyuan3D (Tencent: hunyuan3d / v2 / turbo)", link: "/model-api-reference/image-generation/tencent/hunyuan3d/v2/turbo" }, - { text: "Hunyuan3D (Tencent: hunyuan-3d / v2 / multi-view-turbo)", link: "/model-api-reference/image-generation/tencent/hunyuan-3d/v2/multi-view-turbo" }, + { text: "Hunyuan 3D 3.0 Image to 3D", link: "/model-api-reference/image-generation/tencent/hunyuan-3d/3.0/image-to-3d" }, + { text: "Hunyuan Image 3.0 Text to Image", link: "/model-api-reference/image-generation/tencent/hunyuan-image/3.0" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -1579,49 +611,19 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "Topaz Labs", collapsed: true, items: [ - { text: "Topaz Adjust Image", link: "/model-api-reference/image-generation/topaz/adjust/image" }, - { text: "Topaz Sharpen Image", link: "/model-api-reference/image-generation/topaz/sharpen/image" }, - { text: "Topaz Denoise Image", link: "/model-api-reference/image-generation/topaz/denoise/image" }, - { text: "Topaz Restore Image", link: "/model-api-reference/image-generation/topaz/restore/image" }, - { text: "Topaz Upscale Image Transparent", link: "/model-api-reference/image-generation/topaz/upscale/image/transparent" }, - { text: "Topaz Upscale Image Creative", link: "/model-api-reference/image-generation/topaz/upscale/image/creative" }, - { text: "Topaz Upscale Image Generative", link: "/model-api-reference/image-generation/topaz/upscale/image/generative" }, - { text: "Topaz Upscale Image Precision", link: "/model-api-reference/image-generation/topaz/upscale/image/precision" }, { text: "Topaz Upscale", link: "/model-api-reference/image-generation/topaz/upscale/image" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "trellis", - collapsed: true, - items: [ - { text: "Trellis 2 (trellis: trellis-2 / retexture)", link: "/model-api-reference/image-generation/trellis/trellis-2/retexture" }, - { text: "Trellis 2 (trellis: trellis-2)", link: "/model-api-reference/image-generation/trellis/trellis-2" }, - { text: "Trellis (trellis: trellis / multi)", link: "/model-api-reference/image-generation/trellis/trellis/multi" }, - { text: "Trellis (trellis: trellis)", link: "/model-api-reference/image-generation/trellis/trellis" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. { text: "Tripo3D", collapsed: true, items: [ - { text: "Triposplat", link: "/model-api-reference/image-generation/tripo3d/triposplat" }, + { text: "Tripo P2 Text to 3D", link: "/model-api-reference/image-generation/tripo3d/tripo-p2/text-to-3d" }, + { text: "Tripo P2 Image to 3D", link: "/model-api-reference/image-generation/tripo3d/tripo-p2/image-to-3d" }, { text: "Tripo H3.1 Multiview to 3D", link: "/model-api-reference/image-generation/tripo3d/tripo-h3.1/multiview-to-3d" }, { text: "Tripo H3.1 Text to 3D", link: "/model-api-reference/image-generation/tripo3d/tripo-h3.1/text-to-3d" }, { text: "Tripo H3.1 Image to 3D", link: "/model-api-reference/image-generation/tripo3d/tripo-h3.1/image-to-3d" }, - { text: "Tripo P1 Text to 3D", link: "/model-api-reference/image-generation/tripo3d/tripo-p1/text-to-3d" }, - { text: "Tripo P1 Image to 3D", link: "/model-api-reference/image-generation/tripo3d/tripo-p1/image-to-3d" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Vidu", - collapsed: true, - items: [ - { text: "Vidu Q2 Reference to Image", link: "/model-api-reference/image-generation/vidu/q2/reference-to-image" }, - { text: "Vidu Q2 Text to Image", link: "/model-api-reference/image-generation/vidu/q2/text-to-image" }, - { text: "Vidu 2.0 Reference to Image", link: "/model-api-reference/image-generation/vidu/2.0/reference-to-image" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -1629,20 +631,13 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "xAI", collapsed: true, items: [ - { text: "Grok Imagine Image Quality", link: "/model-api-reference/image-generation/xai/grok-imagine-image/quality" }, + { text: "Grok Imagine Image 2.0 Edit", link: "/model-api-reference/image-generation/xai/grok-imagine-image/2.0/edit" }, + { text: "Grok Imagine Image 2.0 Text to Image", link: "/model-api-reference/image-generation/xai/grok-imagine-image/2.0/text-to-image" }, + { text: "Grok Imagine Image Quality Text to Image", link: "/model-api-reference/image-generation/xai/grok-imagine-image/quality" }, { text: "Grok Imagine Image Quality Edit", link: "/model-api-reference/image-generation/xai/grok-imagine-image/quality/edit" }, { text: "Grok Imagine Image Edit", link: "/model-api-reference/image-generation/xai/grok-imagine-image/edit" }, ], }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "zhipu", - collapsed: true, - items: [ - { text: "Glm Image (zhipu: glm-image / edit)", link: "/model-api-reference/image-generation/zhipu/glm-image/edit" }, - { text: "Glm Image (zhipu: glm-image)", link: "/model-api-reference/image-generation/zhipu/glm-image" }, - ], - }, ], }, { @@ -1651,27 +646,14 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ items: [ { text: 'Overview', link: "/model-api-reference/video-generation" }, // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "OpenAI", - collapsed: true, - items: [ - { text: "Sora 2 Characters", link: "/model-api-reference/video-generation/openai/sora-2/characters" }, - { text: "Sora 2 Remix", link: "/model-api-reference/video-generation/openai/sora-2/video-to-video/remix" }, - { text: "Sora 2 Image to Video Pro", link: "/model-api-reference/video-generation/openai/sora-2/image-to-video/pro" }, - { text: "Sora 2 Text to Video Pro", link: "/model-api-reference/video-generation/openai/sora-2/text-to-video/pro" }, - { text: "Sora 2 (OpenAI: sora-2 / text-to-video)", link: "/model-api-reference/video-generation/openai/sora-2/text-to-video" }, - { text: "Sora 2 (OpenAI: sora-2 / image-to-video)", link: "/model-api-reference/video-generation/openai/sora-2/image-to-video" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. { text: "ByteDance", collapsed: true, items: [ + { text: "Seedance 2.5 Text to Video", link: "/model-api-reference/video-generation/bytedance/seedance/2.5/text-to-video" }, { text: "Seedance 2.5 Image to Video", link: "/model-api-reference/video-generation/bytedance/seedance/2.5/image-to-video" }, { text: "Seedance 2.5 Reference to Video", link: "/model-api-reference/video-generation/bytedance/seedance/2.5/reference-to-video" }, - { text: "Seedance 2.5 Text to Video", link: "/model-api-reference/video-generation/bytedance/seedance/2.5/text-to-video" }, - { text: "Seedance 2.0 Mini", link: "/model-api-reference/video-generation/bytedance/seedance/2.0/mini/reference-to-video" }, + { text: "Seedance 2.0 Mini Reference to Video", link: "/model-api-reference/video-generation/bytedance/seedance/2.0/mini/reference-to-video" }, { text: "Seedance 2.0 Mini Image to Video", link: "/model-api-reference/video-generation/bytedance/seedance/2.0/mini/image-to-video" }, { text: "Seedance 2.0 Mini Text to Video", link: "/model-api-reference/video-generation/bytedance/seedance/2.0/mini/text-to-video" }, { text: "Seedance 2.0 Text to Video", link: "/model-api-reference/video-generation/bytedance/seedance/2.0/text-to-video" }, @@ -1680,19 +662,10 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ { text: "Seedance 2.0 Image to Video", link: "/model-api-reference/video-generation/bytedance/seedance/2.0/image-to-video" }, { text: "Seedance 2.0 Fast Reference to Video", link: "/model-api-reference/video-generation/bytedance/seedance/2.0/fast/reference-to-video" }, { text: "Seedance 2.0 Fast Image to Video", link: "/model-api-reference/video-generation/bytedance/seedance/2.0/fast/image-to-video" }, - { text: "DreamActor 2.0", link: "/model-api-reference/video-generation/bytedance/dreamactor/2.0" }, - { text: "Seedance v1.5 Pro Text to Video", link: "/model-api-reference/video-generation/bytedance/seedance/1.5/pro/text-to-video" }, - { text: "Seedance v1.5 Pro Image to Video", link: "/model-api-reference/video-generation/bytedance/seedance/1.5/pro/image-to-video" }, - { text: "Lynx", link: "/model-api-reference/video-generation/bytedance/lynx" }, - { text: "Bytedance Video Upscaler", link: "/model-api-reference/video-generation/bytedance/upscaler/video" }, - { text: "Seedance 1.0 Pro Fast I2V", link: "/model-api-reference/video-generation/bytedance/seedance/1.0/pro/fast/image-to-video" }, - { text: "Seedance 1.0 Pro Fast T2V", link: "/model-api-reference/video-generation/bytedance/seedance/1.0/pro/fast/text-to-video" }, - { text: "Bytedance OmniHuman v1.5", link: "/model-api-reference/video-generation/bytedance/omnihuman/1.5" }, - { text: "SeedVR2", link: "/model-api-reference/video-generation/bytedance/seedvr/upscale/video" }, - { text: "Video Stylize", link: "/model-api-reference/video-generation/bytedance/video-stylize" }, - { text: "OmniHuman 1.0", link: "/model-api-reference/video-generation/bytedance/omnihuman/1.0" }, - { text: "Seedance 1.0 Pro (ByteDance: seedance / 1.0 / pro / text-to-video)", link: "/model-api-reference/video-generation/bytedance/seedance/1.0/pro/text-to-video" }, - { text: "Seedance 1.0 Pro (ByteDance: seedance / 1.0 / pro / image-to-video)", link: "/model-api-reference/video-generation/bytedance/seedance/1.0/pro/image-to-video" }, + { text: "ByteDance DreamActor 2.0", link: "/model-api-reference/video-generation/bytedance/dreamactor/2.0" }, + { text: "ByteDance Video Upscaler", link: "/model-api-reference/video-generation/bytedance/upscaler/video" }, + { text: "ByteDance OmniHuman 1.5", link: "/model-api-reference/video-generation/bytedance/omnihuman/1.5" }, + { text: "SeedVR2 Video Upscale", link: "/model-api-reference/video-generation/bytedance/seedvr/upscale/video" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -1700,29 +673,27 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "Google", collapsed: true, items: [ - { text: "Gemini Omni Flash (Google: gemini-omni-flash / reference-to-video)", link: "/model-api-reference/video-generation/google/gemini-omni-flash/reference-to-video" }, - { text: "Gemini Omni Flash (Google: gemini-omni-flash / image-to-video)", link: "/model-api-reference/video-generation/google/gemini-omni-flash/image-to-video" }, - { text: "Gemini Omni Flash (Google: gemini-omni-flash / edit)", link: "/model-api-reference/video-generation/google/gemini-omni-flash/edit" }, - { text: "Gemini Omni Flash (Google: gemini-omni-flash)", link: "/model-api-reference/video-generation/google/gemini-omni-flash" }, - { text: "Veo 3.1 Fast (Google: veo3.1 / fast / reference-to-video)", link: "/model-api-reference/video-generation/google/veo3.1/fast/reference-to-video" }, - { text: "Veo3.1 Lite FLF", link: "/model-api-reference/video-generation/google/veo3.1/lite/first-last-frame-to-video" }, - { text: "Veo3.1 Lite Image to Video", link: "/model-api-reference/video-generation/google/veo3.1/lite/image-to-video" }, - { text: "Veo3.1 Lite Text to Video", link: "/model-api-reference/video-generation/google/veo3.1/lite" }, - { text: "Veo 3.1 Fast (Google: veo3.1 / fast / extend-video)", link: "/model-api-reference/video-generation/google/veo3.1/fast/extend-video" }, - { text: "Veo 3.1 (Google: veo3.1 / extend-video)", link: "/model-api-reference/video-generation/google/veo3.1/extend-video" }, - { text: "Veo 3.1 Fast (Google: veo3.1 / fast / first-last-frame-to-video)", link: "/model-api-reference/video-generation/google/veo3.1/fast/first-last-frame-to-video" }, - { text: "Veo 3.1 (Google: veo3.1 / first-last-frame-to-video)", link: "/model-api-reference/video-generation/google/veo3.1/first-last-frame-to-video" }, - { text: "Veo 3.1 (Google: veo3.1 / reference-to-video)", link: "/model-api-reference/video-generation/google/veo3.1/reference-to-video" }, - { text: "Veo 3.1 Fast (Google: veo3.1 / fast)", link: "/model-api-reference/video-generation/google/veo3.1/fast" }, - { text: "Veo 3.1 Fast (Google: veo3.1 / fast / image-to-video)", link: "/model-api-reference/video-generation/google/veo3.1/fast/image-to-video" }, - { text: "Veo 3.1 (Google: veo3.1 / image-to-video)", link: "/model-api-reference/video-generation/google/veo3.1/image-to-video" }, - { text: "Veo 3.1 (Google: veo3.1)", link: "/model-api-reference/video-generation/google/veo3.1" }, - { text: "Veo3", link: "/model-api-reference/video-generation/google/veo-3/image-to-video" }, - { text: "Veo 3 Fast [Image to Video]", link: "/model-api-reference/video-generation/google/veo-3/fast/image-to-video" }, - { text: "Veo 3 Fast", link: "/model-api-reference/video-generation/google/veo-3/fast" }, - { text: "Veo 3", link: "/model-api-reference/video-generation/google/veo-3" }, - { text: "Veo 2 (Image to Video)", link: "/model-api-reference/video-generation/google/veo-2/image-to-video" }, - { text: "Veo 2", link: "/model-api-reference/video-generation/google/veo-2" }, + { text: "Gemini Omni Flash 1.1 Edit", link: "/model-api-reference/video-generation/google/gemini-omni-flash/1.1/edit" }, + { text: "Gemini Omni Flash 1.1 Text to Video", link: "/model-api-reference/video-generation/google/gemini-omni-flash/1.1/text-to-video" }, + { text: "Gemini Omni Flash 1.1 Image to Video", link: "/model-api-reference/video-generation/google/gemini-omni-flash/1.1/image-to-video" }, + { text: "Gemini Omni Flash 1.1 Reference to Video", link: "/model-api-reference/video-generation/google/gemini-omni-flash/1.1/reference-to-video" }, + { text: "Gemini Omni Flash Reference to Video", link: "/model-api-reference/video-generation/google/gemini-omni-flash/reference-to-video" }, + { text: "Gemini Omni Flash Image to Video", link: "/model-api-reference/video-generation/google/gemini-omni-flash/image-to-video" }, + { text: "Gemini Omni Flash Edit", link: "/model-api-reference/video-generation/google/gemini-omni-flash/edit" }, + { text: "Gemini Omni Flash Text to Video", link: "/model-api-reference/video-generation/google/gemini-omni-flash/text-to-video" }, + { text: "Veo 3.1 Fast Reference to Video", link: "/model-api-reference/video-generation/google/veo3.1/fast/reference-to-video" }, + { text: "Veo 3.1 Lite First-Last Frame to Video", link: "/model-api-reference/video-generation/google/veo3.1/lite/first-last-frame-to-video" }, + { text: "Veo 3.1 Lite Image to Video", link: "/model-api-reference/video-generation/google/veo3.1/lite/image-to-video" }, + { text: "Veo 3.1 Lite Text to Video", link: "/model-api-reference/video-generation/google/veo3.1/lite/text-to-video" }, + { text: "Veo 3.1 Fast Video Extend", link: "/model-api-reference/video-generation/google/veo3.1/fast/video-extend" }, + { text: "Veo 3.1 Video Extend", link: "/model-api-reference/video-generation/google/veo3.1/video-extend" }, + { text: "Veo 3.1 Fast First-Last Frame to Video", link: "/model-api-reference/video-generation/google/veo3.1/fast/first-last-frame-to-video" }, + { text: "Veo 3.1 First-Last Frame to Video", link: "/model-api-reference/video-generation/google/veo3.1/first-last-frame-to-video" }, + { text: "Veo 3.1 Reference to Video", link: "/model-api-reference/video-generation/google/veo3.1/reference-to-video" }, + { text: "Veo 3.1 Fast Text to Video", link: "/model-api-reference/video-generation/google/veo3.1/fast/text-to-video" }, + { text: "Veo 3.1 Fast Image to Video", link: "/model-api-reference/video-generation/google/veo3.1/fast/image-to-video" }, + { text: "Veo 3.1 Image to Video", link: "/model-api-reference/video-generation/google/veo3.1/image-to-video" }, + { text: "Veo 3.1 Text to Video", link: "/model-api-reference/video-generation/google/veo3.1/text-to-video" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -1730,18 +701,8 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "Luma", collapsed: true, items: [ - { text: "Luma Ray 3.2 Video to Video", link: "/model-api-reference/video-generation/luma/agent/ray/3.2/video-to-video" }, - { text: "Luma Ray 3.2 Reframe", link: "/model-api-reference/video-generation/luma/agent/ray/3.2/reframe" }, - { text: "Luma Ray 3.2 Text to Video", link: "/model-api-reference/video-generation/luma/agent/ray/3.2/text-to-video" }, - { text: "Luma Ray 3.2 Image to Video", link: "/model-api-reference/video-generation/luma/agent/ray/3.2/image-to-video" }, - { text: "Luma Ray Flash 2 Modify", link: "/model-api-reference/video-generation/luma/ray-flash-2/modify" }, - { text: "Luma Ray 2 Modify", link: "/model-api-reference/video-generation/luma/ray-2/modify" }, - { text: "Luma Ray Flash 2 Reframe", link: "/model-api-reference/video-generation/luma/ray-flash-2/reframe" }, - { text: "Luma Ray 2 Reframe", link: "/model-api-reference/video-generation/luma/ray-2/reframe" }, - { text: "Luma Ray Flash 2 Image to Video", link: "/model-api-reference/video-generation/luma/ray-flash-2/image-to-video" }, - { text: "Luma Ray Flash 2 Text to Video", link: "/model-api-reference/video-generation/luma/ray-flash-2/text-to-video" }, - { text: "Luma Ray 2 Image to Video", link: "/model-api-reference/video-generation/luma/ray-2/image-to-video" }, - { text: "Luma Ray 2 Text to Video", link: "/model-api-reference/video-generation/luma/ray-2/text-to-video" }, + { text: "Luma Ray 3.2 Text to Video", link: "/model-api-reference/video-generation/luma/ray/3.2/text-to-video" }, + { text: "Luma Ray 3.2 Image to Video", link: "/model-api-reference/video-generation/luma/ray/3.2/image-to-video" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -1749,48 +710,21 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "MiniMax", collapsed: true, items: [ - { text: "H3 Max Reference to Video", link: "/model-api-reference/video-generation/minimax/h3-max/reference-to-video" }, - { text: "H3 Max Image to Video", link: "/model-api-reference/video-generation/minimax/h3-max/image-to-video" }, + { text: "MiniMax H3 Max Turbo Video Extend", link: "/model-api-reference/video-generation/minimax/h3-max-turbo/video-extend" }, + { text: "MiniMax H3 Max Turbo Text to Video", link: "/model-api-reference/video-generation/minimax/h3-max-turbo/text-to-video" }, + { text: "MiniMax H3 Max Turbo Image to Video", link: "/model-api-reference/video-generation/minimax/h3-max-turbo/image-to-video" }, + { text: "MiniMax H3 Max Reference to Video", link: "/model-api-reference/video-generation/minimax/h3-max/reference-to-video" }, + { text: "MiniMax H3 Max Image to Video", link: "/model-api-reference/video-generation/minimax/h3-max/image-to-video" }, { text: "MiniMax H3 Max Text to Video", link: "/model-api-reference/video-generation/minimax/h3-max/text-to-video" }, - { text: "MiniMax H3 Video Regeneration", link: "/model-api-reference/video-generation/minimax/h3/video-regeneration" }, - { text: "MiniMax H3 (Text to Video)", link: "/model-api-reference/video-generation/minimax/h3/text-to-video" }, - { text: "MiniMax H3 (Image to Video)", link: "/model-api-reference/video-generation/minimax/h3/image-to-video" }, - { text: "MiniMax H3 (Reference to Video)", link: "/model-api-reference/video-generation/minimax/h3/reference-to-video" }, - { text: "MiniMax Hailuo 2.3 [Pro] (Image to Video)", link: "/model-api-reference/video-generation/minimax/hailuo/2.3/pro/image-to-video" }, - { text: "MiniMax Hailuo 2.3 Fast [Standard] (Image to Video)", link: "/model-api-reference/video-generation/minimax/hailuo/2.3-fast/standard/image-to-video" }, - { text: "MiniMax Hailuo 2.3 [Standard] (Image to Video)", link: "/model-api-reference/video-generation/minimax/hailuo/2.3/standard/image-to-video" }, - { text: "MiniMax Hailuo 2.3 Fast [Pro] (Image to Video)", link: "/model-api-reference/video-generation/minimax/hailuo/2.3-fast/pro/image-to-video" }, - { text: "MiniMax Hailuo 2.3 [Standard] (Text to Video)", link: "/model-api-reference/video-generation/minimax/hailuo/2.3/standard/text-to-video" }, - { text: "MiniMax Hailuo 2.3 [Pro] (Text to Video)", link: "/model-api-reference/video-generation/minimax/hailuo/2.3/pro/text-to-video" }, - { text: "MiniMax Hailuo 02 Fast (Image to Video)", link: "/model-api-reference/video-generation/minimax/hailuo/02-fast/image-to-video" }, - { text: "MiniMax Hailuo 02 [Standard] (Image to Video)", link: "/model-api-reference/video-generation/minimax/hailuo/02/standard/image-to-video" }, - { text: "MiniMax Hailuo 02 [Pro] (Image to Video)", link: "/model-api-reference/video-generation/minimax/hailuo/02/pro/image-to-video" }, - { text: "MiniMax Hailuo 02 [Pro] (Text to Video)", link: "/model-api-reference/video-generation/minimax/hailuo/02/pro/text-to-video" }, - { text: "MiniMax Hailuo 02 [Standard] (Text to Video)", link: "/model-api-reference/video-generation/minimax/hailuo/02/standard/text-to-video" }, - { text: "MiniMax (Hailuo AI) Video 01 Director - Image to Video", link: "/model-api-reference/video-generation/minimax/video-01-director/image-to-video" }, - { text: "MiniMax (Hailuo AI) Video 01 Director", link: "/model-api-reference/video-generation/minimax/video-01-director/text-to-video" }, - { text: "MiniMax (Hailuo AI) Video 01 Subject Reference", link: "/model-api-reference/video-generation/minimax/video-01/subject-reference" }, - { text: "MiniMax (Hailuo AI) Video 01 Live", link: "/model-api-reference/video-generation/minimax/video-01-live/text-to-video" }, - { text: "MiniMax (Hailuo AI) Video 01 (MiniMax: video-01-live / image-to-video)", link: "/model-api-reference/video-generation/minimax/video-01-live/image-to-video" }, - { text: "MiniMax (Hailuo AI) Video 01 (MiniMax: video-01 / image-to-video)", link: "/model-api-reference/video-generation/minimax/video-01/image-to-video" }, - { text: "MiniMax (Hailuo AI) Video 01 (MiniMax: video-01 / text-to-video)", link: "/model-api-reference/video-generation/minimax/video-01/text-to-video" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Pika", - collapsed: true, - items: [ - { text: "Pika V2.2 Frames", link: "/model-api-reference/video-generation/pika/v2.2/frames" }, - { text: "Pika V2.2 Image to Video", link: "/model-api-reference/video-generation/pika/v2.2/image-to-video" }, - { text: "Pika V2.2 Text to Video", link: "/model-api-reference/video-generation/pika/v2.2/text-to-video" }, - { text: "Pika V2 Image to Video Turbo", link: "/model-api-reference/video-generation/pika/v2/turbo/image-to-video" }, - { text: "Pika V1.5 Effects", link: "/model-api-reference/video-generation/pika/v1.5/effects" }, - { text: "Pika V2.2 Scenes", link: "/model-api-reference/video-generation/pika/v2.2/scenes" }, - { text: "Pika V2 Additions", link: "/model-api-reference/video-generation/pika/v2/additions" }, - { text: "Pika V2.1 Text to Video", link: "/model-api-reference/video-generation/pika/v2.1/text-to-video" }, - { text: "Pika V2 Text to Video Turbo", link: "/model-api-reference/video-generation/pika/v2/turbo/text-to-video" }, - { text: "Pika V2.1 Image to Video", link: "/model-api-reference/video-generation/pika/v2.1/image-to-video" }, + { text: "MiniMax H3 Text to Video", link: "/model-api-reference/video-generation/minimax/h3/text-to-video" }, + { text: "MiniMax H3 Image to Video", link: "/model-api-reference/video-generation/minimax/h3/image-to-video" }, + { text: "MiniMax H3 Reference to Video", link: "/model-api-reference/video-generation/minimax/h3/reference-to-video" }, + { text: "MiniMax Hailuo 2.3 Pro Image to Video", link: "/model-api-reference/video-generation/minimax/hailuo/2.3/pro/image-to-video" }, + { text: "MiniMax Hailuo 2.3 Fast Standard Image to Video", link: "/model-api-reference/video-generation/minimax/hailuo/2.3-fast/standard/image-to-video" }, + { text: "MiniMax Hailuo 2.3 Standard Image to Video", link: "/model-api-reference/video-generation/minimax/hailuo/2.3/standard/image-to-video" }, + { text: "MiniMax Hailuo 2.3 Fast Pro Image to Video", link: "/model-api-reference/video-generation/minimax/hailuo/2.3-fast/pro/image-to-video" }, + { text: "MiniMax Hailuo 2.3 Standard Text to Video", link: "/model-api-reference/video-generation/minimax/hailuo/2.3/standard/text-to-video" }, + { text: "MiniMax Hailuo 2.3 Pro Text to Video", link: "/model-api-reference/video-generation/minimax/hailuo/2.3/pro/text-to-video" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -1798,17 +732,7 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "VEED", collapsed: true, items: [ - { text: "VEED Lipsync (VEED: lipsync / 2.0)", link: "/model-api-reference/video-generation/veed/lipsync/2.0" }, - { text: "Subtitles", link: "/model-api-reference/video-generation/veed/subtitles" }, - { text: "VEED Fabric 1.0 Text to Video", link: "/model-api-reference/video-generation/veed/fabric-1.0/text-to-video" }, - { text: "VEED Video Background Removal Fast", link: "/model-api-reference/video-generation/veed/video-bg-removal/fast" }, - { text: "VEED Video Background Removal", link: "/model-api-reference/video-generation/veed/video-bg-removal" }, - { text: "VEED Video Background Removal Green Screen", link: "/model-api-reference/video-generation/veed/video-bg-removal/green-screen" }, - { text: "VEED Fabric 1.0 Fast Image to Video", link: "/model-api-reference/video-generation/veed/fabric-1.0/fast/image-to-video" }, - { text: "VEED Fabric 1.0 Image to Video", link: "/model-api-reference/video-generation/veed/fabric-1.0/image-to-video" }, - { text: "VEED Lipsync (VEED: lipsync)", link: "/model-api-reference/video-generation/veed/lipsync" }, - { text: "VEED Avatars Text to Video", link: "/model-api-reference/video-generation/veed/avatars/text-to-video" }, - { text: "VEED Avatars Audio to Video", link: "/model-api-reference/video-generation/veed/avatars/audio-to-video" }, + { text: "VEED Lipsync 2.0", link: "/model-api-reference/video-generation/veed/lipsync/2.0" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -1816,7 +740,19 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "Alibaba", collapsed: true, items: [ - { text: "Wan 3.0 Prime", link: "/model-api-reference/video-generation/alibaba/wan/3.0/prime/video" }, + { text: "Wan 2.7 Video Edit", link: "/model-api-reference/video-generation/alibaba/wan/2.7/video-edit" }, + { text: "Wan 2.7 Video Extend", link: "/model-api-reference/video-generation/alibaba/wan/2.7/video-extend" }, + { text: "Wan 3.0 Video Edit", link: "/model-api-reference/video-generation/alibaba/wan/3.0/video-edit" }, + { text: "Wan 3.0 Video Extend", link: "/model-api-reference/video-generation/alibaba/wan/3.0/video-extend" }, + { text: "Wan 3.0 Prime Video Edit", link: "/model-api-reference/video-generation/alibaba/wan/3.0/prime/video-edit" }, + { text: "Wan 3.0 Prime Video Extend", link: "/model-api-reference/video-generation/alibaba/wan/3.0/prime/video-extend" }, + { text: "Wan 3.0 Prime Text to Video", link: "/model-api-reference/video-generation/alibaba/wan/3.0/prime/text-to-video" }, + { text: "Wan 3.0 Prime Reference to Video", link: "/model-api-reference/video-generation/alibaba/wan/3.0/prime/reference-to-video" }, + { text: "Wan 3.0 Prime Video", link: "/model-api-reference/video-generation/alibaba/wan/3.0/prime/video" }, + { text: "Wan 3.0 Prime Image to Video", link: "/model-api-reference/video-generation/alibaba/wan/3.0/prime/image-to-video" }, + { text: "Wan 3.0 Reference to Video", link: "/model-api-reference/video-generation/alibaba/wan/3.0/reference-to-video" }, + { text: "Wan 3.0 Image to Video", link: "/model-api-reference/video-generation/alibaba/wan/3.0/image-to-video" }, + { text: "Wan 3.0 Text to Video", link: "/model-api-reference/video-generation/alibaba/wan/3.0/text-to-video" }, { text: "Wan 3.0 Video", link: "/model-api-reference/video-generation/alibaba/wan/3.0/video" }, { text: "Happy Horse 1.1 Image to Video", link: "/model-api-reference/video-generation/alibaba/happy-horse/1.1/image-to-video" }, { text: "Happy Horse 1.1 Reference to Video", link: "/model-api-reference/video-generation/alibaba/happy-horse/1.1/reference-to-video" }, @@ -1827,77 +763,27 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ { text: "Happy Horse Text to Video", link: "/model-api-reference/video-generation/alibaba/happy-horse/text-to-video" }, { text: "Wan 2.7 Text to Video", link: "/model-api-reference/video-generation/alibaba/wan/2.7/text-to-video" }, { text: "Wan 2.7 Reference to Video", link: "/model-api-reference/video-generation/alibaba/wan/2.7/reference-to-video" }, - { text: "Wan 2.7 Edit Video", link: "/model-api-reference/video-generation/alibaba/wan/2.7/edit-video" }, { text: "Wan 2.7 Image to Video", link: "/model-api-reference/video-generation/alibaba/wan/2.7/image-to-video" }, - { text: "Wan Motion", link: "/model-api-reference/video-generation/alibaba/wan/motion" }, - { text: "Wan 2.6 Reference to Video Flash", link: "/model-api-reference/video-generation/alibaba/wan/2.6/reference-to-video/flash" }, - { text: "Wan 2.6 Image to Video Flash", link: "/model-api-reference/video-generation/alibaba/wan/2.6/image-to-video/flash" }, - { text: "Wan Move", link: "/model-api-reference/video-generation/alibaba/wan/move" }, + { text: "Wan 2.6 Flash Reference to Video", link: "/model-api-reference/video-generation/alibaba/wan/2.6/flash/reference-to-video" }, + { text: "Wan 2.6 Flash Image to Video", link: "/model-api-reference/video-generation/alibaba/wan/2.6/flash/image-to-video" }, { text: "Wan 2.6 Text to Video", link: "/model-api-reference/video-generation/alibaba/wan/2.6/text-to-video" }, { text: "Wan 2.6 Reference to Video", link: "/model-api-reference/video-generation/alibaba/wan/2.6/reference-to-video" }, { text: "Wan 2.6 Image to Video", link: "/model-api-reference/video-generation/alibaba/wan/2.6/image-to-video" }, - { text: "Wan Vision Enhancer", link: "/model-api-reference/video-generation/alibaba/wan/vision-enhancer" }, - { text: "Wan Alpha", link: "/model-api-reference/video-generation/alibaba/wan/alpha" }, - { text: "Wan 2.1 VACE Long Reframe", link: "/model-api-reference/video-generation/alibaba/wan/2.1/vace/long-reframe" }, { text: "Wan 2.5 Text to Video", link: "/model-api-reference/video-generation/alibaba/wan/2.5/text-to-video" }, { text: "Wan 2.5 Image to Video", link: "/model-api-reference/video-generation/alibaba/wan/2.5/image-to-video" }, - { text: "Wan 2.1 VACE Video Edit", link: "/model-api-reference/video-generation/alibaba/wan/2.1/vace/video-edit" }, { text: "Wan 2.2 Animate Replace", link: "/model-api-reference/video-generation/alibaba/wan/2.2/animate/replace" }, { text: "Wan 2.2 Animate Move", link: "/model-api-reference/video-generation/alibaba/wan/2.2/animate/move" }, - { text: "Wan 2.2 VACE Fun Reframe", link: "/model-api-reference/video-generation/alibaba/wan/2.2/vace-fun/reframe" }, - { text: "Wan 2.2 VACE Fun Outpainting", link: "/model-api-reference/video-generation/alibaba/wan/2.2/vace-fun/outpainting" }, - { text: "Wan 2.2 VACE Fun Inpainting", link: "/model-api-reference/video-generation/alibaba/wan/2.2/vace-fun/inpainting" }, - { text: "Wan 2.2 VACE Fun Depth", link: "/model-api-reference/video-generation/alibaba/wan/2.2/vace-fun/depth" }, - { text: "Wan Ati", link: "/model-api-reference/video-generation/alibaba/wan/ati" }, - { text: "Wan 2.2 Fun Control", link: "/model-api-reference/video-generation/alibaba/wan/2.2/fun-control" }, { text: "Wan 2.2 Speech to Video", link: "/model-api-reference/video-generation/alibaba/wan/2.2/speech-to-video" }, - { text: "Wan 2.2 Text to Video LoRA", link: "/model-api-reference/video-generation/alibaba/wan/2.2/text-to-video/lora" }, - { text: "Wan 2.2 I2V 480p LoRA", link: "/model-api-reference/video-generation/alibaba/wan/2.2/i2v-480p-lora" }, - { text: "Wan 2.2 I2V 720p LoRA", link: "/model-api-reference/video-generation/alibaba/wan/2.2/i2v-720p-lora" }, - { text: "Wan 2.2 Image to Video LoRA", link: "/model-api-reference/video-generation/alibaba/wan/2.2/image-to-video/lora" }, - { text: "Wan 2.2 5B Distilled", link: "/model-api-reference/video-generation/alibaba/wan/v2.2-5b/text-to-video/distill" }, - { text: "Wan", link: "/model-api-reference/video-generation/alibaba/wan/2.2/5b/fast/text-to-video" }, - { text: "Wan 2.2 Video to Video", link: "/model-api-reference/video-generation/alibaba/wan/2.2/video-to-video" }, - { text: "Wan 2.2 Image to Video Turbo", link: "/model-api-reference/video-generation/alibaba/wan/2.2/image-to-video/turbo" }, - { text: "Wan 2.2 Text to Video Turbo", link: "/model-api-reference/video-generation/alibaba/wan/2.2/text-to-video/turbo" }, - { text: "Wan 2.2 5B Image to Video", link: "/model-api-reference/video-generation/alibaba/wan/2.2/5b/image-to-video" }, - { text: "Wan 2.2 5B Text to Video", link: "/model-api-reference/video-generation/alibaba/wan/2.2/5b/text-to-video" }, - { text: "Wan 2.2 Text to Video", link: "/model-api-reference/video-generation/alibaba/wan/2.2/text-to-video" }, - { text: "Wan 2.2 Image to Video", link: "/model-api-reference/video-generation/alibaba/wan/2.2/image-to-video" }, - { text: "Wan 2.1 VACE Reframe", link: "/model-api-reference/video-generation/alibaba/wan/2.1/vace/reframe" }, - { text: "Wan 2.1 VACE Outpainting", link: "/model-api-reference/video-generation/alibaba/wan/2.1/vace/outpainting" }, - { text: "Wan 2.1 VACE Inpainting", link: "/model-api-reference/video-generation/alibaba/wan/2.1/vace/inpainting" }, - { text: "Wan 2.1 VACE Pose", link: "/model-api-reference/video-generation/alibaba/wan/2.1/vace/pose" }, - { text: "Wan 2.1 VACE Depth", link: "/model-api-reference/video-generation/alibaba/wan/2.1/vace/depth" }, - { text: "Wan 2.1 VACE", link: "/model-api-reference/video-generation/alibaba/wan/2.1/vace" }, - { text: "Wan-2.1 First-Last-Frame-to-Video", link: "/model-api-reference/video-generation/alibaba/wan/2.1/flf-to-video" }, - { text: "Vace", link: "/model-api-reference/video-generation/alibaba/wan-vace" }, - { text: "Wan-2.1 Text-to-Video with LoRAs", link: "/model-api-reference/video-generation/alibaba/wan/2.1/text-to-video/lora" }, - { text: "Wan Effects", link: "/model-api-reference/video-generation/alibaba/wan/effects" }, - { text: "Wan-2.1 Image-to-Video with LoRAs", link: "/model-api-reference/video-generation/alibaba/wan/2.1/image-to-video/lora" }, - { text: "Wan-2.1 Image-to-Video", link: "/model-api-reference/video-generation/alibaba/wan/2.1/image-to-video" }, - { text: "Wan-2.1 Text-to-Video", link: "/model-api-reference/video-generation/alibaba/wan/2.1/text-to-video" }, { text: "FlashVSR", link: "/model-api-reference/video-generation/alibaba/flashvsr" }, - { text: "Wan 2.2 Exp0622", link: "/model-api-reference/video-generation/alibaba/wan2.2-i2v-exp0622" }, - { text: "Wan 2.7 Exp0622", link: "/model-api-reference/video-generation/alibaba/wan2.7-i2v-exp0622" }, - { text: "Wan-Animate", link: "/model-api-reference/video-generation/alibaba/wan-animate" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Bria", - collapsed: true, - items: [ - { text: "Bria's VRMBG 3.0", link: "/model-api-reference/video-generation/bria/video/background-removal/3.0" }, - { text: "Bria's VRMBG 3.0 Realtime", link: "/model-api-reference/video-generation/bria/video/background-removal/realtime" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. { - text: "Creatify", + text: "BFL", collapsed: true, items: [ - { text: "Creatify Aurora", link: "/model-api-reference/video-generation/creatify/aurora" }, + { text: "Flux 3 Text to Video", link: "/model-api-reference/video-generation/bfl/flux-3/text-to-video" }, + { text: "Flux 3 Image to Video", link: "/model-api-reference/video-generation/bfl/flux-3/image-to-video" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -1913,25 +799,11 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "HeyGen", collapsed: true, items: [ - { text: "Heygen v5 Digital Twin", link: "/model-api-reference/video-generation/heygen/avatar5/digital-twin" }, - { text: "HeyGen Video Agent V3", link: "/model-api-reference/video-generation/heygen/heygen/video-agent/v3" }, - { text: "HeyGen Lipsync Precision", link: "/model-api-reference/video-generation/heygen/heygen/lipsync/precision" }, - { text: "HeyGen Lipsync Speed", link: "/model-api-reference/video-generation/heygen/heygen/lipsync/speed" }, - { text: "HeyGen Translate Speed", link: "/model-api-reference/video-generation/heygen/heygen/translate/speed" }, - { text: "HeyGen Translate Precision", link: "/model-api-reference/video-generation/heygen/heygen/translate/precision" }, + { text: "HeyGen Avatar 5 Digital Twin", link: "/model-api-reference/video-generation/heygen/avatar5/digital-twin" }, + { text: "HeyGen Video Agent V3", link: "/model-api-reference/video-generation/heygen/video-agent/v3" }, + { text: "HeyGen Lipsync Precision", link: "/model-api-reference/video-generation/heygen/lipsync/precision" }, + { text: "HeyGen Lipsync Speed", link: "/model-api-reference/video-generation/heygen/lipsync/speed" }, { text: "HeyGen Avatar 4 Image to Video", link: "/model-api-reference/video-generation/heygen/heygen-avatar4/image-to-video" }, - { text: "HeyGen Avatar 4 Digital Twin", link: "/model-api-reference/video-generation/heygen/heygen-avatar4/digital-twin" }, - { text: "HeyGen Avatar 3 Digital Twin", link: "/model-api-reference/video-generation/heygen/heygen-avatar3/digital-twin" }, - { text: "HeyGen Video Agent V2", link: "/model-api-reference/video-generation/heygen/heygen/video-agent/v2" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "krea", - collapsed: true, - items: [ - { text: "Krea Wan 14b- Text to Video", link: "/model-api-reference/video-generation/krea/krea-wan/text-to-video" }, - { text: "Krea Wan 14B", link: "/model-api-reference/video-generation/krea/krea-wan/video-to-video" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -1939,79 +811,44 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "KwaiVGI", collapsed: true, items: [ - { text: "Kling 3.0 Turbo Standard Image to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/3.0/turbo/standard/image-to-video" }, - { text: "Kling 3.0 Turbo Pro Text to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/3.0/turbo/pro/text-to-video" }, - { text: "Kling 3.0 Turbo Pro Image to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/3.0/turbo/pro/image-to-video" }, - { text: "Kling 3.0 Turbo Standard Text to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/3.0/turbo/standard/text-to-video" }, - { text: "Kling Video O3 4k (KwaiVGI: kling-video / o3 / 4k / reference-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/reference-to-video" }, - { text: "Kling Video O3 4k (KwaiVGI: kling-video / o3 / 4k / image-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/image-to-video" }, - { text: "Kling Video O3 4k (KwaiVGI: kling-video / o3 / 4k / text-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/text-to-video" }, - { text: "Kling Video V3 4k (KwaiVGI: kling-video / v3 / 4k / image-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v3/4k/image-to-video" }, - { text: "Kling Video V3 4k (KwaiVGI: kling-video / v3 / 4k / text-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v3/4k/text-to-video" }, - { text: "Kling Video V3 Standard (KwaiVGI: kling-video / v3 / standard / motion-control)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v3/standard/motion-control" }, - { text: "Kling Video V3 Pro (KwaiVGI: kling-video / v3 / pro / motion-control)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v3/pro/motion-control" }, - { text: "Kling Video V3 Pro (KwaiVGI: kling-video / v3 / pro / image-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v3/pro/image-to-video" }, - { text: "Kling Video V3 Standard (KwaiVGI: kling-video / v3 / standard / image-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v3/standard/image-to-video" }, - { text: "Kling Video V3 Pro (KwaiVGI: kling-video / v3 / pro / text-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v3/pro/text-to-video" }, - { text: "Kling Video O3 Pro (KwaiVGI: kling-video / o3 / pro / image-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/image-to-video" }, - { text: "Kling Video O3 Standard (KwaiVGI: kling-video / o3 / standard / image-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/image-to-video" }, - { text: "Kling Video O3 Pro (KwaiVGI: kling-video / o3 / pro / reference-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/reference-to-video" }, - { text: "Kling Video V3 Standard (KwaiVGI: kling-video / v3 / standard / text-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v3/standard/text-to-video" }, - { text: "Kling Video O3 Pro (KwaiVGI: kling-video / o3 / pro / edit)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/edit" }, - { text: "Kling Video O3 Standard (KwaiVGI: kling-video / o3 / standard / reference-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/reference-to-video" }, - { text: "Kling Video O3 Pro (KwaiVGI: kling-video / o3 / pro / text-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/text-to-video" }, - { text: "Kling Video O3 Pro (KwaiVGI: kling-video / o3 / pro / video-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/video-to-video" }, - { text: "Kling Video O3 Standard (KwaiVGI: kling-video / o3 / standard / text-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/text-to-video" }, - { text: "Kling Video O3 Standard (KwaiVGI: kling-video / o3 / standard / edit)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/edit" }, - { text: "Kling Video O3 Standard (KwaiVGI: kling-video / o3 / standard / video-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/video-to-video" }, - { text: "Kling Video V2.6 Standard", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v2.6/standard/motion-control" }, - { text: "Kling Video V2.6 Pro (KwaiVGI: kling-video / v2.6 / pro / motion-control)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v2.6/pro/motion-control" }, - { text: "Kling Video Create Voice", link: "/model-api-reference/video-generation/kwaivgi/kling-video/create-voice" }, - { text: "Kling Video O1 Standard (KwaiVGI: kling-video / o1 / standard / reference-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o1/standard/reference-to-video" }, - { text: "Kling Video O1 Standard (KwaiVGI: kling-video / o1 / standard / image-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o1/standard/image-to-video" }, - { text: "Kling Video O1 Standard (KwaiVGI: kling-video / o1 / standard / video-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o1/standard/video-to-video" }, - { text: "Kling Video O1 Standard (KwaiVGI: kling-video / o1 / standard / edit)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o1/standard/edit" }, - { text: "Kling AI Avatar v2 Pro", link: "/model-api-reference/video-generation/kwaivgi/kling-video/ai-avatar/2.0/pro" }, - { text: "Kling AI Avatar v2 Standard", link: "/model-api-reference/video-generation/kwaivgi/kling-video/ai-avatar/2.0/standard" }, - { text: "Kling Video V2.6 Pro (KwaiVGI: kling-video / v2.6 / pro / text-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v2.6/pro/text-to-video" }, - { text: "Kling Video V2.6 Pro (KwaiVGI: kling-video / v2.6 / pro / image-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v2.6/pro/image-to-video" }, - { text: "Kling Video O1 Pro (KwaiVGI: kling-video / o1 / pro / image-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o1/pro/image-to-video" }, - { text: "Kling Video O1 Pro (KwaiVGI: kling-video / o1 / pro / reference-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o1/pro/reference-to-video" }, - { text: "Kling Video O1 Pro (KwaiVGI: kling-video / o1 / pro / edit)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o1/pro/edit" }, - { text: "Kling Video O1 Pro (KwaiVGI: kling-video / o1 / pro / video-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o1/pro/video-to-video" }, - { text: "Kling Video V2.5 Turbo Standard", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v2.5-turbo/standard/image-to-video" }, - { text: "Kling Video V2.5 Turbo Pro (KwaiVGI: kling-video / v2.5-turbo / pro / image-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v2.5-turbo/pro/image-to-video" }, - { text: "Kling Video V2.5 Turbo Pro (KwaiVGI: kling-video / v2.5-turbo / pro / text-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v2.5-turbo/pro/text-to-video" }, - { text: "Kling AI Avatar", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v1/standard/ai-avatar" }, - { text: "Kling AI Avatar Pro", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v1/pro/ai-avatar" }, - { text: "Kling Video V2.1 Master (KwaiVGI: kling-video / v2.1 / master / text-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v2.1/master/text-to-video" }, - { text: "Kling Video V2.1 Master (KwaiVGI: kling-video / v2.1 / master / image-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v2.1/master/image-to-video" }, - { text: "Kling Video V2.1 Pro", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v2.1/pro/image-to-video" }, - { text: "Kling Video V2.1 Standard", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v2.1/standard/image-to-video" }, - { text: "Kling 1.6 Elements (KwaiVGI: kling-video / 1.6 / elements)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/1.6/elements" }, - { text: "Kling 1.6 Elements (KwaiVGI: kling-video / 1.6 / pro / elements)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/1.6/pro/elements" }, - { text: "Kling Video V2 Master (KwaiVGI: kling-video / v2 / master / image-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v2/master/image-to-video" }, - { text: "Kling Video V2 Master (KwaiVGI: kling-video / v2 / master / text-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v2/master/text-to-video" }, - { text: "Kling LipSync Audio-to-Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/lipsync" }, - { text: "Kling LipSync Text-to-Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/lipsync/text-to-video" }, - { text: "Kling 1.6 (KwaiVGI: kling-video / 1.6 / effects)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/1.6/effects" }, - { text: "Kling 1.6 (KwaiVGI: kling-video / 1.6 / pro / effects)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/1.6/pro/effects" }, - { text: "Kling 1.0", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v1/standard/effects" }, - { text: "Kling 1.5", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v1.5/pro/effects" }, - { text: "Kling Video V1.6 Pro (KwaiVGI: kling-video / v1.6 / pro / text-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v1.6/pro/text-to-video" }, - { text: "Kling Video V1.6 Standard (KwaiVGI: kling-video / v1.6 / standard / image-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v1.6/standard/image-to-video" }, - { text: "Kling Video V1.6 Pro (KwaiVGI: kling-video / v1.6 / pro / image-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v1.6/pro/image-to-video" }, - { text: "Kling Video V1.6 Standard (KwaiVGI: kling-video / v1.6 / standard / text-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v1.6/standard/text-to-video" }, - { text: "Kling Video V1 Standard (KwaiVGI: kling-video / v1 / standard / text-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v1/standard/text-to-video" }, - { text: "Kling Video V1.5 Pro (KwaiVGI: kling-video / v1.5 / pro / text-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v1.5/pro/text-to-video" }, - { text: "Kling Video V1 Standard (KwaiVGI: kling-video / v1 / standard / image-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v1/standard/image-to-video" }, - { text: "Kling Video V1.5 Pro (KwaiVGI: kling-video / v1.5 / pro / image-to-video)", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v1.5/pro/image-to-video" }, + { text: "Kling O3 4K Video Edit", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/edit" }, + { text: "Kling O3 4K Video Reference", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/video-to-video" }, + { text: "Kling O3 4K Reference to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/reference-to-video" }, + { text: "Kling O3 4K Image to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/image-to-video" }, + { text: "Kling O3 4K Text to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/text-to-video" }, + { text: "Kling V3 4K Image to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v3/4k/image-to-video" }, + { text: "Kling V3 4K Text to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v3/4k/text-to-video" }, + { text: "Kling V3 Standard Motion Control", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v3/standard/motion-control" }, + { text: "Kling V3 Pro Motion Control", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v3/pro/motion-control" }, + { text: "Kling O3 Pro Text to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/text-to-video" }, + { text: "Kling O3 Standard Text to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/text-to-video" }, + { text: "Kling O3 Pro Image to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/image-to-video" }, + { text: "Kling O3 Standard Image to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/image-to-video" }, + { text: "Kling O3 Pro Video Edit", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/edit" }, + { text: "Kling O3 Standard Video Edit", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/edit" }, + { text: "Kling O3 Pro Reference to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/reference-to-video" }, + { text: "Kling O3 Standard Reference to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/reference-to-video" }, + { text: "Kling O3 Pro Video Reference", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/video-to-video" }, + { text: "Kling O3 Standard Video Reference", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/video-to-video" }, + { text: "Kling V3 Pro Text to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v3/pro/text-to-video" }, + { text: "Kling V3 Standard Text to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v3/standard/text-to-video" }, + { text: "Kling V3 Pro Image to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v3/pro/image-to-video" }, + { text: "Kling V3 Standard Image to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v3/standard/image-to-video" }, + { text: "Kling V2.6 Standard Motion Control", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v2.6/standard/motion-control" }, + { text: "Kling V2.6 Pro Motion Control", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v2.6/pro/motion-control" }, + { text: "Kling AI Avatar 2.0 Pro", link: "/model-api-reference/video-generation/kwaivgi/kling-video/ai-avatar/2.0/pro" }, + { text: "Kling AI Avatar 2.0 Standard", link: "/model-api-reference/video-generation/kwaivgi/kling-video/ai-avatar/2.0/standard" }, + { text: "Kling V2.6 Pro Text to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v2.6/pro/text-to-video" }, + { text: "Kling V2.6 Pro Image to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v2.6/pro/image-to-video" }, + { text: "Kling V2.5 Turbo Standard Image to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v2.5-turbo/standard/image-to-video" }, + { text: "Kling V2.5 Turbo Pro Image to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v2.5-turbo/pro/image-to-video" }, + { text: "Kling V2.5 Turbo Pro Text to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v2.5-turbo/pro/text-to-video" }, + { text: "Kling V4", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v4" }, + { text: "Kling O3", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3" }, { text: "Kling 3.0 Omni Pro Image to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/3.0/omni/pro/image-to-video" }, - { text: "Kling 3.0 Omni Pro Reference to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/3.0/omni/pro/reference-to-video" }, { text: "Kling 3.0 Omni Pro Video Edit", link: "/model-api-reference/video-generation/kwaivgi/kling-video/3.0/omni/pro/video-to-video/edit" }, - { text: "Kling 3.0 Omni Pro Video Reference", link: "/model-api-reference/video-generation/kwaivgi/kling-video/3.0/omni/pro/video-to-video/reference" }, - { text: "Kling Video O3", link: "/model-api-reference/video-generation/kwaivgi/kling-video/o3" }, - { text: "Kling Video V3", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v3" }, + { text: "Kling 3.0 Omni Pro Reference to Video", link: "/model-api-reference/video-generation/kwaivgi/kling-video/3.0/omni/pro/reference-to-video" }, + { text: "Kling V3", link: "/model-api-reference/video-generation/kwaivgi/kling-video/v3" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -2019,132 +856,23 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "Lightricks", collapsed: true, items: [ - { text: "Ltx 2.3", link: "/model-api-reference/video-generation/lightricks/ltx-2.3/reframe" }, - { text: "Ltx 2.3 Quality (Lightricks: ltx-2.3-quality / extend-video)", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-quality/extend-video" }, - { text: "Ltx 2.3 Quality (Lightricks: ltx-2.3-quality / hdr)", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-quality/hdr" }, - { text: "Ltx 2.3 Quality (Lightricks: ltx-2.3-quality / audio-to-video)", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-quality/audio-to-video" }, - { text: "Ltx 2.3 Quality (Lightricks: ltx-2.3-quality / image-to-video)", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-quality/image-to-video" }, - { text: "Ltx 2.3 Quality (Lightricks: ltx-2.3-quality / text-to-video)", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-quality/text-to-video" }, - { text: "LTX-2.3 22B Distilled (Lightricks: ltx-2.3-22b / distilled / reference-video-to-video / lora)", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-22b/distilled/reference-video-to-video/lora" }, - { text: "LTX 2.3 22B Distilled Reference to Video", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-22b-distilled/reference-to-video" }, - { text: "LTX 2.3 22B", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-22b/reference-video-to-video/lora" }, - { text: "LTX 2.3 22B Reference to Video", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-22b/reference-to-video" }, - { text: "LTX-2.3 22B (Lightricks: ltx-2.3-22b / extend-video / lora)", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-22b/extend-video/lora" }, - { text: "LTX 2.3 22B Extend", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-22b/extend" }, - { text: "LTX-2.3 22B Distilled (Lightricks: ltx-2.3-22b / distilled / video-to-video / lora)", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-22b/distilled/video-to-video/lora" }, - { text: "LTX-2.3 22B Distilled (Lightricks: ltx-2.3-22b / distilled / audio-to-video / lora)", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-22b/distilled/audio-to-video/lora" }, - { text: "LTX-2.3 22B Distilled (Lightricks: ltx-2.3-22b / distilled / image-to-video / lora)", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-22b/distilled/image-to-video/lora" }, - { text: "LTX-2.3 22B Distilled (Lightricks: ltx-2.3-22b / distilled / text-to-video / lora)", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-22b/distilled/text-to-video/lora" }, - { text: "LTX 2.3 22B Distilled Video to Video", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-22b-distilled/video-to-video" }, - { text: "LTX 2.3 22B Distilled Audio to Video", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-22b-distilled/audio-to-video" }, - { text: "LTX 2.3 22B Distilled Image to Video", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-22b-distilled/image-to-video" }, - { text: "LTX 2.3 22B Distilled Text to Video", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-22b-distilled/text-to-video" }, - { text: "LTX-2.3 22B (Lightricks: ltx-2.3-22b / video-to-video / lora)", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-22b/video-to-video/lora" }, - { text: "LTX-2.3 22B (Lightricks: ltx-2.3-22b / image-to-video / lora)", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-22b/image-to-video/lora" }, - { text: "LTX-2.3 22B (Lightricks: ltx-2.3-22b / text-to-video / lora)", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-22b/text-to-video/lora" }, - { text: "LTX 2.3 22B Video to Video", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-22b/video-to-video" }, - { text: "LTX 2.3 22B Audio to Video", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-22b/audio-to-video" }, - { text: "LTX 2.3 22B Image to Video", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-22b/image-to-video" }, - { text: "LTX 2.3 22B Text to Video", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-22b/text-to-video" }, - { text: "LTX-2.3 22B (Lightricks: ltx-2.3-22b / audio-to-video / lora)", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-22b/audio-to-video/lora" }, { text: "LTX 2.3 Fast Image to Video", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-fast/image-to-video" }, { text: "LTX 2.3 Fast Text to Video", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-fast/text-to-video" }, { text: "LTX 2.3 Pro Image to Video", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-pro/image-to-video" }, { text: "LTX 2.3 Pro Text to Video", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-pro/text-to-video" }, { text: "LTX 2.3 Pro Retake", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-pro/retake" }, { text: "LTX 2.3 Pro Audio to Video", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-pro/audio-to-video" }, - { text: "LTX 2.3 Pro Extend", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-pro/extend" }, - { text: "LTX 2.0 Pro Extend", link: "/model-api-reference/video-generation/lightricks/ltx-2.0-pro/extend" }, - { text: "LTX 2.0 Pro Audio to Video", link: "/model-api-reference/video-generation/lightricks/ltx-2.0-pro/audio-to-video" }, - { text: "LTX-2 19B (Lightricks: ltx-2-19b / audio-to-video / lora)", link: "/model-api-reference/video-generation/lightricks/ltx-2-19b/audio-to-video/lora" }, - { text: "LTX-2 19B Distilled (Lightricks: ltx-2-19b / distilled / audio-to-video)", link: "/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/audio-to-video" }, - { text: "LTX-2 19B (Lightricks: ltx-2-19b / audio-to-video)", link: "/model-api-reference/video-generation/lightricks/ltx-2-19b/audio-to-video" }, - { text: "LTX-2 19B Distilled (Lightricks: ltx-2-19b / distilled / video-to-video / lora)", link: "/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/video-to-video/lora" }, - { text: "LTX-2 19B (Lightricks: ltx-2-19b / video-to-video / lora)", link: "/model-api-reference/video-generation/lightricks/ltx-2-19b/video-to-video/lora" }, - { text: "LTX-2 19B (Lightricks: ltx-2-19b / video-to-video)", link: "/model-api-reference/video-generation/lightricks/ltx-2-19b/video-to-video" }, - { text: "LTX-2 19B Distilled (Lightricks: ltx-2-19b / distilled / extend-video / lora)", link: "/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/extend-video/lora" }, - { text: "LTX-2 19B Distilled (Lightricks: ltx-2-19b / distilled / extend-video)", link: "/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/extend-video" }, - { text: "LTX-2 19B Distilled (Lightricks: ltx-2-19b / distilled / image-to-video / lora)", link: "/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/image-to-video/lora" }, - { text: "LTX-2 19B Distilled (Lightricks: ltx-2-19b / distilled / image-to-video)", link: "/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/image-to-video" }, - { text: "LTX-2 19B Distilled (Lightricks: ltx-2-19b / distilled / text-to-video / lora)", link: "/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/text-to-video/lora" }, - { text: "LTX-2 19B Distilled (Lightricks: ltx-2-19b / distilled / text-to-video)", link: "/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/text-to-video" }, - { text: "LTX-2 19B (Lightricks: ltx-2-19b / extend-video / lora)", link: "/model-api-reference/video-generation/lightricks/ltx-2-19b/extend-video/lora" }, - { text: "LTX-2 19B (Lightricks: ltx-2-19b / image-to-video / lora)", link: "/model-api-reference/video-generation/lightricks/ltx-2-19b/image-to-video/lora" }, - { text: "LTX-2 19B (Lightricks: ltx-2-19b / extend-video)", link: "/model-api-reference/video-generation/lightricks/ltx-2-19b/extend-video" }, - { text: "LTX-2 19B (Lightricks: ltx-2-19b / text-to-video)", link: "/model-api-reference/video-generation/lightricks/ltx-2-19b/text-to-video" }, - { text: "LTX-2 19B (Lightricks: ltx-2-19b / image-to-video)", link: "/model-api-reference/video-generation/lightricks/ltx-2-19b/image-to-video" }, - { text: "LTX 2.0 Fast Text to Video", link: "/model-api-reference/video-generation/lightricks/ltx-2.0-fast/text-to-video" }, - { text: "LTX 2.0 Pro Text to Video", link: "/model-api-reference/video-generation/lightricks/ltx-2.0-pro/text-to-video" }, - { text: "LTX Video 2.0 Fast", link: "/model-api-reference/video-generation/lightricks/ltx-2.0-fast/image-to-video" }, - { text: "LTX 2.0 Pro Image to Video", link: "/model-api-reference/video-generation/lightricks/ltx-2.0-pro/image-to-video" }, - { text: "LTX 2.0 Pro Retake", link: "/model-api-reference/video-generation/lightricks/ltx-2.0-pro/retake" }, - { text: "LTX-Video 13B 0.9.8 Distilled (Lightricks: ltx-0.9.8-13b-distilled / image-to-video)", link: "/model-api-reference/video-generation/lightricks/ltx-0.9.8-13b-distilled/image-to-video" }, - { text: "LTX-Video 13B 0.9.8 Distilled (Lightricks: ltxv-13b-098-distilled)", link: "/model-api-reference/video-generation/lightricks/ltxv-13b-098-distilled" }, - { text: "LTX-Video 13B 0.9.8 Distilled (Lightricks: ltxv-13b-098-distilled / multiconditioning)", link: "/model-api-reference/video-generation/lightricks/ltxv-13b-098-distilled/multiconditioning" }, - { text: "LTX Video-0.9.7 13B Distilled (Lightricks: ltx-video-13b-distilled / image-to-video)", link: "/model-api-reference/video-generation/lightricks/ltx-video-13b-distilled/image-to-video" }, - { text: "LTX Video-0.9.7 13B (Lightricks: ltx-video-13b-dev / multiconditioning)", link: "/model-api-reference/video-generation/lightricks/ltx-video-13b-dev/multiconditioning" }, - { text: "LTX Video-0.9.7 13B (Lightricks: ltx-video-13b-dev / image-to-video)", link: "/model-api-reference/video-generation/lightricks/ltx-video-13b-dev/image-to-video" }, - { text: "LTX Video-0.9.7 13B (Lightricks: ltx-video-13b-dev)", link: "/model-api-reference/video-generation/lightricks/ltx-video-13b-dev" }, - { text: "LTX Video-0.9.7 13B Distilled (Lightricks: ltx-0.9.7-13b-distilled)", link: "/model-api-reference/video-generation/lightricks/ltx-0.9.7-13b-distilled" }, - { text: "LTX Video-0.9.7 LoRA (Lightricks: ltx-video-lora / multiconditioning)", link: "/model-api-reference/video-generation/lightricks/ltx-video-lora/multiconditioning" }, - { text: "LTX Video-0.9.7 LoRA (Lightricks: ltx-video-lora / image-to-video)", link: "/model-api-reference/video-generation/lightricks/ltx-video-lora/image-to-video" }, - { text: "LTX Video-0.9.5", link: "/model-api-reference/video-generation/lightricks/ltx-video-v095" }, - { text: "LTX Video (preview) (Lightricks: ltx-video / image-to-video)", link: "/model-api-reference/video-generation/lightricks/ltx-video/image-to-video" }, - { text: "LTX Video (preview) (Lightricks: ltx-video)", link: "/model-api-reference/video-generation/lightricks/ltx-video" }, + { text: "LTX 2.3 Pro Video Extend", link: "/model-api-reference/video-generation/lightricks/ltx-2.3-pro/video-extend" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. { - text: "meituan", + text: "MeiGen-AI", collapsed: true, items: [ - { text: "Longcat Multi Avatar", link: "/model-api-reference/video-generation/meituan/longcat-multi-avatar/image-audio-to-video" }, - { text: "LongCat Single Avatar", link: "/model-api-reference/video-generation/meituan/longcat-single-avatar/image-audio-to-video" }, - { text: "Longcat Single Avatar", link: "/model-api-reference/video-generation/meituan/longcat-single-avatar/audio-to-video" }, - { text: "LongCat Video (meituan: longcat-video / text-to-video / 720p)", link: "/model-api-reference/video-generation/meituan/longcat-video/text-to-video/720p" }, - { text: "LongCat Video (meituan: longcat-video / image-to-video)", link: "/model-api-reference/video-generation/meituan/longcat-video/image-to-video" }, - { text: "LongCat Video (meituan: longcat-video / image-to-video-480p)", link: "/model-api-reference/video-generation/meituan/longcat-video/image-to-video-480p" }, - { text: "LongCat Video (meituan: longcat-video / text-to-video / 480p)", link: "/model-api-reference/video-generation/meituan/longcat-video/text-to-video/480p" }, - { text: "LongCat Video Distilled (meituan: longcat-video / distilled / image-to-video)", link: "/model-api-reference/video-generation/meituan/longcat-video/distilled/image-to-video" }, - { text: "LongCat Video Distilled (meituan: longcat-video / distilled / text-to-video-720p)", link: "/model-api-reference/video-generation/meituan/longcat-video/distilled/text-to-video-720p" }, - { text: "LongCat Video Distilled (meituan: longcat-video / distilled / image-to-video-480p)", link: "/model-api-reference/video-generation/meituan/longcat-video/distilled/image-to-video-480p" }, - { text: "LongCat Video Distilled (meituan: longcat-video / distilled / text-to-video / 480p)", link: "/model-api-reference/video-generation/meituan/longcat-video/distilled/text-to-video/480p" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Meta", - collapsed: true, - items: [ - { text: "SAM 3.1 Video", link: "/model-api-reference/video-generation/meta/sam-3-1/video-rle" }, - { text: "Sam 3 1", link: "/model-api-reference/video-generation/meta/sam-3-1/video" }, - { text: "Sam 3 (Meta: sam-3 / video-rle)", link: "/model-api-reference/video-generation/meta/sam-3/video-rle" }, - { text: "Sam 3 (Meta: sam-3 / video)", link: "/model-api-reference/video-generation/meta/sam-3/video" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Mirelo", - collapsed: true, - items: [ - { text: "Mirelo SFX1.6", link: "/model-api-reference/video-generation/mirelo/sfx1.6/video-to-video" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "NVIDIA", - collapsed: true, - items: [ - { text: "Cosmos 3 Super Image to Video", link: "/model-api-reference/video-generation/nvidia/cosmos-3-super/image-to-video" }, - { text: "Nemotron 3 Nano Omni", link: "/model-api-reference/video-generation/nvidia/nemotron-3-nano-omni/video" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Pixelcut", - collapsed: true, - items: [ - { text: "Pixelcut Video Background Removal", link: "/model-api-reference/video-generation/pixelcut/video-background-removal" }, + { text: "InfiniteTalk Video to Video", link: "/model-api-reference/video-generation/meigen/infinitetalk/video-to-video" }, + { text: "InfiniteTalk Text to Video", link: "/model-api-reference/video-generation/meigen/infinitetalk/text-to-video" }, + { text: "InfiniteTalk Image to Video", link: "/model-api-reference/video-generation/meigen/infinitetalk/image-to-video" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -2152,67 +880,8 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "PixVerse", collapsed: true, items: [ - { text: "PixVerse C1 Reference to Video", link: "/model-api-reference/video-generation/pixverse/c1/reference-to-video" }, - { text: "PixVerse C1 Text to Video", link: "/model-api-reference/video-generation/pixverse/c1/text-to-video" }, { text: "PixVerse C1 Image to Video", link: "/model-api-reference/video-generation/pixverse/c1/image-to-video" }, - { text: "PixVerse C1 Transition", link: "/model-api-reference/video-generation/pixverse/c1/transition" }, - { text: "PixVerse V6 Transition", link: "/model-api-reference/video-generation/pixverse/v6/transition" }, - { text: "PixVerse V6 Extend", link: "/model-api-reference/video-generation/pixverse/v6/extend" }, { text: "PixVerse V6 Image to Video", link: "/model-api-reference/video-generation/pixverse/v6/image-to-video" }, - { text: "PixVerse V6 Text to Video", link: "/model-api-reference/video-generation/pixverse/v6/text-to-video" }, - { text: "PixVerse V5.6 Transition", link: "/model-api-reference/video-generation/pixverse/v5.6/transition" }, - { text: "PixVerse V5.6 Image to Video", link: "/model-api-reference/video-generation/pixverse/v5.6/image-to-video" }, - { text: "PixVerse V5.6 Text to Video", link: "/model-api-reference/video-generation/pixverse/v5.6/text-to-video" }, - { text: "PixVerse V5.5 Effects", link: "/model-api-reference/video-generation/pixverse/v5.5/effects" }, - { text: "PixVerse V5.5 Transition", link: "/model-api-reference/video-generation/pixverse/v5.5/transition" }, - { text: "PixVerse V5.5 Image to Video", link: "/model-api-reference/video-generation/pixverse/v5.5/image-to-video" }, - { text: "PixVerse V5.5 Text to Video", link: "/model-api-reference/video-generation/pixverse/v5.5/text-to-video" }, - { text: "PixVerse Swap", link: "/model-api-reference/video-generation/pixverse/swap" }, - { text: "PixVerse V5 Transition", link: "/model-api-reference/video-generation/pixverse/v5/transition" }, - { text: "PixVerse V5 Effects", link: "/model-api-reference/video-generation/pixverse/v5/effects" }, - { text: "PixVerse V5 Image to Video", link: "/model-api-reference/video-generation/pixverse/v5/image-to-video" }, - { text: "PixVerse V5 Text to Video", link: "/model-api-reference/video-generation/pixverse/v5/text-to-video" }, - { text: "PixVerse Sound-effects", link: "/model-api-reference/video-generation/pixverse/sound-effects" }, - { text: "PixVerse Extend Fast", link: "/model-api-reference/video-generation/pixverse/extend/fast" }, - { text: "PixVerse Extend", link: "/model-api-reference/video-generation/pixverse/extend" }, - { text: "PixVerse Lipsync", link: "/model-api-reference/video-generation/pixverse/lipsync" }, - { text: "PixVerse V4.5 Transition", link: "/model-api-reference/video-generation/pixverse/v4.5/transition" }, - { text: "PixVerse V4.5 Image to Video Fast", link: "/model-api-reference/video-generation/pixverse/v4.5/image-to-video/fast" }, - { text: "PixVerse V4.5 Image to Video", link: "/model-api-reference/video-generation/pixverse/v4.5/image-to-video" }, - { text: "PixVerse V4.5 Text to Video Fast", link: "/model-api-reference/video-generation/pixverse/v4.5/text-to-video/fast" }, - { text: "PixVerse V4.5 Text to Video", link: "/model-api-reference/video-generation/pixverse/v4.5/text-to-video" }, - { text: "PixVerse V4.5 Effects", link: "/model-api-reference/video-generation/pixverse/v4.5/effects" }, - { text: "PixVerse V4 Effects", link: "/model-api-reference/video-generation/pixverse/v4/effects" }, - { text: "PixVerse V4 Image to Video Fast", link: "/model-api-reference/video-generation/pixverse/v4/image-to-video/fast" }, - { text: "PixVerse V4 Image to Video", link: "/model-api-reference/video-generation/pixverse/v4/image-to-video" }, - { text: "PixVerse V3.5 Effects", link: "/model-api-reference/video-generation/pixverse/v3.5/effects" }, - { text: "PixVerse V4 Text to Video", link: "/model-api-reference/video-generation/pixverse/v4/text-to-video" }, - { text: "PixVerse V3.5 Transition", link: "/model-api-reference/video-generation/pixverse/v3.5/transition" }, - { text: "PixVerse V4 Text to Video Fast", link: "/model-api-reference/video-generation/pixverse/v4/text-to-video/fast" }, - { text: "PixVerse V3.5 Image to Video", link: "/model-api-reference/video-generation/pixverse/v3.5/image-to-video" }, - { text: "PixVerse V3.5 Text to Video", link: "/model-api-reference/video-generation/pixverse/v3.5/text-to-video" }, - { text: "PixVerse V3.5 Text to Video Fast", link: "/model-api-reference/video-generation/pixverse/v3.5/text-to-video/fast" }, - { text: "PixVerse V3.5 Image to Video Fast", link: "/model-api-reference/video-generation/pixverse/v3.5/image-to-video/fast" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Sonilo", - collapsed: true, - items: [ - { text: "V1.1 Video to Video Music", link: "/model-api-reference/video-generation/sonilo/1.1/video-to-video-music" }, - { text: "V1.1 Video to Sound Effects", link: "/model-api-reference/video-generation/sonilo/1.1/video-to-sound-effects" }, - { text: "V1.1 Video to Video Sound Effects", link: "/model-api-reference/video-generation/sonilo/1.1/video-to-video-sound-effects" }, - { text: "V1.1", link: "/model-api-reference/video-generation/sonilo/1.1/video-to-music" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Stability AI", - collapsed: true, - items: [ - { text: "Stable Avatar", link: "/model-api-reference/video-generation/stability-ai/stable-avatar" }, - { text: "High Quality Stable Video Diffusion", link: "/model-api-reference/video-generation/stability-ai/stable-video" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -2220,12 +889,8 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "Sync Labs", collapsed: true, items: [ - { text: "sync-3 Avatar Image to Video", link: "/model-api-reference/video-generation/sync/sync-lipsync/3.0/image-to-video" }, - { text: "sync-3 Lipsync", link: "/model-api-reference/video-generation/sync/lipsync/v3" }, - { text: "Sync React-1", link: "/model-api-reference/video-generation/sync/lipsync/react-1" }, - { text: "Sync Lipsync", link: "/model-api-reference/video-generation/sync/lipsync/v2/pro" }, - { text: "Sync Lipsync 2.0", link: "/model-api-reference/video-generation/sync/lipsync/v2" }, - { text: "sync.so -- lipsync 1.9.0-beta", link: "/model-api-reference/video-generation/sync/sync-lipsync" }, + { text: "Sync 3 Avatar Image to Video", link: "/model-api-reference/video-generation/sync/lipsync/3.0/image-to-video" }, + { text: "Sync 3 Lipsync", link: "/model-api-reference/video-generation/sync/lipsync/3.0/video-to-video" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -2233,16 +898,7 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "Tencent", collapsed: true, items: [ - { text: "Hunyuan Video 1.5 Image to Video", link: "/model-api-reference/video-generation/tencent/hunyuan-video/1.5/image-to-video" }, { text: "Hunyuan Video 1.5 Text to Video", link: "/model-api-reference/video-generation/tencent/hunyuan-video/1.5/text-to-video" }, - { text: "Hunyuan Video Foley", link: "/model-api-reference/video-generation/tencent/hunyuan-video/foley" }, - { text: "Hunyuan Avatar", link: "/model-api-reference/video-generation/tencent/hunyuan-avatar" }, - { text: "Hunyuan Portrait", link: "/model-api-reference/video-generation/tencent/hunyuan-portrait" }, - { text: "Hunyuan Custom", link: "/model-api-reference/video-generation/tencent/hunyuan-custom" }, - { text: "Hunyuan Video Image to Video", link: "/model-api-reference/video-generation/tencent/hunyuan-video/image-to-video" }, - { text: "Hunyuan Video to Video", link: "/model-api-reference/video-generation/tencent/hunyuan-video/video-to-video" }, - { text: "Hunyuan Video LoRA Inference", link: "/model-api-reference/video-generation/tencent/hunyuan-video-lora" }, - { text: "Hunyuan Video Text to Video", link: "/model-api-reference/video-generation/tencent/hunyuan-video/text-to-video" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -2258,24 +914,13 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "Vidu", collapsed: true, items: [ + { text: "Vidu Q4 Image to Video", link: "/model-api-reference/video-generation/vidu/q4/image-to-video" }, + { text: "Vidu Q4 Reference to Video", link: "/model-api-reference/video-generation/vidu/q4/reference-to-video" }, { text: "Vidu Q3 Reference to Video Mix", link: "/model-api-reference/video-generation/vidu/q3/reference-to-video/mix" }, { text: "Vidu Q3 Image to Video Turbo", link: "/model-api-reference/video-generation/vidu/q3/image-to-video/turbo" }, { text: "Vidu Q3 Text to Video Turbo", link: "/model-api-reference/video-generation/vidu/q3/text-to-video/turbo" }, { text: "Vidu Q3 Image to Video", link: "/model-api-reference/video-generation/vidu/q3/image-to-video" }, { text: "Vidu Q3 Text to Video", link: "/model-api-reference/video-generation/vidu/q3/text-to-video" }, - { text: "Vidu Q2 Reference to Video Pro", link: "/model-api-reference/video-generation/vidu/q2/reference-to-video/pro" }, - { text: "Vidu Q2 Video Extension Pro", link: "/model-api-reference/video-generation/vidu/q2/video-extension/pro" }, - { text: "Vidu Q2 Image to Video Turbo", link: "/model-api-reference/video-generation/vidu/q2/image-to-video/turbo" }, - { text: "Vidu Q2 Image to Video Pro", link: "/model-api-reference/video-generation/vidu/q2/image-to-video/pro" }, - { text: "Vidu Q2 Text to Video", link: "/model-api-reference/video-generation/vidu/q2/text-to-video" }, - { text: "Vidu Q1 Reference to Video", link: "/model-api-reference/video-generation/vidu/q1/reference-to-video" }, - { text: "Vidu Q1 Start-End to Video", link: "/model-api-reference/video-generation/vidu/q1/start-end-to-video" }, - { text: "Vidu Q1 Text to Video", link: "/model-api-reference/video-generation/vidu/q1/text-to-video" }, - { text: "Vidu Q1 Image to Video", link: "/model-api-reference/video-generation/vidu/q1/image-to-video" }, - { text: "Vidu 2.0 Start-End to Video", link: "/model-api-reference/video-generation/vidu/2.0/start-end-to-video" }, - { text: "Vidu 2.0 Template to Video", link: "/model-api-reference/video-generation/vidu/2.0/template-to-video" }, - { text: "Vidu 2.0 Image to Video", link: "/model-api-reference/video-generation/vidu/2.0/image-to-video" }, - { text: "Vidu 2.0 Reference to Video", link: "/model-api-reference/video-generation/vidu/2.0/reference-to-video" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -2283,12 +928,16 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "xAI", collapsed: true, items: [ - { text: "Grok Imagine Video 1.5", link: "/model-api-reference/video-generation/xai/grok-imagine-video/1.5/image-to-video" }, + { text: "Grok Imagine Video 1.5 Lite Image to Video", link: "/model-api-reference/video-generation/xai/grok-imagine-video/1.5/lite/image-to-video" }, + { text: "Grok Imagine Video 1.5 Lite Text to Video", link: "/model-api-reference/video-generation/xai/grok-imagine-video/1.5/lite/text-to-video" }, + { text: "Grok Imagine Video 1.5 Reference to Video", link: "/model-api-reference/video-generation/xai/grok-imagine-video/1.5/reference-to-video" }, + { text: "Grok Imagine Video 1.5 Text to Video", link: "/model-api-reference/video-generation/xai/grok-imagine-video/1.5/text-to-video" }, + { text: "Grok Imagine Video 1.5 Image to Video", link: "/model-api-reference/video-generation/xai/grok-imagine-video/1.5/image-to-video" }, { text: "Grok Imagine Video Reference to Video", link: "/model-api-reference/video-generation/xai/grok-imagine-video/reference-to-video" }, - { text: "Grok Imagine Video Extend", link: "/model-api-reference/video-generation/xai/grok-imagine-video/extend" }, - { text: "Grok Imagine Video Edit", link: "/model-api-reference/video-generation/xai/grok-imagine-video/edit" }, - { text: "Grok Imagine Video (xAI: grok-imagine-video / image-to-video)", link: "/model-api-reference/video-generation/xai/grok-imagine-video/image-to-video" }, - { text: "Grok Imagine Video (xAI: grok-imagine-video / text-to-video)", link: "/model-api-reference/video-generation/xai/grok-imagine-video/text-to-video" }, + { text: "Grok Imagine Video Extend", link: "/model-api-reference/video-generation/xai/grok-imagine-video/video-extend" }, + { text: "Grok Imagine Video Edit", link: "/model-api-reference/video-generation/xai/grok-imagine-video/video-edit" }, + { text: "Grok Imagine Video Image to Video", link: "/model-api-reference/video-generation/xai/grok-imagine-video/image-to-video" }, + { text: "Grok Imagine Video Text to Video", link: "/model-api-reference/video-generation/xai/grok-imagine-video/text-to-video" }, ], }, ], @@ -2311,15 +960,17 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "ElevenLabs", collapsed: true, items: [ - { text: "Voice Changer", link: "/model-api-reference/audio-generation/elevenlabs/voice-changer" }, + { text: "ElevenLabs Eleven v4 Turbo", link: "/model-api-reference/audio-generation/elevenlabs/v4-turbo" }, + { text: "ElevenLabs Eleven v4", link: "/model-api-reference/audio-generation/elevenlabs/v4" }, + { text: "ElevenLabs Music v2.5", link: "/model-api-reference/audio-generation/elevenlabs/music/2.5" }, + { text: "ElevenLabs Music v2", link: "/model-api-reference/audio-generation/elevenlabs/music/2" }, { text: "Scribe V2", link: "/model-api-reference/audio-generation/elevenlabs/scribe-v2" }, - { text: "Music", link: "/model-api-reference/audio-generation/elevenlabs/music" }, + { text: "ElevenLabs Music", link: "/model-api-reference/audio-generation/elevenlabs/music" }, { text: "Text To Dialogue", link: "/model-api-reference/audio-generation/elevenlabs/text-to-dialogue" }, { text: "Sound Effects V2", link: "/model-api-reference/audio-generation/elevenlabs/sound-effects-v2" }, { text: "V3", link: "/model-api-reference/audio-generation/elevenlabs/v3" }, { text: "Turbo V2.5", link: "/model-api-reference/audio-generation/elevenlabs/turbo-v2.5" }, { text: "Multilingual V2", link: "/model-api-reference/audio-generation/elevenlabs/multilingual-v2" }, - { text: "ElevenLabs Audio Isolation", link: "/model-api-reference/audio-generation/elevenlabs/audio-isolation" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -2327,9 +978,10 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "Google", collapsed: true, items: [ + { text: "Gemini 3.8 Flash TTS", link: "/model-api-reference/audio-generation/google/gemini-3.8-flash-tts" }, + { text: "Gemini 3.8 Flash Lite TTS", link: "/model-api-reference/audio-generation/google/gemini-3.8-flash-lite-tts" }, + { text: "Lyria 3.5", link: "/model-api-reference/audio-generation/google/lyria-3.5" }, { text: "Gemini 3.1 Flash TTS", link: "/model-api-reference/audio-generation/google/gemini-3.1-flash-tts" }, - { text: "Gemini TTS", link: "/model-api-reference/audio-generation/google/gemini-tts" }, - { text: "Lyria2", link: "/model-api-reference/audio-generation/google/lyria-2" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -2337,29 +989,14 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "MiniMax", collapsed: true, items: [ - { text: "MiniMax Music 2.5", link: "/model-api-reference/audio-generation/minimax/music/2.5" }, + { text: "MiniMax Music 3", link: "/model-api-reference/audio-generation/minimax/music/3" }, { text: "MiniMax Music 2.6", link: "/model-api-reference/audio-generation/minimax/music/2.6" }, { text: "MiniMax Speech 2.8 HD", link: "/model-api-reference/audio-generation/minimax/speech/2.8/hd" }, { text: "MiniMax Speech 2.8 Turbo", link: "/model-api-reference/audio-generation/minimax/speech/2.8/turbo" }, - { text: "Minimax Music", link: "/model-api-reference/audio-generation/minimax/music/v2" }, { text: "MiniMax Speech 2.6 Turbo", link: "/model-api-reference/audio-generation/minimax/speech/2.6/turbo" }, { text: "MiniMax Speech 2.6 HD", link: "/model-api-reference/audio-generation/minimax/speech/2.6/hd" }, - { text: "MiniMax (Hailuo AI) Music v1.5", link: "/model-api-reference/audio-generation/minimax/music/v1.5" }, - { text: "Minimax", link: "/model-api-reference/audio-generation/minimax/preview/speech-2.5-hd" }, - { text: "MiniMax Speech 2.5 Turbo", link: "/model-api-reference/audio-generation/minimax/preview/speech-2.5-turbo" }, { text: "MiniMax Voice Design", link: "/model-api-reference/audio-generation/minimax/voice-design" }, - { text: "MiniMax Voice Cloning", link: "/model-api-reference/audio-generation/minimax/voice-clone" }, - { text: "MiniMax Speech-02 Turbo", link: "/model-api-reference/audio-generation/minimax/speech/02-turbo" }, - { text: "MiniMax Speech-02 HD", link: "/model-api-reference/audio-generation/minimax/speech/02-hd" }, - { text: "MiniMax (Hailuo AI) Music", link: "/model-api-reference/audio-generation/minimax/minimax-music" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Mirelo", - collapsed: true, - items: [ - { text: "Mirelo SFX1.6", link: "/model-api-reference/audio-generation/mirelo/sfx1.6/text-to-audio" }, + { text: "MiniMax Voice Clone", link: "/model-api-reference/audio-generation/minimax/voice-clone" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -2367,10 +1004,8 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "stability-ai", collapsed: true, items: [ - { text: "Stable Audio 2.5 Audio to Audio", link: "/model-api-reference/audio-generation/stability-ai/stable-audio/2.5/audio-to-audio" }, - { text: "Stable Audio 2.5 Text to Audio", link: "/model-api-reference/audio-generation/stability-ai/stable-audio/2.5/text-to-audio" }, - { text: "Stable Audio 2.5 Inpaint", link: "/model-api-reference/audio-generation/stability-ai/stable-audio/2.5/inpaint" }, - { text: "Stable Audio Open", link: "/model-api-reference/audio-generation/stability-ai/stable-audio/open" }, + { text: "Stable Audio 3 Medium Text to Audio", link: "/model-api-reference/audio-generation/stability-ai/stable-audio/3/medium/text-to-audio" }, + { text: "Stable Audio 3 Small Music", link: "/model-api-reference/audio-generation/stability-ai/stable-audio/3/small/music/text-to-audio" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -2378,23 +1013,8 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ text: "Alibaba", collapsed: true, items: [ - { text: "Qwen 3 TTS - Voice Design [1.7B]", link: "/model-api-reference/audio-generation/alibaba/qwen-3-tts/voice-design/1.7b" }, { text: "Qwen 3 TTS - Text to Speech [1.7B]", link: "/model-api-reference/audio-generation/alibaba/qwen-3-tts/1.7b" }, { text: "Qwen 3 TTS - Text to Speech [0.6B]", link: "/model-api-reference/audio-generation/alibaba/qwen-3-tts/0.6b" }, - { text: "Qwen 3 TTS - Clone Voice [1.7B]", link: "/model-api-reference/audio-generation/alibaba/qwen-3-tts/clone-voice/1.7b" }, - { text: "Qwen 3 TTS - Clone Voice [0.6B]", link: "/model-api-reference/audio-generation/alibaba/qwen-3-tts/clone-voice/0.6b" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "ace", - collapsed: true, - items: [ - { text: "ACE-Step Audio Outpaint", link: "/model-api-reference/audio-generation/ace/ace-step/audio-outpaint" }, - { text: "ACE-Step (ace: ace-step / audio-inpaint)", link: "/model-api-reference/audio-generation/ace/ace-step/audio-inpaint" }, - { text: "ACE-Step (ace: ace-step / audio-to-audio)", link: "/model-api-reference/audio-generation/ace/ace-step/audio-to-audio" }, - { text: "ACE-Step (ace: ace-step / prompt-to-audio)", link: "/model-api-reference/audio-generation/ace/ace-step/prompt-to-audio" }, - { text: "ACE-Step (ace: ace-step)", link: "/model-api-reference/audio-generation/ace/ace-step" }, ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. @@ -2406,24 +1026,6 @@ export const modelApiReferenceSidebarItems: DefaultTheme.SidebarItem[] = [ ], }, // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "KwaiVGI", - collapsed: true, - items: [ - { text: "Kling Video", link: "/model-api-reference/audio-generation/kwaivgi/kling-video/video-to-audio" }, - { text: "Kling TTS", link: "/model-api-reference/audio-generation/kwaivgi/kling-tts" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. - { - text: "Sonilo", - collapsed: true, - items: [ - { text: "V1.1 Text to Sound Effects", link: "/model-api-reference/audio-generation/sonilo/1.1/text-to-sound-effects" }, - { text: "Sonilo V1.1 Text to Music", link: "/model-api-reference/audio-generation/sonilo/1.1/text-to-music" }, - ], - }, - // Duplicate model names are qualified with provider and operation path for navigation clarity. { text: "xAI", collapsed: true, diff --git a/.vitepress/theme/generatedApiReferenceSpecs.ts b/.vitepress/theme/generatedApiReferenceSpecs.ts index 184d7024..ed42139c 100644 --- a/.vitepress/theme/generatedApiReferenceSpecs.ts +++ b/.vitepress/theme/generatedApiReferenceSpecs.ts @@ -416,7 +416,7 @@ export const generatedApiReferenceSpecs: Record = { "name": "model", "type": "string", "required": true, - "description": "Current model identifier, for example kwaivgi/kling-video/3.0/turbo/standard/text-to-video." + "description": "Current model identifier, for example kwaivgi/kling-video/v3/standard/text-to-video." }, { "name": "prompt", @@ -449,15 +449,15 @@ export const generatedApiReferenceSpecs: Record = { { "label": "cURL", "language": "bash", - "code": "curl -X POST https://api.sandbase.ai/v1/run \\\n -H \"Authorization: Bearer $SANDBASE_API_KEY\" \\\n -H \"Content-Type: application/json\" \\\n -d '{\"model\":\"kwaivgi/kling-video/3.0/turbo/standard/text-to-video\",\"prompt\":\"A cat playing piano\",\"duration\":5}'" + "code": "curl -X POST https://api.sandbase.ai/v1/run \\\n -H \"Authorization: Bearer $SANDBASE_API_KEY\" \\\n -H \"Content-Type: application/json\" \\\n -d '{\"model\":\"kwaivgi/kling-video/v3/standard/text-to-video\",\"prompt\":\"A cat playing piano\",\"duration\":5}'" }, { "label": "Python", "language": "python", - "code": "# 1. Submit generation request\nresponse = client.post(\"/v1/run\", json={\n \"model\": \"kwaivgi/kling-video/3.0/turbo/standard/text-to-video\",\n \"prompt\": \"A cat playing piano\",\n \"duration\": 5,\n \"webhook_url\": \"https://hooks.example.com/sandbase/task?token=opaque-token\"\n})\ngeneration_id = response.json()[\"id\"]\n\n# 2. SandBase posts the terminal event to webhook_url.\n# You may still poll the existing result endpoint as a fallback.\nimport time\nwhile True:\n result = client.get(f\"/v1/run/{generation_id}\").json()\n if result[\"status\"] in (\"completed\", \"failed\", \"timeout\"):\n print(result)\n break\n time.sleep(5)" + "code": "# 1. Submit generation request\nresponse = client.post(\"/v1/run\", json={\n \"model\": \"kwaivgi/kling-video/v3/standard/text-to-video\",\n \"prompt\": \"A cat playing piano\",\n \"duration\": 5,\n \"webhook_url\": \"https://hooks.example.com/sandbase/task?token=opaque-token\"\n})\ngeneration_id = response.json()[\"id\"]\n\n# 2. SandBase posts the terminal event to webhook_url.\n# You may still poll the existing result endpoint as a fallback.\nimport time\nwhile True:\n result = client.get(f\"/v1/run/{generation_id}\").json()\n if result[\"status\"] in (\"completed\", \"failed\", \"timeout\"):\n print(result)\n break\n time.sleep(5)" } ], - "response": { "status": "202 Accepted", "code": "{\n \"id\": \"run_01...\",\n \"status\": \"pending\",\n \"model\": \"kwaivgi/kling-video/3.0/turbo/standard/text-to-video\"\n}" } + "response": { "status": "202 Accepted", "code": "{\n \"id\": \"run_01...\",\n \"status\": \"pending\",\n \"model\": \"kwaivgi/kling-video/v3/standard/text-to-video\"\n}" } }, "images/generations": { "title": "Generate Image", diff --git a/.vitepress/theme/platform-api-sidebars/agentbody.ts b/.vitepress/theme/platform-api-sidebars/agentbody.ts index e3b1eaed..8efc4ff0 100644 --- a/.vitepress/theme/platform-api-sidebars/agentbody.ts +++ b/.vitepress/theme/platform-api-sidebars/agentbody.ts @@ -2,18 +2,18 @@ export default { "platform": "Agent Body", "slug": "agentbody", - "operationCount": 9, + "operationCount": 6, "groups": [ { "key": "users", "label": "Users & Accounts", "operations": [ { - "text": "LinkedIn Profile", + "text": "Agent Body LinkedIn Profile Lookup", "link": "/model-api-reference/platform-apis/agentbody/linkedin-profile" }, { - "text": "YouTube Channel Email", + "text": "Agent Body YouTube Channel Email", "link": "/model-api-reference/platform-apis/agentbody/youtube-channel-email" } ] @@ -23,31 +23,19 @@ export default { "label": "Other", "operations": [ { - "text": "YouTube Transcript", + "text": "Agent Body YouTube Transcript", "link": "/model-api-reference/platform-apis/agentbody/youtube-transcript" }, { - "text": "TikTok Transcript", - "link": "/model-api-reference/platform-apis/agentbody/tiktok-transcript" - }, - { - "text": "TikTok Transcribe", - "link": "/model-api-reference/platform-apis/agentbody/tiktok-transcribe" - }, - { - "text": "Document Parse", + "text": "Agent Body Document Parser", "link": "/model-api-reference/platform-apis/agentbody/document-parse" }, { - "text": "Humanize Writing", - "link": "/model-api-reference/platform-apis/agentbody/humanize-writing" - }, - { - "text": "LinkedIn Email", + "text": "Agent Body LinkedIn Email", "link": "/model-api-reference/platform-apis/agentbody/linkedin-email" }, { - "text": "LinkedIn Phone", + "text": "Agent Body LinkedIn Phone Lookup", "link": "/model-api-reference/platform-apis/agentbody/linkedin-phone" } ] diff --git a/.vitepress/theme/platform-api-sidebars/bilibili.ts b/.vitepress/theme/platform-api-sidebars/bilibili.ts index 4adc52ae..fcb24834 100644 --- a/.vitepress/theme/platform-api-sidebars/bilibili.ts +++ b/.vitepress/theme/platform-api-sidebars/bilibili.ts @@ -2,35 +2,35 @@ export default { "platform": "Bilibili", "slug": "bilibili", - "operationCount": 41, + "operationCount": 38, "groups": [ { "key": "search", "label": "Search & Discovery", "operations": [ { - "text": "Get general search data", - "link": "/model-api-reference/platform-apis/bilibili/web/general-search" - }, - { - "text": "Get home feed", + "text": "Bilibili App Home Feed", "link": "/model-api-reference/platform-apis/bilibili/app/home-feed" }, { - "text": "Get hot search data", - "link": "/model-api-reference/platform-apis/bilibili/web/hot-search" - }, - { - "text": "Get popular feed", + "text": "Bilibili App Popular Feed", "link": "/model-api-reference/platform-apis/bilibili/app/popular-feed" }, { - "text": "search all", + "text": "Bilibili App Search All", "link": "/model-api-reference/platform-apis/bilibili/app/search-all" }, { - "text": "search by type", + "text": "Bilibili Hot Searches", + "link": "/model-api-reference/platform-apis/bilibili/web/hot-search" + }, + { + "text": "Bilibili Search by Type", "link": "/model-api-reference/platform-apis/bilibili/app/search-by-type" + }, + { + "text": "Bilibili Web General Search", + "link": "/model-api-reference/platform-apis/bilibili/web/general-search" } ] }, @@ -39,20 +39,16 @@ export default { "label": "Comments & Engagement", "operations": [ { - "text": "Get comments on the specified video", - "link": "/model-api-reference/platform-apis/bilibili/web/video-comments" - }, - { - "text": "Get reply detail", - "link": "/model-api-reference/platform-apis/bilibili/app/reply-detail" - }, - { - "text": "Get reply to the specified comment", + "text": "Bilibili Comment Replies", "link": "/model-api-reference/platform-apis/bilibili/web/comment-reply" }, { - "text": "Get video comments", + "text": "Bilibili Video Comments (App)", "link": "/model-api-reference/platform-apis/bilibili/app/video-comments" + }, + { + "text": "Bilibili Video Comments (Web)", + "link": "/model-api-reference/platform-apis/bilibili/web/video-comments" } ] }, @@ -61,20 +57,16 @@ export default { "label": "Live", "operations": [ { - "text": "Get a list of all live areas", - "link": "/model-api-reference/platform-apis/bilibili/web/all-live-areas" - }, - { - "text": "Get information of specified live room", + "text": "Bilibili Live Room Details", "link": "/model-api-reference/platform-apis/bilibili/web/live-room-detail" }, { - "text": "Get live streamers of specified live area", - "link": "/model-api-reference/platform-apis/bilibili/web/live-streamers" + "text": "Bilibili Room Stream Data", + "link": "/model-api-reference/platform-apis/bilibili/web/live-videos" }, { - "text": "Get live video data of specified room", - "link": "/model-api-reference/platform-apis/bilibili/web/live-videos" + "text": "Bilibili Streaming Areas", + "link": "/model-api-reference/platform-apis/bilibili/web/all-live-areas" } ] }, @@ -83,64 +75,60 @@ export default { "label": "Content & Video", "operations": [ { - "text": "Get comprehensive popular video information", - "link": "/model-api-reference/platform-apis/bilibili/web/com-popular" - }, - { - "text": "Get single video data", + "text": "Bilibili App Single Video Details", "link": "/model-api-reference/platform-apis/bilibili/app/one-video" }, { - "text": "Get single video data", - "link": "/model-api-reference/platform-apis/bilibili/web/one-video" - }, - { - "text": "Get single video data V2", - "link": "/model-api-reference/platform-apis/bilibili/web/one-video-v2" + "text": "Bilibili Comprehensive Popular Videos", + "link": "/model-api-reference/platform-apis/bilibili/web/com-popular" }, { - "text": "Get single video data V3", + "text": "Bilibili Single Video Details", "link": "/model-api-reference/platform-apis/bilibili/web/one-video-v3" }, { - "text": "Get single video detail", - "link": "/model-api-reference/platform-apis/bilibili/web/video-detail" + "text": "Bilibili Single Video Play Info", + "link": "/model-api-reference/platform-apis/bilibili/web/video-play-info" }, { - "text": "Get single video play info", - "link": "/model-api-reference/platform-apis/bilibili/web/video-play-info" + "text": "Bilibili User Collection Folder Videos", + "link": "/model-api-reference/platform-apis/bilibili/web/user-collection-videos" }, { - "text": "Get user homepage video data", + "text": "Bilibili User Post Videos", "link": "/model-api-reference/platform-apis/bilibili/web/user-post-videos" }, { - "text": "Get user videos", + "text": "Bilibili User Videos", "link": "/model-api-reference/platform-apis/bilibili/app/user-videos" }, { - "text": "Get Video Danmaku", + "text": "Bilibili Video Danmaku", "link": "/model-api-reference/platform-apis/bilibili/web/video-danmaku" }, { - "text": "Get Video Parts By bvid", + "text": "Bilibili Video Details", + "link": "/model-api-reference/platform-apis/bilibili/web/one-video" + }, + { + "text": "Bilibili Video Details (V2)", + "link": "/model-api-reference/platform-apis/bilibili/web/one-video-v2" + }, + { + "text": "Bilibili Video Parts", "link": "/model-api-reference/platform-apis/bilibili/web/video-parts" }, { - "text": "Get video playurl", + "text": "Bilibili Video Playback URL", "link": "/model-api-reference/platform-apis/bilibili/web/video-playurl" }, { - "text": "Get video subtitle info", + "text": "Bilibili Video Subtitle Details", "link": "/model-api-reference/platform-apis/bilibili/web/video-subtitle" }, { - "text": "Get VIP video playurl", - "link": "/model-api-reference/platform-apis/bilibili/web/vip-video-playurl" - }, - { - "text": "Gets video data from a collection folder", - "link": "/model-api-reference/platform-apis/bilibili/web/user-collection-videos" + "text": "Bilibili Web Video Details", + "link": "/model-api-reference/platform-apis/bilibili/web/video-detail" } ] }, @@ -149,63 +137,57 @@ export default { "label": "Users & Accounts", "operations": [ { - "text": "Extract user ID", - "link": "/model-api-reference/platform-apis/bilibili/web/get-user-id" + "text": "Bilibili App User Info", + "link": "/model-api-reference/platform-apis/bilibili/app/user-info" }, { - "text": "Get dynamic information of specified user", - "link": "/model-api-reference/platform-apis/bilibili/web/user-dynamic" + "text": "Bilibili Creator View and Like Statistics", + "link": "/model-api-reference/platform-apis/bilibili/web/user-up-stat" }, { - "text": "Get information of specified user", - "link": "/model-api-reference/platform-apis/bilibili/web/user-profile" + "text": "Bilibili User Collection Folders", + "link": "/model-api-reference/platform-apis/bilibili/web/collect-folders" }, { - "text": "Get UP stat (total views and likes)", - "link": "/model-api-reference/platform-apis/bilibili/web/user-up-stat" + "text": "Bilibili User Dynamics", + "link": "/model-api-reference/platform-apis/bilibili/web/user-dynamic" }, { - "text": "Get user collection folders", - "link": "/model-api-reference/platform-apis/bilibili/web/collect-folders" + "text": "Bilibili User ID Extraction", + "link": "/model-api-reference/platform-apis/bilibili/web/get-user-id" }, { - "text": "Get user info", - "link": "/model-api-reference/platform-apis/bilibili/app/user-info" + "text": "Bilibili User Profile", + "link": "/model-api-reference/platform-apis/bilibili/web/user-profile" }, { - "text": "Get user relation stat (following and followers)", + "text": "Bilibili User Relation Statistics", "link": "/model-api-reference/platform-apis/bilibili/web/user-relation-stat" } ] }, - { - "key": "utilities", - "label": "Utilities", - "operations": [ - { - "text": "Generate aid by bvid", - "link": "/model-api-reference/platform-apis/bilibili/web/bv-to-aid" - } - ] - }, { "key": "other", "label": "Other", "operations": [ { - "text": "Get bangumi tab", + "text": "Bilibili App Bangumi Tab", "link": "/model-api-reference/platform-apis/bilibili/app/bangumi-tab" }, { - "text": "Get cinema tab", + "text": "Bilibili App Cinema Tab", "link": "/model-api-reference/platform-apis/bilibili/app/cinema-tab" }, { - "text": "Get dynamic detail", + "text": "Bilibili BV to AID Converter", + "link": "/model-api-reference/platform-apis/bilibili/web/bv-to-aid" + }, + { + "text": "Bilibili Dynamic Detail", "link": "/model-api-reference/platform-apis/bilibili/web/dynamic-detail" }, { - "text": "Get dynamic detail v2", + "text": "Bilibili Dynamic Details (V2)", "link": "/model-api-reference/platform-apis/bilibili/web/dynamic-detail-v2" } ] diff --git a/.vitepress/theme/platform-api-sidebars/cloudsway.ts b/.vitepress/theme/platform-api-sidebars/cloudsway.ts index 570f5633..92aaa99e 100644 --- a/.vitepress/theme/platform-api-sidebars/cloudsway.ts +++ b/.vitepress/theme/platform-api-sidebars/cloudsway.ts @@ -9,7 +9,7 @@ export default { "label": "Search & Discovery", "operations": [ { - "text": "Cloudsway Search", + "text": "Cloudsway Web Search", "link": "/model-api-reference/platform-apis/cloudsway/search" } ] diff --git a/.vitepress/theme/platform-api-sidebars/dataforseo.ts b/.vitepress/theme/platform-api-sidebars/dataforseo.ts index ecbe7d11..1a907719 100644 --- a/.vitepress/theme/platform-api-sidebars/dataforseo.ts +++ b/.vitepress/theme/platform-api-sidebars/dataforseo.ts @@ -2,114 +2,114 @@ export default { "platform": "DataForSEO", "slug": "dataforseo", - "operationCount": 86, + "operationCount": 74, "groups": [ { "key": "serp", "label": "SERP", "operations": [ { - "text": "SERP Baidu Organic Live", + "text": "DataForSEO Baidu Organic SERP Advanced", "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/baidu/organic/live/advanced" }, { - "text": "SERP Baidu Paid Live", + "text": "DataForSEO Baidu Sponsored SERP", "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/baidu/paid/live/advanced" }, { - "text": "SERP Bing Local Pack Live", + "text": "DataForSEO Bing Local Pack SERP", "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/bing/local_pack/live/advanced" }, { - "text": "SERP Bing News Live", + "text": "DataForSEO Bing News SERP Advanced", "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/bing/news/live/advanced" }, { - "text": "SERP Bing Organic Live", + "text": "DataForSEO Bing Organic Search", "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/bing/organic/live/advanced" }, { - "text": "SERP Bing Paid Live", - "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/bing/paid/live/advanced" + "text": "DataForSEO Bing Shopping SERP Advanced", + "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/bing/shopping/live/advanced" }, { - "text": "SERP Bing Shopping Live", - "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/bing/shopping/live/advanced" + "text": "DataForSEO Bing Sponsored SERP", + "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/bing/paid/live/advanced" }, { - "text": "SERP Google Autocomplete Live", + "text": "DataForSEO Google Autocomplete Advanced", "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/google/autocomplete/live/advanced" }, { - "text": "SERP Google Events Live", + "text": "DataForSEO Google Events Advanced Search", "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/google/events/live/advanced" }, { - "text": "SERP Google Images Live", + "text": "DataForSEO Google Images SERP", "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/google/images/live/advanced" }, { - "text": "SERP Google Jobs Live", + "text": "DataForSEO Google Jobs Advanced SERP", "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/google/jobs/live/advanced" }, { - "text": "SERP Google Knowledge Graph Live", + "text": "DataForSEO Google Knowledge Graph", "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/google/knowledge_graph/live/advanced" }, { - "text": "SERP Google Local Finder Live", + "text": "DataForSEO Google Local Finder Advanced", "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/google/local_finder/live/advanced" }, { - "text": "SERP Google Maps Live", + "text": "DataForSEO Google Maps Local SERP", "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/google/maps/live/advanced" }, { - "text": "SERP Google News Live", + "text": "DataForSEO Google News SERP", "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/google/news/live/advanced" }, { - "text": "SERP Google Organic Live", + "text": "DataForSEO Google SERP (Advanced)", "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/google/organic/live/advanced" }, { - "text": "SERP Google Organic Live Regular", + "text": "DataForSEO Google SERP (Regular)", "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/google/organic/live/regular" }, { - "text": "SERP Google Paid Live", - "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/google/paid/live/advanced" - }, - { - "text": "SERP Google Related Searches Live", + "text": "DataForSEO Google SERP Related Searches", "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/google/related_searches/live/advanced" }, { - "text": "SERP Google Shopping Live", + "text": "DataForSEO Google Shopping SERP", "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/google/shopping/live/advanced" }, { - "text": "SERP Google Videos Live", + "text": "DataForSEO Google Sponsored SERP Advanced", + "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/google/paid/live/advanced" + }, + { + "text": "DataForSEO Google Videos SERP", "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/google/videos/live/advanced" }, { - "text": "SERP Naver Organic Live", + "text": "DataForSEO Naver Organic SERP Advanced", "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/naver/organic/live/advanced" }, { - "text": "SERP Yahoo Organic Live", + "text": "DataForSEO Yahoo Organic SERP", "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/yahoo/organic/live/advanced" }, { - "text": "SERP Yahoo Paid Live", + "text": "DataForSEO Yahoo Sponsored SERP Advanced", "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/yahoo/paid/live/advanced" }, { - "text": "SERP Yandex Organic Live", + "text": "DataForSEO Yandex Organic SERP", "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/yandex/organic/live/regular" }, { - "text": "SERP Yandex Paid Live", + "text": "DataForSEO Yandex Sponsored SERP", "link": "/model-api-reference/platform-apis/dataforseo/v3/serp/yandex/paid/live/regular" } ] @@ -119,35 +119,35 @@ export default { "label": "Keywords", "operations": [ { - "text": "Keywords Bing for Keywords", + "text": "DataForSEO Bing Keyword Search Volume", + "link": "/model-api-reference/platform-apis/dataforseo/v3/keywords_data/bing/search_volume/live" + }, + { + "text": "DataForSEO Bing Keywords for Keywords", "link": "/model-api-reference/platform-apis/dataforseo/v3/keywords_data/bing/keywords_for_keywords/live" }, { - "text": "Keywords Bing for Site", + "text": "DataForSEO Bing Keywords for Site", "link": "/model-api-reference/platform-apis/dataforseo/v3/keywords_data/bing/keywords_for_site/live" }, { - "text": "Keywords Bing Search Volume", - "link": "/model-api-reference/platform-apis/dataforseo/v3/keywords_data/bing/search_volume/live" + "text": "DataForSEO Google Ads Keyword Search Volume", + "link": "/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_ads/search_volume/live" }, { - "text": "Keywords Google Ads for Keywords", + "text": "DataForSEO Google Ads Keywords for Keywords", "link": "/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live" }, { - "text": "Keywords Google Ads for Site", + "text": "DataForSEO Google Ads Keywords for Site", "link": "/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_ads/keywords_for_site/live" }, { - "text": "Keywords Google Ads Search Volume", - "link": "/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_ads/search_volume/live" - }, - { - "text": "Keywords Google Ads Traffic", + "text": "DataForSEO Google Ads Traffic by Keywords", "link": "/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live" }, { - "text": "Keywords Google Trends Explore", + "text": "DataForSEO Google Trends", "link": "/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_trends/explore/live" } ] @@ -157,35 +157,31 @@ export default { "label": "Backlinks", "operations": [ { - "text": "Backlinks Anchors", + "text": "DataForSEO Backlinks Anchors", "link": "/model-api-reference/platform-apis/dataforseo/v3/backlinks/anchors/live" }, { - "text": "Backlinks Bulk Ranks", + "text": "DataForSEO Backlinks Bulk Ranks", "link": "/model-api-reference/platform-apis/dataforseo/v3/backlinks/bulk_ranks/live" }, { - "text": "Backlinks Competitors", + "text": "DataForSEO Backlinks Competitors", "link": "/model-api-reference/platform-apis/dataforseo/v3/backlinks/competitors/live" }, { - "text": "Backlinks Domain Pages", + "text": "DataForSEO Backlinks Domain Pages", "link": "/model-api-reference/platform-apis/dataforseo/v3/backlinks/domain_pages/live" }, { - "text": "Backlinks List", + "text": "DataForSEO Backlinks List", "link": "/model-api-reference/platform-apis/dataforseo/v3/backlinks/backlinks/live" }, { - "text": "Backlinks Referring Domains", + "text": "DataForSEO Backlinks Referring Domains", "link": "/model-api-reference/platform-apis/dataforseo/v3/backlinks/referring_domains/live" }, { - "text": "Backlinks Referring Pages", - "link": "/model-api-reference/platform-apis/dataforseo/v3/backlinks/referring_pages/live" - }, - { - "text": "Backlinks Summary", + "text": "DataForSEO Backlinks Summary", "link": "/model-api-reference/platform-apis/dataforseo/v3/backlinks/summary/live" } ] @@ -195,54 +191,12 @@ export default { "label": "Business Data", "operations": [ { - "text": "Business Data Google Hotels", - "link": "/model-api-reference/platform-apis/dataforseo/v3/business_data/google/hotel_searches/live/advanced" - }, - { - "text": "Business Data Google My Business", + "text": "DataForSEO Google Business Listing Info", "link": "/model-api-reference/platform-apis/dataforseo/v3/business_data/google/my_business_info/live/advanced" }, { - "text": "Business Data Google Reviews", - "link": "/model-api-reference/platform-apis/dataforseo/v3/business_data/google/reviews/live/advanced" - }, - { - "text": "Business Data Trustpilot Reviews", - "link": "/model-api-reference/platform-apis/dataforseo/v3/business_data/trustpilot/reviews/live/advanced" - }, - { - "text": "Business Data Yelp Reviews", - "link": "/model-api-reference/platform-apis/dataforseo/v3/business_data/yelp/reviews/live/advanced" - }, - { - "text": "Business Data Yelp Search", - "link": "/model-api-reference/platform-apis/dataforseo/v3/business_data/yelp/search/live/advanced" - } - ] - }, - { - "key": "app-data", - "label": "App Data", - "operations": [ - { - "text": "App Data Apple App Info", - "link": "/model-api-reference/platform-apis/dataforseo/v3/app_data/apple/app_info/live/advanced" - }, - { - "text": "App Data Apple App Reviews", - "link": "/model-api-reference/platform-apis/dataforseo/v3/app_data/apple/app_reviews/live/advanced" - }, - { - "text": "App Data Google App Info", - "link": "/model-api-reference/platform-apis/dataforseo/v3/app_data/google/app_info/live/advanced" - }, - { - "text": "App Data Google App Reviews", - "link": "/model-api-reference/platform-apis/dataforseo/v3/app_data/google/app_reviews/live/advanced" - }, - { - "text": "App Data Google App Searches", - "link": "/model-api-reference/platform-apis/dataforseo/v3/app_data/google/app_searches/live/advanced" + "text": "DataForSEO Google Hotel Search Advanced", + "link": "/model-api-reference/platform-apis/dataforseo/v3/business_data/google/hotel_searches/live/advanced" } ] }, @@ -251,19 +205,19 @@ export default { "label": "Merchant", "operations": [ { - "text": "Merchant Amazon Products", - "link": "/model-api-reference/platform-apis/dataforseo/v3/merchant/amazon/products/live/advanced" + "text": "DataForSEO Google Shopping Products", + "link": "/model-api-reference/platform-apis/dataforseo/v3/merchant/google/products/live/advanced" }, { - "text": "Merchant Amazon Sellers", - "link": "/model-api-reference/platform-apis/dataforseo/v3/merchant/amazon/sellers/live/advanced" + "text": "DataForSEO Merchant Amazon Products", + "link": "/model-api-reference/platform-apis/dataforseo/v3/merchant/amazon/products/live/advanced" }, { - "text": "Merchant Google Products", - "link": "/model-api-reference/platform-apis/dataforseo/v3/merchant/google/products/live/advanced" + "text": "DataForSEO Merchant Amazon Sellers", + "link": "/model-api-reference/platform-apis/dataforseo/v3/merchant/amazon/sellers/live/advanced" }, { - "text": "Merchant Google Sellers", + "text": "DataForSEO Merchant Google Sellers", "link": "/model-api-reference/platform-apis/dataforseo/v3/merchant/google/sellers/live/advanced" } ] @@ -273,32 +227,24 @@ export default { "label": "On-Page", "operations": [ { - "text": "OnPage Content Parsing", + "text": "DataForSEO OnPage Content Parsing", "link": "/model-api-reference/platform-apis/dataforseo/v3/on_page/content_parsing/live" }, { - "text": "OnPage Duplicate Tags", + "text": "DataForSEO OnPage Duplicate Tags", "link": "/model-api-reference/platform-apis/dataforseo/v3/on_page/duplicate_tags" }, { - "text": "OnPage Instant Pages", + "text": "DataForSEO OnPage Instant Pages", "link": "/model-api-reference/platform-apis/dataforseo/v3/on_page/instant_pages" }, { - "text": "OnPage Keyword Density", - "link": "/model-api-reference/platform-apis/dataforseo/v3/on_page/keyword_density/live" - }, - { - "text": "OnPage Lighthouse", + "text": "DataForSEO OnPage Lighthouse Audit", "link": "/model-api-reference/platform-apis/dataforseo/v3/on_page/lighthouse/live/json" }, { - "text": "OnPage Page Screenshot", + "text": "DataForSEO Website Screenshot", "link": "/model-api-reference/platform-apis/dataforseo/v3/on_page/page_screenshot" - }, - { - "text": "OnPage Raw HTML", - "link": "/model-api-reference/platform-apis/dataforseo/v3/on_page/raw_html/live" } ] }, @@ -307,28 +253,28 @@ export default { "label": "Domain Analytics", "operations": [ { - "text": "Domain Analytics Aggregation", - "link": "/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live" + "text": "DataForSEO Domain Analytics Technology Stats", + "link": "/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/technology_stats/live" }, { - "text": "Domain Analytics By HTML Terms", - "link": "/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live" + "text": "DataForSEO Domain Analytics WHOIS", + "link": "/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/whois/live" }, { - "text": "Domain Analytics Domains By Tech", - "link": "/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/domains_by_technology/live" + "text": "DataForSEO Domain Technologies", + "link": "/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/domain_technologies/live" }, { - "text": "Domain Analytics Tech Stats", - "link": "/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/technology_stats/live" + "text": "DataForSEO Domain Technology Aggregations", + "link": "/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live" }, { - "text": "Domain Analytics Technologies", - "link": "/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/domain_technologies/live" + "text": "DataForSEO Domains by HTML Terms", + "link": "/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live" }, { - "text": "Domain Analytics WHOIS", - "link": "/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/whois/live" + "text": "DataForSEO Domains by Technology", + "link": "/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/domains_by_technology/live" } ] }, @@ -337,20 +283,20 @@ export default { "label": "Content Analysis", "operations": [ { - "text": "Content Analysis Ratings", + "text": "DataForSEO Content Analysis Rating Distribution", "link": "/model-api-reference/platform-apis/dataforseo/v3/content_analysis/rating_distribution/live" }, { - "text": "Content Analysis Search", + "text": "DataForSEO Content Analysis Search", "link": "/model-api-reference/platform-apis/dataforseo/v3/content_analysis/search/live" }, { - "text": "Content Analysis Sentiment", - "link": "/model-api-reference/platform-apis/dataforseo/v3/content_analysis/sentiment_analysis/live" + "text": "DataForSEO Content Analysis Summary", + "link": "/model-api-reference/platform-apis/dataforseo/v3/content_analysis/summary/live" }, { - "text": "Content Analysis Summary", - "link": "/model-api-reference/platform-apis/dataforseo/v3/content_analysis/summary/live" + "text": "DataForSEO Content Sentiment Analysis", + "link": "/model-api-reference/platform-apis/dataforseo/v3/content_analysis/sentiment_analysis/live" } ] }, @@ -359,52 +305,52 @@ export default { "label": "Labs", "operations": [ { - "text": "Labs Google Bulk Keyword Difficulty", - "link": "/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live" - }, - { - "text": "Labs Google Competitors Domain", + "text": "DataForSEO Google Competitors Domain", "link": "/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/competitors_domain/live" }, { - "text": "Labs Google Domain Intersection", + "text": "DataForSEO Google Domain Intersection", "link": "/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/domain_intersection/live" }, { - "text": "Labs Google Domain Rank Overview", + "text": "DataForSEO Google Domain Rank Overview", "link": "/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live" }, { - "text": "Labs Google Historical Search Volume", + "text": "DataForSEO Google Historical Search Volume", "link": "/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/historical_search_volume/live" }, { - "text": "Labs Google Keyword Ideas", + "text": "DataForSEO Google Keyword Ideas", "link": "/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/keyword_ideas/live" }, { - "text": "Labs Google Keyword Suggestions", - "link": "/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live" - }, - { - "text": "Labs Google Keywords for Site", + "text": "DataForSEO Google Keywords for Site", "link": "/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/keywords_for_site/live" }, { - "text": "Labs Google Page Intersection", + "text": "DataForSEO Google Page Intersection", "link": "/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/page_intersection/live" }, { - "text": "Labs Google Ranked Keywords", + "text": "DataForSEO Google Ranked Keywords", "link": "/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/ranked_keywords/live" }, { - "text": "Labs Google Related Keywords", + "text": "DataForSEO Google Related Keywords", "link": "/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/related_keywords/live" }, { - "text": "Labs Google SERP Competitors", + "text": "DataForSEO Google SERP Competitors", "link": "/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/serp_competitors/live" + }, + { + "text": "DataForSEO Labs Google Bulk Keyword Difficulty", + "link": "/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live" + }, + { + "text": "DataForSEO Labs Google Keyword Suggestions", + "link": "/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live" } ] } diff --git a/.vitepress/theme/platform-api-sidebars/douyin.ts b/.vitepress/theme/platform-api-sidebars/douyin.ts index df292ecd..5fa3303c 100644 --- a/.vitepress/theme/platform-api-sidebars/douyin.ts +++ b/.vitepress/theme/platform-api-sidebars/douyin.ts @@ -2,271 +2,243 @@ export default { "platform": "Douyin", "slug": "douyin", - "operationCount": 309, + "operationCount": 262, "groups": [ { "key": "search", "label": "Search & Discovery", "operations": [ { - "text": "Brand search suggest", - "link": "/model-api-reference/platform-apis/douyin/index/brand-suggest" - }, - { - "text": "Content consume trend", - "link": "/model-api-reference/platform-apis/douyin/index/content-consume-trend" - }, - { - "text": "Content interact trend", - "link": "/model-api-reference/platform-apis/douyin/index/content-interact-trend" - }, - { - "text": "Content publish trend", - "link": "/model-api-reference/platform-apis/douyin/index/content-publish-trend" - }, - { - "text": "Creative keyword related items", - "link": "/model-api-reference/platform-apis/douyin/index/content-creative-keyword-items" + "text": "Douyin Account Fan Interest Search Terms", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-account-fans-interest-search-list" }, { - "text": "Delivery analysis trend graph", - "link": "/model-api-reference/platform-apis/douyin/douplus/analyse-graph" + "text": "Douyin Billboard Rising Search List", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-total-high-search-list" }, { - "text": "Fetch account search list", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-account-search-list" + "text": "Douyin Billboard Vertical Content Tags", + "link": "/model-api-reference/platform-apis/douyin/billboard/content-tag" }, { - "text": "Fetch discussion search", - "link": "/model-api-reference/platform-apis/douyin/search/discuss-search" + "text": "Douyin Brand Hot Search List", + "link": "/model-api-reference/platform-apis/douyin/app-v3/brand-hot-search-list" }, { - "text": "Fetch experience search", - "link": "/model-api-reference/platform-apis/douyin/search/experience-search" + "text": "Douyin Brand Hot Search List Detail", + "link": "/model-api-reference/platform-apis/douyin/app-v3/brand-hot-search-list-detail" }, { - "text": "Fetch fan interest search term in the last 3 days 10 search terms", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-account-fans-interest-search-list" + "text": "Douyin Brand Search Suggestions", + "link": "/model-api-reference/platform-apis/douyin/index/brand-suggest" }, { - "text": "Fetch general search V1", - "link": "/model-api-reference/platform-apis/douyin/search/general-search-v1" + "text": "Douyin Brand Trend Lines", + "link": "/model-api-reference/platform-apis/douyin/index/brand-lines" }, { - "text": "Fetch general search V2", - "link": "/model-api-reference/platform-apis/douyin/search/general-search-v2" + "text": "Douyin Category Content Interaction Trend", + "link": "/model-api-reference/platform-apis/douyin/index/content-interact-trend" }, { - "text": "Fetch hashtag search V1", + "text": "Douyin Challenge Search", "link": "/model-api-reference/platform-apis/douyin/search/challenge-search-v1" }, { - "text": "Fetch hashtag search V2", - "link": "/model-api-reference/platform-apis/douyin/search/challenge-search-v2" - }, - { - "text": "Fetch hashtag suggestions", - "link": "/model-api-reference/platform-apis/douyin/search/challenge-suggest" - }, - { - "text": "Fetch image search", - "link": "/model-api-reference/platform-apis/douyin/search/image-search" - }, - { - "text": "Fetch image-text search V3", - "link": "/model-api-reference/platform-apis/douyin/search/image-search-v3" + "text": "Douyin Content Consumption Trend", + "link": "/model-api-reference/platform-apis/douyin/index/content-consume-trend" }, { - "text": "Fetch item search keywords statistics", - "link": "/model-api-reference/platform-apis/douyin/creator-v2/item-search-keyword" + "text": "Douyin Content Volume Trend", + "link": "/model-api-reference/platform-apis/douyin/index/content-publish-trend" }, { - "text": "Fetch item watch trend analysis", - "link": "/model-api-reference/platform-apis/douyin/creator-v2/item-watch-trend" + "text": "Douyin Creative Keyword Related Videos", + "link": "/model-api-reference/platform-apis/douyin/index/content-creative-keyword-items" }, { - "text": "Fetch live search V1", - "link": "/model-api-reference/platform-apis/douyin/search/live-search-v1" + "text": "Douyin Discussion Search", + "link": "/model-api-reference/platform-apis/douyin/search/discuss-search" }, { - "text": "Fetch multi-type search", - "link": "/model-api-reference/platform-apis/douyin/search/multi-search" + "text": "Douyin DOU+ User Search", + "link": "/model-api-reference/platform-apis/douyin/douplus/search-user" }, { - "text": "Fetch music search", - "link": "/model-api-reference/platform-apis/douyin/search/music-search" + "text": "Douyin Experience Content Search", + "link": "/model-api-reference/platform-apis/douyin/search/experience-search" }, { - "text": "Fetch school search", - "link": "/model-api-reference/platform-apis/douyin/search/school-search" + "text": "Douyin General Search", + "link": "/model-api-reference/platform-apis/douyin/search/general-search-v1" }, { - "text": "Fetch search hot list", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-total-search-list" + "text": "Douyin General Search (V2)", + "link": "/model-api-reference/platform-apis/douyin/search/general-search-v2" }, { - "text": "Fetch search keyword suggestions", - "link": "/model-api-reference/platform-apis/douyin/search/search-suggest" + "text": "Douyin Hashtag Challenge Search (V2)", + "link": "/model-api-reference/platform-apis/douyin/search/challenge-search-v2" }, { - "text": "Fetch search list with rising popularity", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-total-high-search-list" + "text": "Douyin Hashtag Details", + "link": "/model-api-reference/platform-apis/douyin/app-v3/hashtag-detail" }, { - "text": "Fetch user search", - "link": "/model-api-reference/platform-apis/douyin/search/user-search" + "text": "Douyin Hashtag Suggestions", + "link": "/model-api-reference/platform-apis/douyin/search/challenge-suggest" }, { - "text": "Fetch user search V2", - "link": "/model-api-reference/platform-apis/douyin/search/user-search-v2" + "text": "Douyin Hashtag Video List", + "link": "/model-api-reference/platform-apis/douyin/app-v3/hashtag-video-list" }, { - "text": "Fetch vertical content tags", - "link": "/model-api-reference/platform-apis/douyin/billboard/content-tag" + "text": "Douyin Hot Account Search", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-account-search-list" }, { - "text": "Fetch video search V1", - "link": "/model-api-reference/platform-apis/douyin/search/video-search-v1" + "text": "Douyin Hot Search Keywords", + "link": "/model-api-reference/platform-apis/douyin/index/hot-words" }, { - "text": "Fetch video search V2", - "link": "/model-api-reference/platform-apis/douyin/search/video-search-v2" + "text": "Douyin Hot Search List", + "link": "/model-api-reference/platform-apis/douyin/app-v3/hot-search-list" }, { - "text": "Fetch vision search (image-based search)", - "link": "/model-api-reference/platform-apis/douyin/search/vision-search" + "text": "Douyin Hot Total Search List", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-total-search-list" }, { - "text": "Generate Douyin share link, call Douyin APP, and jump to the specified keyword search result", - "link": "/model-api-reference/platform-apis/douyin/app-v3/open-app-to-keyword-search" + "text": "Douyin Hot Trend Words", + "link": "/model-api-reference/platform-apis/douyin/index/hot-trend-word" }, { - "text": "Get brand trend lines", - "link": "/model-api-reference/platform-apis/douyin/index/brand-lines" + "text": "Douyin Image Search", + "link": "/model-api-reference/platform-apis/douyin/search/image-search" }, { - "text": "Get Content Trend Guide", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/content-trend-guide" + "text": "Douyin Image-Text Search", + "link": "/model-api-reference/platform-apis/douyin/search/image-search-v3" }, { - "text": "Get details of specified hashtag", - "link": "/model-api-reference/platform-apis/douyin/app-v3/hashtag-detail" + "text": "Douyin Index Keyword Valid Dates", + "link": "/model-api-reference/platform-apis/douyin/index/keyword-valid-date" }, { - "text": "Get Douyin brand hot search list data", - "link": "/model-api-reference/platform-apis/douyin/app-v3/brand-hot-search-list" + "text": "Douyin Keyword Crowd Portrait", + "link": "/model-api-reference/platform-apis/douyin/index/portrait" }, { - "text": "Get Douyin brand hot search list detail data", - "link": "/model-api-reference/platform-apis/douyin/app-v3/brand-hot-search-list-detail" + "text": "Douyin Keyword Search Share Link", + "link": "/model-api-reference/platform-apis/douyin/app-v3/open-app-to-keyword-search" }, { - "text": "Get Douyin hot search list data", - "link": "/model-api-reference/platform-apis/douyin/app-v3/hot-search-list" + "text": "Douyin Multi Keyword Hot Trend", + "link": "/model-api-reference/platform-apis/douyin/index/multi-keyword-hot-trend" }, { - "text": "Get Douyin hot search results", - "link": "/model-api-reference/platform-apis/douyin/web/hot-search-result" + "text": "Douyin Multi Search", + "link": "/model-api-reference/platform-apis/douyin/search/multi-search" }, { - "text": "Get Douyin live hot search list data", - "link": "/model-api-reference/platform-apis/douyin/app-v3/live-hot-search-list" + "text": "Douyin Multi-Keyword Index Interpretation", + "link": "/model-api-reference/platform-apis/douyin/index/multi-keyword-interpretation" }, { - "text": "Get Douyin music hot search list data", + "text": "Douyin Music Hot Search List", "link": "/model-api-reference/platform-apis/douyin/app-v3/music-hot-search-list" }, { - "text": "Get home feed data", - "link": "/model-api-reference/platform-apis/douyin/web/home-feed" + "text": "Douyin Music Search", + "link": "/model-api-reference/platform-apis/douyin/search/music-search" }, { - "text": "Get hot trend words", - "link": "/model-api-reference/platform-apis/douyin/index/hot-trend-word" + "text": "Douyin Recommended Insight Reports", + "link": "/model-api-reference/platform-apis/douyin/index/insight-recommend" }, { - "text": "Get keyword valid date", - "link": "/model-api-reference/platform-apis/douyin/index/keyword-valid-date" + "text": "Douyin Rising Hot Search List", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-rise-list" }, { - "text": "Get multi-keyword hot trend", - "link": "/model-api-reference/platform-apis/douyin/index/multi-keyword-hot-trend" + "text": "Douyin School Search", + "link": "/model-api-reference/platform-apis/douyin/search/school-search" }, { - "text": "Get multi-keyword interpretation", - "link": "/model-api-reference/platform-apis/douyin/index/multi-keyword-interpretation" + "text": "Douyin Search Suggestions", + "link": "/model-api-reference/platform-apis/douyin/search/search-suggest" }, { - "text": "Get Recommend Similar Star Authors", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/recommend-for-star-authors" + "text": "Douyin Similar Daren Accounts", + "link": "/model-api-reference/platform-apis/douyin/index/daren-similar-users" }, { - "text": "Get recommended insight reports", - "link": "/model-api-reference/platform-apis/douyin/index/insight-recommend" + "text": "Douyin Topic Search", + "link": "/model-api-reference/platform-apis/douyin/index/topic-query" }, { - "text": "Get similar daren", - "link": "/model-api-reference/platform-apis/douyin/index/daren-similar-users" + "text": "Douyin Topic Search Suggestions", + "link": "/model-api-reference/platform-apis/douyin/index/topic-suggest" }, { - "text": "Get video list of specified hashtag", - "link": "/model-api-reference/platform-apis/douyin/app-v3/hashtag-video-list" + "text": "Douyin Toutiao Creator Search", + "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/search-toutiao-creator" }, { - "text": "Search Anchor", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/search-anchor" + "text": "Douyin Trend Report Detail", + "link": "/model-api-reference/platform-apis/douyin/index/report-detail" }, { - "text": "Search Creator", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/search-creator" + "text": "Douyin Trend Report Search", + "link": "/model-api-reference/platform-apis/douyin/index/report-search" }, { - "text": "Search DOU+ user", - "link": "/model-api-reference/platform-apis/douyin/douplus/search-user" + "text": "Douyin User Search (Creator)", + "link": "/model-api-reference/platform-apis/douyin/creator/user-search" }, { - "text": "Search Kol Advanced V2", - "link": "/model-api-reference/platform-apis/douyin/xingtu/search-kol-v2" + "text": "Douyin User Search (Search)", + "link": "/model-api-reference/platform-apis/douyin/search/user-search" }, { - "text": "Search Kol V1", - "link": "/model-api-reference/platform-apis/douyin/xingtu/search-kol-v1" + "text": "Douyin User Search (V2)", + "link": "/model-api-reference/platform-apis/douyin/search/user-search-v2" }, { - "text": "Search live rooms (by Douyin ID or nickname)", - "link": "/model-api-reference/platform-apis/douyin/douplus/search-live-room" + "text": "Douyin Video Search", + "link": "/model-api-reference/platform-apis/douyin/search/video-search-v2" }, { - "text": "Search talents by category", - "link": "/model-api-reference/platform-apis/douyin/douplus/talents-by-category" + "text": "Douyin Video Search (V1)", + "link": "/model-api-reference/platform-apis/douyin/search/video-search-v1" }, { - "text": "Search Toutiao Creator", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/search-toutiao-creator" + "text": "Douyin Web Home Feed", + "link": "/model-api-reference/platform-apis/douyin/web/home-feed" }, { - "text": "Search trend reports", - "link": "/model-api-reference/platform-apis/douyin/index/report-search" + "text": "Douyin Web Hot Search Results", + "link": "/model-api-reference/platform-apis/douyin/web/hot-search-result" }, { - "text": "Search user V2", - "link": "/model-api-reference/platform-apis/douyin/douplus/search-user-v2" + "text": "Douyin Xingtu Anchor Search", + "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/search-anchor" }, { - "text": "Search users", - "link": "/model-api-reference/platform-apis/douyin/creator/user-search" + "text": "Douyin Xingtu Content Trend Guide", + "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/content-trend-guide" }, { - "text": "Search videos (by title)", - "link": "/model-api-reference/platform-apis/douyin/douplus/search-video" + "text": "Douyin Xingtu Creator Search", + "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/search-creator" }, { - "text": "Topic search results", - "link": "/model-api-reference/platform-apis/douyin/index/topic-query" + "text": "Douyin Xingtu KOL Search (V2)", + "link": "/model-api-reference/platform-apis/douyin/xingtu/search-kol-v2" }, { - "text": "Topic search suggest", - "link": "/model-api-reference/platform-apis/douyin/index/topic-suggest" + "text": "Douyin Xingtu Similar Star Authors", + "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/recommend-for-star-authors" } ] }, @@ -275,36 +247,36 @@ export default { "label": "Comments & Engagement", "operations": [ { - "text": "Fetch work comment analysis word cloud weight", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-comment-word-list" + "text": "Douyin Video Comment Replies (App V3)", + "link": "/model-api-reference/platform-apis/douyin/app-v3/video-comment-replies" }, { - "text": "Get Author Content Hot Comment Keywords V1", - "link": "/model-api-reference/platform-apis/douyin/xingtu/author-content-hot-comment-keywords-v1" + "text": "Douyin Video Comment Replies (Web)", + "link": "/model-api-reference/platform-apis/douyin/web/video-comment-replies" }, { - "text": "Get Author Hot Comment Tokens", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-hot-comment-tokens" + "text": "Douyin Video Comments", + "link": "/model-api-reference/platform-apis/douyin/app-v3/video-comments" }, { - "text": "Get Author Hot Comment Tokens V1", - "link": "/model-api-reference/platform-apis/douyin/xingtu/author-hot-comment-tokens-v1" + "text": "Douyin Video Comments (Web)", + "link": "/model-api-reference/platform-apis/douyin/web/video-comments" }, { - "text": "Get comment replies data of specified video", - "link": "/model-api-reference/platform-apis/douyin/app-v3/video-comment-replies" + "text": "Douyin Work Hot Comment Word Cloud", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-comment-word-list" }, { - "text": "Get comment replies data of specified video", - "link": "/model-api-reference/platform-apis/douyin/web/video-comment-replies" + "text": "Douyin Xingtu Author Hot Comment Keywords", + "link": "/model-api-reference/platform-apis/douyin/xingtu/author-content-hot-comment-keywords-v1" }, { - "text": "Get single video comments data", - "link": "/model-api-reference/platform-apis/douyin/app-v3/video-comments" + "text": "Douyin Xingtu Author Hot Comment Tokens (Xingtu V2)", + "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-hot-comment-tokens" }, { - "text": "Get single video comments data", - "link": "/model-api-reference/platform-apis/douyin/web/video-comments" + "text": "Douyin Xingtu Author Hot Comment Tokens (Xingtu)", + "link": "/model-api-reference/platform-apis/douyin/xingtu/author-hot-comment-tokens-v1" } ] }, @@ -313,47 +285,39 @@ export default { "label": "Live", "operations": [ { - "text": "Douyin live room danmaku parameters", - "link": "/model-api-reference/platform-apis/douyin/web/live-im-fetch" - }, - { - "text": "Douyin live room product information", - "link": "/model-api-reference/platform-apis/douyin/web/live-room-product-result" - }, - { - "text": "Extract list webcast id", - "link": "/model-api-reference/platform-apis/douyin/web/all-webcast-id" - }, - { - "text": "Extract webcast id", - "link": "/model-api-reference/platform-apis/douyin/web/webcast-id" + "text": "Douyin Live Room Gift User Ranking", + "link": "/model-api-reference/platform-apis/douyin/web/live-gift-ranking" }, { - "text": "Fetch live room history list", - "link": "/model-api-reference/platform-apis/douyin/creator-v2/live-room-history-list" + "text": "Douyin Room Danmaku Parameters", + "link": "/model-api-reference/platform-apis/douyin/web/live-im-fetch" }, { - "text": "Get live room gift user ranking", - "link": "/model-api-reference/platform-apis/douyin/web/live-gift-ranking" + "text": "Douyin Stream Data by Room ID (V2)", + "link": "/model-api-reference/platform-apis/douyin/web/user-live-videos-by-room-id-v2" }, { - "text": "Get live video data of specified user by sec_uid", + "text": "Douyin User Broadcast Videos", "link": "/model-api-reference/platform-apis/douyin/web/user-live-videos-by-sec-uid" }, { - "text": "Get user live information by UID", + "text": "Douyin User Stream Information by UID", "link": "/model-api-reference/platform-apis/douyin/web/user-live-info-by-uid" }, { - "text": "Get user live video data", + "text": "Douyin User Webcast Video Records", "link": "/model-api-reference/platform-apis/douyin/web/user-live-videos" }, { - "text": "Gets the live stream data of the specified user by room_id V2", - "link": "/model-api-reference/platform-apis/douyin/web/user-live-videos-by-room-id-v2" + "text": "Douyin Webcast ID Extraction", + "link": "/model-api-reference/platform-apis/douyin/web/all-webcast-id" + }, + { + "text": "Douyin Webcast ID Extractor", + "link": "/model-api-reference/platform-apis/douyin/web/webcast-id" }, { - "text": "Webcast id to room id", + "text": "Douyin Webcast ID to Room ID", "link": "/model-api-reference/platform-apis/douyin/web/webcast-id-2-room-id" } ] @@ -363,7 +327,7 @@ export default { "label": "Commerce", "operations": [ { - "text": "Get Author Convert Videos or Products", + "text": "Douyin Xingtu Creator Conversion Details", "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-convert-videos-or-products" } ] @@ -373,7 +337,7 @@ export default { "label": "Messaging", "operations": [ { - "text": "Generate Douyin share link, call Douyin APP, and send private messages to specified users", + "text": "Douyin Direct Message Deep Link", "link": "/model-api-reference/platform-apis/douyin/app-v3/open-app-to-send-private-message" } ] @@ -383,316 +347,256 @@ export default { "label": "Content & Video", "operations": [ { - "text": "Anime Video", + "text": "Douyin Anime Videos", "link": "/model-api-reference/platform-apis/douyin/web/cartoon-aweme" }, { - "text": "Batch get the highest quality play URL of videos", - "link": "/model-api-reference/platform-apis/douyin/app-v3/multi-video-high-quality-play-url" - }, - { - "text": "Batch get the highest quality play URL of videos", - "link": "/model-api-reference/platform-apis/douyin/web/multi-video-high-quality-play-url" + "text": "Douyin Batch Video Information (App V3)", + "link": "/model-api-reference/platform-apis/douyin/app-v3/multi-video" }, { - "text": "Batch Get Video Information", + "text": "Douyin Batch Video Information (Web)", "link": "/model-api-reference/platform-apis/douyin/web/multi-video" }, { - "text": "Batch Get Video Information V1", - "link": "/model-api-reference/platform-apis/douyin/app-v3/multi-video" - }, - { - "text": "Batch Get Video Information V2", - "link": "/model-api-reference/platform-apis/douyin/app-v3/multi-video-v2" + "text": "Douyin Billboard Post Trends", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-item-trends-list" }, { - "text": "Brand hot videos time scope", + "text": "Douyin Brand Hot Videos Time Scope", "link": "/model-api-reference/platform-apis/douyin/index/brand-hot-videos-time-scope" }, { - "text": "Challenge Posts", - "link": "/model-api-reference/platform-apis/douyin/web/challenge-posts" + "text": "Douyin Creator Hot Music Billboard", + "link": "/model-api-reference/platform-apis/douyin/creator/creator-hot-music-billboard" }, { - "text": "Douyin video channel data", - "link": "/model-api-reference/platform-apis/douyin/web/video-channel-result" + "text": "Douyin Creator Top Videos", + "link": "/model-api-reference/platform-apis/douyin/index/daren-great-user-top-video" }, { - "text": "Download item list", - "link": "/model-api-reference/platform-apis/douyin/creator-v2/item-list-download" + "text": "Douyin Creator Video Danmaku List", + "link": "/model-api-reference/platform-apis/douyin/creator/video-danmaku-list" }, { - "text": "Fetch account work analysis - last week", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-account-item-analysis-list" + "text": "Douyin Daren Core Metrics", + "link": "/model-api-reference/platform-apis/douyin/index/daren-great-item-mile-info" }, { - "text": "Fetch item analysis involved vertical", - "link": "/model-api-reference/platform-apis/douyin/creator-v2/item-analysis-involved-vertical" + "text": "Douyin DOU+ Promotable Items", + "link": "/model-api-reference/platform-apis/douyin/douplus/promotable-item-list" }, { - "text": "Fetch item analysis item performance", - "link": "/model-api-reference/platform-apis/douyin/creator-v2/item-analysis-item-performance" + "text": "Douyin DOU+ Video Ranking", + "link": "/model-api-reference/platform-apis/douyin/douplus/video-ranking" }, { - "text": "Fetch item analysis overview", - "link": "/model-api-reference/platform-apis/douyin/creator-v2/item-analysis-overview" + "text": "Douyin Douplus User Posts", + "link": "/model-api-reference/platform-apis/douyin/douplus/user-posts" }, { - "text": "Fetch item audience others analysis", - "link": "/model-api-reference/platform-apis/douyin/creator-v2/item-audience-others" + "text": "Douyin Douplus Video Detail", + "link": "/model-api-reference/platform-apis/douyin/douplus/video-detail" }, { - "text": "Fetch item audience portrait", - "link": "/model-api-reference/platform-apis/douyin/creator-v2/item-audience-portrait" + "text": "Douyin Food Videos", + "link": "/model-api-reference/platform-apis/douyin/web/food-aweme" }, { - "text": "Fetch item bullet analysis", - "link": "/model-api-reference/platform-apis/douyin/creator-v2/item-danmaku-analysis" + "text": "Douyin Game Videos", + "link": "/model-api-reference/platform-apis/douyin/web/game-aweme" }, { - "text": "Fetch item list", - "link": "/model-api-reference/platform-apis/douyin/creator-v2/item-list" + "text": "Douyin High Quality Video Play URL (App V3)", + "link": "/model-api-reference/platform-apis/douyin/app-v3/video-high-quality-play-url" }, { - "text": "Fetch item overview data", - "link": "/model-api-reference/platform-apis/douyin/creator-v2/item-overview-data" + "text": "Douyin High Quality Video Play URL (Web)", + "link": "/model-api-reference/platform-apis/douyin/web/video-high-quality-play-url" }, { - "text": "Fetch item play source statistics", - "link": "/model-api-reference/platform-apis/douyin/creator-v2/item-play-source" + "text": "Douyin High-Quality Video Play URLs", + "link": "/model-api-reference/platform-apis/douyin/web/multi-video-high-quality-play-url" }, { - "text": "Fetch post data trend", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-item-trends-list" + "text": "Douyin Hot Account Work Analysis", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-account-item-analysis-list" }, { - "text": "Fetch video hot list", + "text": "Douyin Hot Video Ranking", "link": "/model-api-reference/platform-apis/douyin/billboard/hot-total-video-list" }, { - "text": "Food Video", - "link": "/model-api-reference/platform-apis/douyin/web/food-aweme" + "text": "Douyin Index Video Search", + "link": "/model-api-reference/platform-apis/douyin/index/item-query" }, { - "text": "Game Video", - "link": "/model-api-reference/platform-apis/douyin/web/game-aweme" + "text": "Douyin Low Fan Billboard Items", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-total-low-fan-list" }, { - "text": "Generate Douyin share link, call Douyin APP, and jump to the specified video details page", - "link": "/model-api-reference/platform-apis/douyin/app-v3/open-app-to-video-detail" + "text": "Douyin Multi Video Information (V2)", + "link": "/model-api-reference/platform-apis/douyin/app-v3/multi-video-v2" }, { - "text": "Generate Douyin video share QR code", - "link": "/model-api-reference/platform-apis/douyin/app-v3/generate-video-share-qrcode" + "text": "Douyin Multi-Video High Quality Play URLs", + "link": "/model-api-reference/platform-apis/douyin/app-v3/multi-video-high-quality-play-url" }, { - "text": "Get Author Homepage Videos", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-homepage-videos" + "text": "Douyin Music Details", + "link": "/model-api-reference/platform-apis/douyin/app-v3/music-detail" }, { - "text": "Get Author Show Items", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-show-items" + "text": "Douyin Music Video List", + "link": "/model-api-reference/platform-apis/douyin/app-v3/music-video-list" }, { - "text": "Get creator hot music billboard", - "link": "/model-api-reference/platform-apis/douyin/creator/creator-hot-music-billboard" + "text": "Douyin Related Posts Recommendations", + "link": "/model-api-reference/platform-apis/douyin/web/related-posts" }, { - "text": "Get daren core metrics", - "link": "/model-api-reference/platform-apis/douyin/index/daren-great-item-mile-info" + "text": "Douyin Series Video List", + "link": "/model-api-reference/platform-apis/douyin/app-v3/series-video-list" }, { - "text": "Get daren top videos", - "link": "/model-api-reference/platform-apis/douyin/index/daren-great-user-top-video" + "text": "Douyin Single Video by Share URL", + "link": "/model-api-reference/platform-apis/douyin/app-v3/one-video-by-share-url" }, { - "text": "Get details of specified music", - "link": "/model-api-reference/platform-apis/douyin/app-v3/music-detail" + "text": "Douyin Single Video Data (App V3)", + "link": "/model-api-reference/platform-apis/douyin/app-v3/one-video-v2" }, { - "text": "Get DOU+ video ranking", - "link": "/model-api-reference/platform-apis/douyin/douplus/video-ranking" + "text": "Douyin Single Video Data (Web)", + "link": "/model-api-reference/platform-apis/douyin/web/one-video-v2" }, { - "text": "Get Douyin video mix detail data", - "link": "/model-api-reference/platform-apis/douyin/app-v3/video-mix-detail" + "text": "Douyin Single Video Details", + "link": "/model-api-reference/platform-apis/douyin/app-v3/one-video" }, { - "text": "Get Douyin video mix post list data", - "link": "/model-api-reference/platform-apis/douyin/app-v3/video-mix-post-list" + "text": "Douyin Single Video Details (V1)", + "link": "/model-api-reference/platform-apis/douyin/web/one-video" }, { - "text": "Get Item Play Count", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/item-play-count" + "text": "Douyin User Liked Videos (App V3)", + "link": "/model-api-reference/platform-apis/douyin/app-v3/user-like-videos" }, { - "text": "Get kol Convert Video Display V1", - "link": "/model-api-reference/platform-apis/douyin/xingtu/kol-convert-video-display-v1" + "text": "Douyin User Liked Videos (Web)", + "link": "/model-api-reference/platform-apis/douyin/web/user-like-videos" }, { - "text": "Get kol Rec Videos V1", - "link": "/model-api-reference/platform-apis/douyin/xingtu/kol-rec-videos-v1" + "text": "Douyin User Video Posts", + "link": "/model-api-reference/platform-apis/douyin/web/user-post-videos" }, { - "text": "Get kol Video Performance V1", - "link": "/model-api-reference/platform-apis/douyin/xingtu/kol-video-performance-v1" + "text": "Douyin User Videos", + "link": "/model-api-reference/platform-apis/douyin/app-v3/user-post-videos" }, { - "text": "Get promotable item list (with like & comment counts)", - "link": "/model-api-reference/platform-apis/douyin/douplus/promotable-item-list" + "text": "Douyin Video Audience Profile", + "link": "/model-api-reference/platform-apis/douyin/index/item-user-profile" }, { - "text": "Get related posts recommendation data", - "link": "/model-api-reference/platform-apis/douyin/web/related-posts" + "text": "Douyin Video Channel Feed", + "link": "/model-api-reference/platform-apis/douyin/web/video-channel-result" }, { - "text": "Get series video list", - "link": "/model-api-reference/platform-apis/douyin/app-v3/series-video-list" + "text": "Douyin Video Comparison Analysis", + "link": "/model-api-reference/platform-apis/douyin/index/item-analysis" }, { - "text": "Get single video danmaku data", + "text": "Douyin Video Danmaku", "link": "/model-api-reference/platform-apis/douyin/web/one-video-danmaku" }, { - "text": "Get single video data", - "link": "/model-api-reference/platform-apis/douyin/app-v3/one-video" + "text": "Douyin Video Detail", + "link": "/model-api-reference/platform-apis/douyin/app-v3/one-video-v3" }, { - "text": "Get single video data", - "link": "/model-api-reference/platform-apis/douyin/web/one-video" + "text": "Douyin Video Detail App Link", + "link": "/model-api-reference/platform-apis/douyin/app-v3/open-app-to-video-detail" }, { - "text": "Get single video data by sharing link", - "link": "/model-api-reference/platform-apis/douyin/app-v3/one-video-by-share-url" + "text": "Douyin Video Details by Share URL", + "link": "/model-api-reference/platform-apis/douyin/web/one-video-by-share-url" }, { - "text": "Get single video data by sharing link", - "link": "/model-api-reference/platform-apis/douyin/web/one-video-by-share-url" + "text": "Douyin Video Index Interpretation", + "link": "/model-api-reference/platform-apis/douyin/index/item-index-interpret" }, { - "text": "Get single video data V2", - "link": "/model-api-reference/platform-apis/douyin/app-v3/one-video-v2" + "text": "Douyin Video Index Trend", + "link": "/model-api-reference/platform-apis/douyin/index/item-index" }, { - "text": "Get single video data V2", - "link": "/model-api-reference/platform-apis/douyin/web/one-video-v2" + "text": "Douyin Video Mix Detail", + "link": "/model-api-reference/platform-apis/douyin/app-v3/video-mix-detail" }, { - "text": "Get single video data V3 (No copyright restrictions)", - "link": "/model-api-reference/platform-apis/douyin/app-v3/one-video-v3" + "text": "Douyin Video Mix Post List", + "link": "/model-api-reference/platform-apis/douyin/app-v3/video-mix-post-list" }, { - "text": "Get the highest quality play URL of the video", - "link": "/model-api-reference/platform-apis/douyin/app-v3/video-high-quality-play-url" + "text": "Douyin Video Play Count", + "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/item-play-count" }, { - "text": "Get the highest quality play URL of the video", - "link": "/model-api-reference/platform-apis/douyin/web/video-high-quality-play-url" + "text": "Douyin Video Search Filter Options", + "link": "/model-api-reference/platform-apis/douyin/index/item-filter-options" }, { - "text": "Get the statistical data of the Post according to the video ID (like count, download count, play count, share count)", - "link": "/model-api-reference/platform-apis/douyin/app-v3/multi-video-statistics" + "text": "Douyin Video Search Suggestions", + "link": "/model-api-reference/platform-apis/douyin/index/item-sug" }, { - "text": "Get the statistical data of the Post according to the video ID (like count, download count, play count, share count)", - "link": "/model-api-reference/platform-apis/douyin/app-v3/video-statistics" + "text": "Douyin Video Share QR Code", + "link": "/model-api-reference/platform-apis/douyin/app-v3/generate-video-share-qrcode" }, { - "text": "Get user collection data", - "link": "/model-api-reference/platform-apis/douyin/web/user-collects-videos" + "text": "Douyin Video Statistics", + "link": "/model-api-reference/platform-apis/douyin/app-v3/video-statistics" }, { - "text": "Get user collection video data", - "link": "/model-api-reference/platform-apis/douyin/web/user-collection-videos" + "text": "Douyin Video Statistics (Batch)", + "link": "/model-api-reference/platform-apis/douyin/app-v3/multi-video-statistics" }, { - "text": "Get user homepage posts", - "link": "/model-api-reference/platform-apis/douyin/douplus/user-posts" + "text": "Douyin Web Knowledge Videos", + "link": "/model-api-reference/platform-apis/douyin/web/knowledge-aweme" }, { - "text": "Get user homepage video data", - "link": "/model-api-reference/platform-apis/douyin/app-v3/user-post-videos" + "text": "Douyin Web Music Videos", + "link": "/model-api-reference/platform-apis/douyin/web/music-aweme" }, { - "text": "Get user homepage video data", - "link": "/model-api-reference/platform-apis/douyin/web/user-post-videos" + "text": "Douyin Web Series Videos", + "link": "/model-api-reference/platform-apis/douyin/web/series-aweme" }, { - "text": "Get user like video data", - "link": "/model-api-reference/platform-apis/douyin/app-v3/user-like-videos" + "text": "Douyin Xingtu Author Homepage Videos", + "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-homepage-videos" }, { - "text": "Get user like video data", - "link": "/model-api-reference/platform-apis/douyin/web/user-like-videos" - }, - { - "text": "Get user mix video data", - "link": "/model-api-reference/platform-apis/douyin/web/user-mix-videos" - }, - { - "text": "Get video audience profile", - "link": "/model-api-reference/platform-apis/douyin/index/item-user-profile" - }, - { - "text": "Get video comparison analysis", - "link": "/model-api-reference/platform-apis/douyin/index/item-analysis" - }, - { - "text": "Get video danmaku list", - "link": "/model-api-reference/platform-apis/douyin/creator/video-danmaku-list" - }, - { - "text": "Get video detail", - "link": "/model-api-reference/platform-apis/douyin/index/item-base" - }, - { - "text": "Get video detail (by id or link)", - "link": "/model-api-reference/platform-apis/douyin/douplus/video-detail" - }, - { - "text": "Get video index interpretation", - "link": "/model-api-reference/platform-apis/douyin/index/item-index-interpret" - }, - { - "text": "Get video index trend", - "link": "/model-api-reference/platform-apis/douyin/index/item-index" - }, - { - "text": "Get video list of specified music", - "link": "/model-api-reference/platform-apis/douyin/app-v3/music-video-list" - }, - { - "text": "Get video search filter options", - "link": "/model-api-reference/platform-apis/douyin/index/item-filter-options" - }, - { - "text": "Increase the number of plays of the work according to the video ID", - "link": "/model-api-reference/platform-apis/douyin/app-v3/add-video-play-count" - }, - { - "text": "Knowledge Video", - "link": "/model-api-reference/platform-apis/douyin/web/knowledge-aweme" + "text": "Douyin Xingtu Author Show Items", + "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-show-items" }, { - "text": "Multi Get Item Stats", + "text": "Douyin Xingtu Batch Video Stats", "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/multi-get-item-stats" }, { - "text": "Music Video", - "link": "/model-api-reference/platform-apis/douyin/web/music-aweme" - }, - { - "text": "Series Video", - "link": "/model-api-reference/platform-apis/douyin/web/series-aweme" + "text": "Douyin Xingtu KOL Conversion Video Display", + "link": "/model-api-reference/platform-apis/douyin/xingtu/kol-convert-video-display-v1" }, { - "text": "Video search results", - "link": "/model-api-reference/platform-apis/douyin/index/item-query" + "text": "Douyin Xingtu KOL Recommended Videos", + "link": "/model-api-reference/platform-apis/douyin/xingtu/kol-rec-videos-v1" }, { - "text": "Video search suggest", - "link": "/model-api-reference/platform-apis/douyin/index/item-sug" + "text": "Douyin XingTu KOL Video Performance", + "link": "/model-api-reference/platform-apis/douyin/xingtu/kol-video-performance-v1" } ] }, @@ -701,276 +605,256 @@ export default { "label": "Users & Accounts", "operations": [ { - "text": "Content author portrait", - "link": "/model-api-reference/platform-apis/douyin/index/content-author-portrait" - }, - { - "text": "Daren compare users", - "link": "/model-api-reference/platform-apis/douyin/index/daren-compare-users-stable" - }, - { - "text": "Daren search suggest", - "link": "/model-api-reference/platform-apis/douyin/index/daren-sug-great-user-list" + "text": "Douyin Account Fan Interest Topics", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-account-fans-interest-topic-list" }, { - "text": "Encrypt Douyin uid to user_id", - "link": "/model-api-reference/platform-apis/douyin/index/encrypt-user-id" + "text": "Douyin Account Metric Trends", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-account-trends-list" }, { - "text": "Encrypt user uid to sec_user_id", - "link": "/model-api-reference/platform-apis/douyin/web/encrypt-uid-to-sec-user-id" + "text": "Douyin Activity List", + "link": "/model-api-reference/platform-apis/douyin/creator/creator-activity-list" }, { - "text": "Extract list user id", - "link": "/model-api-reference/platform-apis/douyin/web/all-sec-user-id" + "text": "Douyin Author Daily Fan Trend", + "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-daily-fans" }, { - "text": "Extract single user id", - "link": "/model-api-reference/platform-apis/douyin/web/sec-user-id" + "text": "Douyin Author Market Fields", + "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-market-fields" }, { - "text": "Fetch account fan data trend", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-account-trends-list" + "text": "Douyin Batch User Profile", + "link": "/model-api-reference/platform-apis/douyin/web/batch-user-profile-v1" }, { - "text": "Fetch author diagnosis", - "link": "/model-api-reference/platform-apis/douyin/creator-v2/author-diagnosis" + "text": "Douyin Batch User Profile (V2)", + "link": "/model-api-reference/platform-apis/douyin/web/batch-user-profile-v2" }, { - "text": "Fetch fan interest author 20 users", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-account-fans-interest-account-list" + "text": "Douyin Content Author Portrait", + "link": "/model-api-reference/platform-apis/douyin/index/content-author-portrait" }, { - "text": "Fetch fan interest topic in the last 3 days 10 topics", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-account-fans-interest-topic-list" + "text": "Douyin Content Categories", + "link": "/model-api-reference/platform-apis/douyin/creator/creator-content-category" }, { - "text": "Fetch fan portrait", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-account-fans-portrait-list" + "text": "Douyin Creator Activity Details", + "link": "/model-api-reference/platform-apis/douyin/creator/creator-activity-detail" }, { - "text": "Fetch hot account list", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-account-list" + "text": "Douyin Creator Comparison Trends", + "link": "/model-api-reference/platform-apis/douyin/index/daren-compare-users-stable" }, { - "text": "Fetch work like audience portrait - hot list only", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-user-portrait-list" + "text": "Douyin Creator Content Courses", + "link": "/model-api-reference/platform-apis/douyin/creator/creator-content-course" }, { - "text": "Generate Douyin share link, call Douyin APP, and jump to the specified user profile", - "link": "/model-api-reference/platform-apis/douyin/app-v3/open-app-to-user-profile" + "text": "Douyin Creator Hot Courses", + "link": "/model-api-reference/platform-apis/douyin/creator/creator-hot-course" }, { - "text": "Get Author Audience Distribution", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-audience-distribution" + "text": "Douyin Creator Hot Props Billboard", + "link": "/model-api-reference/platform-apis/douyin/creator/creator-hot-props-billboard" }, { - "text": "Get Author Base Info", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-base-info" + "text": "Douyin Creator Hot Spot Billboard", + "link": "/model-api-reference/platform-apis/douyin/creator/creator-hot-spot-billboard" }, { - "text": "Get Author Business Card Info", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-business-card-info" + "text": "Douyin Creator Hot Topic Billboard", + "link": "/model-api-reference/platform-apis/douyin/creator/creator-hot-topic-billboard" }, { - "text": "Get Author Content Hot Keywords", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-content-hot-keywords" + "text": "Douyin Creator Industry Category Config", + "link": "/model-api-reference/platform-apis/douyin/creator/industry-category-config" }, { - "text": "Get Author Convert Ability", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-convert-ability" + "text": "Douyin Creator Material Center Billboard", + "link": "/model-api-reference/platform-apis/douyin/creator/creator-material-center-billboard" }, { - "text": "Get Author CP Info", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-cp-info" + "text": "Douyin Creator Mission Task List", + "link": "/model-api-reference/platform-apis/douyin/creator/mission-task-list" }, { - "text": "Get Author Daily Fans", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-daily-fans" + "text": "Douyin Creator Search Suggestions", + "link": "/model-api-reference/platform-apis/douyin/index/daren-sug-great-user-list" }, { - "text": "Get Author Fans Distribution", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-fans-distribution" + "text": "Douyin Daren Fan Analysis", + "link": "/model-api-reference/platform-apis/douyin/index/daren-great-user-fans-info" }, { - "text": "Get Author Link Info", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-link-info" + "text": "Douyin Fan Interest Account List", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-account-fans-interest-account-list" }, { - "text": "Get Author Local Info", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-local-info" + "text": "Douyin Hot Account Fan Portrait", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-account-fans-portrait-list" }, { - "text": "Get Author Market Fields", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-market-fields" + "text": "Douyin Hot Account List", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-account-list" }, { - "text": "Get Author Spread Info", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-spread-info" + "text": "Douyin Hot Challenge Billboard", + "link": "/model-api-reference/platform-apis/douyin/creator/creator-hot-challenge-billboard" }, { - "text": "Get Author Touch Distribution", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-touch-distribution" + "text": "Douyin Hot Video Audience Portrait", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-user-portrait-list" }, { - "text": "Get batch user profile (up to 10)", - "link": "/model-api-reference/platform-apis/douyin/web/batch-user-profile-v1" + "text": "Douyin Index Subscribed Keywords", + "link": "/model-api-reference/platform-apis/douyin/index/get-user-sub-word" }, { - "text": "Get batch user profile (up to 50)", - "link": "/model-api-reference/platform-apis/douyin/web/batch-user-profile-v2" + "text": "Douyin Index User ID Encryption", + "link": "/model-api-reference/platform-apis/douyin/index/encrypt-user-id" }, { - "text": "Get creator activity detail", - "link": "/model-api-reference/platform-apis/douyin/creator/creator-activity-detail" + "text": "Douyin Material Center Configuration", + "link": "/model-api-reference/platform-apis/douyin/creator/creator-material-center-config" }, { - "text": "Get creator activity list", - "link": "/model-api-reference/platform-apis/douyin/creator/creator-activity-list" + "text": "Douyin Material Center Related Videos", + "link": "/model-api-reference/platform-apis/douyin/creator/creator-material-center-related" }, { - "text": "Get creator content creation category", - "link": "/model-api-reference/platform-apis/douyin/creator/creator-content-category" + "text": "Douyin sec_user_id from URL", + "link": "/model-api-reference/platform-apis/douyin/web/sec-user-id" }, { - "text": "Get creator content creation course", - "link": "/model-api-reference/platform-apis/douyin/creator/creator-content-course" + "text": "Douyin sec_user_ids from URLs (Batch)", + "link": "/model-api-reference/platform-apis/douyin/web/all-sec-user-id" }, { - "text": "Get creator hot challenge billboard", - "link": "/model-api-reference/platform-apis/douyin/creator/creator-hot-challenge-billboard" + "text": "Douyin UID to Sec User ID", + "link": "/model-api-reference/platform-apis/douyin/web/encrypt-uid-to-sec-user-id" }, { - "text": "Get creator hot course", - "link": "/model-api-reference/platform-apis/douyin/creator/creator-hot-course" + "text": "Douyin User Profile (App V3)", + "link": "/model-api-reference/platform-apis/douyin/app-v3/user-profile" }, { - "text": "Get creator hot props billboard", - "link": "/model-api-reference/platform-apis/douyin/creator/creator-hot-props-billboard" + "text": "Douyin User Profile (Web)", + "link": "/model-api-reference/platform-apis/douyin/web/user-profile" }, { - "text": "Get creator hot spot billboard", - "link": "/model-api-reference/platform-apis/douyin/creator/creator-hot-spot-billboard" + "text": "Douyin User Profile by Short ID", + "link": "/model-api-reference/platform-apis/douyin/web/user-profile-by-short-id" }, { - "text": "Get creator hot topic billboard", - "link": "/model-api-reference/platform-apis/douyin/creator/creator-hot-topic-billboard" + "text": "Douyin User Profile by UID", + "link": "/model-api-reference/platform-apis/douyin/web/user-profile-by-uid" }, { - "text": "Get creator material center billboard", - "link": "/model-api-reference/platform-apis/douyin/creator/creator-material-center-billboard" + "text": "Douyin User Profile by Unique ID", + "link": "/model-api-reference/platform-apis/douyin/web/user-profile-v2" }, { - "text": "Get creator material center config", - "link": "/model-api-reference/platform-apis/douyin/creator/creator-material-center-config" + "text": "Douyin User Profile Details", + "link": "/model-api-reference/platform-apis/douyin/web/user-profile-v3" }, { - "text": "Get daren fans analysis", - "link": "/model-api-reference/platform-apis/douyin/index/daren-great-user-fans-info" + "text": "Douyin User Profile Share Link", + "link": "/model-api-reference/platform-apis/douyin/app-v3/open-app-to-user-profile" }, { - "text": "Get industry category config", - "link": "/model-api-reference/platform-apis/douyin/creator/industry-category-config" + "text": "Douyin User Series List", + "link": "/model-api-reference/platform-apis/douyin/app-v3/user-series-list" }, { - "text": "Get information of specified user", - "link": "/model-api-reference/platform-apis/douyin/app-v3/user-profile" + "text": "Douyin Web User Fans List", + "link": "/model-api-reference/platform-apis/douyin/web/user-fans-list" }, { - "text": "Get information of specified user by sec_user_id", - "link": "/model-api-reference/platform-apis/douyin/web/user-profile" + "text": "Douyin Web User Following List", + "link": "/model-api-reference/platform-apis/douyin/web/user-following-list" }, { - "text": "Get information of specified user by sec_user_id (gender, age, live level、brand)", - "link": "/model-api-reference/platform-apis/douyin/web/user-profile-v4" + "text": "Douyin Web User Information", + "link": "/model-api-reference/platform-apis/douyin/web/query-user" }, { - "text": "Get information of specified user by uid", - "link": "/model-api-reference/platform-apis/douyin/web/user-profile-v3" + "text": "Douyin Xingtu Author Audience Distribution", + "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-audience-distribution" }, { - "text": "Get information of specified user by unique_id", - "link": "/model-api-reference/platform-apis/douyin/web/user-profile-v2" + "text": "Douyin Xingtu Author Base Info", + "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-base-info" }, { - "text": "Get kol Daily Fans V1", - "link": "/model-api-reference/platform-apis/douyin/xingtu/kol-daily-fans-v1" + "text": "Douyin Xingtu Author Business Card Info", + "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-business-card-info" }, { - "text": "Get kol Fans Portrait V1", - "link": "/model-api-reference/platform-apis/douyin/xingtu/kol-fans-portrait-v1" + "text": "Douyin Xingtu Author Content Hot Keywords", + "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-content-hot-keywords" }, { - "text": "Get mission task list", - "link": "/model-api-reference/platform-apis/douyin/creator/mission-task-list" + "text": "Douyin Xingtu Author Conversion Ability", + "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-convert-ability" }, { - "text": "Get promoted accounts", - "link": "/model-api-reference/platform-apis/douyin/douplus/promoted-accounts" + "text": "Douyin Xingtu Author Cooperation Info", + "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-cp-info" }, { - "text": "Get topic or hot spot related videos", - "link": "/model-api-reference/platform-apis/douyin/creator/creator-material-center-related" + "text": "Douyin Xingtu Author Fan Distribution", + "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-fans-distribution" }, { - "text": "Get user collection", - "link": "/model-api-reference/platform-apis/douyin/web/user-collects" + "text": "Douyin Xingtu Author ID by UID", + "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/xingtu-kolid-by-uid" }, { - "text": "Get user fans list", - "link": "/model-api-reference/platform-apis/douyin/app-v3/user-fans-list" + "text": "Douyin Xingtu Author Location Info", + "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-local-info" }, { - "text": "Get user fans list", - "link": "/model-api-reference/platform-apis/douyin/web/user-fans-list" + "text": "Douyin Xingtu Author Spread Info", + "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-spread-info" }, { - "text": "Get user following list", - "link": "/model-api-reference/platform-apis/douyin/web/user-following-list" + "text": "Douyin Xingtu Batch Author Details", + "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/multi-get-author-info" }, { - "text": "Get user information by Short ID", - "link": "/model-api-reference/platform-apis/douyin/web/user-profile-by-short-id" + "text": "Douyin Xingtu Creator Link Indices", + "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/author-link-info" }, { - "text": "Get user information by UID", - "link": "/model-api-reference/platform-apis/douyin/web/user-profile-by-uid" + "text": "Douyin XingTu KOL Audience", + "link": "/model-api-reference/platform-apis/douyin/xingtu/kol-fans-portrait-v1" }, { - "text": "Get User Profile QRCode", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/user-profile-qrcode" + "text": "Douyin Xingtu KOL Daily Fans", + "link": "/model-api-reference/platform-apis/douyin/xingtu/kol-daily-fans-v1" }, { - "text": "Get user series list", - "link": "/model-api-reference/platform-apis/douyin/app-v3/user-series-list" + "text": "Douyin XingTu KOL ID by User ID", + "link": "/model-api-reference/platform-apis/douyin/xingtu/xingtu-kolid-by-uid" }, { - "text": "Get user subscribed keywords", - "link": "/model-api-reference/platform-apis/douyin/index/get-user-sub-word" + "text": "Douyin XingTu KOL Profile", + "link": "/model-api-reference/platform-apis/douyin/xingtu/kol-base-info-v1" }, { - "text": "Get Xingtu Author ID by Douyin sec_user_id", + "text": "Douyin XingTu kolId by sec_user_id (V2)", "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/xingtu-kolid-by-sec-user-id" }, { - "text": "Get Xingtu Author ID by Douyin UID", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/xingtu-kolid-by-uid" - }, - { - "text": "Get XingTu kolid by Douyin sec_user_id", + "text": "Douyin XingTu kolId Lookup", "link": "/model-api-reference/platform-apis/douyin/xingtu/xingtu-kolid-by-sec-user-id" }, { - "text": "Get XingTu kolid by Douyin User ID", - "link": "/model-api-reference/platform-apis/douyin/xingtu/xingtu-kolid-by-uid" - }, - { - "text": "Multi Get Author Info", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/multi-get-author-info" - }, - { - "text": "Query Douyin user basic information", - "link": "/model-api-reference/platform-apis/douyin/web/query-user" + "text": "Douyin Xingtu User Profile QR Code", + "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/user-profile-qrcode" } ] }, @@ -979,68 +863,48 @@ export default { "label": "Utilities", "operations": [ { - "text": "Douyin APP register device", + "text": "Douyin App Device Registration", "link": "/model-api-reference/platform-apis/douyin/app-v3/register-device" }, { - "text": "Extract list video id", - "link": "/model-api-reference/platform-apis/douyin/web/all-aweme-id" - }, - { - "text": "Extract single video id", - "link": "/model-api-reference/platform-apis/douyin/web/aweme-id" - }, - { - "text": "Generate A-Bogus parameter using API URL", - "link": "/model-api-reference/platform-apis/douyin/web/generate-a-bogus" - }, - { - "text": "Generate barrage xb signature", + "text": "Douyin Barrage WSS XB Signature", "link": "/model-api-reference/platform-apis/douyin/web/generate-wss-xb-signature" }, { - "text": "Generate Douyin short link", - "link": "/model-api-reference/platform-apis/douyin/app-v3/generate-short-url" - }, - { - "text": "Generate real msToken", - "link": "/model-api-reference/platform-apis/douyin/web/generate-real-ms-token" + "text": "Douyin Batch Video ID Extraction", + "link": "/model-api-reference/platform-apis/douyin/web/all-aweme-id" }, { - "text": "Generate s_v_web_id", - "link": "/model-api-reference/platform-apis/douyin/web/generate-s-v-web-id" + "text": "Douyin Short Link Generator", + "link": "/model-api-reference/platform-apis/douyin/app-v3/generate-short-url" }, { - "text": "Generate ttwid", - "link": "/model-api-reference/platform-apis/douyin/web/generate-ttwid" + "text": "Douyin URL Shortener", + "link": "/model-api-reference/platform-apis/douyin/web/shorten-url" }, { - "text": "Generate verify_fp", - "link": "/model-api-reference/platform-apis/douyin/web/generate-verify-fp" + "text": "Douyin Video ID Extractor", + "link": "/model-api-reference/platform-apis/douyin/web/aweme-id" }, { - "text": "Generate X-Bogus parameter using API URL", - "link": "/model-api-reference/platform-apis/douyin/web/generate-x-bogus" + "text": "Douyin Web Guest Cookie", + "link": "/model-api-reference/platform-apis/douyin/web/web-guest-cookie" }, { - "text": "Get DOU+ sec_token for POST requests", - "link": "/model-api-reference/platform-apis/douyin/douplus/sec-token" + "text": "Douyin Web TTWID Generator", + "link": "/model-api-reference/platform-apis/douyin/web/generate-ttwid" }, { - "text": "Get the guest Cookie of Douyin Web", - "link": "/model-api-reference/platform-apis/douyin/web/web-guest-cookie" + "text": "Douyin XingTu KOL ID by Unique ID", + "link": "/model-api-reference/platform-apis/douyin/xingtu/xingtu-kolid-by-unique-id" }, { - "text": "Get Xingtu Author ID by Douyin unique_id", + "text": "Douyin XingTu kolId by Douyin ID", "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/xingtu-kolid-by-unique-id" }, { - "text": "Get XingTu kolid by Douyin unique_id", - "link": "/model-api-reference/platform-apis/douyin/xingtu/xingtu-kolid-by-unique-id" - }, - { - "text": "Shorten URL", - "link": "/model-api-reference/platform-apis/douyin/web/shorten-url" + "text": "Douyin Xingtu Signed Image URL", + "link": "/model-api-reference/platform-apis/douyin/xingtu/sign-image" } ] }, @@ -1049,248 +913,196 @@ export default { "label": "Other", "operations": [ { - "text": "Content consumer portrait", - "link": "/model-api-reference/platform-apis/douyin/index/content-consumer-portrait" - }, - { - "text": "Content creative duration", - "link": "/model-api-reference/platform-apis/douyin/index/content-creative-duration" + "text": "Douyin Billboard City List", + "link": "/model-api-reference/platform-apis/douyin/billboard/city-list" }, { - "text": "Content creative keywords", - "link": "/model-api-reference/platform-apis/douyin/index/content-creative-keywords" + "text": "Douyin Billboard Hot Calendar Detail", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-calendar-detail" }, { - "text": "Content creative topic", - "link": "/model-api-reference/platform-apis/douyin/index/content-creative-topic" + "text": "Douyin Billboard Hot Calendar List", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-calendar-list" }, { - "text": "Delivery analysis detail", - "link": "/model-api-reference/platform-apis/douyin/douplus/analyse-detail" + "text": "Douyin Billboard Hot Category List", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-category-list" }, { - "text": "Delivery analysis overview", - "link": "/model-api-reference/platform-apis/douyin/douplus/analyse-overview" + "text": "Douyin Billboard Hot Word Details", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-total-hot-word-detail-list" }, { - "text": "DOU+ cost estimation", - "link": "/model-api-reference/platform-apis/douyin/douplus/calculate-cost" + "text": "Douyin Brand Popularity Cycles", + "link": "/model-api-reference/platform-apis/douyin/index/brand-cycles" }, { - "text": "Fetch activity calendar", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-calendar-list" + "text": "Douyin Brand Radar Chart", + "link": "/model-api-reference/platform-apis/douyin/index/brand-radar-chart" }, { - "text": "Fetch activity calendar detail", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-calendar-detail" + "text": "Douyin Brand Valid Information", + "link": "/model-api-reference/platform-apis/douyin/index/brand-valid-info" }, { - "text": "Fetch all hot content words", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-total-hot-word-list" + "text": "Douyin City Hot List", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-city-list" }, { - "text": "Fetch Chinese city list", - "link": "/model-api-reference/platform-apis/douyin/billboard/city-list" + "text": "Douyin Content Consumer Portrait", + "link": "/model-api-reference/platform-apis/douyin/index/content-consumer-portrait" }, { - "text": "Fetch city hot list", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-city-list" + "text": "Douyin Content Creative Duration", + "link": "/model-api-reference/platform-apis/douyin/index/content-creative-duration" }, { - "text": "Fetch content word details", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-total-hot-word-detail-list" + "text": "Douyin Content Creative Keywords", + "link": "/model-api-reference/platform-apis/douyin/index/content-creative-keywords" }, { - "text": "Fetch high completion rate list", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-total-high-play-list" + "text": "Douyin Content Creative Topics", + "link": "/model-api-reference/platform-apis/douyin/index/content-creative-topic" }, { - "text": "Fetch high fan rate list", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-total-high-fan-list" + "text": "Douyin Content Guide Valid Dates", + "link": "/model-api-reference/platform-apis/douyin/index/content-valid-date" }, { - "text": "Fetch high like rate list", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-total-high-like-list" + "text": "Douyin Current Hot Topics Leaderboard", + "link": "/model-api-reference/platform-apis/douyin/index/current-hot-topic" }, { - "text": "Fetch hot challenge list", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-challenge-list" + "text": "Douyin DOU+ Talent Categories", + "link": "/model-api-reference/platform-apis/douyin/douplus/talent-categories" }, { - "text": "Fetch hot list category", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-category-list" + "text": "Douyin DOU+ Talents by Category", + "link": "/model-api-reference/platform-apis/douyin/douplus/talents-by-category" }, { - "text": "Fetch low fan explosion list", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-total-low-fan-list" + "text": "Douyin High Completion Rate Billboard", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-total-high-play-list" }, { - "text": "Fetch rising hot list", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-rise-list" + "text": "Douyin High Fan Rate Billboard", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-total-high-fan-list" }, { - "text": "Fetch topic hot list", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-total-topic-list" + "text": "Douyin High Like Rate Billboard", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-total-high-like-list" }, { - "text": "Fetch topic list with rising popularity", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-total-high-topic-list" + "text": "Douyin Hot Challenge List", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-challenge-list" }, { - "text": "Fetch total hot list", - "link": "/model-api-reference/platform-apis/douyin/billboard/hot-total-list" + "text": "Douyin Hot Content Words", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-total-hot-word-list" }, { - "text": "Get all area list", - "link": "/model-api-reference/platform-apis/douyin/index/all-area" + "text": "Douyin Hot Topic Billboard", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-total-topic-list" }, { - "text": "Get all valid dates", - "link": "/model-api-reference/platform-apis/douyin/index/all-valid-date" + "text": "Douyin Hot Topic Detail Analysis", + "link": "/model-api-reference/platform-apis/douyin/index/hot-detail" }, { - "text": "Get brand cycles", - "link": "/model-api-reference/platform-apis/douyin/index/brand-cycles" + "text": "Douyin Index Area List", + "link": "/model-api-reference/platform-apis/douyin/index/all-area" }, { - "text": "Get brand index", - "link": "/model-api-reference/platform-apis/douyin/index/brand-valid-info" + "text": "Douyin Index Valid Dates", + "link": "/model-api-reference/platform-apis/douyin/index/all-valid-date" }, { - "text": "Get brand initiative rank weekly", - "link": "/model-api-reference/platform-apis/douyin/index/brand-initiative-rank-weekly" + "text": "Douyin KOL Xingtu Index", + "link": "/model-api-reference/platform-apis/douyin/xingtu/kol-xingtu-index-v1" }, { - "text": "Get brand radar chart", - "link": "/model-api-reference/platform-apis/douyin/index/brand-radar-chart" + "text": "Douyin Related Insight Recommendations", + "link": "/model-api-reference/platform-apis/douyin/index/insight-get-rec" }, { - "text": "Get content valid date", - "link": "/model-api-reference/platform-apis/douyin/index/content-valid-date" + "text": "Douyin Relation Analysis Valid Dates", + "link": "/model-api-reference/platform-apis/douyin/index/valid-date-for-relation" }, { - "text": "Get crowd portrait", - "link": "/model-api-reference/platform-apis/douyin/index/portrait" + "text": "Douyin Relation Word Analysis", + "link": "/model-api-reference/platform-apis/douyin/index/relation-word" }, { - "text": "Get current hot topics", - "link": "/model-api-reference/platform-apis/douyin/index/current-hot-topic" + "text": "Douyin Rising Popularity Topic List", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-total-high-topic-list" }, { - "text": "Get Demander MCN List", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/demander-mcn-list" + "text": "Douyin Series Detail", + "link": "/model-api-reference/platform-apis/douyin/app-v3/series-detail" }, { - "text": "Get Excellent Case Category List", - "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/excellent-case-category-list" + "text": "Douyin Total Hot Billboard", + "link": "/model-api-reference/platform-apis/douyin/billboard/hot-total-list" }, { - "text": "Get hot topic detail", - "link": "/model-api-reference/platform-apis/douyin/index/hot-detail" + "text": "Douyin Weekly Brand Initiative Ranking", + "link": "/model-api-reference/platform-apis/douyin/index/brand-initiative-rank-weekly" }, { - "text": "Get hot words", - "link": "/model-api-reference/platform-apis/douyin/index/hot-words" + "text": "Douyin Xingtu Demander MCN List", + "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/demander-mcn-list" }, { - "text": "Get IP Activity Detail", + "text": "Douyin Xingtu IP Activity Detail", "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/ip-activity-detail" }, { - "text": "Get IP Activity Industry List", + "text": "Douyin Xingtu IP Activity Industry List", "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/ip-activity-industry-list" }, { - "text": "Get IP Activity List", + "text": "Douyin Xingtu IP Activity List", "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/ip-activity-list" }, { - "text": "Get kol Audience Portrait V1", + "text": "Douyin Xingtu KOL Audience Portrait (V1)", "link": "/model-api-reference/platform-apis/douyin/xingtu/kol-audience-portrait-v1" }, { - "text": "Get kol Base Info V1", - "link": "/model-api-reference/platform-apis/douyin/xingtu/kol-base-info-v1" - }, - { - "text": "Get kol Conversion Ability Analysis V1", - "link": "/model-api-reference/platform-apis/douyin/xingtu/kol-conversion-ability-analysis-v1" - }, - { - "text": "Get kol Cp Info V1", + "text": "Douyin XingTu KOL Cost Metrics", "link": "/model-api-reference/platform-apis/douyin/xingtu/kol-cp-info-v1" }, { - "text": "Get kol Data Overview V1", - "link": "/model-api-reference/platform-apis/douyin/xingtu/kol-data-overview-v1" - }, - { - "text": "Get kol Link Struct V1", + "text": "Douyin Xingtu KOL Link Structure", "link": "/model-api-reference/platform-apis/douyin/xingtu/kol-link-struct-v1" }, { - "text": "Get kol Service Price V1", + "text": "Douyin XingTu KOL Price", "link": "/model-api-reference/platform-apis/douyin/xingtu/kol-service-price-v1" }, { - "text": "Get kol Touch Distribution V1", + "text": "Douyin Xingtu KOL Touch Distribution", "link": "/model-api-reference/platform-apis/douyin/xingtu/kol-touch-distribution-v1" }, { - "text": "Get kol Xingtu Index V1", - "link": "/model-api-reference/platform-apis/douyin/xingtu/kol-xingtu-index-v1" - }, - { - "text": "Get Playlet Actor Rank Catalog", + "text": "Douyin Xingtu Playlet Actor Rank Catalog", "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/playlet-actor-rank-catalog" }, { - "text": "Get Playlet Actor Rank List", + "text": "Douyin Xingtu Playlet Actor Ranking List", "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/playlet-actor-rank-list" }, { - "text": "Get Ranking List Catalog", + "text": "Douyin Xingtu Ranking List Catalog", "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/ranking-list-catalog" }, { - "text": "Get Ranking List Data", + "text": "Douyin XingTu Ranking List Data", "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/ranking-list-data" }, { - "text": "Get related insight recommendations", - "link": "/model-api-reference/platform-apis/douyin/index/insight-get-rec" - }, - { - "text": "Get relation word analysis", - "link": "/model-api-reference/platform-apis/douyin/index/relation-word" - }, - { - "text": "Get report detail", - "link": "/model-api-reference/platform-apis/douyin/index/report-detail" - }, - { - "text": "Get Resource List", + "text": "Douyin Xingtu Resource List", "link": "/model-api-reference/platform-apis/douyin/xingtu-v2/resource-list" - }, - { - "text": "Get series detail", - "link": "/model-api-reference/platform-apis/douyin/app-v3/series-detail" - }, - { - "text": "Get share info by share code", - "link": "/model-api-reference/platform-apis/douyin/app-v3/share-info-by-share-code" - }, - { - "text": "Get Sign Image", - "link": "/model-api-reference/platform-apis/douyin/xingtu/sign-image" - }, - { - "text": "Get talent categories", - "link": "/model-api-reference/platform-apis/douyin/douplus/talent-categories" - }, - { - "text": "Get valid date for relation", - "link": "/model-api-reference/platform-apis/douyin/index/valid-date-for-relation" } ] } diff --git a/.vitepress/theme/platform-api-sidebars/exa.ts b/.vitepress/theme/platform-api-sidebars/exa.ts index ca479549..49bc8e24 100644 --- a/.vitepress/theme/platform-api-sidebars/exa.ts +++ b/.vitepress/theme/platform-api-sidebars/exa.ts @@ -23,7 +23,7 @@ export default { "link": "/model-api-reference/platform-apis/exa/contents" }, { - "text": "Exa Answer", + "text": "Exa Question Answering", "link": "/model-api-reference/platform-apis/exa/answer" } ] diff --git a/.vitepress/theme/platform-api-sidebars/firecrawl.ts b/.vitepress/theme/platform-api-sidebars/firecrawl.ts index 1cc7c19d..81dd205d 100644 --- a/.vitepress/theme/platform-api-sidebars/firecrawl.ts +++ b/.vitepress/theme/platform-api-sidebars/firecrawl.ts @@ -19,7 +19,7 @@ export default { "label": "Scrape", "operations": [ { - "text": "Firecrawl Scrape", + "text": "Firecrawl Page Scraper", "link": "/model-api-reference/platform-apis/firecrawl/scrape" }, { @@ -33,7 +33,7 @@ export default { "label": "Search", "operations": [ { - "text": "Firecrawl Search", + "text": "Firecrawl Web Search", "link": "/model-api-reference/platform-apis/firecrawl/search" } ] @@ -43,7 +43,7 @@ export default { "label": "Map", "operations": [ { - "text": "Firecrawl Map", + "text": "Firecrawl URL Discovery", "link": "/model-api-reference/platform-apis/firecrawl/map" } ] diff --git a/.vitepress/theme/platform-api-sidebars/instagram.ts b/.vitepress/theme/platform-api-sidebars/instagram.ts index 4ce38a1c..d238912d 100644 --- a/.vitepress/theme/platform-api-sidebars/instagram.ts +++ b/.vitepress/theme/platform-api-sidebars/instagram.ts @@ -2,91 +2,87 @@ export default { "platform": "Instagram", "slug": "instagram", - "operationCount": 93, + "operationCount": 81, "groups": [ { "key": "search", "label": "Search & Discovery", "operations": [ { - "text": "General search", - "link": "/model-api-reference/platform-apis/instagram/v2/general-search" + "text": "Instagram Explore Feed", + "link": "/model-api-reference/platform-apis/instagram/v3/explore" }, { - "text": "General search (with pagination)", - "link": "/model-api-reference/platform-apis/instagram/v3/general-search" + "text": "Instagram General Search (V2)", + "link": "/model-api-reference/platform-apis/instagram/v2/general-search" }, { - "text": "Get explore feed", - "link": "/model-api-reference/platform-apis/instagram/v3/explore" + "text": "Instagram General Search (V3)", + "link": "/model-api-reference/platform-apis/instagram/v3/general-search" }, { - "text": "Get explore page sections", - "link": "/model-api-reference/platform-apis/instagram/v1/explore-sections" + "text": "Instagram Hashtag Posts (V1)", + "link": "/model-api-reference/platform-apis/instagram/v1/hashtag-posts" }, { - "text": "Get hashtag posts", + "text": "Instagram Hashtag Posts (V2)", "link": "/model-api-reference/platform-apis/instagram/v2/hashtag-posts" }, { - "text": "Get hashtag posts", + "text": "Instagram Hashtag Posts (V3)", "link": "/model-api-reference/platform-apis/instagram/v3/hashtag-posts" }, { - "text": "Get posts by hashtag", - "link": "/model-api-reference/platform-apis/instagram/v1/hashtag-posts" + "text": "Instagram Hashtag Search (V2)", + "link": "/model-api-reference/platform-apis/instagram/v2/search-hashtags" }, { - "text": "Get recommended Reels feed", - "link": "/model-api-reference/platform-apis/instagram/v3/recommended-reels" + "text": "Instagram Hashtag Search (V3)", + "link": "/model-api-reference/platform-apis/instagram/v3/search-hashtags" }, { - "text": "Get similar users", - "link": "/model-api-reference/platform-apis/instagram/v2/similar-users" + "text": "Instagram Keyword Search", + "link": "/model-api-reference/platform-apis/instagram/v1/search" }, { - "text": "Get similar users", - "link": "/model-api-reference/platform-apis/instagram/v3/similar-users" + "text": "Instagram Location Search", + "link": "/model-api-reference/platform-apis/instagram/v2/search-locations" }, { - "text": "Search hashtags", - "link": "/model-api-reference/platform-apis/instagram/v2/search-hashtags" + "text": "Instagram Location Search by Coordinates (V2)", + "link": "/model-api-reference/platform-apis/instagram/v2/search-by-coordinates" }, { - "text": "Search hashtags", - "link": "/model-api-reference/platform-apis/instagram/v3/search-hashtags" + "text": "Instagram Location Search by Coordinates (V3)", + "link": "/model-api-reference/platform-apis/instagram/v3/search-by-coordinates" }, { - "text": "Search locations", - "link": "/model-api-reference/platform-apis/instagram/v2/search-locations" + "text": "Instagram Music Search", + "link": "/model-api-reference/platform-apis/instagram/v2/search-music" }, { - "text": "Search locations by coordinates", - "link": "/model-api-reference/platform-apis/instagram/v2/search-by-coordinates" + "text": "Instagram Recommended Reels Feed", + "link": "/model-api-reference/platform-apis/instagram/v3/recommended-reels" }, { - "text": "Search locations by coordinates", - "link": "/model-api-reference/platform-apis/instagram/v3/search-by-coordinates" + "text": "Instagram Reels Search", + "link": "/model-api-reference/platform-apis/instagram/v2/search-reels" }, { - "text": "Search music", - "link": "/model-api-reference/platform-apis/instagram/v2/search-music" + "text": "Instagram Similar Users (V2)", + "link": "/model-api-reference/platform-apis/instagram/v2/similar-users" }, { - "text": "Search reels", - "link": "/model-api-reference/platform-apis/instagram/v2/search-reels" + "text": "Instagram Similar Users (V3)", + "link": "/model-api-reference/platform-apis/instagram/v3/similar-users" }, { - "text": "Search users", + "text": "Instagram User Search (V2)", "link": "/model-api-reference/platform-apis/instagram/v2/search-users" }, { - "text": "Search users", + "text": "Instagram User Search (V3)", "link": "/model-api-reference/platform-apis/instagram/v3/search-users" - }, - { - "text": "Search users/hashtags/places", - "link": "/model-api-reference/platform-apis/instagram/v1/search" } ] }, @@ -95,36 +91,24 @@ export default { "label": "Comments & Engagement", "operations": [ { - "text": "Bulk translate comments", + "text": "Instagram Comment Bulk Translation", "link": "/model-api-reference/platform-apis/instagram/v3/bulk-translate-comments" }, { - "text": "Get comment replies", - "link": "/model-api-reference/platform-apis/instagram/v1/comment-replies" - }, - { - "text": "Get comment replies", + "text": "Instagram Comment Replies (V2)", "link": "/model-api-reference/platform-apis/instagram/v2/comment-replies" }, { - "text": "Get comment replies", + "text": "Instagram Comment Replies (V3)", "link": "/model-api-reference/platform-apis/instagram/v3/comment-replies" }, { - "text": "Get post comments", + "text": "Instagram Post Comments (V2)", "link": "/model-api-reference/platform-apis/instagram/v2/post-comments" }, { - "text": "Get post comments", + "text": "Instagram Post Comments (V3)", "link": "/model-api-reference/platform-apis/instagram/v3/post-comments" - }, - { - "text": "Get post comments V2", - "link": "/model-api-reference/platform-apis/instagram/v1/post-comments-v2" - }, - { - "text": "Translate comment or caption", - "link": "/model-api-reference/platform-apis/instagram/v3/translate-comment" } ] }, @@ -133,119 +117,111 @@ export default { "label": "Content & Video", "operations": [ { - "text": "Convert media ID to shortcode", - "link": "/model-api-reference/platform-apis/instagram/v1/media-id-to-shortcode" - }, - { - "text": "Convert media ID to shortcode", - "link": "/model-api-reference/platform-apis/instagram/v2/media-id-to-shortcode" + "text": "Instagram Explore Section Posts", + "link": "/model-api-reference/platform-apis/instagram/v1/section-posts" }, { - "text": "Convert media ID to shortcode", - "link": "/model-api-reference/platform-apis/instagram/v3/media-id-to-shortcode" + "text": "Instagram Location Posts (V1)", + "link": "/model-api-reference/platform-apis/instagram/v1/location-posts" }, { - "text": "Convert shortcode to media ID", - "link": "/model-api-reference/platform-apis/instagram/v1/shortcode-to-media-id" + "text": "Instagram Location Posts (V2)", + "link": "/model-api-reference/platform-apis/instagram/v2/location-posts" }, { - "text": "Convert shortcode to media ID", - "link": "/model-api-reference/platform-apis/instagram/v2/shortcode-to-media-id" + "text": "Instagram Location Posts (V3)", + "link": "/model-api-reference/platform-apis/instagram/v3/location-posts" }, { - "text": "Convert shortcode to media ID", - "link": "/model-api-reference/platform-apis/instagram/v3/shortcode-to-media-id" + "text": "Instagram Media ID to Shortcode (V1)", + "link": "/model-api-reference/platform-apis/instagram/v1/media-id-to-shortcode" }, { - "text": "Get location posts", - "link": "/model-api-reference/platform-apis/instagram/v2/location-posts" + "text": "Instagram Media ID to Shortcode (V2)", + "link": "/model-api-reference/platform-apis/instagram/v2/media-id-to-shortcode" }, { - "text": "Get location posts", - "link": "/model-api-reference/platform-apis/instagram/v3/location-posts" + "text": "Instagram Media ID to Shortcode (V3)", + "link": "/model-api-reference/platform-apis/instagram/v3/media-id-to-shortcode" }, { - "text": "Get music (audio) posts", - "link": "/model-api-reference/platform-apis/instagram/v3/music-posts" + "text": "Instagram Music Posts (V1)", + "link": "/model-api-reference/platform-apis/instagram/v1/music-posts" }, { - "text": "Get music posts", + "text": "Instagram Music Posts (V2)", "link": "/model-api-reference/platform-apis/instagram/v2/music-posts" }, { - "text": "Get post by ID", - "link": "/model-api-reference/platform-apis/instagram/v1/post-by-id" + "text": "Instagram Post Details (V2)", + "link": "/model-api-reference/platform-apis/instagram/v2/post-info" }, { - "text": "Get post by URL", - "link": "/model-api-reference/platform-apis/instagram/v1/post-by-url" + "text": "Instagram Post Details (V3)", + "link": "/model-api-reference/platform-apis/instagram/v3/post-info" }, { - "text": "Get post by URL V2", - "link": "/model-api-reference/platform-apis/instagram/v1/post-by-url-v2" + "text": "Instagram Post Details by ID", + "link": "/model-api-reference/platform-apis/instagram/v1/post-by-id" }, { - "text": "Get post info", - "link": "/model-api-reference/platform-apis/instagram/v2/post-info" + "text": "Instagram Post Details by URL", + "link": "/model-api-reference/platform-apis/instagram/v1/post-by-url" }, { - "text": "Get post info (media_id or URL)", - "link": "/model-api-reference/platform-apis/instagram/v3/post-info" + "text": "Instagram Post Details by URL (V2)", + "link": "/model-api-reference/platform-apis/instagram/v1/post-by-url-v2" }, { - "text": "Get post info by shortcode", + "text": "Instagram Post Info by Shortcode", "link": "/model-api-reference/platform-apis/instagram/v3/post-info-by-code" }, { - "text": "Get post likes", + "text": "Instagram Post Likes (V2)", "link": "/model-api-reference/platform-apis/instagram/v2/post-likes" }, { - "text": "Get post likes", + "text": "Instagram Post Likes (V3)", "link": "/model-api-reference/platform-apis/instagram/v3/post-likes" }, { - "text": "Get post oEmbed info", - "link": "/model-api-reference/platform-apis/instagram/v3/post-oembed" - }, - { - "text": "Get posts by location", - "link": "/model-api-reference/platform-apis/instagram/v1/location-posts" + "text": "Instagram Shortcode to Media ID", + "link": "/model-api-reference/platform-apis/instagram/v1/shortcode-to-media-id" }, { - "text": "Get posts by section", - "link": "/model-api-reference/platform-apis/instagram/v1/section-posts" + "text": "Instagram Shortcode to Media ID (V2)", + "link": "/model-api-reference/platform-apis/instagram/v2/shortcode-to-media-id" }, { - "text": "Get posts using specific music", - "link": "/model-api-reference/platform-apis/instagram/v1/music-posts" + "text": "Instagram Shortcode to Media ID (V3)", + "link": "/model-api-reference/platform-apis/instagram/v3/shortcode-to-media-id" }, { - "text": "Get user posts", - "link": "/model-api-reference/platform-apis/instagram/v2/user-posts" + "text": "Instagram User Posts (V1, V2)", + "link": "/model-api-reference/platform-apis/instagram/v1/user-posts-v2" }, { - "text": "Get user posts", - "link": "/model-api-reference/platform-apis/instagram/v3/user-posts" + "text": "Instagram User Posts (V1)", + "link": "/model-api-reference/platform-apis/instagram/v1/user-posts" }, { - "text": "Get user posts list", - "link": "/model-api-reference/platform-apis/instagram/v1/user-posts" + "text": "Instagram User Posts (V2)", + "link": "/model-api-reference/platform-apis/instagram/v2/user-posts" }, { - "text": "Get user posts list V2", - "link": "/model-api-reference/platform-apis/instagram/v1/user-posts-v2" + "text": "Instagram User Posts (V3)", + "link": "/model-api-reference/platform-apis/instagram/v3/user-posts" }, { - "text": "Get user tagged posts", + "text": "Instagram User Tagged Posts (V1)", "link": "/model-api-reference/platform-apis/instagram/v1/user-tagged-posts" }, { - "text": "Get user tagged posts", + "text": "Instagram User Tagged Posts (V2)", "link": "/model-api-reference/platform-apis/instagram/v2/user-tagged-posts" }, { - "text": "Get user tagged posts", + "text": "Instagram User Tagged Posts (V3)", "link": "/model-api-reference/platform-apis/instagram/v3/user-tagged-posts" } ] @@ -255,160 +231,130 @@ export default { "label": "Users & Accounts", "operations": [ { - "text": "Get user about info", - "link": "/model-api-reference/platform-apis/instagram/v1/user-about-info" - }, - { - "text": "Get user about info", + "text": "Instagram User About Details", "link": "/model-api-reference/platform-apis/instagram/v3/user-about" }, { - "text": "Get user brief info", + "text": "Instagram User Brief Info", "link": "/model-api-reference/platform-apis/instagram/v3/user-brief" }, { - "text": "Get user data by user ID", - "link": "/model-api-reference/platform-apis/instagram/v1/user-info-by-id" - }, - { - "text": "Get user data by user ID V2", - "link": "/model-api-reference/platform-apis/instagram/v1/user-info-by-id-v2" - }, - { - "text": "Get user data by username", - "link": "/model-api-reference/platform-apis/instagram/v1/user-info-by-username" - }, - { - "text": "Get user data by username V2", + "text": "Instagram User Data by Username (V2)", "link": "/model-api-reference/platform-apis/instagram/v1/user-info-by-username-v2" }, { - "text": "Get user data by username V3", - "link": "/model-api-reference/platform-apis/instagram/v1/user-info-by-username-v3" + "text": "Instagram User Details by ID (V2)", + "link": "/model-api-reference/platform-apis/instagram/v1/user-info-by-id-v2" }, { - "text": "Get user followers", + "text": "Instagram User Followers (V2)", "link": "/model-api-reference/platform-apis/instagram/v2/user-followers" }, { - "text": "Get user followers list", + "text": "Instagram User Followers (V3)", "link": "/model-api-reference/platform-apis/instagram/v3/user-followers" }, { - "text": "Get user following", + "text": "Instagram User Following", "link": "/model-api-reference/platform-apis/instagram/v2/user-following" }, { - "text": "Get user following list", + "text": "Instagram User Following List", "link": "/model-api-reference/platform-apis/instagram/v3/user-following" }, { - "text": "Get user former usernames", - "link": "/model-api-reference/platform-apis/instagram/v3/user-former-usernames" - }, - { - "text": "Get user highlights", + "text": "Instagram User Highlights (V2)", "link": "/model-api-reference/platform-apis/instagram/v2/user-highlights" }, { - "text": "Get user highlights", + "text": "Instagram User Highlights (V3)", "link": "/model-api-reference/platform-apis/instagram/v3/user-highlights" }, { - "text": "Get user ID by username", + "text": "Instagram User ID Lookup", "link": "/model-api-reference/platform-apis/instagram/v3/user-id-by-username" }, { - "text": "Get user info", + "text": "Instagram User Info by ID", + "link": "/model-api-reference/platform-apis/instagram/v3/user-id-to-username" + }, + { + "text": "Instagram User Info by Username", + "link": "/model-api-reference/platform-apis/instagram/v1/user-info-by-username" + }, + { + "text": "Instagram User Profile", "link": "/model-api-reference/platform-apis/instagram/v2/user-info" }, { - "text": "Get user info by user ID", - "link": "/model-api-reference/platform-apis/instagram/v1/user-id-to-username" + "text": "Instagram User Profile (V3)", + "link": "/model-api-reference/platform-apis/instagram/v3/user-profile" }, { - "text": "Get user info by user ID", - "link": "/model-api-reference/platform-apis/instagram/v2/user-id-to-username" + "text": "Instagram User Profile by ID", + "link": "/model-api-reference/platform-apis/instagram/v1/user-info-by-id" }, { - "text": "Get user info by user ID", - "link": "/model-api-reference/platform-apis/instagram/v3/user-id-to-username" + "text": "Instagram User Profile by Username (V3)", + "link": "/model-api-reference/platform-apis/instagram/v1/user-info-by-username-v3" }, { - "text": "Get user profile", - "link": "/model-api-reference/platform-apis/instagram/v3/user-profile" + "text": "Instagram User Reels (V1)", + "link": "/model-api-reference/platform-apis/instagram/v1/user-reels" }, { - "text": "Get user reels", + "text": "Instagram User Reels (V2)", "link": "/model-api-reference/platform-apis/instagram/v2/user-reels" }, { - "text": "Get user reels", + "text": "Instagram User Reels (V3)", "link": "/model-api-reference/platform-apis/instagram/v3/user-reels" }, { - "text": "Get user Reels list", - "link": "/model-api-reference/platform-apis/instagram/v1/user-reels" - }, - { - "text": "Get user reposts list", + "text": "Instagram User Reposts", "link": "/model-api-reference/platform-apis/instagram/v1/user-reposts" }, { - "text": "Get user stories", + "text": "Instagram User Stories (V2)", "link": "/model-api-reference/platform-apis/instagram/v2/user-stories" }, { - "text": "Get user stories", + "text": "Instagram User Stories (V3)", "link": "/model-api-reference/platform-apis/instagram/v3/user-stories" } ] }, - { - "key": "utilities", - "label": "Utilities", - "operations": [ - { - "text": "Extract shortcode from URL", - "link": "/model-api-reference/platform-apis/instagram/v3/extract-shortcode" - } - ] - }, { "key": "other", "label": "Other", "operations": [ { - "text": "Get cities by country", + "text": "Instagram Cities by Country", "link": "/model-api-reference/platform-apis/instagram/v1/cities" }, { - "text": "Get highlight stories", - "link": "/model-api-reference/platform-apis/instagram/v2/highlight-stories" + "text": "Instagram City Locations", + "link": "/model-api-reference/platform-apis/instagram/v1/locations" }, { - "text": "Get highlight stories", - "link": "/model-api-reference/platform-apis/instagram/v3/highlight-stories" + "text": "Instagram Highlight Stories", + "link": "/model-api-reference/platform-apis/instagram/v2/highlight-stories" }, { - "text": "Get location info", + "text": "Instagram Location Details (V1)", "link": "/model-api-reference/platform-apis/instagram/v1/location-info" }, { - "text": "Get location info", + "text": "Instagram Location Details (V3)", "link": "/model-api-reference/platform-apis/instagram/v3/location-info" }, { - "text": "Get locations by city", - "link": "/model-api-reference/platform-apis/instagram/v1/locations" - }, - { - "text": "Get nearby location content", - "link": "/model-api-reference/platform-apis/instagram/v3/location-nearby" + "text": "Instagram Related Profiles", + "link": "/model-api-reference/platform-apis/instagram/v1/related-profiles" }, { - "text": "Get related profiles", - "link": "/model-api-reference/platform-apis/instagram/v1/related-profiles" + "text": "Instagram Shortcode Extractor", + "link": "/model-api-reference/platform-apis/instagram/v3/extract-shortcode" } ] } diff --git a/.vitepress/theme/platform-api-sidebars/kuaishou.ts b/.vitepress/theme/platform-api-sidebars/kuaishou.ts index 915cedc2..61356942 100644 --- a/.vitepress/theme/platform-api-sidebars/kuaishou.ts +++ b/.vitepress/theme/platform-api-sidebars/kuaishou.ts @@ -2,51 +2,43 @@ export default { "platform": "Kuaishou", "slug": "kuaishou", - "operationCount": 38, + "operationCount": 36, "groups": [ { "key": "search", "label": "Search & Discovery", "operations": [ { - "text": "Comprehensive search", + "text": "Kuaishou App Selection Feed", + "link": "/model-api-reference/platform-apis/kuaishou/app/selection-feed" + }, + { + "text": "Kuaishou Comprehensive Search", "link": "/model-api-reference/platform-apis/kuaishou/app/search-comprehensive" }, { - "text": "Kuaishou hot search person board", + "text": "Kuaishou Hot Search Person Board", "link": "/model-api-reference/platform-apis/kuaishou/app/hot-search-person" }, { - "text": "Search image", + "text": "Kuaishou Image Post Search", "link": "/model-api-reference/platform-apis/kuaishou/app/search-image" }, { - "text": "Search live", + "text": "Kuaishou Livestream Search", "link": "/model-api-reference/platform-apis/kuaishou/app/search-live" }, { - "text": "Search music", + "text": "Kuaishou Music Search", "link": "/model-api-reference/platform-apis/kuaishou/app/search-music" }, { - "text": "Search tag", - "link": "/model-api-reference/platform-apis/kuaishou/app/search-tag" - }, - { - "text": "Search user V2", + "text": "Kuaishou User Search (V2)", "link": "/model-api-reference/platform-apis/kuaishou/app/search-user-v2" }, { - "text": "Search video V2", + "text": "Kuaishou Video Search (V2)", "link": "/model-api-reference/platform-apis/kuaishou/app/search-video-v2" - }, - { - "text": "Selection feed", - "link": "/model-api-reference/platform-apis/kuaishou/app/selection-feed" - }, - { - "text": "Tag feed", - "link": "/model-api-reference/platform-apis/kuaishou/app/tag-feed" } ] }, @@ -55,20 +47,20 @@ export default { "label": "Comments & Engagement", "operations": [ { - "text": "Fetch video comments", - "link": "/model-api-reference/platform-apis/kuaishou/web/one-video-comment" + "text": "Kuaishou Video Comments (App)", + "link": "/model-api-reference/platform-apis/kuaishou/app/video-comment" }, { - "text": "Fetch video sub comments", - "link": "/model-api-reference/platform-apis/kuaishou/web/one-video-sub-comment" + "text": "Kuaishou Video Comments (Web)", + "link": "/model-api-reference/platform-apis/kuaishou/web/one-video-comment" }, { - "text": "Get single video comment data", - "link": "/model-api-reference/platform-apis/kuaishou/app/video-comment" + "text": "Kuaishou Video Sub Comments (App)", + "link": "/model-api-reference/platform-apis/kuaishou/app/video-sub-comments" }, { - "text": "Video sub comments", - "link": "/model-api-reference/platform-apis/kuaishou/app/video-sub-comments" + "text": "Kuaishou Video Sub Comments (Web)", + "link": "/model-api-reference/platform-apis/kuaishou/web/one-video-sub-comment" } ] }, @@ -77,16 +69,16 @@ export default { "label": "Live", "operations": [ { - "text": "Fetch user live replay", - "link": "/model-api-reference/platform-apis/kuaishou/web/user-live-replay" + "text": "Kuaishou Stream Top List", + "link": "/model-api-reference/platform-apis/kuaishou/app/live-top-list" }, { - "text": "Get user live info", + "text": "Kuaishou User Broadcast Details", "link": "/model-api-reference/platform-apis/kuaishou/app/user-live-info" }, { - "text": "Kuaishou live top list", - "link": "/model-api-reference/platform-apis/kuaishou/app/live-top-list" + "text": "Kuaishou User Broadcast Replay", + "link": "/model-api-reference/platform-apis/kuaishou/web/user-live-replay" } ] }, @@ -95,40 +87,40 @@ export default { "label": "Content & Video", "operations": [ { - "text": "Fetch single video by URL", - "link": "/model-api-reference/platform-apis/kuaishou/app/one-video-by-url" + "text": "Kuaishou Batch Video Details", + "link": "/model-api-reference/platform-apis/kuaishou/app/videos-batch" + }, + { + "text": "Kuaishou Music Ranking", + "link": "/model-api-reference/platform-apis/kuaishou/app/music-ranking" }, { - "text": "Fetch single video by URL", + "text": "Kuaishou Single Video by URL", "link": "/model-api-reference/platform-apis/kuaishou/web/one-video-by-url" }, { - "text": "Get single video data V1", + "text": "Kuaishou Single Video Details", "link": "/model-api-reference/platform-apis/kuaishou/web/one-video" }, { - "text": "Get single video data V2", + "text": "Kuaishou Single Video Details (V2)", "link": "/model-api-reference/platform-apis/kuaishou/web/one-video-v2" }, { - "text": "Get user hot post data", + "text": "Kuaishou User Hot Posts", "link": "/model-api-reference/platform-apis/kuaishou/app/user-hot-post" }, { - "text": "Kuaishou batch video query API", - "link": "/model-api-reference/platform-apis/kuaishou/app/videos-batch" - }, - { - "text": "Music ranking", - "link": "/model-api-reference/platform-apis/kuaishou/app/music-ranking" - }, - { - "text": "User video list V2", + "text": "Kuaishou User Video List (V2)", "link": "/model-api-reference/platform-apis/kuaishou/app/user-post-v2" }, { - "text": "Video detailsV1", + "text": "Kuaishou Video Details (V1)", "link": "/model-api-reference/platform-apis/kuaishou/app/one-video" + }, + { + "text": "Kuaishou Video Details by URL", + "link": "/model-api-reference/platform-apis/kuaishou/app/one-video-by-url" } ] }, @@ -137,20 +129,20 @@ export default { "label": "Users & Accounts", "operations": [ { - "text": "Fetch user collect", + "text": "Kuaishou Single User Data (V2)", + "link": "/model-api-reference/platform-apis/kuaishou/app/one-user-v2" + }, + { + "text": "Kuaishou User Favorites", "link": "/model-api-reference/platform-apis/kuaishou/web/user-collect" }, { - "text": "Fetch user ID", + "text": "Kuaishou User ID Lookup", "link": "/model-api-reference/platform-apis/kuaishou/web/get-user-id" }, { - "text": "Fetch user info", + "text": "Kuaishou Web User Info", "link": "/model-api-reference/platform-apis/kuaishou/web/user-info" - }, - { - "text": "Get single user data V2", - "link": "/model-api-reference/platform-apis/kuaishou/app/one-user-v2" } ] }, @@ -159,11 +151,11 @@ export default { "label": "Utilities", "operations": [ { - "text": "Generate Kuaishou share link", + "text": "Kuaishou App Share Link", "link": "/model-api-reference/platform-apis/kuaishou/app/generate-share-link" }, { - "text": "Generate share short URL", + "text": "Kuaishou Web Share Short URL", "link": "/model-api-reference/platform-apis/kuaishou/web/generate-share-short-url" } ] @@ -173,28 +165,28 @@ export default { "label": "Other", "operations": [ { - "text": "Fetch Kuaishou Hot List V1", - "link": "/model-api-reference/platform-apis/kuaishou/web/hot-list-v1" + "text": "Kuaishou Brand Top List", + "link": "/model-api-reference/platform-apis/kuaishou/app/brand-top-list" }, { - "text": "Fetch Kuaishou Hot List V2", - "link": "/model-api-reference/platform-apis/kuaishou/web/hot-list-v2" + "text": "Kuaishou Hot Board Categories", + "link": "/model-api-reference/platform-apis/kuaishou/app/hot-board-categories" }, { - "text": "Kuaishou brand top list", - "link": "/model-api-reference/platform-apis/kuaishou/app/brand-top-list" + "text": "Kuaishou Hot Board Detail", + "link": "/model-api-reference/platform-apis/kuaishou/app/hot-board-detail" }, { - "text": "Kuaishou hot board detail", - "link": "/model-api-reference/platform-apis/kuaishou/app/hot-board-detail" + "text": "Kuaishou Shopping Top List", + "link": "/model-api-reference/platform-apis/kuaishou/app/shopping-top-list" }, { - "text": "Kuaishou hot categories", - "link": "/model-api-reference/platform-apis/kuaishou/app/hot-board-categories" + "text": "Kuaishou Web Hot List", + "link": "/model-api-reference/platform-apis/kuaishou/web/hot-list-v1" }, { - "text": "Kuaishou shopping top list", - "link": "/model-api-reference/platform-apis/kuaishou/app/shopping-top-list" + "text": "Kuaishou Web Hot List (V2)", + "link": "/model-api-reference/platform-apis/kuaishou/web/hot-list-v2" } ] } diff --git a/.vitepress/theme/platform-api-sidebars/lemon8.ts b/.vitepress/theme/platform-api-sidebars/lemon8.ts index b15eeda5..5a55c914 100644 --- a/.vitepress/theme/platform-api-sidebars/lemon8.ts +++ b/.vitepress/theme/platform-api-sidebars/lemon8.ts @@ -9,23 +9,23 @@ export default { "label": "Search & Discovery", "operations": [ { - "text": "Get banners of discover page", - "link": "/model-api-reference/platform-apis/lemon8/app/discover-banners" - }, - { - "text": "Get Editor's Picks of discover page", + "text": "Lemon8 Discover Editor Picks", "link": "/model-api-reference/platform-apis/lemon8/app/discover-tab-information-tabs" }, { - "text": "Get hot search keywords", - "link": "/model-api-reference/platform-apis/lemon8/app/hot-search-keywords" + "text": "Lemon8 Discover Page Banners", + "link": "/model-api-reference/platform-apis/lemon8/app/discover-banners" }, { - "text": "Get main content of discover page", + "text": "Lemon8 Discover Page Content", "link": "/model-api-reference/platform-apis/lemon8/app/discover-tab" }, { - "text": "Search API", + "text": "Lemon8 Hot Search Keywords", + "link": "/model-api-reference/platform-apis/lemon8/app/hot-search-keywords" + }, + { + "text": "Lemon8 Search", "link": "/model-api-reference/platform-apis/lemon8/app/search" } ] @@ -35,7 +35,7 @@ export default { "label": "Comments & Engagement", "operations": [ { - "text": "Get comments list of specified post", + "text": "Lemon8 Post Comments List", "link": "/model-api-reference/platform-apis/lemon8/app/post-comment-list" } ] @@ -45,19 +45,19 @@ export default { "label": "Content & Video", "operations": [ { - "text": "Get information of specified post", + "text": "Lemon8 Post Details", "link": "/model-api-reference/platform-apis/lemon8/app/post-detail" }, { - "text": "Get post ID through sharing link", + "text": "Lemon8 Post ID from Share Link", "link": "/model-api-reference/platform-apis/lemon8/app/item-id" }, { - "text": "Get post IDs in batch through sharing links", + "text": "Lemon8 Post IDs from Share Links", "link": "/model-api-reference/platform-apis/lemon8/app/item-ids" }, { - "text": "Get topic post list", + "text": "Lemon8 Topic Post List", "link": "/model-api-reference/platform-apis/lemon8/app/topic-post-list" } ] @@ -67,24 +67,24 @@ export default { "label": "Users & Accounts", "operations": [ { - "text": "Get fans list of specified user", + "text": "Lemon8 User Followers List", "link": "/model-api-reference/platform-apis/lemon8/app/user-follower-list" }, { - "text": "Get following list of specified user", + "text": "Lemon8 User Following List", "link": "/model-api-reference/platform-apis/lemon8/app/user-following-list" }, { - "text": "Get information of specified user", - "link": "/model-api-reference/platform-apis/lemon8/app/user-profile" - }, - { - "text": "Get user ID through sharing link", + "text": "Lemon8 User ID from Share Link", "link": "/model-api-reference/platform-apis/lemon8/app/user-id" }, { - "text": "Get user IDs in batch through sharing links", + "text": "Lemon8 User IDs by Share Links", "link": "/model-api-reference/platform-apis/lemon8/app/user-ids" + }, + { + "text": "Lemon8 User Profile Details", + "link": "/model-api-reference/platform-apis/lemon8/app/user-profile" } ] }, @@ -93,7 +93,7 @@ export default { "label": "Other", "operations": [ { - "text": "Get topic information", + "text": "Lemon8 Topic Information", "link": "/model-api-reference/platform-apis/lemon8/app/topic-info" } ] diff --git a/.vitepress/theme/platform-api-sidebars/linkedin.ts b/.vitepress/theme/platform-api-sidebars/linkedin.ts index 816a5b7e..475a5d43 100644 --- a/.vitepress/theme/platform-api-sidebars/linkedin.ts +++ b/.vitepress/theme/platform-api-sidebars/linkedin.ts @@ -9,7 +9,7 @@ export default { "label": "Comments & Engagement", "operations": [ { - "text": "Get post comments", + "text": "LinkedIn Post Comments", "link": "/model-api-reference/platform-apis/linkedin/web-v2/post-comments" } ] @@ -19,15 +19,15 @@ export default { "label": "Content & Video", "operations": [ { - "text": "Get company's posts", + "text": "LinkedIn Company Posts", "link": "/model-api-reference/platform-apis/linkedin/web-v2/company-posts" }, { - "text": "Get post or article detail", + "text": "LinkedIn Post or Article Detail", "link": "/model-api-reference/platform-apis/linkedin/web-v2/post-detail" }, { - "text": "Get user's posts", + "text": "LinkedIn User Posts", "link": "/model-api-reference/platform-apis/linkedin/web-v2/user-posts" } ] @@ -37,11 +37,11 @@ export default { "label": "Users & Accounts", "operations": [ { - "text": "Get company profile", + "text": "LinkedIn Company Profile", "link": "/model-api-reference/platform-apis/linkedin/web-v2/company-profile" }, { - "text": "Get user profile", + "text": "LinkedIn User Profile", "link": "/model-api-reference/platform-apis/linkedin/web-v2/user-profile" } ] @@ -51,7 +51,7 @@ export default { "label": "Other", "operations": [ { - "text": "Get job detail", + "text": "LinkedIn Job Details", "link": "/model-api-reference/platform-apis/linkedin/web-v2/job-detail" } ] diff --git a/.vitepress/theme/platform-api-sidebars/pinterest.ts b/.vitepress/theme/platform-api-sidebars/pinterest.ts index 85fc497e..0ee59828 100644 --- a/.vitepress/theme/platform-api-sidebars/pinterest.ts +++ b/.vitepress/theme/platform-api-sidebars/pinterest.ts @@ -33,7 +33,7 @@ export default { "link": "/model-api-reference/platform-apis/pinterest/pin" }, { - "text": "Pinterest Board", + "text": "Pinterest Board Pins", "link": "/model-api-reference/platform-apis/pinterest/board" } ] diff --git a/.vitepress/theme/platform-api-sidebars/pipixia.ts b/.vitepress/theme/platform-api-sidebars/pipixia.ts index a082a18e..d75bba24 100644 --- a/.vitepress/theme/platform-api-sidebars/pipixia.ts +++ b/.vitepress/theme/platform-api-sidebars/pipixia.ts @@ -9,35 +9,35 @@ export default { "label": "Search & Discovery", "operations": [ { - "text": "Get hashtag detail", - "link": "/model-api-reference/platform-apis/pipixia/app/hashtag-detail" + "text": "Pipixia App Home Feed", + "link": "/model-api-reference/platform-apis/pipixia/app/home-feed" }, { - "text": "Get hashtag post list", - "link": "/model-api-reference/platform-apis/pipixia/app/hashtag-post-list" + "text": "Pipixia Hashtag Details", + "link": "/model-api-reference/platform-apis/pipixia/app/hashtag-detail" }, { - "text": "Get home feed", - "link": "/model-api-reference/platform-apis/pipixia/app/home-feed" + "text": "Pipixia Hashtag Post List", + "link": "/model-api-reference/platform-apis/pipixia/app/hashtag-post-list" }, { - "text": "Get home short drama feed", + "text": "Pipixia Home Short Drama Feed", "link": "/model-api-reference/platform-apis/pipixia/app/home-short-drama-feed" }, { - "text": "Get hot search board detail", - "link": "/model-api-reference/platform-apis/pipixia/app/hot-search-board-detail" + "text": "Pipixia Hot Search", + "link": "/model-api-reference/platform-apis/pipixia/app/hot-search-board-list" }, { - "text": "Get hot search board list", - "link": "/model-api-reference/platform-apis/pipixia/app/hot-search-board-list" + "text": "Pipixia Hot Search Board Detail", + "link": "/model-api-reference/platform-apis/pipixia/app/hot-search-board-detail" }, { - "text": "Get hot search words", + "text": "Pipixia Hot Search Words", "link": "/model-api-reference/platform-apis/pipixia/app/hot-search-words" }, { - "text": "Search API", + "text": "Pipixia Search", "link": "/model-api-reference/platform-apis/pipixia/app/search" } ] @@ -47,7 +47,7 @@ export default { "label": "Comments & Engagement", "operations": [ { - "text": "Get post comment list", + "text": "Pipixia Post Comments", "link": "/model-api-reference/platform-apis/pipixia/app/post-comment-list" } ] @@ -57,20 +57,20 @@ export default { "label": "Content & Video", "operations": [ { - "text": "Get post statistics", - "link": "/model-api-reference/platform-apis/pipixia/app/post-statistics" - }, - { - "text": "Get single video data", + "text": "Pipixia Post Detail", "link": "/model-api-reference/platform-apis/pipixia/app/post-detail" }, { - "text": "Get user post list", - "link": "/model-api-reference/platform-apis/pipixia/app/user-post-list" + "text": "Pipixia Post Statistics", + "link": "/model-api-reference/platform-apis/pipixia/app/post-statistics" }, { - "text": "Increase post view count", + "text": "Pipixia Post View Count Increment", "link": "/model-api-reference/platform-apis/pipixia/app/increase-post-view-count" + }, + { + "text": "Pipixia User Post List", + "link": "/model-api-reference/platform-apis/pipixia/app/user-post-list" } ] }, @@ -79,15 +79,15 @@ export default { "label": "Users & Accounts", "operations": [ { - "text": "Get user follower list", + "text": "Pipixia User Follower List", "link": "/model-api-reference/platform-apis/pipixia/app/user-follower-list" }, { - "text": "Get user following list", + "text": "Pipixia User Following List", "link": "/model-api-reference/platform-apis/pipixia/app/user-following-list" }, { - "text": "Get user information", + "text": "Pipixia User Information", "link": "/model-api-reference/platform-apis/pipixia/app/user-info" } ] @@ -97,7 +97,7 @@ export default { "label": "Utilities", "operations": [ { - "text": "Generate short URL", + "text": "Pipixia Short URL Conversion", "link": "/model-api-reference/platform-apis/pipixia/app/short-url" } ] diff --git a/.vitepress/theme/platform-api-sidebars/reddit.ts b/.vitepress/theme/platform-api-sidebars/reddit.ts index bc5728f3..dc3b2aec 100644 --- a/.vitepress/theme/platform-api-sidebars/reddit.ts +++ b/.vitepress/theme/platform-api-sidebars/reddit.ts @@ -2,47 +2,43 @@ export default { "platform": "Reddit", "slug": "reddit", - "operationCount": 27, + "operationCount": 24, "groups": [ { "key": "search", "label": "Search & Discovery", "operations": [ { - "text": "Fetch Reddit APP Dynamic Search Results", - "link": "/model-api-reference/platform-apis/reddit/app/dynamic-search" - }, - { - "text": "Fetch Reddit APP Games Feed", + "text": "Reddit App Games Feed", "link": "/model-api-reference/platform-apis/reddit/app/games-feed" }, { - "text": "Fetch Reddit APP Home Feed", + "text": "Reddit App Home Feed", "link": "/model-api-reference/platform-apis/reddit/app/home-feed" }, { - "text": "Fetch Reddit APP News Feed", + "text": "Reddit App News Feed", "link": "/model-api-reference/platform-apis/reddit/app/news-feed" }, { - "text": "Fetch Reddit APP Popular Feed", + "text": "Reddit App Popular Feed", "link": "/model-api-reference/platform-apis/reddit/app/popular-feed" }, { - "text": "Fetch Reddit APP Search Typeahead Suggestions", + "text": "Reddit App Search Typeahead", "link": "/model-api-reference/platform-apis/reddit/app/search-typeahead" }, { - "text": "Fetch Reddit APP Subreddit Feed", - "link": "/model-api-reference/platform-apis/reddit/app/subreddit-feed" + "text": "Reddit App Trending Searches", + "link": "/model-api-reference/platform-apis/reddit/app/trending-searches" }, { - "text": "Fetch Reddit APP Topic Feed", - "link": "/model-api-reference/platform-apis/reddit/app/topic-feed" + "text": "Reddit Search", + "link": "/model-api-reference/platform-apis/reddit/app/dynamic-search" }, { - "text": "Fetch Reddit APP Trending Searches", - "link": "/model-api-reference/platform-apis/reddit/app/trending-searches" + "text": "Reddit Subreddit Feed", + "link": "/model-api-reference/platform-apis/reddit/app/subreddit-feed" } ] }, @@ -51,23 +47,19 @@ export default { "label": "Comments & Engagement", "operations": [ { - "text": "Fetch Reddit Answers Generated Comments", - "link": "/model-api-reference/platform-apis/reddit/app/generated-comments" - }, - { - "text": "Fetch Reddit APP Comment Replies (Sub-comments)", + "text": "Reddit App Comment Replies", "link": "/model-api-reference/platform-apis/reddit/app/comment-replies" }, { - "text": "Fetch Reddit APP Community Highlights", - "link": "/model-api-reference/platform-apis/reddit/app/community-highlights" + "text": "Reddit App Post Comments", + "link": "/model-api-reference/platform-apis/reddit/app/post-comments" }, { - "text": "Fetch Reddit APP Post Comments", - "link": "/model-api-reference/platform-apis/reddit/app/post-comments" + "text": "Reddit Community Highlights", + "link": "/model-api-reference/platform-apis/reddit/app/community-highlights" }, { - "text": "Fetch User Comments", + "text": "Reddit User Comments", "link": "/model-api-reference/platform-apis/reddit/app/user-comments" } ] @@ -77,27 +69,23 @@ export default { "label": "Content & Video", "operations": [ { - "text": "Fetch Reddit Answers Generated Posts", - "link": "/model-api-reference/platform-apis/reddit/app/generated-posts" - }, - { - "text": "Fetch Reddit APP Subreddit Post Channels", + "text": "Reddit App Subreddit Post Channels", "link": "/model-api-reference/platform-apis/reddit/app/subreddit-post-channels" }, { - "text": "Fetch Reddit Post Details in Batch (Max 5)", + "text": "Reddit Batch Post Details", "link": "/model-api-reference/platform-apis/reddit/app/post-details-batch" }, { - "text": "Fetch Reddit Post Details in Large Batch (Max 30)", - "link": "/model-api-reference/platform-apis/reddit/app/post-details-batch-large" + "text": "Reddit Post Details", + "link": "/model-api-reference/platform-apis/reddit/app/post-details" }, { - "text": "Fetch Single Reddit Post Details", - "link": "/model-api-reference/platform-apis/reddit/app/post-details" + "text": "Reddit Post Details Large Batch", + "link": "/model-api-reference/platform-apis/reddit/app/post-details-batch-large" }, { - "text": "Fetch User Posts", + "text": "Reddit User Posts", "link": "/model-api-reference/platform-apis/reddit/app/user-posts" } ] @@ -107,38 +95,44 @@ export default { "label": "Users & Accounts", "operations": [ { - "text": "Fetch Reddit APP User Profile", + "text": "Reddit App User Profile", "link": "/model-api-reference/platform-apis/reddit/app/user-profile" }, { - "text": "Fetch User Public Trophies", - "link": "/model-api-reference/platform-apis/reddit/app/user-trophies" + "text": "Reddit User Active Subreddits", + "link": "/model-api-reference/platform-apis/reddit/app/user-active-subreddits" }, { - "text": "Fetch User's Active Subreddits", - "link": "/model-api-reference/platform-apis/reddit/app/user-active-subreddits" + "text": "Reddit User Public Trophies", + "link": "/model-api-reference/platform-apis/reddit/app/user-trophies" } ] }, { - "key": "other", - "label": "Other", + "key": "utilities", + "label": "Utilities", "operations": [ { - "text": "Check if Subreddit is Muted", + "text": "Reddit Subreddit Mute Status", "link": "/model-api-reference/platform-apis/reddit/app/check-subreddit-muted" - }, + } + ] + }, + { + "key": "other", + "label": "Other", + "operations": [ { - "text": "Fetch Reddit APP Subreddit Info", + "text": "Reddit App Subreddit Info", "link": "/model-api-reference/platform-apis/reddit/app/subreddit-info" }, { - "text": "Fetch Reddit APP Subreddit Rules and Style Info", - "link": "/model-api-reference/platform-apis/reddit/app/subreddit-style" + "text": "Reddit App Subreddit Settings", + "link": "/model-api-reference/platform-apis/reddit/app/subreddit-settings" }, { - "text": "Fetch Reddit APP Subreddit Settings", - "link": "/model-api-reference/platform-apis/reddit/app/subreddit-settings" + "text": "Reddit Subreddit Rules and Style Info", + "link": "/model-api-reference/platform-apis/reddit/app/subreddit-style" } ] } diff --git a/.vitepress/theme/platform-api-sidebars/sandbase.ts b/.vitepress/theme/platform-api-sidebars/sandbase.ts index 852a1fcf..f29507a6 100644 --- a/.vitepress/theme/platform-api-sidebars/sandbase.ts +++ b/.vitepress/theme/platform-api-sidebars/sandbase.ts @@ -9,75 +9,75 @@ export default { "label": "Other", "operations": [ { - "text": "Calendly", + "text": "SandBase Calendly Gateway", "link": "/model-api-reference/platform-apis/sandbase/calendly" }, { - "text": "Discord", + "text": "SandBase Discord Gateway", "link": "/model-api-reference/platform-apis/sandbase/discord" }, { - "text": "GitLab", + "text": "SandBase GitLab REST Request", "link": "/model-api-reference/platform-apis/sandbase/gitlab" }, { - "text": "Gmail", + "text": "SandBase Gmail Connector", "link": "/model-api-reference/platform-apis/sandbase/gmail" }, { - "text": "Google Calendar", + "text": "SandBase Google Calendar Gateway", "link": "/model-api-reference/platform-apis/sandbase/google-calendar" }, { - "text": "Google Sheets", + "text": "SandBase Google Sheets Gateway", "link": "/model-api-reference/platform-apis/sandbase/google-sheets" }, { - "text": "LinkedIn", + "text": "SandBase LinkedIn Gateway", "link": "/model-api-reference/platform-apis/sandbase/linkedin" }, { - "text": "Sentry", + "text": "SandBase Sentry Connector", "link": "/model-api-reference/platform-apis/sandbase/sentry" }, { - "text": "Stripe", + "text": "SandBase Stripe Gateway", "link": "/model-api-reference/platform-apis/sandbase/stripe" }, { - "text": "Supabase", + "text": "SandBase Supabase Management Gateway", "link": "/model-api-reference/platform-apis/sandbase/supabase" }, { - "text": "Vercel", + "text": "SandBase Vercel Gateway", "link": "/model-api-reference/platform-apis/sandbase/vercel" }, { - "text": "X (Twitter)", + "text": "SandBase X Gateway", "link": "/model-api-reference/platform-apis/sandbase/twitter" }, { - "text": "Airtable", + "text": "SandBase Airtable Connector", "link": "/model-api-reference/platform-apis/sandbase/airtable" }, { - "text": "GitHub", + "text": "SandBase GitHub REST Proxy", "link": "/model-api-reference/platform-apis/sandbase/github" }, { - "text": "HubSpot", + "text": "SandBase HubSpot Connector", "link": "/model-api-reference/platform-apis/sandbase/hubspot" }, { - "text": "Linear", + "text": "SandBase Linear Integration", "link": "/model-api-reference/platform-apis/sandbase/linear" }, { - "text": "Notion", + "text": "SandBase Notion Integration", "link": "/model-api-reference/platform-apis/sandbase/notion" }, { - "text": "Slack", + "text": "SandBase Slack Gateway", "link": "/model-api-reference/platform-apis/sandbase/slack" } ] diff --git a/.vitepress/theme/platform-api-sidebars/scholar.ts b/.vitepress/theme/platform-api-sidebars/scholar.ts index 3fabbbd2..2217ea30 100644 --- a/.vitepress/theme/platform-api-sidebars/scholar.ts +++ b/.vitepress/theme/platform-api-sidebars/scholar.ts @@ -2,7 +2,7 @@ export default { "platform": "Scholar", "slug": "scholar", - "operationCount": 4, + "operationCount": 3, "groups": [ { "key": "search", @@ -17,20 +17,10 @@ export default { "link": "/model-api-reference/platform-apis/scholar/search-web" }, { - "text": "Scholar Academic Search", + "text": "Scholar Search (Google Scholar)", "link": "/model-api-reference/platform-apis/scholar/search-scholar" } ] - }, - { - "key": "other", - "label": "Other", - "operations": [ - { - "text": "Scholar Explain", - "link": "/model-api-reference/platform-apis/scholar/explain" - } - ] } ] } as const diff --git a/.vitepress/theme/platform-api-sidebars/tavily.ts b/.vitepress/theme/platform-api-sidebars/tavily.ts index 455a01f2..f80beda6 100644 --- a/.vitepress/theme/platform-api-sidebars/tavily.ts +++ b/.vitepress/theme/platform-api-sidebars/tavily.ts @@ -15,15 +15,21 @@ export default { ] }, { - "key": "other", - "label": "Other", + "key": "utilities", + "label": "Utilities", "operations": [ { - "text": "Tavily Extract", + "text": "Tavily URL Content Extraction", "link": "/model-api-reference/platform-apis/tavily/extract" - }, + } + ] + }, + { + "key": "other", + "label": "Other", + "operations": [ { - "text": "Tavily Map", + "text": "Tavily Site Map", "link": "/model-api-reference/platform-apis/tavily/map" } ] diff --git a/.vitepress/theme/platform-api-sidebars/telegram.ts b/.vitepress/theme/platform-api-sidebars/telegram.ts index 6de36fa2..423ddd8b 100644 --- a/.vitepress/theme/platform-api-sidebars/telegram.ts +++ b/.vitepress/theme/platform-api-sidebars/telegram.ts @@ -9,11 +9,11 @@ export default { "label": "Search & Discovery", "operations": [ { - "text": "Search posts in a channel", + "text": "Telegram Channel Post Search", "link": "/model-api-reference/platform-apis/telegram/web/channel-search" }, { - "text": "Similar channels", + "text": "Telegram Similar Channels", "link": "/model-api-reference/platform-apis/telegram/web/similar-channels" } ] @@ -23,7 +23,7 @@ export default { "label": "Comments & Engagement", "operations": [ { - "text": "Post comments", + "text": "Telegram Post Comments", "link": "/model-api-reference/platform-apis/telegram/web/post-comments" } ] @@ -33,12 +33,12 @@ export default { "label": "Content & Video", "operations": [ { - "text": "Get channel posts (paginated)", - "link": "/model-api-reference/platform-apis/telegram/web/channel-posts" + "text": "Telegram Channel Post Details", + "link": "/model-api-reference/platform-apis/telegram/web/post-detail" }, { - "text": "Get single post", - "link": "/model-api-reference/platform-apis/telegram/web/post-detail" + "text": "Telegram Channel Posts", + "link": "/model-api-reference/platform-apis/telegram/web/channel-posts" } ] }, @@ -47,11 +47,11 @@ export default { "label": "Users & Accounts", "operations": [ { - "text": "Batch channel info", + "text": "Telegram Batch Channel Info", "link": "/model-api-reference/platform-apis/telegram/web/batch-channel-info" }, { - "text": "Get channel info", + "text": "Telegram Channel Info", "link": "/model-api-reference/platform-apis/telegram/web/channel-info" } ] diff --git a/.vitepress/theme/platform-api-sidebars/temp-mail.ts b/.vitepress/theme/platform-api-sidebars/temp-mail.ts deleted file mode 100644 index 449d5aa2..00000000 --- a/.vitepress/theme/platform-api-sidebars/temp-mail.ts +++ /dev/null @@ -1,38 +0,0 @@ -// Generated by scripts/generate-llm-model-api-reference.mjs. Do not edit by hand. -export default { - "platform": "Temp Mail", - "slug": "temp-mail", - "operationCount": 3, - "groups": [ - { - "key": "messaging", - "label": "Messaging", - "operations": [ - { - "text": "Get Emails", - "link": "/model-api-reference/platform-apis/temp-mail/v1/emails-inbox" - } - ] - }, - { - "key": "utilities", - "label": "Utilities", - "operations": [ - { - "text": "Get Email By Id", - "link": "/model-api-reference/platform-apis/temp-mail/v1/email-by-id" - } - ] - }, - { - "key": "other", - "label": "Other", - "operations": [ - { - "text": "Get Temp Email", - "link": "/model-api-reference/platform-apis/temp-mail/v1/temp-email-address" - } - ] - } - ] -} as const diff --git a/.vitepress/theme/platform-api-sidebars/threads.ts b/.vitepress/theme/platform-api-sidebars/threads.ts index b880de5c..cba19d95 100644 --- a/.vitepress/theme/platform-api-sidebars/threads.ts +++ b/.vitepress/theme/platform-api-sidebars/threads.ts @@ -2,23 +2,19 @@ export default { "platform": "Threads", "slug": "threads", - "operationCount": 11, + "operationCount": 9, "groups": [ { "key": "search", "label": "Search & Discovery", "operations": [ { - "text": "Search profiles", + "text": "Threads Profile Search", "link": "/model-api-reference/platform-apis/threads/web/search-profiles" }, { - "text": "Search recent content", + "text": "Threads Recent Content Search", "link": "/model-api-reference/platform-apis/threads/web/search-recent" - }, - { - "text": "Search top content", - "link": "/model-api-reference/platform-apis/threads/web/search-top" } ] }, @@ -27,11 +23,7 @@ export default { "label": "Comments & Engagement", "operations": [ { - "text": "Get post comments", - "link": "/model-api-reference/platform-apis/threads/web/post-comments" - }, - { - "text": "Get user replies", + "text": "Threads User Replies", "link": "/model-api-reference/platform-apis/threads/web/user-replies" } ] @@ -41,15 +33,15 @@ export default { "label": "Content & Video", "operations": [ { - "text": "Get post detail", + "text": "Threads Post Detail", "link": "/model-api-reference/platform-apis/threads/web/post-detail" }, { - "text": "Get post detail V2(supports URL)", + "text": "Threads Post Detail (V2)", "link": "/model-api-reference/platform-apis/threads/web/post-detail-v2" }, { - "text": "Get user posts", + "text": "Threads User Posts", "link": "/model-api-reference/platform-apis/threads/web/user-posts" } ] @@ -59,15 +51,15 @@ export default { "label": "Users & Accounts", "operations": [ { - "text": "Get user info", - "link": "/model-api-reference/platform-apis/threads/web/user-info" + "text": "Threads User Info by ID", + "link": "/model-api-reference/platform-apis/threads/web/user-info-by-id" }, { - "text": "Get user info by ID", - "link": "/model-api-reference/platform-apis/threads/web/user-info-by-id" + "text": "Threads User Profile", + "link": "/model-api-reference/platform-apis/threads/web/user-info" }, { - "text": "Get user reposts", + "text": "Threads User Reposts", "link": "/model-api-reference/platform-apis/threads/web/user-reposts" } ] diff --git a/.vitepress/theme/platform-api-sidebars/tiktok.ts b/.vitepress/theme/platform-api-sidebars/tiktok.ts index faab474c..2052aeaa 100644 --- a/.vitepress/theme/platform-api-sidebars/tiktok.ts +++ b/.vitepress/theme/platform-api-sidebars/tiktok.ts @@ -2,59 +2,55 @@ export default { "platform": "TikTok", "slug": "tiktok", - "operationCount": 160, + "operationCount": 144, "groups": [ { "key": "ads", "label": "Ads", "operations": [ { - "text": "Get ad interactive analysis", + "text": "TikTok Ad Detail", + "link": "/model-api-reference/platform-apis/tiktok/ads/ads-detail" + }, + { + "text": "TikTok Ad Interactive Analysis", "link": "/model-api-reference/platform-apis/tiktok/ads/ad-interactive-analysis" }, { - "text": "Get ad keyframe analysis", + "text": "TikTok Ad Keyframe Analysis", "link": "/model-api-reference/platform-apis/tiktok/ads/ad-keyframe-analysis" }, { - "text": "Get ad percentile data", + "text": "TikTok Ad Material Percentile Rankings", "link": "/model-api-reference/platform-apis/tiktok/ads/ad-percentile" }, { - "text": "Get query suggestions", + "text": "TikTok Ad Query Suggestions", "link": "/model-api-reference/platform-apis/tiktok/ads/query-suggestions" }, { - "text": "Get recommended ads", - "link": "/model-api-reference/platform-apis/tiktok/ads/recommended-ads" + "text": "TikTok Ads Location List", + "link": "/model-api-reference/platform-apis/tiktok/ads/location-list" }, { - "text": "Get search modules config", - "link": "/model-api-reference/platform-apis/tiktok/ads/configure-safety" + "text": "TikTok Creative Center Ad Search", + "link": "/model-api-reference/platform-apis/tiktok/ads/search-ads" }, { - "text": "Get single ad detail", - "link": "/model-api-reference/platform-apis/tiktok/ads/ads-detail" + "text": "TikTok Recommended Ads", + "link": "/model-api-reference/platform-apis/tiktok/ads/recommended-ads" }, { - "text": "Get supported location list", - "link": "/model-api-reference/platform-apis/tiktok/ads/location-list" + "text": "TikTok Search Module Safety Configuration", + "link": "/model-api-reference/platform-apis/tiktok/ads/configure-safety" }, { - "text": "Get top ads spotlight", + "text": "TikTok Top Ads Spotlight", "link": "/model-api-reference/platform-apis/tiktok/ads/top-ads-spotlight" }, { - "text": "Get trending hashtag detail", - "link": "/model-api-reference/platform-apis/tiktok/ads/trends-hashtag-detail" - }, - { - "text": "Get trending hashtag list", + "text": "TikTok Trending Hashtags", "link": "/model-api-reference/platform-apis/tiktok/ads/trends-hashtag-list" - }, - { - "text": "Search ads", - "link": "/model-api-reference/platform-apis/tiktok/ads/search-ads" } ] }, @@ -63,59 +59,59 @@ export default { "label": "Creator Analytics", "operations": [ { - "text": "Get Creator Account Health Status", + "text": "TikTok Creator Account Health Status", "link": "/model-api-reference/platform-apis/tiktok/creator/account-health-status" }, { - "text": "Get Creator Account Info", + "text": "TikTok Creator Account Info", "link": "/model-api-reference/platform-apis/tiktok/creator/creator-account-info" }, { - "text": "Get Creator Account Overview", + "text": "TikTok Creator Account Insights Overview", "link": "/model-api-reference/platform-apis/tiktok/creator/account-insights-overview" }, { - "text": "Get Creator Account Violation Record List", + "text": "TikTok Creator Account Violations", "link": "/model-api-reference/platform-apis/tiktok/creator/account-violation-list" }, { - "text": "Get Creator Live Overview", - "link": "/model-api-reference/platform-apis/tiktok/creator/live-analytics-summary" - }, - { - "text": "Get Creator Product List Analytics", + "text": "TikTok Creator Product Analytics List", "link": "/model-api-reference/platform-apis/tiktok/creator/product-analytics-list" }, { - "text": "Get Creator Video List Analytics", - "link": "/model-api-reference/platform-apis/tiktok/creator/video-list-analytics" + "text": "TikTok Creator Showcase Product List", + "link": "/model-api-reference/platform-apis/tiktok/creator/showcase-product-list" }, { - "text": "Get Creator Video Overview", + "text": "TikTok Creator Video Analytics Summary", "link": "/model-api-reference/platform-apis/tiktok/creator/video-analytics-summary" }, { - "text": "Get Product Related Videos", + "text": "TikTok Creator Video List Analytics", + "link": "/model-api-reference/platform-apis/tiktok/creator/video-list-analytics" + }, + { + "text": "TikTok Product Related Videos", "link": "/model-api-reference/platform-apis/tiktok/creator/product-related-videos" }, { - "text": "Get Showcase Product List", - "link": "/model-api-reference/platform-apis/tiktok/creator/showcase-product-list" + "text": "TikTok Stream Analytics Summary", + "link": "/model-api-reference/platform-apis/tiktok/creator/live-analytics-summary" }, { - "text": "Get Video Associated Product List", + "text": "TikTok Video Associated Product List", "link": "/model-api-reference/platform-apis/tiktok/creator/video-associated-product-list" }, { - "text": "Get Video Audience Analysis Data", + "text": "TikTok Video Audience Stats", "link": "/model-api-reference/platform-apis/tiktok/creator/video-audience-stats" }, { - "text": "Get Video Detailed Statistics", + "text": "TikTok Video Detailed Statistics", "link": "/model-api-reference/platform-apis/tiktok/creator/video-detailed-stats" }, { - "text": "Get Video-Product Association Statistics", + "text": "TikTok Video Product Association Statistics", "link": "/model-api-reference/platform-apis/tiktok/creator/video-to-product-stats" } ] @@ -125,140 +121,128 @@ export default { "label": "Search & Discovery", "operations": [ { - "text": "Creator Search Insights", + "text": "TikTok Creator Search Insights", "link": "/model-api-reference/platform-apis/tiktok/app-v3/creator-search-insights" }, { - "text": "Creator Search Insights Detail", + "text": "TikTok Creator Search Insights Detail", "link": "/model-api-reference/platform-apis/tiktok/app-v3/creator-search-insights-detail" }, { - "text": "Creator Search Insights Trend", + "text": "TikTok Creator Search Insights Trend", "link": "/model-api-reference/platform-apis/tiktok/app-v3/creator-search-insights-trend" }, { - "text": "Creator Search Insights Videos", + "text": "TikTok Creator Search Insights Videos", "link": "/model-api-reference/platform-apis/tiktok/app-v3/creator-search-insights-videos" }, { - "text": "Generate TikTok share link, call TikTok APP, and jump to the specified keyword search result", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/open-app-to-keyword-search" - }, - { - "text": "Get available tags for live room homepage recommendation", - "link": "/model-api-reference/platform-apis/tiktok/web/live-recommend-tabs" - }, - { - "text": "Get comprehensive search results of specified keywords", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/general-search-result" - }, - { - "text": "Get daily trending search words", + "text": "TikTok Daily Trending Search Words", "link": "/model-api-reference/platform-apis/tiktok/web/trending-searchwords" }, { - "text": "Get details of specified hashtag", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/hashtag-detail" - }, - { - "text": "Get explore video data", - "link": "/model-api-reference/platform-apis/tiktok/web/explore-post" + "text": "TikTok Following List Search", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/search-following-list" }, { - "text": "Get general search list", - "link": "/model-api-reference/platform-apis/tiktok/web/general-search" + "text": "TikTok Hashtag Detail", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/hashtag-detail" }, { - "text": "Get hashtag search results of specified keywords", + "text": "TikTok Hashtag Search Results", "link": "/model-api-reference/platform-apis/tiktok/app-v3/hashtag-search-result" }, { - "text": "Get home feed(recommend) video data", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/home-feed" + "text": "TikTok Hashtag Video List", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/hashtag-video-list" }, { - "text": "Get live room homepage recommendation list", - "link": "/model-api-reference/platform-apis/tiktok/web/live-recommend" + "text": "TikTok Keyword Search Deep Link", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/open-app-to-keyword-search" }, { - "text": "Get live search results of specified keywords", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/live-search-result" + "text": "TikTok Livestream Homepage Recommendations", + "link": "/model-api-reference/platform-apis/tiktok/web/live-recommend" }, { - "text": "Get location search results", + "text": "TikTok Location Search", "link": "/model-api-reference/platform-apis/tiktok/app-v3/location-search" }, { - "text": "Get music search results of specified keywords", + "text": "TikTok Music Search", "link": "/model-api-reference/platform-apis/tiktok/app-v3/music-search-result" }, { - "text": "Get search keyword suggestions V2 (Mobile)", - "link": "/model-api-reference/platform-apis/tiktok/shop-web/search-word-suggestion-v2" + "text": "TikTok Photo Search", + "link": "/model-api-reference/platform-apis/tiktok/web/search-photo" }, { - "text": "Get user search results of specified keywords", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/user-search-result" + "text": "TikTok Search", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/general-search-result" }, { - "text": "Get video list of specified hashtag", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/hashtag-video-list" + "text": "TikTok Search Keyword Suggestions", + "link": "/model-api-reference/platform-apis/tiktok/web/search-keyword-suggest" }, { - "text": "Get video search results of specified keywords", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/video-search-result" + "text": "TikTok Shop Product Search", + "link": "/model-api-reference/platform-apis/tiktok/shop-web/search-products-list" }, { - "text": "Home Feed", - "link": "/model-api-reference/platform-apis/tiktok/web/home-feed" + "text": "TikTok Shop Product Search (V2)", + "link": "/model-api-reference/platform-apis/tiktok/shop-web/search-products-list-v2" }, { - "text": "Search follower list", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/search-follower-list" + "text": "TikTok Shop Search Keyword Suggestions (V2)", + "link": "/model-api-reference/platform-apis/tiktok/shop-web/search-word-suggestion-v2" }, { - "text": "Search following list", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/search-following-list" + "text": "TikTok Similar User Recommendations", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/similar-user-recommendations" }, { - "text": "Search keyword suggest", - "link": "/model-api-reference/platform-apis/tiktok/web/search-keyword-suggest" + "text": "TikTok Stream Recommendation Tabs", + "link": "/model-api-reference/platform-apis/tiktok/web/live-recommend-tabs" }, { - "text": "Search live", - "link": "/model-api-reference/platform-apis/tiktok/web/search-live" + "text": "TikTok Stream Search Results", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/live-search-result" }, { - "text": "Search photo", - "link": "/model-api-reference/platform-apis/tiktok/web/search-photo" + "text": "TikTok Tag Detail", + "link": "/model-api-reference/platform-apis/tiktok/web/tag-detail" }, { - "text": "Search products list V1", - "link": "/model-api-reference/platform-apis/tiktok/shop-web/search-products-list" + "text": "TikTok Tag Posts", + "link": "/model-api-reference/platform-apis/tiktok/web/tag-post" }, { - "text": "Search products list V2 (Mobile)", - "link": "/model-api-reference/platform-apis/tiktok/shop-web/search-products-list-v2" + "text": "TikTok User Follower Search", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/search-follower-list" }, { - "text": "Search user", - "link": "/model-api-reference/platform-apis/tiktok/web/search-user" + "text": "TikTok User Search Results", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/user-search-result" }, { - "text": "Search video", - "link": "/model-api-reference/platform-apis/tiktok/web/search-video" + "text": "TikTok Video Keyword Search", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/video-search-result" }, { - "text": "Similar User Recommendations", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/similar-user-recommendations" + "text": "TikTok Web Explore Posts", + "link": "/model-api-reference/platform-apis/tiktok/web/explore-post" }, { - "text": "Tag Detail", - "link": "/model-api-reference/platform-apis/tiktok/web/tag-detail" + "text": "TikTok Web General Search", + "link": "/model-api-reference/platform-apis/tiktok/web/general-search" }, { - "text": "Tag Post", - "link": "/model-api-reference/platform-apis/tiktok/web/tag-post" + "text": "TikTok Web Home Feed", + "link": "/model-api-reference/platform-apis/tiktok/web/home-feed" + }, + { + "text": "TikTok Web Stream Search", + "link": "/model-api-reference/platform-apis/tiktok/web/search-live" } ] }, @@ -267,31 +251,23 @@ export default { "label": "Comments & Engagement", "operations": [ { - "text": "Get comment keywords analysis", - "link": "/model-api-reference/platform-apis/tiktok/analytics/comment-keywords" - }, - { - "text": "Get comment replies data of specified video", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/video-comment-replies" + "text": "TikTok Shop Product Reviews", + "link": "/model-api-reference/platform-apis/tiktok/shop-web/product-reviews-v2" }, { - "text": "Get product reviews V1", - "link": "/model-api-reference/platform-apis/tiktok/shop-web/product-reviews" + "text": "TikTok Video Comment Keywords", + "link": "/model-api-reference/platform-apis/tiktok/analytics/comment-keywords" }, { - "text": "Get product reviews V2", - "link": "/model-api-reference/platform-apis/tiktok/shop-web/product-reviews-v2" + "text": "TikTok Video Comment Replies", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/video-comment-replies" }, { - "text": "Get single video comments data", + "text": "TikTok Video Comments (App V3)", "link": "/model-api-reference/platform-apis/tiktok/app-v3/video-comments" }, { - "text": "Get video comment replies", - "link": "/model-api-reference/platform-apis/tiktok/web/post-comment-reply" - }, - { - "text": "Get video comments", + "text": "TikTok Video Comments (Web)", "link": "/model-api-reference/platform-apis/tiktok/web/post-comment" } ] @@ -301,64 +277,64 @@ export default { "label": "Live", "operations": [ { - "text": "Batch check if live rooms are online", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/check-live-room-online-batch" + "text": "TikTok Broadcast Danmaku", + "link": "/model-api-reference/platform-apis/tiktok/web/live-room" }, { - "text": "Batch live room start status check", - "link": "/model-api-reference/platform-apis/tiktok/web/batch-check-live-alive" + "text": "TikTok Broadcast Room Information", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/live-room-info" }, { - "text": "Check if live room is online", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/check-live-room-online" + "text": "TikTok LIVE Ranking", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/live-daily-rank" }, { - "text": "Extract live room ID from live room link", - "link": "/model-api-reference/platform-apis/tiktok/web/live-room-id" + "text": "TikTok LIVE Status", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/check-live-room-online" }, { - "text": "Get data of specified live room", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/live-room-info" + "text": "TikTok Livestream Room Product List", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/live-room-product-list" }, { - "text": "Get information of specified Webcast user", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/webcast-user-info" + "text": "TikTok Room Active Status Batch Check", + "link": "/model-api-reference/platform-apis/tiktok/web/batch-check-live-alive" }, { - "text": "Get live daily rank data", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/live-daily-rank" + "text": "TikTok Room Danmaku Messages", + "link": "/model-api-reference/platform-apis/tiktok/web/live-im-fetch" }, { - "text": "Get live room gift list", + "text": "TikTok Room Gift List", "link": "/model-api-reference/platform-apis/tiktok/web/live-gift-list" }, { - "text": "Get live room information via live link", - "link": "/model-api-reference/platform-apis/tiktok/web/live-data" - }, - { - "text": "Get live room product list data", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/live-room-product-list" + "text": "TikTok Room ID Resolver", + "link": "/model-api-reference/platform-apis/tiktok/web/live-room-id" }, { - "text": "Get live room product list data V2", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/live-room-product-list-v2" + "text": "TikTok Room Online Status Batch", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/check-live-room-online-batch" }, { - "text": "Get live room ranking list", + "text": "TikTok Stream Audience Ranking List", "link": "/model-api-reference/platform-apis/tiktok/app-v3/live-ranking-list" }, { - "text": "Get user live details", - "link": "/model-api-reference/platform-apis/tiktok/web/user-live-detail" + "text": "TikTok Stream Room Information", + "link": "/model-api-reference/platform-apis/tiktok/web/live-data" }, { - "text": "Live room start status check", + "text": "TikTok Stream Status Check", "link": "/model-api-reference/platform-apis/tiktok/web/check-live-alive" }, { - "text": "tiktok live room danmaku parameters", - "link": "/model-api-reference/platform-apis/tiktok/web/live-im-fetch" + "text": "TikTok User Stream Detail", + "link": "/model-api-reference/platform-apis/tiktok/web/user-live-detail" + }, + { + "text": "TikTok Webcast User Information", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/webcast-user-info" } ] }, @@ -367,60 +343,36 @@ export default { "label": "Commerce", "operations": [ { - "text": "Get hot selling products list", - "link": "/model-api-reference/platform-apis/tiktok/shop-web/hot-selling-products-list" - }, - { - "text": "Get product category list", - "link": "/model-api-reference/platform-apis/tiktok/shop-web/products-category-list" + "text": "TikTok Seller Products List", + "link": "/model-api-reference/platform-apis/tiktok/shop-web/seller-products-list" }, { - "text": "Get product detail V1(Full data)", - "link": "/model-api-reference/platform-apis/tiktok/shop-web/product-detail" + "text": "TikTok Shop ID by Share Link", + "link": "/model-api-reference/platform-apis/tiktok/shop-web/shop-id-by-share-link" }, { - "text": "Get product detail V2 (Less Data)", - "link": "/model-api-reference/platform-apis/tiktok/shop-web/product-detail-v2" + "text": "TikTok Shop Product Category List", + "link": "/model-api-reference/platform-apis/tiktok/shop-web/products-category-list" }, { - "text": "Get product detail V3 (Full Data)", + "text": "TikTok Shop Product Detail (V3)", "link": "/model-api-reference/platform-apis/tiktok/shop-web/product-detail-v3" }, { - "text": "Get Product ID by Share Link", - "link": "/model-api-reference/platform-apis/tiktok/shop-web/product-id-by-share-link" + "text": "TikTok Shop Product Details", + "link": "/model-api-reference/platform-apis/tiktok/shop-web/product-detail" }, { - "text": "Get products by category ID", - "link": "/model-api-reference/platform-apis/tiktok/shop-web/products-by-category-id" + "text": "TikTok Shop Product Details (V2)", + "link": "/model-api-reference/platform-apis/tiktok/shop-web/product-detail-v2" }, { - "text": "Get seller products list V1", - "link": "/model-api-reference/platform-apis/tiktok/shop-web/seller-products-list" + "text": "TikTok Shop Product ID by Share Link", + "link": "/model-api-reference/platform-apis/tiktok/shop-web/product-id-by-share-link" }, { - "text": "Get seller products list V2 (Mobile)", + "text": "TikTok Shop Seller Products (V2)", "link": "/model-api-reference/platform-apis/tiktok/shop-web/seller-products-list-v2" - }, - { - "text": "Get shop home page data", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/shop-home" - }, - { - "text": "Get shop home page list data", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/shop-home-page-list" - }, - { - "text": "Get Shop ID by Share Link", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/shop-id-by-share-link" - }, - { - "text": "Get Shop ID by Share Link", - "link": "/model-api-reference/platform-apis/tiktok/shop-web/shop-id-by-share-link" - }, - { - "text": "Get shop information data", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/shop-info" } ] }, @@ -429,7 +381,7 @@ export default { "label": "Messaging", "operations": [ { - "text": "Generate TikTok share link, call TikTok APP, and send private messages to specified users", + "text": "TikTok Direct Message Share Link", "link": "/model-api-reference/platform-apis/tiktok/app-v3/open-app-to-send-private-message" } ] @@ -439,92 +391,84 @@ export default { "label": "Content & Video", "operations": [ { - "text": "Batch Get Video Information", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/multi-video" + "text": "Detect fake views in video", + "link": "/model-api-reference/platform-apis/tiktok/analytics/detect-fake-views" }, { - "text": "Batch Get Video Information V2", + "text": "TikTok Batch Video Info (App V3, V2)", "link": "/model-api-reference/platform-apis/tiktok/app-v3/multi-video-v2" }, { - "text": "Detect fake views in video", - "link": "/model-api-reference/platform-apis/tiktok/analytics/detect-fake-views" + "text": "TikTok Batch Video Info (App V3)", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/multi-video" }, { - "text": "Generate TikTok share link, call TikTok APP, and jump to the specified video details page", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/open-app-to-video-detail" + "text": "TikTok Music Chart List", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/music-chart-list" }, { - "text": "Get details of specified music", + "text": "TikTok Music Details", "link": "/model-api-reference/platform-apis/tiktok/app-v3/music-detail" }, { - "text": "Get single video data", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/one-video" + "text": "TikTok Music Video List", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/music-video-list" }, { - "text": "Get single video data", - "link": "/model-api-reference/platform-apis/tiktok/web/post-detail" + "text": "TikTok Post Details (V2)", + "link": "/model-api-reference/platform-apis/tiktok/web/post-detail-v2" }, { - "text": "Get single video data by sharing link", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/one-video-by-share-url" + "text": "TikTok Single Video Details (V2)", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/one-video-v2" }, { - "text": "Get single video data by sharing link", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/one-video-by-share-url-v2" + "text": "TikTok User Homepage Videos (V3)", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/user-post-videos-v3" }, { - "text": "Get single video data V2", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/one-video-v2" + "text": "TikTok User Liked Videos", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/user-like-videos" }, { - "text": "Get single video data V2", - "link": "/model-api-reference/platform-apis/tiktok/web/post-detail-v2" + "text": "TikTok User Music List", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/user-music-list" }, { - "text": "Get single video data V3 (support country parameter)", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/one-video-v3" + "text": "TikTok User Posts", + "link": "/model-api-reference/platform-apis/tiktok/web/user-post" }, { - "text": "Get user homepage video data V1", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/user-post-videos" + "text": "TikTok User Repost Videos", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/user-repost-videos" }, { - "text": "Get user homepage video data V2", + "text": "TikTok User Videos (App V3, V2)", "link": "/model-api-reference/platform-apis/tiktok/app-v3/user-post-videos-v2" }, { - "text": "Get user homepage video data V3 (simplified data - faster)", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/user-post-videos-v3" - }, - { - "text": "Get user like video data", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/user-like-videos" + "text": "TikTok User Videos (App V3)", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/user-post-videos" }, { - "text": "Get user music list data", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/user-music-list" + "text": "TikTok Video App Share Link", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/open-app-to-video-detail" }, { - "text": "Get user posts", - "link": "/model-api-reference/platform-apis/tiktok/web/user-post" + "text": "TikTok Video Detail", + "link": "/model-api-reference/platform-apis/tiktok/web/post-detail" }, { - "text": "Get user repost video data", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/user-repost-videos" + "text": "TikTok Video Details", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/one-video" }, { - "text": "Get video list of specified music", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/music-video-list" + "text": "TikTok Video Details (V3)", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/one-video-v3" }, { - "text": "Get video metrics", + "text": "TikTok Video Metrics", "link": "/model-api-reference/platform-apis/tiktok/analytics/video-metrics" - }, - { - "text": "Music Chart List", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/music-chart-list" } ] }, @@ -533,76 +477,68 @@ export default { "label": "Users & Accounts", "operations": [ { - "text": "Extract list user sec_user_id", - "link": "/model-api-reference/platform-apis/tiktok/web/all-sec-user-id" + "text": "TikTok Creator Info and Milestones", + "link": "/model-api-reference/platform-apis/tiktok/analytics/creator-info-and-milestones" }, { - "text": "Extract user sec_user_id", + "text": "TikTok Profile Sec User ID", "link": "/model-api-reference/platform-apis/tiktok/web/sec-user-id" }, { - "text": "Extract user user_id", - "link": "/model-api-reference/platform-apis/tiktok/web/user-id" - }, - { - "text": "Generate TikTok share link, call TikTok APP, and jump to the specified user profile", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/open-app-to-user-profile" - }, - { - "text": "Get creator info and milestones", - "link": "/model-api-reference/platform-apis/tiktok/analytics/creator-info-and-milestones" + "text": "TikTok User Country by Username", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/user-country-by-username" }, { - "text": "Get follower list of specified user", + "text": "TikTok User Follower List", "link": "/model-api-reference/platform-apis/tiktok/app-v3/user-follower-list" }, { - "text": "Get following list of specified user", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/user-following-list" - }, - { - "text": "Get information of specified user", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/user-profile" - }, - { - "text": "Get user account country by username", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/user-country-by-username" + "text": "TikTok User Followers", + "link": "/model-api-reference/platform-apis/tiktok/web/user-fans" }, { - "text": "Get user favorites", - "link": "/model-api-reference/platform-apis/tiktok/web/user-collect" + "text": "TikTok User Following List", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/user-following-list" }, { - "text": "Get user followers", - "link": "/model-api-reference/platform-apis/tiktok/web/user-fans" + "text": "TikTok User ID by Username", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/user-id-and-sec-user-id-by-username" }, { - "text": "Get user followings", - "link": "/model-api-reference/platform-apis/tiktok/web/user-follow" + "text": "TikTok User ID from Profile Link", + "link": "/model-api-reference/platform-apis/tiktok/web/user-id" }, { - "text": "Get user likes", + "text": "TikTok User Likes", "link": "/model-api-reference/platform-apis/tiktok/web/user-like" }, { - "text": "Get user mix list", + "text": "TikTok User Mix Video List", "link": "/model-api-reference/platform-apis/tiktok/web/user-mix" }, { - "text": "Get user play list", + "text": "TikTok User Playlists", "link": "/model-api-reference/platform-apis/tiktok/web/user-play-list" }, { - "text": "Get user profile", + "text": "TikTok User Profile", "link": "/model-api-reference/platform-apis/tiktok/web/user-profile" }, { - "text": "Get user reposts", + "text": "TikTok User Profile Details", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/user-profile" + }, + { + "text": "TikTok User Profile Share Link", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/open-app-to-user-profile" + }, + { + "text": "TikTok User Reposts", "link": "/model-api-reference/platform-apis/tiktok/web/user-repost" }, { - "text": "Get user_id and sec_user_id by Username", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/user-id-and-sec-user-id-by-username" + "text": "TikTok User Sec User ID Extractor", + "link": "/model-api-reference/platform-apis/tiktok/web/all-sec-user-id" } ] }, @@ -611,88 +547,88 @@ export default { "label": "Utilities", "operations": [ { - "text": "Batch get gift names by gift IDs ($0.025/call, suggest 50)", - "link": "/model-api-reference/platform-apis/tiktok/web/gift-names-by-ids" + "text": "TikTok Gift Name by ID", + "link": "/model-api-reference/platform-apis/tiktok/web/gift-name-by-id" }, { - "text": "Decrypt strData", - "link": "/model-api-reference/platform-apis/tiktok/web/decrypt-str-data" + "text": "TikTok Gift Names by IDs", + "link": "/model-api-reference/platform-apis/tiktok/web/gift-names-by-ids" }, { - "text": "Encrypt strData", - "link": "/model-api-reference/platform-apis/tiktok/web/encrypt-str-data" + "text": "TikTok Profile Unique IDs", + "link": "/model-api-reference/platform-apis/tiktok/web/all-unique-id" }, { - "text": "Extract list video id", - "link": "/model-api-reference/platform-apis/tiktok/web/all-aweme-id" + "text": "TikTok Real msToken", + "link": "/model-api-reference/platform-apis/tiktok/web/generate-real-ms-token" }, { - "text": "Extract single video id", - "link": "/model-api-reference/platform-apis/tiktok/web/aweme-id" + "text": "TikTok Share QR Code", + "link": "/model-api-reference/platform-apis/tiktok/app-v3/share-qr-code" }, { - "text": "Generate browser fingerprint", - "link": "/model-api-reference/platform-apis/tiktok/web/generate-fingerprint" + "text": "TikTok User Unique ID", + "link": "/model-api-reference/platform-apis/tiktok/web/unique-id" }, { - "text": "Generate hashed ID", - "link": "/model-api-reference/platform-apis/tiktok/web/generate-hashed-id" + "text": "TikTok Video ID from URL", + "link": "/model-api-reference/platform-apis/tiktok/web/aweme-id" }, { - "text": "Generate real msToken", - "link": "/model-api-reference/platform-apis/tiktok/web/generate-real-ms-token" + "text": "TikTok Video IDs from URLs (Batch)", + "link": "/model-api-reference/platform-apis/tiktok/web/all-aweme-id" }, { - "text": "Generate TikTok WSS X-Bogus signature", - "link": "/model-api-reference/platform-apis/tiktok/web/generate-wss-xb-signature" + "text": "TikTok Web Browser Fingerprint", + "link": "/model-api-reference/platform-apis/tiktok/web/generate-fingerprint" }, { - "text": "Generate ttwid", - "link": "/model-api-reference/platform-apis/tiktok/web/generate-ttwid" + "text": "TikTok Web Device Registration", + "link": "/model-api-reference/platform-apis/tiktok/web/device-register" }, { - "text": "Generate web_id", - "link": "/model-api-reference/platform-apis/tiktok/web/generate-webid" + "text": "TikTok Web Guest Cookie", + "link": "/model-api-reference/platform-apis/tiktok/web/web-guest-cookie" }, { - "text": "Generate X-Mssdk-Info", - "link": "/model-api-reference/platform-apis/tiktok/web/generate-x-mssdk-info" + "text": "TikTok Web Hashed ID", + "link": "/model-api-reference/platform-apis/tiktok/web/generate-hashed-id" }, { - "text": "Generate XBogus", - "link": "/model-api-reference/platform-apis/tiktok/web/generate-xbogus" + "text": "TikTok Web ID", + "link": "/model-api-reference/platform-apis/tiktok/web/generate-webid" }, { - "text": "Generate XGnarly", - "link": "/model-api-reference/platform-apis/tiktok/web/generate-xgnarly" + "text": "TikTok Web StrData Encryption", + "link": "/model-api-reference/platform-apis/tiktok/web/encrypt-str-data" }, { - "text": "Generate XGnarly and XBogus", - "link": "/model-api-reference/platform-apis/tiktok/web/generate-xgnarly-and-xbogus" + "text": "TikTok Web String Data Decryption", + "link": "/model-api-reference/platform-apis/tiktok/web/decrypt-str-data" }, { - "text": "Get gift name by gift ID", - "link": "/model-api-reference/platform-apis/tiktok/web/gift-name-by-id" + "text": "TikTok Web TTWID Identifier", + "link": "/model-api-reference/platform-apis/tiktok/web/generate-ttwid" }, { - "text": "Get list unique_id", - "link": "/model-api-reference/platform-apis/tiktok/web/all-unique-id" + "text": "TikTok Web X-Bogus Signature", + "link": "/model-api-reference/platform-apis/tiktok/web/generate-xbogus" }, { - "text": "Get share QR code", - "link": "/model-api-reference/platform-apis/tiktok/app-v3/share-qr-code" + "text": "TikTok Web X-Gnarly and X-Bogus Signatures", + "link": "/model-api-reference/platform-apis/tiktok/web/generate-xgnarly-and-xbogus" }, { - "text": "Get the guest Cookie", - "link": "/model-api-reference/platform-apis/tiktok/web/web-guest-cookie" + "text": "TikTok Web X-Gnarly Signature", + "link": "/model-api-reference/platform-apis/tiktok/web/generate-xgnarly" }, { - "text": "Get user unique_id", - "link": "/model-api-reference/platform-apis/tiktok/web/unique-id" + "text": "TikTok Web X-Mssdk-Info Tokens", + "link": "/model-api-reference/platform-apis/tiktok/web/generate-x-mssdk-info" }, { - "text": "Register device for TikTok Web", - "link": "/model-api-reference/platform-apis/tiktok/web/device-register" + "text": "TikTok WSS X-Bogus Signature", + "link": "/model-api-reference/platform-apis/tiktok/web/generate-wss-xb-signature" } ] }, @@ -701,11 +637,11 @@ export default { "label": "Other", "operations": [ { - "text": "Get content translation data", + "text": "TikTok Content Translation", "link": "/model-api-reference/platform-apis/tiktok/app-v3/content-translate" }, { - "text": "Get share short link", + "text": "TikTok Share Short Link", "link": "/model-api-reference/platform-apis/tiktok/app-v3/share-short-link" } ] diff --git a/.vitepress/theme/platform-api-sidebars/toutiao.ts b/.vitepress/theme/platform-api-sidebars/toutiao.ts index 9d3e0345..6c960571 100644 --- a/.vitepress/theme/platform-api-sidebars/toutiao.ts +++ b/.vitepress/theme/platform-api-sidebars/toutiao.ts @@ -9,7 +9,7 @@ export default { "label": "Comments & Engagement", "operations": [ { - "text": "Get comments of specified post", + "text": "Toutiao Post Comments", "link": "/model-api-reference/platform-apis/toutiao/app/comments" } ] @@ -19,12 +19,12 @@ export default { "label": "Content & Video", "operations": [ { - "text": "Get information of specified video", - "link": "/model-api-reference/platform-apis/toutiao/app/video-info" + "text": "Toutiao Specified Video Details", + "link": "/model-api-reference/platform-apis/toutiao/web/video-info" }, { - "text": "Get information of specified video", - "link": "/model-api-reference/platform-apis/toutiao/web/video-info" + "text": "Toutiao Video Information", + "link": "/model-api-reference/platform-apis/toutiao/app/video-info" } ] }, @@ -33,12 +33,12 @@ export default { "label": "Users & Accounts", "operations": [ { - "text": "Get information of specified user", - "link": "/model-api-reference/platform-apis/toutiao/app/user-info" + "text": "Toutiao Profile User ID", + "link": "/model-api-reference/platform-apis/toutiao/app/user-id" }, { - "text": "Get user_id from user profile", - "link": "/model-api-reference/platform-apis/toutiao/app/user-id" + "text": "Toutiao User Profile", + "link": "/model-api-reference/platform-apis/toutiao/app/user-info" } ] }, @@ -47,11 +47,11 @@ export default { "label": "Other", "operations": [ { - "text": "Get information of specified article", + "text": "Toutiao Article Details (App)", "link": "/model-api-reference/platform-apis/toutiao/app/article-info" }, { - "text": "Get information of specified article", + "text": "Toutiao Article Details (Web)", "link": "/model-api-reference/platform-apis/toutiao/web/article-info" } ] diff --git a/.vitepress/theme/platform-api-sidebars/twitter.ts b/.vitepress/theme/platform-api-sidebars/twitter.ts index 5a84ab57..6245e326 100644 --- a/.vitepress/theme/platform-api-sidebars/twitter.ts +++ b/.vitepress/theme/platform-api-sidebars/twitter.ts @@ -9,11 +9,11 @@ export default { "label": "Search & Discovery", "operations": [ { - "text": "Search", + "text": "Twitter (X) Search", "link": "/model-api-reference/platform-apis/twitter/web/search-timeline" }, { - "text": "Trending", + "text": "Twitter (X) Trending Topics", "link": "/model-api-reference/platform-apis/twitter/web/trending" } ] @@ -23,15 +23,15 @@ export default { "label": "Comments & Engagement", "operations": [ { - "text": "Get comments", - "link": "/model-api-reference/platform-apis/twitter/web/post-comments" + "text": "Twitter (X) Latest Tweet Comments", + "link": "/model-api-reference/platform-apis/twitter/web/latest-post-comments" }, { - "text": "Get the latest tweet comments", - "link": "/model-api-reference/platform-apis/twitter/web/latest-post-comments" + "text": "Twitter (X) Tweet Comments", + "link": "/model-api-reference/platform-apis/twitter/web/post-comments" }, { - "text": "Get user tweet replies", + "text": "Twitter (X) User Tweet Replies", "link": "/model-api-reference/platform-apis/twitter/web/user-tweet-replies" } ] @@ -41,11 +41,11 @@ export default { "label": "Content & Video", "operations": [ { - "text": "Get user media", + "text": "Twitter (X) User Media", "link": "/model-api-reference/platform-apis/twitter/web/user-media" }, { - "text": "Get user post", + "text": "Twitter (X) User Posts", "link": "/model-api-reference/platform-apis/twitter/web/user-post-tweet" } ] @@ -55,20 +55,20 @@ export default { "label": "Users & Accounts", "operations": [ { - "text": "Get user profile", - "link": "/model-api-reference/platform-apis/twitter/web/user-profile" - }, - { - "text": "ReTweet User list", + "text": "Twitter (X) Retweet User List", "link": "/model-api-reference/platform-apis/twitter/web/retweet-user-list" }, { - "text": "User Followers", + "text": "Twitter (X) User Followers", "link": "/model-api-reference/platform-apis/twitter/web/user-followers" }, { - "text": "User Followings", + "text": "Twitter (X) User Followings", "link": "/model-api-reference/platform-apis/twitter/web/user-followings" + }, + { + "text": "Twitter (X) User Profile", + "link": "/model-api-reference/platform-apis/twitter/web/user-profile" } ] }, @@ -77,7 +77,7 @@ export default { "label": "Other", "operations": [ { - "text": "Get single tweet data", + "text": "Twitter Tweet Detail", "link": "/model-api-reference/platform-apis/twitter/web/tweet-detail" } ] diff --git a/.vitepress/theme/platform-api-sidebars/wechat-channels.ts b/.vitepress/theme/platform-api-sidebars/wechat-channels.ts index dbce88cf..55d6a44e 100644 --- a/.vitepress/theme/platform-api-sidebars/wechat-channels.ts +++ b/.vitepress/theme/platform-api-sidebars/wechat-channels.ts @@ -9,7 +9,7 @@ export default { "label": "Search & Discovery", "operations": [ { - "text": "Search Videos Within a WeChat Channel", + "text": "WeChat Channels In-Channel Video Search", "link": "/model-api-reference/platform-apis/wechat-channels/v2/search-channel-videos" } ] @@ -19,7 +19,7 @@ export default { "label": "Comments & Engagement", "operations": [ { - "text": "Get WeChat Channels Video Comments", + "text": "WeChat Channels Video Comments", "link": "/model-api-reference/platform-apis/wechat-channels/v2/video-comments" } ] @@ -29,11 +29,11 @@ export default { "label": "Live", "operations": [ { - "text": "Get WeChat Channels Live Detail", + "text": "WeChat Channels Stream Detail", "link": "/model-api-reference/platform-apis/wechat-channels/v2/live-detail" }, { - "text": "Get WeChat Channels Live History", + "text": "WeChat Channels Stream Replay History", "link": "/model-api-reference/platform-apis/wechat-channels/v2/live-history" } ] @@ -43,20 +43,20 @@ export default { "label": "Content & Video", "operations": [ { - "text": "Generate WeChat Channels Video Share URL", - "link": "/model-api-reference/platform-apis/wechat-channels/v2/video-share-url" - }, - { - "text": "Get WeChat Channels Collection Videos", + "text": "WeChat Channels Collection Videos", "link": "/model-api-reference/platform-apis/wechat-channels/v2/collection-videos" }, { - "text": "Get WeChat Channels User Videos", + "text": "WeChat Channels User Videos", "link": "/model-api-reference/platform-apis/wechat-channels/v2/user-videos" }, { - "text": "Get WeChat Channels Video Detail", + "text": "WeChat Channels Video Detail", "link": "/model-api-reference/platform-apis/wechat-channels/v2/video-detail" + }, + { + "text": "WeChat Channels Video Share URL", + "link": "/model-api-reference/platform-apis/wechat-channels/v2/video-share-url" } ] }, @@ -65,19 +65,19 @@ export default { "label": "Users & Accounts", "operations": [ { - "text": "Convert Channel ID to Finder Username", - "link": "/model-api-reference/platform-apis/wechat-channels/v2/channel-id-to-username" + "text": "WeChat Channels Account Info", + "link": "/model-api-reference/platform-apis/wechat-channels/v2/channel-info" }, { - "text": "Get WeChat Channels Account Info", - "link": "/model-api-reference/platform-apis/wechat-channels/v2/channel-info" + "text": "WeChat Channels ID to Username", + "link": "/model-api-reference/platform-apis/wechat-channels/v2/channel-id-to-username" }, { - "text": "Get WeChat Channels User Collections", + "text": "WeChat Channels User Collections", "link": "/model-api-reference/platform-apis/wechat-channels/v2/user-collections" }, { - "text": "Get WeChat Channels User Profile & Stats", + "text": "WeChat Channels User Profile", "link": "/model-api-reference/platform-apis/wechat-channels/v2/user-profile" } ] diff --git a/.vitepress/theme/platform-api-sidebars/wechat-mp.ts b/.vitepress/theme/platform-api-sidebars/wechat-mp.ts index 1be36c45..17ddd2cb 100644 --- a/.vitepress/theme/platform-api-sidebars/wechat-mp.ts +++ b/.vitepress/theme/platform-api-sidebars/wechat-mp.ts @@ -2,18 +2,18 @@ export default { "platform": "WeChat MP", "slug": "wechat-mp", - "operationCount": 9, + "operationCount": 8, "groups": [ { "key": "comments", "label": "Comments & Engagement", "operations": [ { - "text": "Get WeChat MP Article Comments", + "text": "WeChat MP Article Comments", "link": "/model-api-reference/platform-apis/wechat-mp/v2/article-comments" }, { - "text": "Get WeChat MP Comment Replies", + "text": "WeChat MP Comment Replies", "link": "/model-api-reference/platform-apis/wechat-mp/v2/comment-replies" } ] @@ -23,19 +23,19 @@ export default { "label": "Messaging", "operations": [ { - "text": "Get WeChat MP Article Ads", + "text": "WeChat MP Article Ads", "link": "/model-api-reference/platform-apis/wechat-mp/v2/article-ad" }, { - "text": "Get WeChat MP Article Detail", + "text": "WeChat MP Article Detail", "link": "/model-api-reference/platform-apis/wechat-mp/v2/article-detail" }, { - "text": "Get WeChat MP Article Stats", + "text": "WeChat MP Article Stats", "link": "/model-api-reference/platform-apis/wechat-mp/v2/article-stats" }, { - "text": "Get WeChat MP Related Articles", + "text": "WeChat MP Related Articles", "link": "/model-api-reference/platform-apis/wechat-mp/v2/related-articles" } ] @@ -45,16 +45,12 @@ export default { "label": "Users & Accounts", "operations": [ { - "text": "Get WeChat MP Account Articles", + "text": "WeChat MP Account Articles", "link": "/model-api-reference/platform-apis/wechat-mp/v2/account-articles" }, { - "text": "Get WeChat MP Account Profile", + "text": "WeChat MP Account Profile", "link": "/model-api-reference/platform-apis/wechat-mp/v2/account-profile" - }, - { - "text": "Get WeChat MP Account Services & Custom Menu", - "link": "/model-api-reference/platform-apis/wechat-mp/v2/account-services" } ] } diff --git a/.vitepress/theme/platform-api-sidebars/wechat-search.ts b/.vitepress/theme/platform-api-sidebars/wechat-search.ts index a14b3d35..55a28e3e 100644 --- a/.vitepress/theme/platform-api-sidebars/wechat-search.ts +++ b/.vitepress/theme/platform-api-sidebars/wechat-search.ts @@ -9,12 +9,12 @@ export default { "label": "Search & Discovery", "operations": [ { - "text": "WeChat Channels Video Search", - "link": "/model-api-reference/platform-apis/wechat-search/v2/search-videos" + "text": "WeChat Search", + "link": "/model-api-reference/platform-apis/wechat-search/v2/search" }, { - "text": "WeChat Universal Search", - "link": "/model-api-reference/platform-apis/wechat-search/v2/search" + "text": "WeChat Search for Channels Videos", + "link": "/model-api-reference/platform-apis/wechat-search/v2/search-videos" } ] } diff --git a/.vitepress/theme/platform-api-sidebars/weibo.ts b/.vitepress/theme/platform-api-sidebars/weibo.ts index a547abb1..dc8cec14 100644 --- a/.vitepress/theme/platform-api-sidebars/weibo.ts +++ b/.vitepress/theme/platform-api-sidebars/weibo.ts @@ -2,114 +2,94 @@ export default { "platform": "Weibo", "slug": "weibo", - "operationCount": 64, + "operationCount": 52, "groups": [ { "key": "search", "label": "Search & Discovery", "operations": [ { - "text": "AI Smart Search", - "link": "/model-api-reference/platform-apis/weibo/app/ai-smart-search" - }, - { - "text": "Comprehensive search", - "link": "/model-api-reference/platform-apis/weibo/app/search-all" - }, - { - "text": "Get channel feed by name", - "link": "/model-api-reference/platform-apis/weibo/web/channel-feed" - }, - { - "text": "Get channel trend top", - "link": "/model-api-reference/platform-apis/weibo/web/trend-top" - }, - { - "text": "Get home recommend feed", - "link": "/model-api-reference/platform-apis/weibo/app/home-recommend-feed" - }, - { - "text": "Get hot search", - "link": "/model-api-reference/platform-apis/weibo/app/hot-search" + "text": "Weibo Advanced Search", + "link": "/model-api-reference/platform-apis/weibo/web-v2/advanced-search" }, { - "text": "Get hot search categories", - "link": "/model-api-reference/platform-apis/weibo/app/hot-search-categories" + "text": "Weibo AI Related Search Content", + "link": "/model-api-reference/platform-apis/weibo/web-v2/ai-related-search" }, { - "text": "Get hot search ranking", - "link": "/model-api-reference/platform-apis/weibo/web/hot-search" + "text": "Weibo AI Search", + "link": "/model-api-reference/platform-apis/weibo/web-v2/ai-search" }, { - "text": "Get search page hot topics", - "link": "/model-api-reference/platform-apis/weibo/web/search-topics" + "text": "Weibo App AI Smart Search", + "link": "/model-api-reference/platform-apis/weibo/app/ai-smart-search" }, { - "text": "Get user profile feed", + "text": "Weibo App User Profile Feed", "link": "/model-api-reference/platform-apis/weibo/app/user-profile-feed" }, { - "text": "Get user recommend timeline", - "link": "/model-api-reference/platform-apis/weibo/web-v2/user-recommend-timeline" + "text": "Weibo Comprehensive Search", + "link": "/model-api-reference/platform-apis/weibo/app/search-all" }, { - "text": "Get video featured feed", + "text": "Weibo Featured Video Feed", "link": "/model-api-reference/platform-apis/weibo/app/video-featured-feed" }, { - "text": "Get Weibo complete hot search ranking (50 items)", - "link": "/model-api-reference/platform-apis/weibo/web-v2/hot-search-summary" + "text": "Weibo Home Recommend Feed", + "link": "/model-api-reference/platform-apis/weibo/app/home-recommend-feed" }, { - "text": "Get Weibo hot search index (10 items)", - "link": "/model-api-reference/platform-apis/weibo/web-v2/hot-search-index" + "text": "Weibo Hot Search Categories", + "link": "/model-api-reference/platform-apis/weibo/app/hot-search-categories" }, { - "text": "Get Weibo hot search ranking", - "link": "/model-api-reference/platform-apis/weibo/web-v2/hot-search" + "text": "Weibo Hot Search Index", + "link": "/model-api-reference/platform-apis/weibo/web-v2/hot-search-index" }, { - "text": "Get Weibo similar search recommendations", - "link": "/model-api-reference/platform-apis/weibo/web-v2/similar-search" + "text": "Weibo Hot Search List", + "link": "/model-api-reference/platform-apis/weibo/web-v2/hot-search-summary" }, { - "text": "Search user posts", - "link": "/model-api-reference/platform-apis/weibo/web-v2/search-user-posts" + "text": "Weibo Hot Search Rankings", + "link": "/model-api-reference/platform-apis/weibo/app/hot-search" }, { - "text": "Search Weibo", - "link": "/model-api-reference/platform-apis/weibo/web/search" + "text": "Weibo Picture Search", + "link": "/model-api-reference/platform-apis/weibo/web-v2/pic-search" }, { - "text": "User search", - "link": "/model-api-reference/platform-apis/weibo/web-v2/user-search" + "text": "Weibo Real-Time Hot Search", + "link": "/model-api-reference/platform-apis/weibo/web-v2/hot-search" }, { - "text": "Weibo Advanced Search", - "link": "/model-api-reference/platform-apis/weibo/web-v2/advanced-search" + "text": "Weibo Real-Time Search", + "link": "/model-api-reference/platform-apis/weibo/web-v2/realtime-search" }, { - "text": "Weibo AI Search", - "link": "/model-api-reference/platform-apis/weibo/web-v2/ai-search" + "text": "Weibo Recommended Homepage Feed", + "link": "/model-api-reference/platform-apis/weibo/web-v2/user-recommend-timeline" }, { - "text": "Weibo AI Search Content Extension", - "link": "/model-api-reference/platform-apis/weibo/web-v2/ai-related-search" + "text": "Weibo Similar Search Recommendations", + "link": "/model-api-reference/platform-apis/weibo/web-v2/similar-search" }, { - "text": "Weibo picture search", - "link": "/model-api-reference/platform-apis/weibo/web-v2/pic-search" + "text": "Weibo Topic Search", + "link": "/model-api-reference/platform-apis/weibo/web-v2/topic-search" }, { - "text": "Weibo Realtime Search", - "link": "/model-api-reference/platform-apis/weibo/web-v2/realtime-search" + "text": "Weibo User Post Search", + "link": "/model-api-reference/platform-apis/weibo/web-v2/search-user-posts" }, { - "text": "Weibo topic search", - "link": "/model-api-reference/platform-apis/weibo/web-v2/topic-search" + "text": "Weibo User Search", + "link": "/model-api-reference/platform-apis/weibo/web-v2/user-search" }, { - "text": "Weibo video search (hot/all)", + "text": "Weibo Video Search", "link": "/model-api-reference/platform-apis/weibo/web-v2/video-search" } ] @@ -119,27 +99,19 @@ export default { "label": "Comments & Engagement", "operations": [ { - "text": "Check if Weibo allows image comments", + "text": "Weibo Image Comment Permission Check", "link": "/model-api-reference/platform-apis/weibo/web-v2/check-allow-comment-with-pic" }, { - "text": "Get comment replies", - "link": "/model-api-reference/platform-apis/weibo/web/comment-replies" + "text": "Weibo Post Comments", + "link": "/model-api-reference/platform-apis/weibo/web-v2/post-comments" }, { - "text": "Get post comments", + "text": "Weibo Post Comments (App)", "link": "/model-api-reference/platform-apis/weibo/app/status-comments" }, { - "text": "Get post comments", - "link": "/model-api-reference/platform-apis/weibo/web/post-comments" - }, - { - "text": "Get Weibo comments", - "link": "/model-api-reference/platform-apis/weibo/web-v2/post-comments" - }, - { - "text": "Get Weibo sub-comments", + "text": "Weibo Post Sub-Comments", "link": "/model-api-reference/platform-apis/weibo/web-v2/post-sub-comments" } ] @@ -149,44 +121,36 @@ export default { "label": "Content & Video", "operations": [ { - "text": "Get post detail", - "link": "/model-api-reference/platform-apis/weibo/web/post-detail" - }, - { - "text": "Get single post data", + "text": "Weibo Post Detail", "link": "/model-api-reference/platform-apis/weibo/web-v2/post-detail" }, { - "text": "Get user all videos", - "link": "/model-api-reference/platform-apis/weibo/web-v2/user-video-list" + "text": "Weibo User Original Posts", + "link": "/model-api-reference/platform-apis/weibo/web-v2/user-original-posts" }, { - "text": "Get user posts", - "link": "/model-api-reference/platform-apis/weibo/web/user-posts" + "text": "Weibo User Posts", + "link": "/model-api-reference/platform-apis/weibo/web-v2/user-posts" }, { - "text": "Get user video collection detail", + "text": "Weibo User Video Collection Detail", "link": "/model-api-reference/platform-apis/weibo/web-v2/user-video-collection-detail" }, { - "text": "Get user video collection list", + "text": "Weibo User Video Collection List", "link": "/model-api-reference/platform-apis/weibo/web-v2/user-video-collection-list" }, { - "text": "Get user videos", - "link": "/model-api-reference/platform-apis/weibo/app/user-videos" - }, - { - "text": "Get video detail", - "link": "/model-api-reference/platform-apis/weibo/app/video-detail" + "text": "Weibo User Video List", + "link": "/model-api-reference/platform-apis/weibo/web-v2/user-video-list" }, { - "text": "Get Weibo user original posts", - "link": "/model-api-reference/platform-apis/weibo/web-v2/user-original-posts" + "text": "Weibo User Videos", + "link": "/model-api-reference/platform-apis/weibo/app/user-videos" }, { - "text": "Get Weibo user posts", - "link": "/model-api-reference/platform-apis/weibo/web-v2/user-posts" + "text": "Weibo Video Detail", + "link": "/model-api-reference/platform-apis/weibo/app/video-detail" } ] }, @@ -195,55 +159,43 @@ export default { "label": "Users & Accounts", "operations": [ { - "text": "Get channel config list", - "link": "/model-api-reference/platform-apis/weibo/web/config-list" - }, - { - "text": "Get user album", + "text": "Weibo User Album", "link": "/model-api-reference/platform-apis/weibo/app/user-album" }, { - "text": "Get user articles", + "text": "Weibo User Articles", "link": "/model-api-reference/platform-apis/weibo/app/user-articles" }, { - "text": "Get user audios", - "link": "/model-api-reference/platform-apis/weibo/app/user-audios" - }, - { - "text": "Get user basic information", + "text": "Weibo User Basic Information", "link": "/model-api-reference/platform-apis/weibo/web-v2/user-basic-info" }, { - "text": "Get user detail information", - "link": "/model-api-reference/platform-apis/weibo/app/user-info-detail" - }, - { - "text": "Get user fans list", + "text": "Weibo User Follower List", "link": "/model-api-reference/platform-apis/weibo/web-v2/user-fans" }, { - "text": "Get user following list", + "text": "Weibo User Following List", "link": "/model-api-reference/platform-apis/weibo/web-v2/user-following" }, { - "text": "Get user information", - "link": "/model-api-reference/platform-apis/weibo/app/user-info" + "text": "Weibo User Profile Details (App)", + "link": "/model-api-reference/platform-apis/weibo/app/user-info-detail" }, { - "text": "Get user information", - "link": "/model-api-reference/platform-apis/weibo/web/user-info" + "text": "Weibo User Profile Details (Web V2)", + "link": "/model-api-reference/platform-apis/weibo/web-v2/user-info" }, { - "text": "Get user information", - "link": "/model-api-reference/platform-apis/weibo/web-v2/user-info" + "text": "Weibo User Profile Information", + "link": "/model-api-reference/platform-apis/weibo/app/user-info" }, { - "text": "Get user super topics", + "text": "Weibo User Super Topics", "link": "/model-api-reference/platform-apis/weibo/app/user-super-topics" }, { - "text": "Get user timeline", + "text": "Weibo User Timeline", "link": "/model-api-reference/platform-apis/weibo/app/user-timeline" } ] @@ -253,15 +205,15 @@ export default { "label": "Utilities", "operations": [ { - "text": "Get post detail", + "text": "Weibo Post Detail (App)", "link": "/model-api-reference/platform-apis/weibo/app/status-detail" }, { - "text": "Get post likes", + "text": "Weibo Post Likes", "link": "/model-api-reference/platform-apis/weibo/app/status-likes" }, { - "text": "Get post reposts", + "text": "Weibo Post Reposts", "link": "/model-api-reference/platform-apis/weibo/app/status-reposts" } ] @@ -271,28 +223,28 @@ export default { "label": "Other", "operations": [ { - "text": "Get all groups information", + "text": "Weibo All Groups Information", "link": "/model-api-reference/platform-apis/weibo/web-v2/all-groups" }, { - "text": "Get hot ranking timeline", - "link": "/model-api-reference/platform-apis/weibo/web-v2/hot-ranking-timeline" + "text": "Weibo Entertainment Ranking", + "link": "/model-api-reference/platform-apis/weibo/web-v2/entertainment-ranking" }, { - "text": "Get Weibo entertainment ranking", - "link": "/model-api-reference/platform-apis/weibo/web-v2/entertainment-ranking" + "text": "Weibo Hot Ranking Timeline", + "link": "/model-api-reference/platform-apis/weibo/web-v2/hot-ranking-timeline" }, { - "text": "Get Weibo life ranking", + "text": "Weibo Life Ranking", "link": "/model-api-reference/platform-apis/weibo/web-v2/life-ranking" }, { - "text": "Get Weibo social ranking", - "link": "/model-api-reference/platform-apis/weibo/web-v2/social-ranking" + "text": "Weibo Region City List", + "link": "/model-api-reference/platform-apis/weibo/web-v2/city-list" }, { - "text": "Region City List", - "link": "/model-api-reference/platform-apis/weibo/web-v2/city-list" + "text": "Weibo Social Ranking", + "link": "/model-api-reference/platform-apis/weibo/web-v2/social-ranking" } ] } diff --git a/.vitepress/theme/platform-api-sidebars/xiaohongshu.ts b/.vitepress/theme/platform-api-sidebars/xiaohongshu.ts index 3f9353b5..49f83ef2 100644 --- a/.vitepress/theme/platform-api-sidebars/xiaohongshu.ts +++ b/.vitepress/theme/platform-api-sidebars/xiaohongshu.ts @@ -2,50 +2,54 @@ export default { "platform": "Xiaohongshu", "slug": "xiaohongshu", - "operationCount": 36, + "operationCount": 34, "groups": [ { "key": "search", "label": "Search & Discovery", "operations": [ { - "text": "Fetch homepage feed", - "link": "/model-api-reference/platform-apis/xiaohongshu/web-v3/homefeed" + "text": "Xiaohongshu (RED) Creator Hot Inspiration Feed", + "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/creator-hot-inspiration-feed" }, { - "text": "Fetch search suggestions", - "link": "/model-api-reference/platform-apis/xiaohongshu/web-v3/search-suggest" + "text": "Xiaohongshu (RED) Group Search", + "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/search-groups" }, { - "text": "Get creator hot inspiration feed", - "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/creator-hot-inspiration-feed" + "text": "Xiaohongshu (RED) Homepage Feed", + "link": "/model-api-reference/platform-apis/xiaohongshu/web-v3/homefeed" }, { - "text": "Get creator inspiration feed", + "text": "Xiaohongshu (RED) Image Search", + "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/search-images" + }, + { + "text": "Xiaohongshu (RED) Inspiration Feed", "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/creator-inspiration-feed" }, { - "text": "Get topic feed", - "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/topic-feed" + "text": "Xiaohongshu (RED) Note Search", + "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/search-notes" }, { - "text": "Search groups", - "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/search-groups" + "text": "Xiaohongshu (RED) PGY Blogger Search", + "link": "/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-list" }, { - "text": "Search images", - "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/search-images" + "text": "Xiaohongshu (RED) Product Search", + "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/search-products" }, { - "text": "Search notes", - "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/search-notes" + "text": "Xiaohongshu (RED) Search Suggestions", + "link": "/model-api-reference/platform-apis/xiaohongshu/web-v3/search-suggest" }, { - "text": "Search products", - "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/search-products" + "text": "Xiaohongshu (RED) Topic Feed", + "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/topic-feed" }, { - "text": "Search users", + "text": "Xiaohongshu (RED) User Search", "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/search-users" } ] @@ -55,19 +59,15 @@ export default { "label": "Comments & Engagement", "operations": [ { - "text": "Get note comments", + "text": "Xiaohongshu (RED) Note Comments", "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/note-comments" }, { - "text": "Get note sub comments", - "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/note-sub-comments" - }, - { - "text": "Get product review overview", + "text": "Xiaohongshu (RED) Product Review Overview", "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/product-review-overview" }, { - "text": "Get product reviews", + "text": "Xiaohongshu (RED) Product Reviews", "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/product-reviews" } ] @@ -77,11 +77,11 @@ export default { "label": "Commerce", "operations": [ { - "text": "Get product detail", + "text": "Xiaohongshu (RED) Product Detail", "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/product-detail" }, { - "text": "Get product recommendations", + "text": "Xiaohongshu (RED) Product Recommendations", "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/product-recommendations" } ] @@ -91,7 +91,7 @@ export default { "label": "Content & Video", "operations": [ { - "text": "Get video note detail", + "text": "Xiaohongshu (RED) Video Note Detail", "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/video-note-detail" } ] @@ -101,32 +101,32 @@ export default { "label": "Users & Accounts", "operations": [ { - "text": "Fetch user info", - "link": "/model-api-reference/platform-apis/xiaohongshu/web-v3/user-info" - }, - { - "text": "Get PGY blogger fans history", + "text": "Xiaohongshu (RED) PGY Blogger Fan History", "link": "/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-fans-history" }, { - "text": "Get PGY blogger fans profile", + "text": "Xiaohongshu (RED) PGY Blogger Fan Profile", "link": "/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-fans-profile" }, { - "text": "Get PGY blogger fans summary", + "text": "Xiaohongshu (RED) PGY Blogger Fans Summary", "link": "/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-fans-summary" }, { - "text": "Get user faved notes", + "text": "Xiaohongshu (RED) User Favorited Notes", "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/user-faved-notes" }, { - "text": "Get user info", + "text": "Xiaohongshu (RED) User Information", "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/user-info" }, { - "text": "Get user posted notes", + "text": "Xiaohongshu (RED) User Posted Notes", "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/user-posted-notes" + }, + { + "text": "Xiaohongshu (RED) User Profile Information", + "link": "/model-api-reference/platform-apis/xiaohongshu/web-v3/user-info" } ] }, @@ -135,52 +135,44 @@ export default { "label": "Other", "operations": [ { - "text": "Fetch homepage categories", - "link": "/model-api-reference/platform-apis/xiaohongshu/web-v3/homefeed-categories" - }, - { - "text": "Fetch note detail", - "link": "/model-api-reference/platform-apis/xiaohongshu/web-v3/note-detail" + "text": "Xiaohongshu (RED) Blogger Core Data", + "link": "/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-core-data" }, { - "text": "Fetch Xiaohongshu hot list", - "link": "/model-api-reference/platform-apis/xiaohongshu/web-v3/hot-list" + "text": "Xiaohongshu (RED) Homepage Categories", + "link": "/model-api-reference/platform-apis/xiaohongshu/web-v3/homefeed-categories" }, { - "text": "Get image note detail", + "text": "Xiaohongshu (RED) Image Note Details", "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/image-note-detail" }, { - "text": "Get PGY blogger core data", - "link": "/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-core-data" - }, - { - "text": "Get PGY blogger data summary", + "text": "Xiaohongshu (RED) PGY Blogger Data Summary", "link": "/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-data-summary" }, { - "text": "Get PGY blogger detail", + "text": "Xiaohongshu (RED) PGY Blogger Details", "link": "/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-detail" }, { - "text": "Get PGY blogger list", - "link": "/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-list" + "text": "Xiaohongshu (RED) PGY Blogger Note Rates", + "link": "/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-notes-rate" }, { - "text": "Get PGY blogger notes", + "text": "Xiaohongshu (RED) PGY Blogger Notes", "link": "/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-notes" }, { - "text": "Get PGY blogger notes rate", - "link": "/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-notes-rate" - }, - { - "text": "Get PGY note detail", + "text": "Xiaohongshu (RED) PGY Note Detail", "link": "/model-api-reference/platform-apis/xiaohongshu/pgy/note-detail" }, { - "text": "Get topic info", + "text": "Xiaohongshu (RED) Topic Details", "link": "/model-api-reference/platform-apis/xiaohongshu/app-v2/topic-info" + }, + { + "text": "Xiaohongshu (RED) Web Note Details", + "link": "/model-api-reference/platform-apis/xiaohongshu/web-v3/note-detail" } ] } diff --git a/.vitepress/theme/platform-api-sidebars/xigua.ts b/.vitepress/theme/platform-api-sidebars/xigua.ts index 83149fb9..9333b23a 100644 --- a/.vitepress/theme/platform-api-sidebars/xigua.ts +++ b/.vitepress/theme/platform-api-sidebars/xigua.ts @@ -2,14 +2,14 @@ export default { "platform": "Xigua", "slug": "xigua", - "operationCount": 7, + "operationCount": 6, "groups": [ { "key": "search", "label": "Search & Discovery", "operations": [ { - "text": "Search video", + "text": "Xigua Video Search", "link": "/model-api-reference/platform-apis/xigua/app-v2/search-video" } ] @@ -19,7 +19,7 @@ export default { "label": "Comments & Engagement", "operations": [ { - "text": "Video comment list", + "text": "Xigua Video Comment List", "link": "/model-api-reference/platform-apis/xigua/app-v2/video-comment-list" } ] @@ -29,20 +29,16 @@ export default { "label": "Content & Video", "operations": [ { - "text": "Get single video data", + "text": "Xigua Single Video Information", "link": "/model-api-reference/platform-apis/xigua/app-v2/one-video" }, { - "text": "Get single video data V2", - "link": "/model-api-reference/platform-apis/xigua/app-v2/one-video-v2" + "text": "Xigua User Post List", + "link": "/model-api-reference/platform-apis/xigua/app-v2/user-post-list" }, { - "text": "Get single video play URL", + "text": "Xigua Video Play URL", "link": "/model-api-reference/platform-apis/xigua/app-v2/one-video-play-url" - }, - { - "text": "Get user post list", - "link": "/model-api-reference/platform-apis/xigua/app-v2/user-post-list" } ] }, @@ -51,7 +47,7 @@ export default { "label": "Users & Accounts", "operations": [ { - "text": "Personal information", + "text": "Xigua User Profile Details", "link": "/model-api-reference/platform-apis/xigua/app-v2/user-info" } ] diff --git a/.vitepress/theme/platform-api-sidebars/youtube.ts b/.vitepress/theme/platform-api-sidebars/youtube.ts index ec2f3ffe..c4f74b56 100644 --- a/.vitepress/theme/platform-api-sidebars/youtube.ts +++ b/.vitepress/theme/platform-api-sidebars/youtube.ts @@ -2,7 +2,7 @@ export default { "platform": "YouTube", "slug": "youtube", - "operationCount": 38, + "operationCount": 33, "groups": [ { "key": "search", @@ -13,44 +13,40 @@ export default { "link": "/model-api-reference/platform-apis/youtube/web-v2/general-search" }, { - "text": "General search V2", - "link": "/model-api-reference/platform-apis/youtube/web-v2/general-search-v2" - }, - { - "text": "Get related videos", - "link": "/model-api-reference/platform-apis/youtube/web/relate-video" + "text": "Shorts search (raw data, recommend V2)", + "link": "/model-api-reference/platform-apis/youtube/web-v2/shorts-search" }, { - "text": "Get related videos", - "link": "/model-api-reference/platform-apis/youtube/web-v2/related-videos" + "text": "YouTube Channel Search", + "link": "/model-api-reference/platform-apis/youtube/web-v2/search-channels" }, { - "text": "Get search suggestions", - "link": "/model-api-reference/platform-apis/youtube/web-v2/search-suggestions" + "text": "YouTube Channel Video Search", + "link": "/model-api-reference/platform-apis/youtube/web/search-channel" }, { - "text": "Get trending videos", - "link": "/model-api-reference/platform-apis/youtube/web/trending-videos" + "text": "YouTube General Search (Web V2, V2)", + "link": "/model-api-reference/platform-apis/youtube/web-v2/general-search-v2" }, { - "text": "Search channel", - "link": "/model-api-reference/platform-apis/youtube/web/search-channel" + "text": "YouTube Related Videos (Web V2)", + "link": "/model-api-reference/platform-apis/youtube/web-v2/related-videos" }, { - "text": "Search channels", - "link": "/model-api-reference/platform-apis/youtube/web-v2/search-channels" + "text": "YouTube Related Videos (Web)", + "link": "/model-api-reference/platform-apis/youtube/web/relate-video" }, { - "text": "Search video", - "link": "/model-api-reference/platform-apis/youtube/web/search-video" + "text": "YouTube Search Suggestions", + "link": "/model-api-reference/platform-apis/youtube/web-v2/search-suggestions" }, { - "text": "Shorts search (raw data, recommend V2)", - "link": "/model-api-reference/platform-apis/youtube/web-v2/shorts-search" + "text": "YouTube Shorts Search (V2)", + "link": "/model-api-reference/platform-apis/youtube/web-v2/shorts-search-v2" }, { - "text": "Shorts search V2", - "link": "/model-api-reference/platform-apis/youtube/web-v2/shorts-search-v2" + "text": "YouTube Video Search", + "link": "/model-api-reference/platform-apis/youtube/web/search-video" } ] }, @@ -59,24 +55,24 @@ export default { "label": "Comments & Community", "operations": [ { - "text": "Get channel community posts", + "text": "YouTube Channel Community Posts", "link": "/model-api-reference/platform-apis/youtube/web-v2/channel-community-posts" }, { - "text": "Get post comment replies", - "link": "/model-api-reference/platform-apis/youtube/web-v2/post-comment-replies" - }, - { - "text": "Get post comments", + "text": "YouTube Community Post Comments", "link": "/model-api-reference/platform-apis/youtube/web-v2/post-comments" }, { - "text": "Get video comments", - "link": "/model-api-reference/platform-apis/youtube/web-v2/video-comments" + "text": "YouTube Post Comment Replies", + "link": "/model-api-reference/platform-apis/youtube/web-v2/post-comment-replies" }, { - "text": "Get video sub comments", + "text": "YouTube Video Comment Replies", "link": "/model-api-reference/platform-apis/youtube/web-v2/video-comment-replies" + }, + { + "text": "YouTube Video Comments", + "link": "/model-api-reference/platform-apis/youtube/web-v2/video-comments" } ] }, @@ -85,64 +81,48 @@ export default { "label": "Videos & Media", "operations": [ { - "text": "Get channel short videos", + "text": "YouTube Channel Short Videos", "link": "/model-api-reference/platform-apis/youtube/web/channel-short-videos" }, { - "text": "Get channel shorts", + "text": "YouTube Channel Shorts", "link": "/model-api-reference/platform-apis/youtube/web-v2/channel-shorts" }, { - "text": "Get channel videos", + "text": "YouTube Channel Videos", "link": "/model-api-reference/platform-apis/youtube/web-v2/channel-videos" }, { - "text": "Get channel videos V2", - "link": "/model-api-reference/platform-apis/youtube/web/channel-videos-v2" - }, - { - "text": "Get post detail", + "text": "YouTube Community Post Details", "link": "/model-api-reference/platform-apis/youtube/web-v2/post-detail" }, { - "text": "Get signed video stream URL", + "text": "YouTube Signed Video Stream URL", "link": "/model-api-reference/platform-apis/youtube/web-v2/signed-stream-url" }, { - "text": "Get video captions", + "text": "YouTube Video Captions", "link": "/model-api-reference/platform-apis/youtube/web-v2/video-captions" }, { - "text": "Get video captions async job result", + "text": "YouTube Video Captions Job Result", "link": "/model-api-reference/platform-apis/youtube/web-v2/video-captions-result" }, { - "text": "Get video information", + "text": "YouTube Video Information", "link": "/model-api-reference/platform-apis/youtube/web-v2/video-info" }, { - "text": "Get video information V1", - "link": "/model-api-reference/platform-apis/youtube/web/video-info" - }, - { - "text": "Get video information V2", - "link": "/model-api-reference/platform-apis/youtube/web/video-info-v2" - }, - { - "text": "Get video information V2", + "text": "YouTube Video Information (V2)", "link": "/model-api-reference/platform-apis/youtube/web-v2/video-info-v2" }, { - "text": "Get video streams info", + "text": "YouTube Video Streams", "link": "/model-api-reference/platform-apis/youtube/web-v2/video-streams" }, { - "text": "Get video streams info V2", + "text": "YouTube Video Streams (V2)", "link": "/model-api-reference/platform-apis/youtube/web-v2/video-streams-v2" - }, - { - "text": "Get video subtitles", - "link": "/model-api-reference/platform-apis/youtube/web/video-subtitles" } ] }, @@ -151,32 +131,32 @@ export default { "label": "Channels & Users", "operations": [ { - "text": "Get channel description", + "text": "YouTube Channel Description", "link": "/model-api-reference/platform-apis/youtube/web-v2/channel-description" }, { - "text": "Get channel ID", - "link": "/model-api-reference/platform-apis/youtube/web/channel-id" - }, - { - "text": "Get channel ID from URL", + "text": "YouTube Channel ID from URL", "link": "/model-api-reference/platform-apis/youtube/web-v2/channel-id" }, { - "text": "Get channel ID from URL V2", + "text": "YouTube Channel ID from URL (V2)", "link": "/model-api-reference/platform-apis/youtube/web/channel-id-v2" }, { - "text": "Get channel information", - "link": "/model-api-reference/platform-apis/youtube/web/channel-info" + "text": "YouTube Channel ID Lookup", + "link": "/model-api-reference/platform-apis/youtube/web/channel-id" }, { - "text": "Get channel URL from channel ID", - "link": "/model-api-reference/platform-apis/youtube/web/channel-url" + "text": "YouTube Channel Information", + "link": "/model-api-reference/platform-apis/youtube/web/channel-info" }, { - "text": "Get channel URL from channel ID", + "text": "YouTube Channel URL by ID", "link": "/model-api-reference/platform-apis/youtube/web-v2/channel-url" + }, + { + "text": "YouTube Channel URL Lookup", + "link": "/model-api-reference/platform-apis/youtube/web/channel-url" } ] } diff --git a/.vitepress/theme/platform-api-sidebars/zhihu.ts b/.vitepress/theme/platform-api-sidebars/zhihu.ts index 50906430..3322ccdd 100644 --- a/.vitepress/theme/platform-api-sidebars/zhihu.ts +++ b/.vitepress/theme/platform-api-sidebars/zhihu.ts @@ -9,63 +9,63 @@ export default { "label": "Search & Discovery", "operations": [ { - "text": "Get Zhihu AI Search (v2)", + "text": "Zhihu AI Search Stream", "link": "/model-api-reference/platform-apis/zhihu/web/ai-search-stream" }, { - "text": "Get Zhihu Article Search V3", + "text": "Zhihu Article Search", "link": "/model-api-reference/platform-apis/zhihu/web/article-search-v3" }, { - "text": "Get Zhihu Column Search V3", + "text": "Zhihu Column Search", "link": "/model-api-reference/platform-apis/zhihu/web/column-search-v3" }, { - "text": "Get Zhihu Ebook Search V3", + "text": "Zhihu Ebook Search", "link": "/model-api-reference/platform-apis/zhihu/web/ebook-search-v3" }, { - "text": "Get Zhihu Hot Recommend", + "text": "Zhihu Hot Recommendations", "link": "/model-api-reference/platform-apis/zhihu/web/hot-recommend" }, { - "text": "Get Zhihu Preset Search", + "text": "Zhihu Preset Search", "link": "/model-api-reference/platform-apis/zhihu/web/preset-search" }, { - "text": "Get Zhihu Recommend Followees", + "text": "Zhihu Recommended Followees", "link": "/model-api-reference/platform-apis/zhihu/web/recommend-followees" }, { - "text": "Get Zhihu Salt Search V3", + "text": "Zhihu Salt Content Search", "link": "/model-api-reference/platform-apis/zhihu/web/salt-search-v3" }, { - "text": "Get Zhihu Scholar Search V3", + "text": "Zhihu Scholar Paper Search", "link": "/model-api-reference/platform-apis/zhihu/web/scholar-search-v3" }, { - "text": "Get Zhihu Search Recommend", + "text": "Zhihu Search Recommendations", "link": "/model-api-reference/platform-apis/zhihu/web/search-recommend" }, { - "text": "Get Zhihu Search Suggest", + "text": "Zhihu Search Suggestions", "link": "/model-api-reference/platform-apis/zhihu/web/search-suggest" }, { - "text": "Get Zhihu Similar Column Recommend", + "text": "Zhihu Similar Column Recommendations", "link": "/model-api-reference/platform-apis/zhihu/web/column-recommend" }, { - "text": "Get Zhihu Topic Search V3", + "text": "Zhihu Topic Search (V3)", "link": "/model-api-reference/platform-apis/zhihu/web/topic-search-v3" }, { - "text": "Get Zhihu User Search V3", + "text": "Zhihu User Search", "link": "/model-api-reference/platform-apis/zhihu/web/user-search-v3" }, { - "text": "Get Zhihu Video Search V3", + "text": "Zhihu Video Search (V3)", "link": "/model-api-reference/platform-apis/zhihu/web/video-search-v3" } ] @@ -75,19 +75,19 @@ export default { "label": "Comments & Engagement", "operations": [ { - "text": "Get Zhihu Column Comment Config", - "link": "/model-api-reference/platform-apis/zhihu/web/column-comment-config" + "text": "Zhihu Answer Comments", + "link": "/model-api-reference/platform-apis/zhihu/web/comment-v5" }, { - "text": "Get Zhihu Comment V5", - "link": "/model-api-reference/platform-apis/zhihu/web/comment-v5" + "text": "Zhihu Column Comment Configuration", + "link": "/model-api-reference/platform-apis/zhihu/web/column-comment-config" }, { - "text": "Get Zhihu Pin Comments", + "text": "Zhihu Pin Comments", "link": "/model-api-reference/platform-apis/zhihu/web/pin-comments" }, { - "text": "Get Zhihu Sub Comment V5", + "text": "Zhihu Sub Comments", "link": "/model-api-reference/platform-apis/zhihu/web/sub-comment-v5" } ] @@ -97,7 +97,7 @@ export default { "label": "Content & Video", "operations": [ { - "text": "Get Zhihu Video List", + "text": "Zhihu Video List", "link": "/model-api-reference/platform-apis/zhihu/web/video-list" } ] @@ -107,56 +107,56 @@ export default { "label": "Users & Accounts", "operations": [ { - "text": "Get Zhihu User Answers", + "text": "Zhihu User Answers", "link": "/model-api-reference/platform-apis/zhihu/web/user-answers" }, { - "text": "Get Zhihu User Articles", + "text": "Zhihu User Articles", "link": "/model-api-reference/platform-apis/zhihu/web/user-articles" }, { - "text": "Get Zhihu User Columns", - "link": "/model-api-reference/platform-apis/zhihu/web/user-follow-columns" - }, - { - "text": "Get Zhihu User Created Collections", + "text": "Zhihu User Collections", "link": "/model-api-reference/platform-apis/zhihu/web/user-collections" }, { - "text": "Get Zhihu User Follow Collections", + "text": "Zhihu User Follow Collections", "link": "/model-api-reference/platform-apis/zhihu/web/user-follow-collections" }, { - "text": "Get Zhihu User Follow Questions", + "text": "Zhihu User Followed Columns", + "link": "/model-api-reference/platform-apis/zhihu/web/user-follow-columns" + }, + { + "text": "Zhihu User Followed Questions", "link": "/model-api-reference/platform-apis/zhihu/web/user-follow-questions" }, { - "text": "Get Zhihu User Follow Topics", + "text": "Zhihu User Followed Topics", "link": "/model-api-reference/platform-apis/zhihu/web/user-follow-topics" }, { - "text": "Get Zhihu User Followers", - "link": "/model-api-reference/platform-apis/zhihu/web/user-followers" + "text": "Zhihu User Followees", + "link": "/model-api-reference/platform-apis/zhihu/web/user-followees" }, { - "text": "Get Zhihu User Following", - "link": "/model-api-reference/platform-apis/zhihu/web/user-followees" + "text": "Zhihu User Followers", + "link": "/model-api-reference/platform-apis/zhihu/web/user-followers" }, { - "text": "Get Zhihu User Included Articles", - "link": "/model-api-reference/platform-apis/zhihu/web/user-included-articles" + "text": "Zhihu User Highlighted Segments", + "link": "/model-api-reference/platform-apis/zhihu/web/user-segments" }, { - "text": "Get Zhihu User Info", - "link": "/model-api-reference/platform-apis/zhihu/web/user-info" + "text": "Zhihu User Included Articles", + "link": "/model-api-reference/platform-apis/zhihu/web/user-included-articles" }, { - "text": "Get Zhihu User Pins", + "text": "Zhihu User Pins", "link": "/model-api-reference/platform-apis/zhihu/web/user-pins" }, { - "text": "Get Zhihu User Segments", - "link": "/model-api-reference/platform-apis/zhihu/web/user-segments" + "text": "Zhihu Web User Profile", + "link": "/model-api-reference/platform-apis/zhihu/web/user-info" } ] }, @@ -165,35 +165,35 @@ export default { "label": "Other", "operations": [ { - "text": "Get Zhihu Answer Detail", + "text": "Zhihu Answer Details", "link": "/model-api-reference/platform-apis/zhihu/web/answer-detail" }, { - "text": "Get Zhihu Column Article Detail", + "text": "Zhihu Column Article Detail", "link": "/model-api-reference/platform-apis/zhihu/web/column-article-detail" }, { - "text": "Get Zhihu Column Article Relationship", + "text": "Zhihu Column Article Relationship", "link": "/model-api-reference/platform-apis/zhihu/web/column-relationship" }, { - "text": "Get Zhihu Column Articles", + "text": "Zhihu Column Articles", "link": "/model-api-reference/platform-apis/zhihu/web/column-articles" }, { - "text": "Get Zhihu Hot List", + "text": "Zhihu Hot List", "link": "/model-api-reference/platform-apis/zhihu/web/hot-list" }, { - "text": "Get Zhihu Pin Detail", + "text": "Zhihu Pin Detail", "link": "/model-api-reference/platform-apis/zhihu/web/pin-detail" }, { - "text": "Get Zhihu Question Answers", + "text": "Zhihu Question Answers", "link": "/model-api-reference/platform-apis/zhihu/web/question-answers" }, { - "text": "Get Zhihu Question Detail", + "text": "Zhihu Question Detail", "link": "/model-api-reference/platform-apis/zhihu/web/question-detail" } ] diff --git a/for-agents/full.md b/for-agents/full.md index 9c286aa3..c6a6b581 100644 --- a/for-agents/full.md +++ b/for-agents/full.md @@ -181,7 +181,7 @@ curl https://api.sandbase.ai/v1/run \ -H "Authorization: Bearer sk-YOUR_KEY" \ -H "Content-Type: application/json" \ -d '{ - "model": "kwaivgi/kling-video/3.0/turbo/standard/text-to-video", + "model": "kwaivgi/kling-video/v3/standard/text-to-video", "prompt": "A drone flying over mountains at golden hour", "duration": 5 }' @@ -193,7 +193,7 @@ curl https://api.sandbase.ai/v1/run \ { "id": "6a7b9c10-2d3e-4f50-8a61-23456789abcd", "status": "running", - "model": "kwaivgi/kling-video/3.0/turbo/standard/text-to-video", + "model": "kwaivgi/kling-video/v3/standard/text-to-video", "created_at": "2026-08-02T12:00:00Z" } ``` diff --git a/model-api-reference/audio-generation.md b/model-api-reference/audio-generation.md index 67cc8657..3510c436 100644 --- a/model-api-reference/audio-generation.md +++ b/model-api-reference/audio-generation.md @@ -7,7 +7,7 @@ description: Browse SandBase Audio Generation APIs by provider and open a model Browse enabled audio generation models by provider in the left navigation. Open an entry for its exact model identifier, supported capabilities, and a working request. -Audio Generation models use the SandBase generation protocol declared in each model registry file. Most are asynchronous: submit a request, receive an opaque run ID, then poll `GET /v1/run/{id}` until the generation is completed, failed, or timed out. Check the selected model page's execution mode because synchronous models return their result in the initial response. +Audio Generation models use the SandBase generation protocol declared in each model registry file. Most are asynchronous: submit a request, receive an opaque run ID, then poll GET /v1/run/{id} until the generation is completed, failed, or timed out. Check the selected model page's execution mode because synchronous models return their result in the initial response. ## Providers @@ -17,83 +17,54 @@ Audio Generation models use the SandBase generation protocol declared in each mo ### ElevenLabs -- [Voice Changer](/model-api-reference/audio-generation/elevenlabs/voice-changer) — Voice Changer by ElevenLabs - advanced AI model for audio-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows. +- [ElevenLabs Eleven v4 Turbo](/model-api-reference/audio-generation/elevenlabs/v4-turbo) — Eleven v4 Turbo is the low-latency tier of ElevenLabs' v4 text-to-speech generation, for real-time and high-volume narration. +- [ElevenLabs Eleven v4](/model-api-reference/audio-generation/elevenlabs/v4) — Eleven v4 is ElevenLabs' most expressive text-to-speech model, with natural pacing, emotion and multilingual delivery. +- [ElevenLabs Music v2.5](/model-api-reference/audio-generation/elevenlabs/music/2.5) — ElevenLabs Music v2.5 generates studio-quality songs and instrumentals with vocals from a text prompt, up to 10 minutes long. +- [ElevenLabs Music v2](/model-api-reference/audio-generation/elevenlabs/music/2) — ElevenLabs Music v2 generates studio-quality songs and instrumentals with vocals from a text prompt, up to 10 minutes long. - [Scribe V2](/model-api-reference/audio-generation/elevenlabs/scribe-v2) — Scribe V2 is ElevenLabs's speech recognition model. Transcribe audio content with industry-leading accuracy across multiple languages and accents. -- [Music](/model-api-reference/audio-generation/elevenlabs/music) — Music is ElevenLabs's AI audio generation model. Produce high-quality music tracks, sound effects, and audio landscapes from natural language prompts. +- [ElevenLabs Music](/model-api-reference/audio-generation/elevenlabs/music) — Music is ElevenLabs's AI audio generation model. Produce high-quality music tracks, sound effects, and audio landscapes from natural language prompts. - [Text To Dialogue](/model-api-reference/audio-generation/elevenlabs/text-to-dialogue) — Text To Dialogue by ElevenLabs - generate music, sound effects, and audio from text descriptions with AI. Create original compositions, ambient sounds, and audio content for any creative project. - [Sound Effects V2](/model-api-reference/audio-generation/elevenlabs/sound-effects-v2) — Sound Effects V2 by ElevenLabs - generate music, sound effects, and audio from text descriptions with AI. Create original compositions, ambient sounds, and audio content for any creative project. - [V3](/model-api-reference/audio-generation/elevenlabs/v3) — V3 by ElevenLabs - generate music, sound effects, and audio from text descriptions with AI. Create original compositions, ambient sounds, and audio content for any creative project. - [Turbo V2.5](/model-api-reference/audio-generation/elevenlabs/turbo-v2.5) — Turbo V2.5 by ElevenLabs - convert text to natural-sounding speech with AI. Supports multiple voices, languages, emotions, and speaking styles for content creation and accessibility. - [Multilingual V2](/model-api-reference/audio-generation/elevenlabs/multilingual-v2) — Multilingual V2 is ElevenLabs's AI audio generation model. Produce high-quality music tracks, sound effects, and audio landscapes from natural language prompts. -- [ElevenLabs Audio Isolation](/model-api-reference/audio-generation/elevenlabs/audio-isolation) — Audio Isolation by ElevenLabs - advanced AI model for audio-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows. ### Google -- [Gemini 3.1 Flash TTS](/model-api-reference/audio-generation/google/gemini-3.1-flash-tts) — Gemini 3.1 Flash TTS by Google - convert text to natural-sounding speech with AI. Supports multiple voices, languages, emotions, and speaking styles for content creation and accessibility. -- [Gemini TTS](/model-api-reference/audio-generation/google/gemini-tts) — Gemini TTS by Google - convert text to natural-sounding speech with AI. Supports multiple voices, languages, emotions, and speaking styles for content creation and accessibility. -- [Lyria2](/model-api-reference/audio-generation/google/lyria-2) — Lyria 2 is Google's AI audio generation model. Produce high-quality music tracks, sound effects, and audio landscapes from natural language prompts. +- [Gemini 3.8 Flash TTS](/model-api-reference/audio-generation/google/gemini-3.8-flash-tts) — Gemini 3.8 Flash TTS by Google turns text into expressive speech with 30 prebuilt voices and natural-language style direction. +- [Gemini 3.8 Flash Lite TTS](/model-api-reference/audio-generation/google/gemini-3.8-flash-lite-tts) — Gemini 3.8 Flash Lite TTS by Google turns text into expressive speech with 30 prebuilt voices and natural-language style direction. +- [Lyria 3.5](/model-api-reference/audio-generation/google/lyria-3.5) — Lyria 3.5 is Google's flagship music generation model for full-length songs up to a few minutes, with verses, choruses, bridges, expressive vocals, timed lyrics, and rich instrumental arrangements. It generates high-quality 44.1kHz stereo audio from a text prompt, optionally guided by an image. +- [Gemini 3.1 Flash TTS](/model-api-reference/audio-generation/google/gemini-3.1-flash-tts) — Gemini 3.1 Flash Tts by Google - convert text to natural-sounding speech with AI. Supports multiple voices, languages, emotions, and speaking styles for content creation and accessibility. ### MiniMax -- [MiniMax Music 2.5](/model-api-reference/audio-generation/minimax/music/2.5) — MiniMax Music 2.5 text-to-music model with lyrics support, instrumental generation, and configurable audio output. -- [MiniMax Music 2.6](/model-api-reference/audio-generation/minimax/music/2.6) — MiniMax Music 2.6 text-to-music model with enhanced quality, lyrics support, instrumental generation, and configurable audio output. -- [MiniMax Speech 2.8 HD](/model-api-reference/audio-generation/minimax/speech/2.8/hd) — MiniMax Speech 2.8 HD text-to-speech model with high-definition voice synthesis, enhanced expressiveness, 40+ language support, and voice cloning. -- [MiniMax Speech 2.8 Turbo](/model-api-reference/audio-generation/minimax/speech/2.8/turbo) — MiniMax Speech 2.8 Turbo text-to-speech model with fast voice synthesis, enhanced expressiveness, 40+ language support, and voice cloning. -- [Minimax Music](/model-api-reference/audio-generation/minimax/music/v2) — Music V2 by MiniMax - generate music, sound effects, and audio from text descriptions with AI. Create original compositions, ambient sounds, and audio content for any creative project. -- [MiniMax Speech 2.6 Turbo](/model-api-reference/audio-generation/minimax/speech/2.6/turbo) — MiniMax Speech 2.6 Turbo text-to-speech model with fast voice synthesis, 40+ language support, voice cloning, and expressive emotion control. -- [MiniMax Speech 2.6 HD](/model-api-reference/audio-generation/minimax/speech/2.6/hd) — MiniMax Speech 2.6 HD text-to-speech model with high-definition voice synthesis, 40+ language support, voice cloning, and expressive emotion control. -- [MiniMax (Hailuo AI) Music v1.5](/model-api-reference/audio-generation/minimax/music/v1.5) — Music V1.5 by MiniMax - generate music, sound effects, and audio from text descriptions with AI. Create original compositions, ambient sounds, and audio content for any creative project. -- [Minimax](/model-api-reference/audio-generation/minimax/preview/speech-2.5-hd) — Preview Speech 2.5 Hd is MiniMax's text-to-speech AI model. Generate human-like voiceovers with expressive intonation, multilingual support, and customizable voice characteristics. -- [MiniMax Speech 2.5 Turbo](/model-api-reference/audio-generation/minimax/preview/speech-2.5-turbo) — Preview Speech 2.5 Turbo by MiniMax - convert text to natural-sounding speech with AI. Supports multiple voices, languages, emotions, and speaking styles for content creation and accessibility. -- [MiniMax Voice Design](/model-api-reference/audio-generation/minimax/voice-design) — Voice Design by MiniMax - convert text to natural-sounding speech with AI. Supports multiple voices, languages, emotions, and speaking styles for content creation and accessibility. -- [MiniMax Voice Cloning](/model-api-reference/audio-generation/minimax/voice-clone) — Voice Clone is MiniMax's text-to-speech AI model. Generate human-like voiceovers with expressive intonation, multilingual support, and customizable voice characteristics. -- …and 3 more models in the sidebar. - -### Mirelo - -- [Mirelo SFX1.6](/model-api-reference/audio-generation/mirelo/sfx1.6/text-to-audio) — Sfx1.6 by Mirelo - generate music, sound effects, and audio from text descriptions with AI. Create original compositions, ambient sounds, and audio content for any creative project. +- [MiniMax Music 3](/model-api-reference/audio-generation/minimax/music/3) — MiniMax Music 3 by MiniMax composes a complete song up to five minutes long with expressive vocals and evolving arrangements from a style prompt and lyrics. +- [MiniMax Music 2.6](/model-api-reference/audio-generation/minimax/music/2.6) — MiniMax Music 2.6 by MiniMax composes a full song with vocals and accompaniment from a style prompt and lyrics, or an instrumental track without lyrics. +- [MiniMax Speech 2.8 HD](/model-api-reference/audio-generation/minimax/speech/2.8/hd) — MiniMax Speech 2.8 HD by MiniMax converts text into expressive, high-fidelity speech in 40+ languages with system or cloned voices and emotion control. +- [MiniMax Speech 2.8 Turbo](/model-api-reference/audio-generation/minimax/speech/2.8/turbo) — MiniMax Speech 2.8 Turbo by MiniMax converts text into expressive speech in 40+ languages with low latency, system or cloned voices, and emotion control. +- [MiniMax Speech 2.6 Turbo](/model-api-reference/audio-generation/minimax/speech/2.6/turbo) — MiniMax Speech 2.6 Turbo by MiniMax converts text into natural speech in 40+ languages with low latency, system or cloned voices, and emotion control. +- [MiniMax Speech 2.6 HD](/model-api-reference/audio-generation/minimax/speech/2.6/hd) — MiniMax Speech 2.6 HD by MiniMax converts text into natural, high-fidelity speech in 40+ languages with system or cloned voices and emotion control. +- [MiniMax Voice Design](/model-api-reference/audio-generation/minimax/voice-design) — MiniMax Voice Design by MiniMax creates a new reusable voice from a text description of its timbre, age, and style, and returns a spoken preview. +- [MiniMax Voice Clone](/model-api-reference/audio-generation/minimax/voice-clone) — MiniMax Voice Clone by MiniMax creates a reusable custom voice from a reference recording of at least 10 seconds and returns a short preview spoken in that voice. ### stability-ai -- [Stable Audio 2.5 Audio to Audio](/model-api-reference/audio-generation/stability-ai/stable-audio/2.5/audio-to-audio) — Stable Audio 2.5 Audio To Audio by stability-ai - advanced AI model for audio-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows. -- [Stable Audio 2.5 Text to Audio](/model-api-reference/audio-generation/stability-ai/stable-audio/2.5/text-to-audio) — Stable Audio 2.5 by stability-ai - generate music, sound effects, and audio from text descriptions with AI. Create original compositions, ambient sounds, and audio content for any creative project. -- [Stable Audio 2.5 Inpaint](/model-api-reference/audio-generation/stability-ai/stable-audio/2.5/inpaint) — Stable Audio 2.5 Inpaint by stability-ai - advanced AI model for audio-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows. -- [Stable Audio Open](/model-api-reference/audio-generation/stability-ai/stable-audio/open) — Stable Audio Open is stability-ai's AI audio generation model. Produce high-quality music tracks, sound effects, and audio landscapes from natural language prompts. +- [Stable Audio 3 Medium Text to Audio](/model-api-reference/audio-generation/stability-ai/stable-audio/3/medium/text-to-audio) — Stable Audio 3 Medium by Stability AI generates music, ambience and sound design up to about 6 minutes from a text prompt. +- [Stable Audio 3 Small Music](/model-api-reference/audio-generation/stability-ai/stable-audio/3/small/music/text-to-audio) — Stable Audio 3 Small Music by Stability AI is a fast, low-cost music generator producing tracks up to 2 minutes from a text prompt. ### Alibaba -- [Qwen 3 TTS - Voice Design [1.7B]](/model-api-reference/audio-generation/alibaba/qwen-3-tts/voice-design/1.7b) — Qwen 3 TTS Voice Design 1.7b by Alibaba - convert text to natural-sounding speech with AI. Supports multiple voices, languages, emotions, and speaking styles for content creation and accessibility. -- [Qwen 3 TTS - Text to Speech [1.7B]](/model-api-reference/audio-generation/alibaba/qwen-3-tts/1.7b) — Qwen 3 TTS 1.7b is Alibaba's text-to-speech AI model. Generate human-like voiceovers with expressive intonation, multilingual support, and customizable voice characteristics. -- [Qwen 3 TTS - Text to Speech [0.6B]](/model-api-reference/audio-generation/alibaba/qwen-3-tts/0.6b) — Qwen 3 TTS 0.6b is Alibaba's text-to-speech AI model. Generate human-like voiceovers with expressive intonation, multilingual support, and customizable voice characteristics. -- [Qwen 3 TTS - Clone Voice [1.7B]](/model-api-reference/audio-generation/alibaba/qwen-3-tts/clone-voice/1.7b) — Qwen 3 TTS Clone Voice 1.7b by Alibaba - advanced AI model for audio-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows. -- [Qwen 3 TTS - Clone Voice [0.6B]](/model-api-reference/audio-generation/alibaba/qwen-3-tts/clone-voice/0.6b) — Qwen 3 TTS Clone Voice 0.6b by Alibaba - advanced AI model for audio-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows. - -### ace - -- [ACE-Step Audio Outpaint](/model-api-reference/audio-generation/ace/ace-step/audio-outpaint) — Ace Step Audio Outpaint by ace - advanced AI model for audio-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows. -- [ACE-Step (ace: ace-step / audio-inpaint)](/model-api-reference/audio-generation/ace/ace-step/audio-inpaint) — Ace Step Audio Inpaint by ace - advanced AI model for audio-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows. -- [ACE-Step (ace: ace-step / audio-to-audio)](/model-api-reference/audio-generation/ace/ace-step/audio-to-audio) — Ace Step Audio To Audio by ace - advanced AI model for audio-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows. -- [ACE-Step (ace: ace-step / prompt-to-audio)](/model-api-reference/audio-generation/ace/ace-step/prompt-to-audio) — Ace Step Prompt To Audio by ace - generate music, sound effects, and audio from text descriptions with AI. Create original compositions, ambient sounds, and audio content for any creative project. -- [ACE-Step (ace: ace-step)](/model-api-reference/audio-generation/ace/ace-step) — Ace Step by ace - generate music, sound effects, and audio from text descriptions with AI. Create original compositions, ambient sounds, and audio content for any creative project. +- [Qwen 3 TTS - Text to Speech [1.7B]](/model-api-reference/audio-generation/alibaba/qwen-3-tts/1.7b) — Qwen 3 Tts 1.7b is Alibaba's text-to-speech AI model. Generate human-like voiceovers with expressive intonation, multilingual support, and customizable voice characteristics. +- [Qwen 3 TTS - Text to Speech [0.6B]](/model-api-reference/audio-generation/alibaba/qwen-3-tts/0.6b) — Qwen 3 Tts 0.6b is Alibaba's text-to-speech AI model. Generate human-like voiceovers with expressive intonation, multilingual support, and customizable voice characteristics. ### ByteDance -- [ByteDance Seed Speech Text to Speech](/model-api-reference/audio-generation/bytedance/seed-speech/tts/2.0) — Seed Speech TTS 2.0 is ByteDance's text-to-speech AI model. Generate human-like voiceovers with expressive intonation, multilingual support, and customizable voice characteristics. - -### KwaiVGI - -- [Kling Video](/model-api-reference/audio-generation/kwaivgi/kling-video/video-to-audio) — Kling Video Video To Audio by KwaiVGI - advanced AI model for video-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows. -- [Kling TTS](/model-api-reference/audio-generation/kwaivgi/kling-tts) — Kling TTS is KwaiVGI's text-to-speech AI model. Generate human-like voiceovers with expressive intonation, multilingual support, and customizable voice characteristics. - -### Sonilo - -- [V1.1 Text to Sound Effects](/model-api-reference/audio-generation/sonilo/1.1/text-to-sound-effects) — 1.1 Text To Sound Effects is Sonilo's AI audio generation model. Produce high-quality music tracks, sound effects, and audio landscapes from natural language prompts. -- [Sonilo V1.1 Text to Music](/model-api-reference/audio-generation/sonilo/1.1/text-to-music) — 1.1 Text To Music is Sonilo's AI audio generation model. Produce high-quality music tracks, sound effects, and audio landscapes from natural language prompts. +- [Bytedance Seed Speech Text to Speech](/model-api-reference/audio-generation/bytedance/seed-speech/tts/2.0) — Seed Speech Tts 2.0 is ByteDance's text-to-speech AI model. Generate human-like voiceovers with expressive intonation, multilingual support, and customizable voice characteristics. ### xAI -- [xAI Text to Speech](/model-api-reference/audio-generation/xai/grok-tts) — Grok TTS by xAI - convert text to natural-sounding speech with AI. Supports multiple voices, languages, emotions, and speaking styles for content creation and accessibility. +- [xAI Text to Speech](/model-api-reference/audio-generation/xai/grok-tts) — Grok Tts by xAI - convert text to natural-sounding speech with AI. Supports multiple voices, languages, emotions, and speaking styles for content creation and accessibility. ## Capability coverage -`audio-to-audio`, `speech-to-text`, `text-to-audio`, `text-to-music`, `text-to-speech`, `video-to-audio` +`speech-to-text`, `text-to-audio`, `text-to-music`, `text-to-speech` diff --git a/model-api-reference/audio-generation/ace/ace-step.md b/model-api-reference/audio-generation/ace/ace-step.md deleted file mode 100644 index a460a20e..00000000 --- a/model-api-reference/audio-generation/ace/ace-step.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "ACE-Step API Reference — Ace Ace Step API" -description: "ACE-Step API reference for SandBase. Use model ace/ace-step with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/ace/ace-step" -apiReferenceJson: "{\"title\":\"ACE-Step\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ace Step by ace - generate music, sound effects, and audio from text descriptions with AI. Create original compositions, ambient sounds, and audio content for any creative project.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ace/ace-step.\",\"default\":\"ace/ace-step\"},{\"name\":\"lyrics\",\"type\":\"string\",\"required\":false,\"description\":\"Lyrics to be sung in the audio. If not provided or if [inst] or [instrumental] is the content of this field, no lyrics will be sung. Use control structures like [verse], [chorus] and [bridge] to control the structure of the song.\",\"default\":\"\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated audio in seconds.\",\"default\":\"60\",\"constraints\":\"Range: 5 to 240\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance scale for the generation.\",\"default\":\"15\",\"constraints\":\"Range: 0 to 200\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If not provided, a random seed will be used.\"},{\"name\":\"lyric_guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Lyric guidance scale for the generation.\",\"default\":\"1.5\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"tag_guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Tag guidance scale for the generation.\",\"default\":\"5\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"guidance_type\",\"type\":\"string\",\"required\":false,\"description\":\"Type of CFG to use for the generation process.\",\"default\":\"apg\",\"constraints\":\"Allowed values: cfg, apg, cfg_star\"},{\"name\":\"scheduler\",\"type\":\"string\",\"required\":false,\"description\":\"Scheduler to use for the generation process.\",\"default\":\"euler\",\"constraints\":\"Allowed values: euler, heun\"},{\"name\":\"guidance_interval\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance interval for the generation. 0.5 means only apply guidance in the middle steps (0.25 * infer_steps to 0.75 * infer_steps)\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"guidance_interval_decay\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance interval decay for the generation. Guidance scale will decay from guidance_scale to min_guidance_scale in the interval. 0.0 means no decay.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"minimum_guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Minimum guidance scale for the generation after the decay.\",\"default\":\"3\",\"constraints\":\"Range: 0 to 200\"},{\"name\":\"granularity_scale\",\"type\":\"integer\",\"required\":false,\"description\":\"Granularity scale for the generation process. Higher values can reduce artifacts.\",\"default\":\"10\",\"constraints\":\"Range: -100 to 100\"},{\"name\":\"number_of_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of steps to generate the audio.\",\"default\":\"27\",\"constraints\":\"Range: 3 to 60\"},{\"name\":\"tags\",\"type\":\"string\",\"required\":false,\"description\":\"Comma-separated list of genre tags to control the style of the generated audio.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ace/ace-step\\\",\\n \\\"duration\\\": 60\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ace/ace-step\\\",\\n \\\"duration\\\": 60\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ace/ace-step\\\",\\n \\\"duration\\\": 60\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ace/ace-step\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "ACE-Step" - modelId: "ace/ace-step" - vendor: "ace" - vendorSlug: "ace" - modelSlug: "ace-step" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-08T21:47:06.754Z" - capabilities: ["text-to-audio"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/ace/ace-step/audio-inpaint.md b/model-api-reference/audio-generation/ace/ace-step/audio-inpaint.md deleted file mode 100644 index 65d437a3..00000000 --- a/model-api-reference/audio-generation/ace/ace-step/audio-inpaint.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "ACE-Step API Reference — Ace Ace Step / Audio Inpaint API" -description: "ACE-Step API reference for SandBase. Use model ace/ace-step/audio-inpaint with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/ace/ace-step/audio-inpaint" -apiReferenceJson: "{\"title\":\"ACE-Step\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ace Step Audio Inpaint by ace - advanced AI model for audio-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ace/ace-step/audio-inpaint.\",\"default\":\"ace/ace-step/audio-inpaint\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the audio file to be inpainted.\"},{\"name\":\"lyrics\",\"type\":\"string\",\"required\":false,\"description\":\"Lyrics to be sung in the audio. If not provided or if [inst] or [instrumental] is the content of this field, no lyrics will be sung. Use control structures like [verse], [chorus] and [bridge] to control the structure of the song.\",\"default\":\"\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance scale for the generation.\",\"default\":\"15\",\"constraints\":\"Range: 0 to 200\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If not provided, a random seed will be used.\"},{\"name\":\"guidance_type\",\"type\":\"string\",\"required\":false,\"description\":\"Type of CFG to use for the generation process.\",\"default\":\"apg\",\"constraints\":\"Allowed values: cfg, apg, cfg_star\"},{\"name\":\"tags\",\"type\":\"string\",\"required\":false,\"description\":\"Comma-separated list of genre tags to control the style of the generated audio.\"},{\"name\":\"granularity_scale\",\"type\":\"integer\",\"required\":false,\"description\":\"Granularity scale for the generation process. Higher values can reduce artifacts.\",\"default\":\"10\",\"constraints\":\"Range: -100 to 100\"},{\"name\":\"scheduler\",\"type\":\"string\",\"required\":false,\"description\":\"Scheduler to use for the generation process.\",\"default\":\"euler\",\"constraints\":\"Allowed values: euler, heun\"},{\"name\":\"guidance_interval\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance interval for the generation. 0.5 means only apply guidance in the middle steps (0.25 * infer_steps to 0.75 * infer_steps)\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"minimum_guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Minimum guidance scale for the generation after the decay.\",\"default\":\"3\",\"constraints\":\"Range: 0 to 200\"},{\"name\":\"start_time\",\"type\":\"number\",\"required\":false,\"description\":\"start time in seconds for the inpainting process.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 240\"},{\"name\":\"lyric_guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Lyric guidance scale for the generation.\",\"default\":\"1.5\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"number_of_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of steps to generate the audio.\",\"default\":\"27\",\"constraints\":\"Range: 3 to 60\"},{\"name\":\"variance\",\"type\":\"number\",\"required\":false,\"description\":\"Variance for the inpainting process. Higher values can lead to more diverse results.\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"end_time\",\"type\":\"number\",\"required\":false,\"description\":\"end time in seconds for the inpainting process.\",\"default\":\"30\",\"constraints\":\"Range: 0 to 240\"},{\"name\":\"guidance_interval_decay\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance interval decay for the generation. Guidance scale will decay from guidance_scale to min_guidance_scale in the interval. 0.0 means no decay.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"start_time_relative_to\",\"type\":\"string\",\"required\":false,\"description\":\"Whether the start time is relative to the start or end of the audio.\",\"default\":\"start\",\"constraints\":\"Allowed values: start, end\"},{\"name\":\"tag_guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Tag guidance scale for the generation.\",\"default\":\"5\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"end_time_relative_to\",\"type\":\"string\",\"required\":false,\"description\":\"Whether the end time is relative to the start or end of the audio.\",\"default\":\"start\",\"constraints\":\"Allowed values: start, end\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ace/ace-step/audio-inpaint\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/ace/ace-step/audio-inpaint/input_audio_0.wav\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ace/ace-step/audio-inpaint\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/ace/ace-step/audio-inpaint/input_audio_0.wav\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ace/ace-step/audio-inpaint\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/ace/ace-step/audio-inpaint/input_audio_0.wav\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ace/ace-step/audio-inpaint\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "ACE-Step" - modelId: "ace/ace-step/audio-inpaint" - vendor: "ace" - vendorSlug: "ace" - modelSlug: "ace-step/audio-inpaint" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-11T17:55:55.827Z" - capabilities: ["audio-to-audio"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/ace/ace-step/audio-outpaint.md b/model-api-reference/audio-generation/ace/ace-step/audio-outpaint.md deleted file mode 100644 index a92b981c..00000000 --- a/model-api-reference/audio-generation/ace/ace-step/audio-outpaint.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "ACE-Step Audio Outpaint API Reference" -description: "ACE-Step Audio Outpaint API reference for SandBase. Use model ace/ace-step/audio-outpaint with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/ace/ace-step/audio-outpaint" -apiReferenceJson: "{\"title\":\"ACE-Step Audio Outpaint\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ace Step Audio Outpaint by ace - advanced AI model for audio-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ace/ace-step/audio-outpaint.\",\"default\":\"ace/ace-step/audio-outpaint\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the audio file to be outpainted.\"},{\"name\":\"lyrics\",\"type\":\"string\",\"required\":false,\"description\":\"Lyrics to be sung in the audio. If not provided or if [inst] or [instrumental] is the content of this field, no lyrics will be sung. Use control structures like [verse], [chorus] and [bridge] to control the structure of the song.\",\"default\":\"\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If not provided, a random seed will be used.\"},{\"name\":\"tags\",\"type\":\"string\",\"required\":false,\"description\":\"Comma-separated list of genre tags to control the style of the generated audio.\"},{\"name\":\"granularity_scale\",\"type\":\"integer\",\"required\":false,\"description\":\"Granularity scale for the generation process. Higher values can reduce artifacts.\",\"default\":\"10\",\"constraints\":\"Range: -100 to 100\"},{\"name\":\"extend_before_duration\",\"type\":\"number\",\"required\":false,\"description\":\"Duration in seconds to extend the audio from the start.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 240\"},{\"name\":\"tag_guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Tag guidance scale for the generation.\",\"default\":\"5\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"guidance_type\",\"type\":\"string\",\"required\":false,\"description\":\"Type of CFG to use for the generation process.\",\"default\":\"apg\",\"constraints\":\"Allowed values: cfg, apg, cfg_star\"},{\"name\":\"guidance_interval\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance interval for the generation. 0.5 means only apply guidance in the middle steps (0.25 * infer_steps to 0.75 * infer_steps)\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"minimum_guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Minimum guidance scale for the generation after the decay.\",\"default\":\"3\",\"constraints\":\"Range: 0 to 200\"},{\"name\":\"lyric_guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Lyric guidance scale for the generation.\",\"default\":\"1.5\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"number_of_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of steps to generate the audio.\",\"default\":\"27\",\"constraints\":\"Range: 3 to 60\"},{\"name\":\"extend_after_duration\",\"type\":\"number\",\"required\":false,\"description\":\"Duration in seconds to extend the audio from the end.\",\"default\":\"30\",\"constraints\":\"Range: 0 to 240\"},{\"name\":\"guidance_interval_decay\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance interval decay for the generation. Guidance scale will decay from guidance_scale to min_guidance_scale in the interval. 0.0 means no decay.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"15\",\"constraints\":\"Range: 0 to 200\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ace/ace-step/audio-outpaint\\\",\\n \\\"audio\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/ace-step-audio-to-audio.wav\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ace/ace-step/audio-outpaint\\\",\\n \\\"audio\\\": \\\"https://storage.googleapis.com/Falserverless/example_inputs/ace-step-audio-to-audio.wav\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ace/ace-step/audio-outpaint\\\",\\n \\\"audio\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/ace-step-audio-to-audio.wav\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ace/ace-step/audio-outpaint\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "ACE-Step Audio Outpaint" - modelId: "ace/ace-step/audio-outpaint" - vendor: "ace" - vendorSlug: "ace" - modelSlug: "ace-step/audio-outpaint" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-11T17:57:21.159Z" - capabilities: ["audio-to-audio"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/ace/ace-step/audio-to-audio.md b/model-api-reference/audio-generation/ace/ace-step/audio-to-audio.md deleted file mode 100644 index d05d133b..00000000 --- a/model-api-reference/audio-generation/ace/ace-step/audio-to-audio.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "ACE-Step API Reference — Ace Ace Step / Audio To Audio API" -description: "ACE-Step API reference for SandBase. Use model ace/ace-step/audio-to-audio with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/ace/ace-step/audio-to-audio" -apiReferenceJson: "{\"title\":\"ACE-Step\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ace Step Audio To Audio by ace - advanced AI model for audio-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ace/ace-step/audio-to-audio.\",\"default\":\"ace/ace-step/audio-to-audio\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the audio file to be outpainted.\"},{\"name\":\"lyrics\",\"type\":\"string\",\"required\":false,\"description\":\"Lyrics to be sung in the audio. If not provided or if [inst] or [instrumental] is the content of this field, no lyrics will be sung. Use control structures like [verse], [chorus] and [bridge] to control the structure of the song.\",\"default\":\"\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance scale for the generation.\",\"default\":\"15\",\"constraints\":\"Range: 0 to 200\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If not provided, a random seed will be used.\"},{\"name\":\"minimum_guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Minimum guidance scale for the generation after the decay.\",\"default\":\"3\",\"constraints\":\"Range: 0 to 200\"},{\"name\":\"tag_guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Tag guidance scale for the generation.\",\"default\":\"5\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"lyric_guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Lyric guidance scale for the generation.\",\"default\":\"1.5\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"edit_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Whether to edit the lyrics only or remix the audio.\",\"default\":\"remix\",\"constraints\":\"Allowed values: lyrics, remix\"},{\"name\":\"guidance_interval\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance interval for the generation. 0.5 means only apply guidance in the middle steps (0.25 * infer_steps to 0.75 * infer_steps)\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"original_seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Original seed of the audio file.\"},{\"name\":\"scheduler\",\"type\":\"string\",\"required\":false,\"description\":\"Scheduler to use for the generation process.\",\"default\":\"euler\",\"constraints\":\"Allowed values: euler, heun\"},{\"name\":\"granularity_scale\",\"type\":\"integer\",\"required\":false,\"description\":\"Granularity scale for the generation process. Higher values can reduce artifacts.\",\"default\":\"10\",\"constraints\":\"Range: -100 to 100\"},{\"name\":\"guidance_type\",\"type\":\"string\",\"required\":false,\"description\":\"Type of CFG to use for the generation process.\",\"default\":\"apg\",\"constraints\":\"Allowed values: cfg, apg, cfg_star\"},{\"name\":\"original_lyrics\",\"type\":\"string\",\"required\":false,\"description\":\"Original lyrics of the audio file.\",\"default\":\"\"},{\"name\":\"original_tags\",\"type\":\"string\",\"required\":false,\"description\":\"Original tags of the audio file.\"},{\"name\":\"guidance_interval_decay\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance interval decay for the generation. Guidance scale will decay from guidance_scale to min_guidance_scale in the interval. 0.0 means no decay.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"number_of_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of steps to generate the audio.\",\"default\":\"27\",\"constraints\":\"Range: 3 to 60\"},{\"name\":\"tags\",\"type\":\"string\",\"required\":false,\"description\":\"Comma-separated list of genre tags to control the style of the generated audio.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ace/ace-step/audio-to-audio\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/ace/ace-step/audio-to-audio/input_audio_0.wav\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ace/ace-step/audio-to-audio\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/ace/ace-step/audio-to-audio/input_audio_0.wav\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ace/ace-step/audio-to-audio\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/ace/ace-step/audio-to-audio/input_audio_0.wav\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ace/ace-step/audio-to-audio\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "ACE-Step" - modelId: "ace/ace-step/audio-to-audio" - vendor: "ace" - vendorSlug: "ace" - modelSlug: "ace-step/audio-to-audio" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-11T17:53:31.579Z" - capabilities: ["audio-to-audio"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/ace/ace-step/prompt-to-audio.md b/model-api-reference/audio-generation/ace/ace-step/prompt-to-audio.md deleted file mode 100644 index d8f31bc4..00000000 --- a/model-api-reference/audio-generation/ace/ace-step/prompt-to-audio.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "ACE-Step API Reference — Ace Ace Step / Prompt To Audio API" -description: "ACE-Step API reference for SandBase. Use model ace/ace-step/prompt-to-audio with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/ace/ace-step/prompt-to-audio" -apiReferenceJson: "{\"title\":\"ACE-Step\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ace Step Prompt To Audio by ace - generate music, sound effects, and audio from text descriptions with AI. Create original compositions, ambient sounds, and audio content for any creative project.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ace/ace-step/prompt-to-audio.\",\"default\":\"ace/ace-step/prompt-to-audio\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Prompt to control the style of the generated audio. This will be used to generate tags and lyrics.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated audio in seconds.\",\"default\":\"60\",\"constraints\":\"Range: 5 to 240\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance scale for the generation.\",\"default\":\"15\",\"constraints\":\"Range: 0 to 200\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If not provided, a random seed will be used.\"},{\"name\":\"guidance_type\",\"type\":\"string\",\"required\":false,\"description\":\"Type of CFG to use for the generation process.\",\"default\":\"apg\",\"constraints\":\"Allowed values: cfg, apg, cfg_star\"},{\"name\":\"granularity_scale\",\"type\":\"integer\",\"required\":false,\"description\":\"Granularity scale for the generation process. Higher values can reduce artifacts.\",\"default\":\"10\",\"constraints\":\"Range: -100 to 100\"},{\"name\":\"number_of_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of steps to generate the audio.\",\"default\":\"27\",\"constraints\":\"Range: 3 to 60\"},{\"name\":\"lyric_guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Lyric guidance scale for the generation.\",\"default\":\"1.5\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"instrumental\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate an instrumental version of the audio.\",\"default\":\"false\"},{\"name\":\"tag_guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Tag guidance scale for the generation.\",\"default\":\"5\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"guidance_interval_decay\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance interval decay for the generation. Guidance scale will decay from guidance_scale to min_guidance_scale in the interval. 0.0 means no decay.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"scheduler\",\"type\":\"string\",\"required\":false,\"description\":\"Scheduler to use for the generation process.\",\"default\":\"euler\",\"constraints\":\"Allowed values: euler, heun\"},{\"name\":\"guidance_interval\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance interval for the generation. 0.5 means only apply guidance in the middle steps (0.25 * infer_steps to 0.75 * infer_steps)\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"minimum_guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Minimum guidance scale for the generation after the decay.\",\"default\":\"3\",\"constraints\":\"Range: 0 to 200\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ace/ace-step/prompt-to-audio\\\",\\n \\\"prompt\\\": \\\"A lofi hiphop song with a chill vibe about a sunny day on the boardwalk.\\\",\\n \\\"duration\\\": 60\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ace/ace-step/prompt-to-audio\\\",\\n \\\"prompt\\\": \\\"A lofi hiphop song with a chill vibe about a sunny day on the boardwalk.\\\",\\n \\\"duration\\\": 60\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ace/ace-step/prompt-to-audio\\\",\\n \\\"prompt\\\": \\\"A lofi hiphop song with a chill vibe about a sunny day on the boardwalk.\\\",\\n \\\"duration\\\": 60\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ace/ace-step/prompt-to-audio\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "ACE-Step" - modelId: "ace/ace-step/prompt-to-audio" - vendor: "ace" - vendorSlug: "ace" - modelSlug: "ace-step/prompt-to-audio" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-11T17:51:47.356Z" - capabilities: ["text-to-audio"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/alibaba/qwen-3-tts/0.6b.md b/model-api-reference/audio-generation/alibaba/qwen-3-tts/0.6b.md index 52dd8775..d472b311 100644 --- a/model-api-reference/audio-generation/alibaba/qwen-3-tts/0.6b.md +++ b/model-api-reference/audio-generation/alibaba/qwen-3-tts/0.6b.md @@ -4,7 +4,7 @@ description: "Qwen 3 TTS - Text to Speech [0.6B] API reference for SandBase. Use aside: false outline: false apiReferenceKey: "audio/alibaba/qwen-3-tts/0.6b" -apiReferenceJson: "{\"title\":\"Qwen 3 TTS - Text to Speech [0.6B]\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen 3 TTS 0.6b is Alibaba's text-to-speech AI model. Generate human-like voiceovers with expressive intonation, multilingual support, and customizable voice characteristics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-3-tts/0.6b.\",\"default\":\"alibaba/qwen-3-tts/0.6b\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Optional prompt to guide the style of the generated speech. This prompt will be ignored if a speaker embedding is provided.\"},{\"name\":\"text\",\"type\":\"string\",\"required\":false,\"description\":\"The text to be converted to speech.\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Top-p sampling parameter.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"subtalker_top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Top-p for sub-talker sampling.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"voice\",\"type\":\"string\",\"required\":false,\"description\":\"The voice to be used for speech synthesis, will be ignored if a speaker embedding is provided. Check out the **[documentation](https://github.com/QwenLM/Qwen3-TTS/tree/main?tab=readme-ov-file#custom-voice-generate)** for each voice's details and which language they primarily support.\",\"constraints\":\"Allowed values: Vivian, Serena, Uncle_Fu, Dylan, Eric, Ryan, Aiden, Ono_Anna, Sohee\"},{\"name\":\"repetition_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalty to reduce repeated tokens/codes.\",\"default\":\"1.05\",\"constraints\":\"Minimum: 0\"},{\"name\":\"subtalker_top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Top-k for sub-talker sampling.\",\"default\":\"50\",\"constraints\":\"Minimum: 0\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Top-k sampling parameter.\",\"default\":\"50\",\"constraints\":\"Minimum: 0\"},{\"name\":\"reference_text\",\"type\":\"string\",\"required\":false,\"description\":\"Optional reference text that was used when creating the speaker embedding. Providing this can improve synthesis quality when using a cloned voice.\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature; higher => more random.\",\"default\":\"0.9\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"max_new_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of new codec tokens to generate.\",\"default\":\"200\",\"constraints\":\"Range: 1 to 8192\"},{\"name\":\"language\",\"type\":\"string\",\"required\":false,\"description\":\"The language of the voice.\",\"default\":\"Auto\",\"constraints\":\"Allowed values: Auto, English, Chinese, Spanish, French, German, Italian, Japanese, Korean, Portuguese, Russian\"},{\"name\":\"subtalker_dosample\",\"type\":\"boolean\",\"required\":false,\"description\":\"Sampling switch for the sub-talker.\",\"default\":\"true\"},{\"name\":\"subtalker_temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Temperature for sub-talker sampling.\",\"default\":\"0.9\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"speaker_voice_embedding_file_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL to a speaker embedding file in safetensors format, from `fal-ai/qwen-3-tts/clone-voice/0.6b` endpoint. If provided, the TTS model will use the cloned voice for synthesis instead of the predefined voices.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/0.6b\\\",\\n \\\"prompt\\\": \\\"Very happy.\\\",\\n \\\"text\\\": \\\"I feel like I'm taking crazy pills! How can something be both a square and a circle at the same time? It defies all logic!\\\",\\n \\\"voice\\\": \\\"Vivian\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/0.6b\\\",\\n \\\"prompt\\\": \\\"Very happy.\\\",\\n \\\"text\\\": \\\"I feel like I'm taking crazy pills! How can something be both a square and a circle at the same time? It defies all logic!\\\",\\n \\\"voice\\\": \\\"Vivian\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/0.6b\\\",\\n \\\"prompt\\\": \\\"Very happy.\\\",\\n \\\"text\\\": \\\"I feel like I'm taking crazy pills! How can something be both a square and a circle at the same time? It defies all logic!\\\",\\n \\\"voice\\\": \\\"Vivian\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/0.6b\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Qwen 3 TTS - Text to Speech [0.6B]\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen 3 Tts 0.6b is Alibaba's text-to-speech AI model. Generate human-like voiceovers with expressive intonation, multilingual support, and customizable voice characteristics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-3-tts/0.6b.\",\"default\":\"alibaba/qwen-3-tts/0.6b\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Optional prompt to guide the style of the generated speech. This prompt will be ignored if a speaker embedding is provided.\"},{\"name\":\"text\",\"type\":\"string\",\"required\":false,\"description\":\"The text to be converted to speech.\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Top-p sampling parameter.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"subtalker_top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Top-p for sub-talker sampling.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"voice\",\"type\":\"string\",\"required\":false,\"description\":\"The voice to be used for speech synthesis, will be ignored if a speaker embedding is provided. Check out the **[documentation](https://github.com/QwenLM/Qwen3-TTS/tree/main?tab=readme-ov-file#custom-voice-generate)** for each voice's details and which language they primarily support.\",\"constraints\":\"Allowed values: Vivian, Serena, Uncle_Fu, Dylan, Eric, Ryan, Aiden, Ono_Anna, Sohee\"},{\"name\":\"repetition_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalty to reduce repeated tokens/codes.\",\"default\":\"1.05\",\"constraints\":\"Minimum: 0\"},{\"name\":\"subtalker_top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Top-k for sub-talker sampling.\",\"default\":\"50\",\"constraints\":\"Minimum: 0\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Top-k sampling parameter.\",\"default\":\"50\",\"constraints\":\"Minimum: 0\"},{\"name\":\"reference_text\",\"type\":\"string\",\"required\":false,\"description\":\"Optional reference text that was used when creating the speaker embedding. Providing this can improve synthesis quality when using a cloned voice.\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature; higher => more random.\",\"default\":\"0.9\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"max_new_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of new codec tokens to generate.\",\"default\":\"200\",\"constraints\":\"Range: 1 to 8192\"},{\"name\":\"language\",\"type\":\"string\",\"required\":false,\"description\":\"The language of the voice.\",\"default\":\"Auto\",\"constraints\":\"Allowed values: Auto, English, Chinese, Spanish, French, German, Italian, Japanese, Korean, Portuguese, Russian\"},{\"name\":\"subtalker_dosample\",\"type\":\"boolean\",\"required\":false,\"description\":\"Sampling switch for the sub-talker.\",\"default\":\"true\"},{\"name\":\"subtalker_temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Temperature for sub-talker sampling.\",\"default\":\"0.9\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"speaker_voice_embedding_file_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL to a speaker embedding file in safetensors format, from `fal-ai/qwen-3-tts/clone-voice/0.6b` endpoint. If provided, the TTS model will use the cloned voice for synthesis instead of the predefined voices.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/0.6b\\\",\\n \\\"prompt\\\": \\\"Very happy.\\\",\\n \\\"text\\\": \\\"I feel like I'm taking crazy pills! How can something be both a square and a circle at the same time? It defies all logic!\\\",\\n \\\"voice\\\": \\\"Vivian\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/0.6b\\\",\\n \\\"prompt\\\": \\\"Very happy.\\\",\\n \\\"text\\\": \\\"I feel like I'm taking crazy pills! How can something be both a square and a circle at the same time? It defies all logic!\\\",\\n \\\"voice\\\": \\\"Vivian\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/0.6b\\\",\\n \\\"prompt\\\": \\\"Very happy.\\\",\\n \\\"text\\\": \\\"I feel like I'm taking crazy pills! How can something be both a square and a circle at the same time? It defies all logic!\\\",\\n \\\"voice\\\": \\\"Vivian\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/0.6b\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Qwen 3 TTS - Text to Speech [0.6B]" modelId: "alibaba/qwen-3-tts/0.6b" diff --git a/model-api-reference/audio-generation/alibaba/qwen-3-tts/1.7b.md b/model-api-reference/audio-generation/alibaba/qwen-3-tts/1.7b.md index 6a123355..26d4e8c8 100644 --- a/model-api-reference/audio-generation/alibaba/qwen-3-tts/1.7b.md +++ b/model-api-reference/audio-generation/alibaba/qwen-3-tts/1.7b.md @@ -4,7 +4,7 @@ description: "Qwen 3 TTS - Text to Speech [1.7B] API reference for SandBase. Use aside: false outline: false apiReferenceKey: "audio/alibaba/qwen-3-tts/1.7b" -apiReferenceJson: "{\"title\":\"Qwen 3 TTS - Text to Speech [1.7B]\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen 3 TTS 1.7b is Alibaba's text-to-speech AI model. Generate human-like voiceovers with expressive intonation, multilingual support, and customizable voice characteristics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-3-tts/1.7b.\",\"default\":\"alibaba/qwen-3-tts/1.7b\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Optional prompt to guide the style of the generated speech. This prompt will be ignored if a speaker embedding is provided.\"},{\"name\":\"text\",\"type\":\"string\",\"required\":false,\"description\":\"The text to be converted to speech.\"},{\"name\":\"subtalker_temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Temperature for sub-talker sampling.\",\"default\":\"0.9\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"speaker_voice_embedding_file_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL to a speaker embedding file in safetensors format, from `fal-ai/qwen-3-tts/clone-voice` endpoint. If provided, the TTS model will use the cloned voice for synthesis instead of the predefined voices.\"},{\"name\":\"repetition_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalty to reduce repeated tokens/codes.\",\"default\":\"1.05\",\"constraints\":\"Minimum: 0\"},{\"name\":\"language\",\"type\":\"string\",\"required\":false,\"description\":\"The language of the voice.\",\"default\":\"Auto\",\"constraints\":\"Allowed values: Auto, English, Chinese, Spanish, French, German, Italian, Japanese, Korean, Portuguese, Russian\"},{\"name\":\"subtalker_top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Top-p for sub-talker sampling.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Top-p sampling parameter.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"reference_text\",\"type\":\"string\",\"required\":false,\"description\":\"Optional reference text that was used when creating the speaker embedding. Providing this can improve synthesis quality when using a cloned voice.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Top-k sampling parameter.\",\"default\":\"50\",\"constraints\":\"Minimum: 0\"},{\"name\":\"subtalker_top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Top-k for sub-talker sampling.\",\"default\":\"50\",\"constraints\":\"Minimum: 0\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature; higher => more random.\",\"default\":\"0.9\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"voice\",\"type\":\"string\",\"required\":false,\"description\":\"The voice to be used for speech synthesis, will be ignored if a speaker embedding is provided. Check out the **[documentation](https://github.com/QwenLM/Qwen3-TTS/tree/main?tab=readme-ov-file#custom-voice-generate)** for each voice's details and which language they primarily support.\",\"constraints\":\"Allowed values: Vivian, Serena, Uncle_Fu, Dylan, Eric, Ryan, Aiden, Ono_Anna, Sohee\"},{\"name\":\"max_new_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of new codec tokens to generate.\",\"default\":\"200\",\"constraints\":\"Range: 1 to 8192\"},{\"name\":\"subtalker_dosample\",\"type\":\"boolean\",\"required\":false,\"description\":\"Sampling switch for the sub-talker.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/1.7b\\\",\\n \\\"prompt\\\": \\\"Very happy.\\\",\\n \\\"text\\\": \\\"I am solving the equation: x = [-b ± √(b²-4ac)] / 2a? Nobody can — it's a disaster (◍•͈⌔•͈◍), very sad!\\\",\\n \\\"voice\\\": \\\"Vivian\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/1.7b\\\",\\n \\\"prompt\\\": \\\"Very happy.\\\",\\n \\\"text\\\": \\\"I am solving the equation: x = [-b ± √(b²-4ac)] / 2a? Nobody can — it's a disaster (◍•͈⌔•͈◍), very sad!\\\",\\n \\\"voice\\\": \\\"Vivian\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/1.7b\\\",\\n \\\"prompt\\\": \\\"Very happy.\\\",\\n \\\"text\\\": \\\"I am solving the equation: x = [-b ± √(b²-4ac)] / 2a? Nobody can — it's a disaster (◍•͈⌔•͈◍), very sad!\\\",\\n \\\"voice\\\": \\\"Vivian\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/1.7b\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Qwen 3 TTS - Text to Speech [1.7B]\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen 3 Tts 1.7b is Alibaba's text-to-speech AI model. Generate human-like voiceovers with expressive intonation, multilingual support, and customizable voice characteristics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-3-tts/1.7b.\",\"default\":\"alibaba/qwen-3-tts/1.7b\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Optional prompt to guide the style of the generated speech. This prompt will be ignored if a speaker embedding is provided.\"},{\"name\":\"text\",\"type\":\"string\",\"required\":false,\"description\":\"The text to be converted to speech.\"},{\"name\":\"subtalker_temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Temperature for sub-talker sampling.\",\"default\":\"0.9\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"speaker_voice_embedding_file_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL to a speaker embedding file in safetensors format, from `fal-ai/qwen-3-tts/clone-voice` endpoint. If provided, the TTS model will use the cloned voice for synthesis instead of the predefined voices.\"},{\"name\":\"repetition_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalty to reduce repeated tokens/codes.\",\"default\":\"1.05\",\"constraints\":\"Minimum: 0\"},{\"name\":\"language\",\"type\":\"string\",\"required\":false,\"description\":\"The language of the voice.\",\"default\":\"Auto\",\"constraints\":\"Allowed values: Auto, English, Chinese, Spanish, French, German, Italian, Japanese, Korean, Portuguese, Russian\"},{\"name\":\"subtalker_top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Top-p for sub-talker sampling.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Top-p sampling parameter.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"reference_text\",\"type\":\"string\",\"required\":false,\"description\":\"Optional reference text that was used when creating the speaker embedding. Providing this can improve synthesis quality when using a cloned voice.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Top-k sampling parameter.\",\"default\":\"50\",\"constraints\":\"Minimum: 0\"},{\"name\":\"subtalker_top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Top-k for sub-talker sampling.\",\"default\":\"50\",\"constraints\":\"Minimum: 0\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature; higher => more random.\",\"default\":\"0.9\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"voice\",\"type\":\"string\",\"required\":false,\"description\":\"The voice to be used for speech synthesis, will be ignored if a speaker embedding is provided. Check out the **[documentation](https://github.com/QwenLM/Qwen3-TTS/tree/main?tab=readme-ov-file#custom-voice-generate)** for each voice's details and which language they primarily support.\",\"constraints\":\"Allowed values: Vivian, Serena, Uncle_Fu, Dylan, Eric, Ryan, Aiden, Ono_Anna, Sohee\"},{\"name\":\"max_new_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of new codec tokens to generate.\",\"default\":\"200\",\"constraints\":\"Range: 1 to 8192\"},{\"name\":\"subtalker_dosample\",\"type\":\"boolean\",\"required\":false,\"description\":\"Sampling switch for the sub-talker.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/1.7b\\\",\\n \\\"prompt\\\": \\\"Very happy.\\\",\\n \\\"text\\\": \\\"I am solving the equation: x = [-b ± √(b²-4ac)] / 2a? Nobody can — it's a disaster (◍•͈⌔•͈◍), very sad!\\\",\\n \\\"voice\\\": \\\"Vivian\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/1.7b\\\",\\n \\\"prompt\\\": \\\"Very happy.\\\",\\n \\\"text\\\": \\\"I am solving the equation: x = [-b ± √(b²-4ac)] / 2a? Nobody can — it's a disaster (◍•͈⌔•͈◍), very sad!\\\",\\n \\\"voice\\\": \\\"Vivian\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/1.7b\\\",\\n \\\"prompt\\\": \\\"Very happy.\\\",\\n \\\"text\\\": \\\"I am solving the equation: x = [-b ± √(b²-4ac)] / 2a? Nobody can — it's a disaster (◍•͈⌔•͈◍), very sad!\\\",\\n \\\"voice\\\": \\\"Vivian\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/1.7b\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Qwen 3 TTS - Text to Speech [1.7B]" modelId: "alibaba/qwen-3-tts/1.7b" diff --git a/model-api-reference/audio-generation/alibaba/qwen-3-tts/clone-voice/0.6b.md b/model-api-reference/audio-generation/alibaba/qwen-3-tts/clone-voice/0.6b.md deleted file mode 100644 index b61c1be8..00000000 --- a/model-api-reference/audio-generation/alibaba/qwen-3-tts/clone-voice/0.6b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen 3 TTS - Clone Voice [0.6B] API Reference" -description: "Qwen 3 TTS - Clone Voice [0.6B] API reference for SandBase. Use model alibaba/qwen-3-tts/clone-voice/0.6b with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/alibaba/qwen-3-tts/clone-voice/0.6b" -apiReferenceJson: "{\"title\":\"Qwen 3 TTS - Clone Voice [0.6B]\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen 3 TTS Clone Voice 0.6b by Alibaba - advanced AI model for audio-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-3-tts/clone-voice/0.6b.\",\"default\":\"alibaba/qwen-3-tts/clone-voice/0.6b\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL to the reference audio file used for voice cloning.\"},{\"name\":\"reference_text\",\"type\":\"string\",\"required\":false,\"description\":\"Optional reference text that was used when creating the speaker embedding. Providing this can improve synthesis quality when using a cloned voice.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/clone-voice/0.6b\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-3-tts/clone-voice/0.6b/input_audio_0.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/clone-voice/0.6b\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-3-tts/clone-voice/0.6b/input_audio_0.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/clone-voice/0.6b\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-3-tts/clone-voice/0.6b/input_audio_0.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/clone-voice/0.6b\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen 3 TTS - Clone Voice [0.6B]" - modelId: "alibaba/qwen-3-tts/clone-voice/0.6b" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-3-tts/clone-voice/0.6b" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-26T16:19:27.641Z" - capabilities: ["audio-to-audio"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/alibaba/qwen-3-tts/clone-voice/1.7b.md b/model-api-reference/audio-generation/alibaba/qwen-3-tts/clone-voice/1.7b.md deleted file mode 100644 index 80129c11..00000000 --- a/model-api-reference/audio-generation/alibaba/qwen-3-tts/clone-voice/1.7b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen 3 TTS - Clone Voice [1.7B] API Reference" -description: "Qwen 3 TTS - Clone Voice [1.7B] API reference for SandBase. Use model alibaba/qwen-3-tts/clone-voice/1.7b with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/alibaba/qwen-3-tts/clone-voice/1.7b" -apiReferenceJson: "{\"title\":\"Qwen 3 TTS - Clone Voice [1.7B]\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen 3 TTS Clone Voice 1.7b by Alibaba - advanced AI model for audio-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-3-tts/clone-voice/1.7b.\",\"default\":\"alibaba/qwen-3-tts/clone-voice/1.7b\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL to the reference audio file used for voice cloning.\"},{\"name\":\"reference_text\",\"type\":\"string\",\"required\":false,\"description\":\"Optional reference text that was used when creating the speaker embedding. Providing this can improve synthesis quality when using a cloned voice.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/clone-voice/1.7b\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-3-tts/clone-voice/1.7b/input_audio_0.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/clone-voice/1.7b\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-3-tts/clone-voice/1.7b/input_audio_0.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/clone-voice/1.7b\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-3-tts/clone-voice/1.7b/input_audio_0.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/clone-voice/1.7b\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen 3 TTS - Clone Voice [1.7B]" - modelId: "alibaba/qwen-3-tts/clone-voice/1.7b" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-3-tts/clone-voice/1.7b" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-26T16:20:48.076Z" - capabilities: ["audio-to-audio"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/alibaba/qwen-3-tts/voice-design/1.7b.md b/model-api-reference/audio-generation/alibaba/qwen-3-tts/voice-design/1.7b.md deleted file mode 100644 index a12ca8d1..00000000 --- a/model-api-reference/audio-generation/alibaba/qwen-3-tts/voice-design/1.7b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen 3 TTS - Voice Design [1.7B] API Reference" -description: "Qwen 3 TTS - Voice Design [1.7B] API reference for SandBase. Use model alibaba/qwen-3-tts/voice-design/1.7b with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/alibaba/qwen-3-tts/voice-design/1.7b" -apiReferenceJson: "{\"title\":\"Qwen 3 TTS - Voice Design [1.7B]\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen 3 TTS Voice Design 1.7b by Alibaba - convert text to natural-sounding speech with AI. Supports multiple voices, languages, emotions, and speaking styles for content creation and accessibility.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-3-tts/voice-design/1.7b.\",\"default\":\"alibaba/qwen-3-tts/voice-design/1.7b\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Optional prompt to guide the style of the generated speech.\"},{\"name\":\"text\",\"type\":\"string\",\"required\":false,\"description\":\"The text to be converted to speech.\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Top-p sampling parameter.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"subtalker_top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Top-k for sub-talker sampling.\",\"default\":\"50\",\"constraints\":\"Minimum: 0\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Top-k sampling parameter.\",\"default\":\"50\",\"constraints\":\"Minimum: 0\"},{\"name\":\"subtalker_temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Temperature for sub-talker sampling.\",\"default\":\"0.9\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"subtalker_top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Top-p for sub-talker sampling.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"language\",\"type\":\"string\",\"required\":false,\"description\":\"The language of the voice to be designed.\",\"default\":\"Auto\",\"constraints\":\"Allowed values: Auto, English, Chinese, Spanish, French, German, Italian, Japanese, Korean, Portuguese, Russian\"},{\"name\":\"max_new_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of new codec tokens to generate.\",\"default\":\"200\",\"constraints\":\"Range: 1 to 8192\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature; higher => more random.\",\"default\":\"0.9\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"subtalker_dosample\",\"type\":\"boolean\",\"required\":false,\"description\":\"Sampling switch for the sub-talker.\",\"default\":\"true\"},{\"name\":\"repetition_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalty to reduce repeated tokens/codes.\",\"default\":\"1.05\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/voice-design/1.7b\\\",\\n \\\"prompt\\\": \\\"Speak in an incredulous tone, but with a hint of panic beginning to creep into your voice.\\\",\\n \\\"text\\\": \\\"It's in the top drawer... wait, it's empty? No way, that's impossible! I'm sure I put it there!\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/voice-design/1.7b\\\",\\n \\\"prompt\\\": \\\"Speak in an incredulous tone, but with a hint of panic beginning to creep into your voice.\\\",\\n \\\"text\\\": \\\"It's in the top drawer... wait, it's empty? No way, that's impossible! I'm sure I put it there!\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/voice-design/1.7b\\\",\\n \\\"prompt\\\": \\\"Speak in an incredulous tone, but with a hint of panic beginning to creep into your voice.\\\",\\n \\\"text\\\": \\\"It's in the top drawer... wait, it's empty? No way, that's impossible! I'm sure I put it there!\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-3-tts/voice-design/1.7b\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen 3 TTS - Voice Design [1.7B]" - modelId: "alibaba/qwen-3-tts/voice-design/1.7b" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-3-tts/voice-design/1.7b" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-26T16:28:35.599Z" - capabilities: ["text-to-speech"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/bytedance/seed-speech/tts/2.0.md b/model-api-reference/audio-generation/bytedance/seed-speech/tts/2.0.md index 3626d38d..88c31672 100644 --- a/model-api-reference/audio-generation/bytedance/seed-speech/tts/2.0.md +++ b/model-api-reference/audio-generation/bytedance/seed-speech/tts/2.0.md @@ -1,14 +1,14 @@ --- -title: "ByteDance Seed Speech Text to Speech API Reference" -description: "ByteDance Seed Speech Text to Speech API reference for SandBase. Use model bytedance/seed-speech/tts/2.0 with /v1/run; see request and response examples." +title: "Bytedance Seed Speech Text to Speech API Reference" +description: "Bytedance Seed Speech Text to Speech API reference for SandBase. Use model bytedance/seed-speech/tts/2.0 with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "audio/bytedance/seed-speech/tts/2.0" -apiReferenceJson: "{\"title\":\"ByteDance Seed Speech Text to Speech\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seed Speech TTS 2.0 is ByteDance's text-to-speech AI model. Generate human-like voiceovers with expressive intonation, multilingual support, and customizable voice characteristics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seed-speech/tts/2.0.\",\"default\":\"bytedance/seed-speech/tts/2.0\"},{\"name\":\"text\",\"type\":\"string\",\"required\":false,\"description\":\"The text to synthesize into speech.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output audio format. 'mp3' returns MP3 audio; 'opus' returns Opus audio in an Ogg container.\",\"default\":\"mp3\",\"constraints\":\"Allowed values: mp3, opus\"},{\"name\":\"sample_rate\",\"type\":\"integer\",\"required\":false,\"description\":\"Sample rate of the output audio in Hz.\",\"default\":\"24000\",\"constraints\":\"Allowed values: 8000, 16000, 22050, 24000, 32000, 44100, 48000\"},{\"name\":\"volume\",\"type\":\"number\",\"required\":false,\"description\":\"Volume. 1.0 is normal volume, 0.5 is half, 2.0 is double.\",\"default\":\"1\",\"constraints\":\"Range: 0.5 to 2\"},{\"name\":\"voice\",\"type\":\"string\",\"required\":false,\"description\":\"Voice to use for synthesis. The preset name encodes the voice and its supported language codes. 'mixed_en_zh' means the voice can seamlessly blend English and Chinese; separate codes (e.g. 'en_zh') mean the voice supports each language independently.\",\"default\":\"stokie_en\",\"constraints\":\"Allowed values: vivi_mixed_en_zh_ja_es_id, mindy_en_es_id_pt_zh, stokie_en, dacey_en, tim_en, kian_en_zh, cedric_en_zh, sophie_en_zh, jean_en_zh, magnus_en_zh, mabel_en_zh, nadia_en_zh, opal_en_zh, pearl_en_zh, quentin_en_zh, vienna_mixed_en_zh, alina_mixed_en_zh, corinne_mixed_en_zh, esther_mixed_en_zh, freya_mixed_en_zh, gigi_mixed_en_zh, holly_mixed_en_zh, lyla_mixed_en_zh, daisy_mixed_en_zh, tracy_es_zh, jess_ja_es_id_pt_en_zh, pinky_es_ko_mixed_en_zh, sweety_ja_es, sandy_es_mixed_en_zh, sven_de, minimi_ja, usseau_fr, felipe_es, han_id, martins_pt, enzo_it, shane_ko, bonnie_zh, felix_zh, celeste_zh, monkey_king_zh\"},{\"name\":\"pitch\",\"type\":\"integer\",\"required\":false,\"description\":\"Voice pitch shift in semitones. 0 is normal pitch, -12 lowers by one octave, 12 raises by one octave.\",\"default\":\"0\",\"constraints\":\"Range: -12 to 12\"},{\"name\":\"language\",\"type\":\"string\",\"required\":false,\"description\":\"Force the text to be read as a single language, disabling automatic language detection. Leave unset for automatic detection (including seamless Chinese/English mixing on bilingual voices). Codes: zh (Chinese), en (English), ja (Japanese), es-mx (Mexican Spanish), id (Indonesian), pt-br (Brazilian Portuguese), ko (Korean), it (Italian), de (German), fr (French).\",\"constraints\":\"Allowed values: zh, en, ja, es-mx, id, pt-br, ko, it, de, fr\"},{\"name\":\"voice_instruction\",\"type\":\"string\",\"required\":false,\"description\":\"Optional natural-language instruction that steers the delivery (tone, emotion, pace, volume), e.g. 'Speak in a cheerful tone' or 'Could you speak a bit slower?'. It is not spoken aloud and does not affect billing.\"},{\"name\":\"speed\",\"type\":\"number\",\"required\":false,\"description\":\"Speech speed. 1.0 is normal speed, 0.5 is half speed, 2.0 is double speed.\",\"default\":\"1\",\"constraints\":\"Range: 0.5 to 2\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seed-speech/tts/2.0\\\",\\n \\\"text\\\": \\\"Hello, this is a test of ByteDance TTS 2.0 speech synthesis.\\\",\\n \\\"output_format\\\": \\\"mp3\\\",\\n \\\"voice\\\": \\\"stokie_en\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seed-speech/tts/2.0\\\",\\n \\\"text\\\": \\\"Hello, this is a test of ByteDance TTS 2.0 speech synthesis.\\\",\\n \\\"output_format\\\": \\\"mp3\\\",\\n \\\"voice\\\": \\\"stokie_en\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seed-speech/tts/2.0\\\",\\n \\\"text\\\": \\\"Hello, this is a test of ByteDance TTS 2.0 speech synthesis.\\\",\\n \\\"output_format\\\": \\\"mp3\\\",\\n \\\"voice\\\": \\\"stokie_en\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seed-speech/tts/2.0\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bytedance Seed Speech Text to Speech\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seed Speech Tts 2.0 is ByteDance's text-to-speech AI model. Generate human-like voiceovers with expressive intonation, multilingual support, and customizable voice characteristics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seed-speech/tts/2.0.\",\"default\":\"bytedance/seed-speech/tts/2.0\"},{\"name\":\"text\",\"type\":\"string\",\"required\":false,\"description\":\"The text to synthesize into speech.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output audio format. 'mp3' returns MP3 audio; 'opus' returns Opus audio in an Ogg container.\",\"default\":\"mp3\",\"constraints\":\"Allowed values: mp3, opus\"},{\"name\":\"sample_rate\",\"type\":\"integer\",\"required\":false,\"description\":\"Sample rate of the output audio in Hz.\",\"default\":\"24000\",\"constraints\":\"Allowed values: 8000, 16000, 22050, 24000, 32000, 44100, 48000\"},{\"name\":\"volume\",\"type\":\"number\",\"required\":false,\"description\":\"Volume. 1.0 is normal volume, 0.5 is half, 2.0 is double.\",\"default\":\"1\",\"constraints\":\"Range: 0.5 to 2\"},{\"name\":\"voice\",\"type\":\"string\",\"required\":false,\"description\":\"Voice to use for synthesis. The preset name encodes the voice and its supported language codes. 'mixed_en_zh' means the voice can seamlessly blend English and Chinese; separate codes (e.g. 'en_zh') mean the voice supports each language independently.\",\"default\":\"stokie_en\",\"constraints\":\"Allowed values: vivi_mixed_en_zh_ja_es_id, mindy_en_es_id_pt_zh, stokie_en, dacey_en, tim_en, kian_en_zh, cedric_en_zh, sophie_en_zh, jean_en_zh, magnus_en_zh, mabel_en_zh, nadia_en_zh, opal_en_zh, pearl_en_zh, quentin_en_zh, vienna_mixed_en_zh, alina_mixed_en_zh, corinne_mixed_en_zh, esther_mixed_en_zh, freya_mixed_en_zh, gigi_mixed_en_zh, holly_mixed_en_zh, lyla_mixed_en_zh, daisy_mixed_en_zh, tracy_es_zh, jess_ja_es_id_pt_en_zh, pinky_es_ko_mixed_en_zh, sweety_ja_es, sandy_es_mixed_en_zh, sven_de, minimi_ja, usseau_fr, felipe_es, han_id, martins_pt, enzo_it, shane_ko, bonnie_zh, felix_zh, celeste_zh, monkey_king_zh\"},{\"name\":\"pitch\",\"type\":\"integer\",\"required\":false,\"description\":\"Voice pitch shift in semitones. 0 is normal pitch, -12 lowers by one octave, 12 raises by one octave.\",\"default\":\"0\",\"constraints\":\"Range: -12 to 12\"},{\"name\":\"language\",\"type\":\"string\",\"required\":false,\"description\":\"Force the text to be read as a single language, disabling automatic language detection. Leave unset for automatic detection (including seamless Chinese/English mixing on bilingual voices). Codes: zh (Chinese), en (English), ja (Japanese), es-mx (Mexican Spanish), id (Indonesian), pt-br (Brazilian Portuguese), ko (Korean), it (Italian), de (German), fr (French).\",\"constraints\":\"Allowed values: zh, en, ja, es-mx, id, pt-br, ko, it, de, fr\"},{\"name\":\"voice_instruction\",\"type\":\"string\",\"required\":false,\"description\":\"Optional natural-language instruction that steers the delivery (tone, emotion, pace, volume), e.g. 'Speak in a cheerful tone' or 'Could you speak a bit slower?'. It is not spoken aloud and does not affect billing.\"},{\"name\":\"speed\",\"type\":\"number\",\"required\":false,\"description\":\"Speech speed. 1.0 is normal speed, 0.5 is half speed, 2.0 is double speed.\",\"default\":\"1\",\"constraints\":\"Range: 0.5 to 2\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seed-speech/tts/2.0\\\",\\n \\\"text\\\": \\\"Hello, this is a test of ByteDance TTS 2.0 speech synthesis.\\\",\\n \\\"output_format\\\": \\\"mp3\\\",\\n \\\"voice\\\": \\\"stokie_en\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seed-speech/tts/2.0\\\",\\n \\\"text\\\": \\\"Hello, this is a test of ByteDance TTS 2.0 speech synthesis.\\\",\\n \\\"output_format\\\": \\\"mp3\\\",\\n \\\"voice\\\": \\\"stokie_en\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seed-speech/tts/2.0\\\",\\n \\\"text\\\": \\\"Hello, this is a test of ByteDance TTS 2.0 speech synthesis.\\\",\\n \\\"output_format\\\": \\\"mp3\\\",\\n \\\"voice\\\": \\\"stokie_en\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seed-speech/tts/2.0\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "ByteDance Seed Speech Text to Speech" + modelName: "Bytedance Seed Speech Text to Speech" modelId: "bytedance/seed-speech/tts/2.0" - vendor: "ByteDance" + vendor: "Bytedance" vendorSlug: "bytedance" modelSlug: "seed-speech/tts/2.0" protocol: "Audio Generation Reference" diff --git a/model-api-reference/audio-generation/elevenlabs/audio-isolation.md b/model-api-reference/audio-generation/elevenlabs/audio-isolation.md deleted file mode 100644 index 34d6fe22..00000000 --- a/model-api-reference/audio-generation/elevenlabs/audio-isolation.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "ElevenLabs Audio Isolation API Reference" -description: "ElevenLabs Audio Isolation API reference for SandBase. Use model elevenlabs/audio-isolation with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/elevenlabs/audio-isolation" -apiReferenceJson: "{\"title\":\"ElevenLabs Audio Isolation\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Audio Isolation by ElevenLabs - advanced AI model for audio-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to elevenlabs/audio-isolation.\",\"default\":\"elevenlabs/audio-isolation\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Video file to use for audio isolation. Either `audio_url` or `video_url` must be provided.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the audio file to isolate voice from\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"elevenlabs/audio-isolation\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/elevenlabs/audio-isolation/output_url_0.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"elevenlabs/audio-isolation\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/elevenlabs/audio-isolation/output_url_0.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"elevenlabs/audio-isolation\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/elevenlabs/audio-isolation/output_url_0.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"elevenlabs/audio-isolation\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "ElevenLabs Audio Isolation" - modelId: "elevenlabs/audio-isolation" - vendor: "ElevenLabs" - vendorSlug: "elevenlabs" - modelSlug: "audio-isolation" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-02-27T00:00:00Z" - capabilities: ["audio-to-audio"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/elevenlabs/music.md b/model-api-reference/audio-generation/elevenlabs/music.md index 02cd7652..7142a6ec 100644 --- a/model-api-reference/audio-generation/elevenlabs/music.md +++ b/model-api-reference/audio-generation/elevenlabs/music.md @@ -1,12 +1,12 @@ --- -title: "Music API Reference" -description: "Music API reference for SandBase. Use model elevenlabs/music with /v1/run; see request and response examples." +title: "ElevenLabs Music API Reference" +description: "ElevenLabs Music API reference for SandBase. Use model elevenlabs/music with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "audio/elevenlabs/music" -apiReferenceJson: "{\"title\":\"Music\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Music is ElevenLabs's AI audio generation model. Produce high-quality music tracks, sound effects, and audio landscapes from natural language prompts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to elevenlabs/music.\",\"default\":\"elevenlabs/music\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the music to generate\"},{\"name\":\"force_instrumental\",\"type\":\"boolean\",\"required\":false,\"description\":\"If true, guarantees that the generated song will be instrumental.\",\"default\":\"false\"},{\"name\":\"music_length_ms\",\"type\":\"integer\",\"required\":false,\"description\":\"The length of the song to generate in milliseconds (3000-600000). If not provided, the model will choose a length based on the prompt.\",\"constraints\":\"Range: 3000 to 600000\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"elevenlabs/music\\\",\\n \\\"prompt\\\": \\\"Mysterious original soundtrack, themes of jungle, rainforest, nature, woodwinds, busy rhythmic tribal percussion.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"elevenlabs/music\\\",\\n \\\"prompt\\\": \\\"Mysterious original soundtrack, themes of jungle, rainforest, nature, woodwinds, busy rhythmic tribal percussion.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"elevenlabs/music\\\",\\n \\\"prompt\\\": \\\"Mysterious original soundtrack, themes of jungle, rainforest, nature, woodwinds, busy rhythmic tribal percussion.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"elevenlabs/music\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"ElevenLabs Music\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Music is ElevenLabs's AI audio generation model. Produce high-quality music tracks, sound effects, and audio landscapes from natural language prompts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to elevenlabs/music.\",\"default\":\"elevenlabs/music\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the music to generate\"},{\"name\":\"force_instrumental\",\"type\":\"boolean\",\"required\":false,\"description\":\"If true, guarantees that the generated song will be instrumental.\",\"default\":\"false\"},{\"name\":\"music_length_ms\",\"type\":\"integer\",\"required\":false,\"description\":\"The length of the song to generate in milliseconds (3000-600000). If not provided, the model will choose a length based on the prompt.\",\"constraints\":\"Range: 3000 to 600000\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-music\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"elevenlabs/music\\\",\\n \\\"prompt\\\": \\\"Mysterious original soundtrack, themes of jungle, rainforest, nature, woodwinds, busy rhythmic tribal percussion.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"elevenlabs/music\\\",\\n \\\"prompt\\\": \\\"Mysterious original soundtrack, themes of jungle, rainforest, nature, woodwinds, busy rhythmic tribal percussion.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"elevenlabs/music\\\",\\n \\\"prompt\\\": \\\"Mysterious original soundtrack, themes of jungle, rainforest, nature, woodwinds, busy rhythmic tribal percussion.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"elevenlabs/music\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Music" + modelName: "ElevenLabs Music" modelId: "elevenlabs/music" vendor: "ElevenLabs" vendorSlug: "elevenlabs" @@ -14,7 +14,7 @@ seo: protocol: "Audio Generation Reference" endpoint: "/v1/run" publishedAt: "2025-12-22T15:22:56.999Z" - capabilities: ["text-to-audio"] + capabilities: ["text-to-music"] category: "Audio Generation" --- diff --git a/model-api-reference/audio-generation/elevenlabs/music/2.5.md b/model-api-reference/audio-generation/elevenlabs/music/2.5.md new file mode 100644 index 00000000..30b013ef --- /dev/null +++ b/model-api-reference/audio-generation/elevenlabs/music/2.5.md @@ -0,0 +1,21 @@ +--- +title: "ElevenLabs Music v2.5 API Reference" +description: "ElevenLabs Music v2.5 API reference for SandBase. Use model elevenlabs/music/2.5 with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "audio/elevenlabs/music/2.5" +apiReferenceJson: "{\"title\":\"ElevenLabs Music v2.5\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"ElevenLabs Music v2.5 generates studio-quality songs and instrumentals with vocals from a text prompt, up to 10 minutes long.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to elevenlabs/music/2.5.\",\"default\":\"elevenlabs/music/2.5\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the music to generate\"},{\"name\":\"force_instrumental\",\"type\":\"boolean\",\"required\":false,\"description\":\"If true, guarantees that the generated song will be instrumental.\",\"default\":\"false\"},{\"name\":\"music_length_ms\",\"type\":\"integer\",\"required\":false,\"description\":\"The length of the song to generate in milliseconds (3000-600000). If not provided, the model will choose a length based on the prompt.\",\"constraints\":\"Range: 3000 to 600000\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-music\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"elevenlabs/music/2.5\\\",\\n \\\"prompt\\\": \\\"Mysterious original soundtrack, themes of jungle, rainforest, nature, woodwinds, busy rhythmic tribal percussion.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"elevenlabs/music/2.5\\\",\\n \\\"prompt\\\": \\\"Mysterious original soundtrack, themes of jungle, rainforest, nature, woodwinds, busy rhythmic tribal percussion.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"elevenlabs/music/2.5\\\",\\n \\\"prompt\\\": \\\"Mysterious original soundtrack, themes of jungle, rainforest, nature, woodwinds, busy rhythmic tribal percussion.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"elevenlabs/music/2.5\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "ElevenLabs Music v2.5" + modelId: "elevenlabs/music/2.5" + vendor: "ElevenLabs" + vendorSlug: "elevenlabs" + modelSlug: "music/2.5" + protocol: "Audio Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-09-14T20:07:43.542Z" + capabilities: ["text-to-music"] + category: "Audio Generation" +--- + + diff --git a/model-api-reference/audio-generation/elevenlabs/music/2.md b/model-api-reference/audio-generation/elevenlabs/music/2.md new file mode 100644 index 00000000..3868842c --- /dev/null +++ b/model-api-reference/audio-generation/elevenlabs/music/2.md @@ -0,0 +1,21 @@ +--- +title: "ElevenLabs Music v2 API Reference" +description: "ElevenLabs Music v2 API reference for SandBase. Use model elevenlabs/music/2 with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "audio/elevenlabs/music/2" +apiReferenceJson: "{\"title\":\"ElevenLabs Music v2\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"ElevenLabs Music v2 generates studio-quality songs and instrumentals with vocals from a text prompt, up to 10 minutes long.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to elevenlabs/music/2.\",\"default\":\"elevenlabs/music/2\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the music to generate\"},{\"name\":\"force_instrumental\",\"type\":\"boolean\",\"required\":false,\"description\":\"If true, guarantees that the generated song will be instrumental.\",\"default\":\"false\"},{\"name\":\"music_length_ms\",\"type\":\"integer\",\"required\":false,\"description\":\"The length of the song to generate in milliseconds (3000-600000). If not provided, the model will choose a length based on the prompt.\",\"constraints\":\"Range: 3000 to 600000\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-music\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"elevenlabs/music/2\\\",\\n \\\"prompt\\\": \\\"Mysterious original soundtrack, themes of jungle, rainforest, nature, woodwinds, busy rhythmic tribal percussion.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"elevenlabs/music/2\\\",\\n \\\"prompt\\\": \\\"Mysterious original soundtrack, themes of jungle, rainforest, nature, woodwinds, busy rhythmic tribal percussion.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"elevenlabs/music/2\\\",\\n \\\"prompt\\\": \\\"Mysterious original soundtrack, themes of jungle, rainforest, nature, woodwinds, busy rhythmic tribal percussion.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"elevenlabs/music/2\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "ElevenLabs Music v2" + modelId: "elevenlabs/music/2" + vendor: "ElevenLabs" + vendorSlug: "elevenlabs" + modelSlug: "music/2" + protocol: "Audio Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-09-14T20:07:31.11Z" + capabilities: ["text-to-music"] + category: "Audio Generation" +--- + + diff --git a/model-api-reference/audio-generation/elevenlabs/v4-turbo.md b/model-api-reference/audio-generation/elevenlabs/v4-turbo.md new file mode 100644 index 00000000..fab3199f --- /dev/null +++ b/model-api-reference/audio-generation/elevenlabs/v4-turbo.md @@ -0,0 +1,21 @@ +--- +title: "ElevenLabs Eleven v4 Turbo API Reference" +description: "ElevenLabs Eleven v4 Turbo API reference for SandBase. Use model elevenlabs/v4-turbo with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "audio/elevenlabs/v4-turbo" +apiReferenceJson: "{\"title\":\"ElevenLabs Eleven v4 Turbo\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Eleven v4 Turbo is the low-latency tier of ElevenLabs' v4 text-to-speech generation, for real-time and high-volume narration.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to elevenlabs/v4-turbo.\",\"default\":\"elevenlabs/v4-turbo\"},{\"name\":\"text\",\"type\":\"string\",\"required\":true,\"description\":\"The text to convert to speech. Supports audio tags such as [whispering] and IPA pronunciation enclosed in forward slashes.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format of the generated audio. Formatted as codec_sample_rate_bitrate.\",\"default\":\"mp3_44100_128\",\"constraints\":\"Allowed values: mp3_22050_32, mp3_44100_32, mp3_44100_64, mp3_44100_96, mp3_44100_128, mp3_44100_192, opus_48000_32, opus_48000_64, opus_48000_96, opus_48000_128, opus_48000_192\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for best-effort reproducibility. Identical output is not guaranteed.\",\"constraints\":\"Range: 0 to 4294967295\"},{\"name\":\"stability\",\"type\":\"number\",\"required\":false,\"description\":\"Voice stability. Lower values allow more expressive delivery; higher values make delivery more consistent.\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"similarity_boost\",\"type\":\"number\",\"required\":false,\"description\":\"How closely the output follows the reference voice. Higher values increase similarity but may reduce naturalness.\",\"default\":\"0.75\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"apply_text_normalization\",\"type\":\"string\",\"required\":false,\"description\":\"Whether to normalize text such as numbers and dates before generation.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, on, off\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"Language code (ISO 639-1) for speech generation and text normalization.\"},{\"name\":\"timestamps\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to return character-level timing information with the generated audio.\",\"default\":\"false\"},{\"name\":\"voice\",\"type\":\"string\",\"required\":false,\"description\":\"The voice to use for speech generation\",\"default\":\"Rachel\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"elevenlabs/v4-turbo\\\",\\n \\\"text\\\": \\\"[excited] Hello! Welcome to Eleven v4.\\\",\\n \\\"output_format\\\": \\\"mp3_44100_128\\\",\\n \\\"voice\\\": \\\"Rachel\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"elevenlabs/v4-turbo\\\",\\n \\\"text\\\": \\\"[excited] Hello! Welcome to Eleven v4.\\\",\\n \\\"output_format\\\": \\\"mp3_44100_128\\\",\\n \\\"voice\\\": \\\"Rachel\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"elevenlabs/v4-turbo\\\",\\n \\\"text\\\": \\\"[excited] Hello! Welcome to Eleven v4.\\\",\\n \\\"output_format\\\": \\\"mp3_44100_128\\\",\\n \\\"voice\\\": \\\"Rachel\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"elevenlabs/v4-turbo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "ElevenLabs Eleven v4 Turbo" + modelId: "elevenlabs/v4-turbo" + vendor: "ElevenLabs" + vendorSlug: "elevenlabs" + modelSlug: "v4-turbo" + protocol: "Audio Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-09-28T17:46:16.574Z" + capabilities: ["text-to-speech"] + category: "Audio Generation" +--- + + diff --git a/model-api-reference/audio-generation/elevenlabs/v4.md b/model-api-reference/audio-generation/elevenlabs/v4.md new file mode 100644 index 00000000..e14879cd --- /dev/null +++ b/model-api-reference/audio-generation/elevenlabs/v4.md @@ -0,0 +1,21 @@ +--- +title: "ElevenLabs Eleven v4 API Reference" +description: "ElevenLabs Eleven v4 API reference for SandBase. Use model elevenlabs/v4 with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "audio/elevenlabs/v4" +apiReferenceJson: "{\"title\":\"ElevenLabs Eleven v4\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Eleven v4 is ElevenLabs' most expressive text-to-speech model, with natural pacing, emotion and multilingual delivery.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to elevenlabs/v4.\",\"default\":\"elevenlabs/v4\"},{\"name\":\"text\",\"type\":\"string\",\"required\":true,\"description\":\"The text to convert to speech. Supports audio tags such as [whispering] and IPA pronunciation enclosed in forward slashes.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format of the generated audio. Formatted as codec_sample_rate_bitrate.\",\"default\":\"mp3_44100_128\",\"constraints\":\"Allowed values: mp3_22050_32, mp3_44100_32, mp3_44100_64, mp3_44100_96, mp3_44100_128, mp3_44100_192, opus_48000_32, opus_48000_64, opus_48000_96, opus_48000_128, opus_48000_192\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for best-effort reproducibility. Identical output is not guaranteed.\",\"constraints\":\"Range: 0 to 4294967295\"},{\"name\":\"similarity_boost\",\"type\":\"number\",\"required\":false,\"description\":\"How closely the output follows the reference voice. Higher values increase similarity but may reduce naturalness.\",\"default\":\"0.75\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"Language code (ISO 639-1) for speech generation and text normalization.\"},{\"name\":\"apply_text_normalization\",\"type\":\"string\",\"required\":false,\"description\":\"Whether to normalize text such as numbers and dates before generation.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, on, off\"},{\"name\":\"stability\",\"type\":\"number\",\"required\":false,\"description\":\"Voice stability. Lower values allow more expressive delivery; higher values make delivery more consistent.\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"voice\",\"type\":\"string\",\"required\":false,\"description\":\"The voice to use for speech generation\",\"default\":\"Rachel\"},{\"name\":\"timestamps\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to return character-level timing information with the generated audio.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"elevenlabs/v4\\\",\\n \\\"text\\\": \\\"[excited] Hello! Welcome to Eleven v4.\\\",\\n \\\"output_format\\\": \\\"mp3_44100_128\\\",\\n \\\"voice\\\": \\\"Rachel\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"elevenlabs/v4\\\",\\n \\\"text\\\": \\\"[excited] Hello! Welcome to Eleven v4.\\\",\\n \\\"output_format\\\": \\\"mp3_44100_128\\\",\\n \\\"voice\\\": \\\"Rachel\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"elevenlabs/v4\\\",\\n \\\"text\\\": \\\"[excited] Hello! Welcome to Eleven v4.\\\",\\n \\\"output_format\\\": \\\"mp3_44100_128\\\",\\n \\\"voice\\\": \\\"Rachel\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"elevenlabs/v4\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "ElevenLabs Eleven v4" + modelId: "elevenlabs/v4" + vendor: "ElevenLabs" + vendorSlug: "elevenlabs" + modelSlug: "v4" + protocol: "Audio Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-09-28T17:45:23.835Z" + capabilities: ["text-to-speech"] + category: "Audio Generation" +--- + + diff --git a/model-api-reference/audio-generation/elevenlabs/voice-changer.md b/model-api-reference/audio-generation/elevenlabs/voice-changer.md deleted file mode 100644 index 35394f2b..00000000 --- a/model-api-reference/audio-generation/elevenlabs/voice-changer.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Voice Changer API Reference" -description: "Voice Changer API reference for SandBase. Use model elevenlabs/voice-changer with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/elevenlabs/voice-changer" -apiReferenceJson: "{\"title\":\"Voice Changer\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Voice Changer by ElevenLabs - advanced AI model for audio-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to elevenlabs/voice-changer.\",\"default\":\"elevenlabs/voice-changer\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The input audio file\"},{\"name\":\"voice\",\"type\":\"string\",\"required\":false,\"description\":\"The voice to use for speech generation\",\"default\":\"Rachel\"},{\"name\":\"remove_background_noise\",\"type\":\"boolean\",\"required\":false,\"description\":\"If set, will remove the background noise from your audio input using our audio isolation model.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"elevenlabs/voice-changer\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/elevenlabs/voice-changer/input_audio_0.mp3\\\",\\n \\\"voice\\\": \\\"Rachel\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"elevenlabs/voice-changer\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/elevenlabs/voice-changer/input_audio_0.mp3\\\",\\n \\\"voice\\\": \\\"Rachel\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"elevenlabs/voice-changer\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/elevenlabs/voice-changer/input_audio_0.mp3\\\",\\n \\\"voice\\\": \\\"Rachel\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"elevenlabs/voice-changer\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Voice Changer" - modelId: "elevenlabs/voice-changer" - vendor: "ElevenLabs" - vendorSlug: "elevenlabs" - modelSlug: "voice-changer" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-14T14:50:03.869Z" - capabilities: ["audio-to-audio"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/google/gemini-3.1-flash-tts.md b/model-api-reference/audio-generation/google/gemini-3.1-flash-tts.md index ca401798..344bf477 100644 --- a/model-api-reference/audio-generation/google/gemini-3.1-flash-tts.md +++ b/model-api-reference/audio-generation/google/gemini-3.1-flash-tts.md @@ -4,7 +4,7 @@ description: "Gemini 3.1 Flash TTS API reference for SandBase. Use model google/ aside: false outline: false apiReferenceKey: "audio/google/gemini-3.1-flash-tts" -apiReferenceJson: "{\"title\":\"Gemini 3.1 Flash TTS\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gemini 3.1 Flash TTS by Google - convert text to natural-sounding speech with AI. Supports multiple voices, languages, emotions, and speaking styles for content creation and accessibility.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3.1-flash-tts.\",\"default\":\"google/gemini-3.1-flash-tts\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text to convert to speech. Gemini 3.1 Flash TTS supports natural-language prompting for style, pace, accent, and emotional expression — include delivery instructions inline with the text (e.g. 'Say cheerfully: Have a wonderful day!'). Supports expressive audio tags like [sigh], [laughing], [whispering], [short pause] for fine-grained control over delivery. For multi-speaker synthesis, prefix lines with speaker aliases defined in the speakers field (e.g. 'Alice: Hello!\\\\nBob: Hi!').\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Audio output format. mp3: compressed, small file size (recommended). wav: uncompressed PCM wrapped in WAV (24 kHz, 16-bit mono). ogg_opus: Ogg container with Opus codec, good quality-to-size ratio.\",\"default\":\"mp3\",\"constraints\":\"Allowed values: wav, mp3, ogg_opus\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Controls the randomness of the speech output. Higher values produce more creative and varied delivery, while lower values make the output more predictable and focused.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"speakers\",\"type\":\"array\",\"required\":false,\"description\":\"Multi-speaker voice configuration. When set, enables multi-speaker synthesis where different parts of the text are spoken by different voices. Each speaker needs a voice and a speaker_id (alias) that matches prefixes in the prompt.\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"Language for multilingual synthesis. When set, steers the model to speak in the specified language. If not set, the model auto-detects the language from the text.\",\"constraints\":\"Allowed values: Arabic (Egypt), Bangla (Bangladesh), Dutch (Netherlands), English (India), English (US), French (France), German (Germany), Hindi (India), Indonesian (Indonesia), Italian (Italy), Japanese (Japan), Korean (South Korea), Marathi (India), Polish (Poland), Portuguese (Brazil), Romanian (Romania), Russian (Russia), Spanish (Spain), Tamil (India), Telugu (India), Thai (Thailand), Turkish (Turkey), Ukrainian (Ukraine), Vietnamese (Vietnam), Afrikaans (South Africa), Albanian (Albania), Amharic (Ethiopia), Arabic (World), Armenian (Armenia), Azerbaijani (Azerbaijan), Basque (Spain), Belarusian (Belarus), Bulgarian (Bulgaria), Burmese (Myanmar), Catalan (Spain), Cebuano (Philippines), Chinese Mandarin (China), Chinese Mandarin (Taiwan), Croatian (Croatia), Czech (Czech Republic), Danish (Denmark), English (Australia), English (UK), Estonian (Estonia), Filipino (Philippines), Finnish (Finland), French (Canada), Galician (Spain), Georgian (Georgia), Greek (Greece), Gujarati (India), Haitian Creole (Haiti), Hebrew (Israel), Hungarian (Hungary), Icelandic (Iceland), Javanese (Java), Kannada (India), Konkani (India), Lao (Laos), Latin (Vatican City), Latvian (Latvia), Lithuanian (Lithuania), Luxembourgish (Luxembourg), Macedonian (North Macedonia), Maithili (India), Malagasy (Madagascar), Malay (Malaysia), Malayalam (India), Mongolian (Mongolia), Nepali (Nepal), Norwegian Bokmal (Norway), Norwegian Nynorsk (Norway), Odia (India), Pashto (Afghanistan), Persian (Iran), Portuguese (Portugal), Punjabi (India), Serbian (Serbia), Sindhi (India), Sinhala (Sri Lanka), Slovak (Slovakia), Slovenian (Slovenia), Spanish (Latin America), Spanish (Mexico), Swahili (Kenya), Swedish (Sweden), Urdu (Pakistan)\"},{\"name\":\"voice\",\"type\":\"string\",\"required\":false,\"description\":\"Voice preset for single-speaker synthesis. 30 distinct voices are available. Ignored when speakers is set. Popular choices: Kore (strong, firm female), Puck (upbeat, lively male), Charon (calm, professional male), Zephyr (bright, clear female), Aoede (warm, melodic female).\",\"default\":\"Kore\",\"constraints\":\"Allowed values: Achernar, Achird, Algenib, Algieba, Alnilam, Aoede, Autonoe, Callirrhoe, Charon, Despina, Enceladus, Erinome, Fenrir, Gacrux, Iapetus, Kore, Laomedeia, Leda, Orus, Pulcherrima, Puck, Rasalgethi, Sadachbia, Sadaltager, Schedar, Sulafat, Umbriel, Vindemiatrix, Zephyr, Zubenelgenubi\"},{\"name\":\"style_instructions\",\"type\":\"string\",\"required\":false,\"description\":\"Optional style and delivery instructions prepended to the prompt. Controls expressiveness, accent, pace, tone, and emotional expression using natural language. Use this to separate style control from the text content. Examples: 'Speak warmly and slowly', 'Read this as a dramatic newscast', 'Use a British accent with a cheerful tone', 'Whisper mysteriously'.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3.1-flash-tts\\\",\\n \\\"prompt\\\": \\\"I can't believe it worked! [laughing] After all those hours of debugging [sigh] it was just a missing semicolon.\\\",\\n \\\"output_format\\\": \\\"mp3\\\",\\n \\\"voice\\\": \\\"Kore\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/gemini-3.1-flash-tts\\\",\\n \\\"prompt\\\": \\\"I can't believe it worked! [laughing] After all those hours of debugging [sigh] it was just a missing semicolon.\\\",\\n \\\"output_format\\\": \\\"mp3\\\",\\n \\\"voice\\\": \\\"Kore\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/gemini-3.1-flash-tts\\\",\\n \\\"prompt\\\": \\\"I can't believe it worked! [laughing] After all those hours of debugging [sigh] it was just a missing semicolon.\\\",\\n \\\"output_format\\\": \\\"mp3\\\",\\n \\\"voice\\\": \\\"Kore\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/gemini-3.1-flash-tts\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Gemini 3.1 Flash TTS\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gemini 3.1 Flash Tts by Google - convert text to natural-sounding speech with AI. Supports multiple voices, languages, emotions, and speaking styles for content creation and accessibility.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3.1-flash-tts.\",\"default\":\"google/gemini-3.1-flash-tts\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text to convert to speech. Gemini 3.1 Flash TTS supports natural-language prompting for style, pace, accent, and emotional expression — include delivery instructions inline with the text (e.g. 'Say cheerfully: Have a wonderful day!'). Supports expressive audio tags like [sigh], [laughing], [whispering], [short pause] for fine-grained control over delivery. For multi-speaker synthesis, prefix lines with speaker aliases defined in the speakers field (e.g. 'Alice: Hello!\\\\nBob: Hi!').\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Audio output format. mp3: compressed, small file size (recommended). wav: uncompressed PCM wrapped in WAV (24 kHz, 16-bit mono). ogg_opus: Ogg container with Opus codec, good quality-to-size ratio.\",\"default\":\"mp3\",\"constraints\":\"Allowed values: wav, mp3, ogg_opus\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Controls the randomness of the speech output. Higher values produce more creative and varied delivery, while lower values make the output more predictable and focused.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"speakers\",\"type\":\"array\",\"required\":false,\"description\":\"Multi-speaker voice configuration. When set, enables multi-speaker synthesis where different parts of the text are spoken by different voices. Each speaker needs a voice and a speaker_id (alias) that matches prefixes in the prompt.\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"Language for multilingual synthesis. When set, steers the model to speak in the specified language. If not set, the model auto-detects the language from the text.\",\"constraints\":\"Allowed values: Arabic (Egypt), Bangla (Bangladesh), Dutch (Netherlands), English (India), English (US), French (France), German (Germany), Hindi (India), Indonesian (Indonesia), Italian (Italy), Japanese (Japan), Korean (South Korea), Marathi (India), Polish (Poland), Portuguese (Brazil), Romanian (Romania), Russian (Russia), Spanish (Spain), Tamil (India), Telugu (India), Thai (Thailand), Turkish (Turkey), Ukrainian (Ukraine), Vietnamese (Vietnam), Afrikaans (South Africa), Albanian (Albania), Amharic (Ethiopia), Arabic (World), Armenian (Armenia), Azerbaijani (Azerbaijan), Basque (Spain), Belarusian (Belarus), Bulgarian (Bulgaria), Burmese (Myanmar), Catalan (Spain), Cebuano (Philippines), Chinese Mandarin (China), Chinese Mandarin (Taiwan), Croatian (Croatia), Czech (Czech Republic), Danish (Denmark), English (Australia), English (UK), Estonian (Estonia), Filipino (Philippines), Finnish (Finland), French (Canada), Galician (Spain), Georgian (Georgia), Greek (Greece), Gujarati (India), Haitian Creole (Haiti), Hebrew (Israel), Hungarian (Hungary), Icelandic (Iceland), Javanese (Java), Kannada (India), Konkani (India), Lao (Laos), Latin (Vatican City), Latvian (Latvia), Lithuanian (Lithuania), Luxembourgish (Luxembourg), Macedonian (North Macedonia), Maithili (India), Malagasy (Madagascar), Malay (Malaysia), Malayalam (India), Mongolian (Mongolia), Nepali (Nepal), Norwegian Bokmal (Norway), Norwegian Nynorsk (Norway), Odia (India), Pashto (Afghanistan), Persian (Iran), Portuguese (Portugal), Punjabi (India), Serbian (Serbia), Sindhi (India), Sinhala (Sri Lanka), Slovak (Slovakia), Slovenian (Slovenia), Spanish (Latin America), Spanish (Mexico), Swahili (Kenya), Swedish (Sweden), Urdu (Pakistan)\"},{\"name\":\"voice\",\"type\":\"string\",\"required\":false,\"description\":\"Voice preset for single-speaker synthesis. 30 distinct voices are available. Ignored when speakers is set. Popular choices: Kore (strong, firm female), Puck (upbeat, lively male), Charon (calm, professional male), Zephyr (bright, clear female), Aoede (warm, melodic female).\",\"default\":\"Kore\",\"constraints\":\"Allowed values: Achernar, Achird, Algenib, Algieba, Alnilam, Aoede, Autonoe, Callirrhoe, Charon, Despina, Enceladus, Erinome, Fenrir, Gacrux, Iapetus, Kore, Laomedeia, Leda, Orus, Pulcherrima, Puck, Rasalgethi, Sadachbia, Sadaltager, Schedar, Sulafat, Umbriel, Vindemiatrix, Zephyr, Zubenelgenubi\"},{\"name\":\"style_instructions\",\"type\":\"string\",\"required\":false,\"description\":\"Optional style and delivery instructions prepended to the prompt. Controls expressiveness, accent, pace, tone, and emotional expression using natural language. Use this to separate style control from the text content. Examples: 'Speak warmly and slowly', 'Read this as a dramatic newscast', 'Use a British accent with a cheerful tone', 'Whisper mysteriously'.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3.1-flash-tts\\\",\\n \\\"prompt\\\": \\\"I can't believe it worked! [laughing] After all those hours of debugging [sigh] it was just a missing semicolon.\\\",\\n \\\"output_format\\\": \\\"mp3\\\",\\n \\\"voice\\\": \\\"Kore\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/gemini-3.1-flash-tts\\\",\\n \\\"prompt\\\": \\\"I can't believe it worked! [laughing] After all those hours of debugging [sigh] it was just a missing semicolon.\\\",\\n \\\"output_format\\\": \\\"mp3\\\",\\n \\\"voice\\\": \\\"Kore\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/gemini-3.1-flash-tts\\\",\\n \\\"prompt\\\": \\\"I can't believe it worked! [laughing] After all those hours of debugging [sigh] it was just a missing semicolon.\\\",\\n \\\"output_format\\\": \\\"mp3\\\",\\n \\\"voice\\\": \\\"Kore\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/gemini-3.1-flash-tts\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Gemini 3.1 Flash TTS" modelId: "google/gemini-3.1-flash-tts" diff --git a/model-api-reference/audio-generation/google/gemini-3.8-flash-lite-tts.md b/model-api-reference/audio-generation/google/gemini-3.8-flash-lite-tts.md new file mode 100644 index 00000000..393a589f --- /dev/null +++ b/model-api-reference/audio-generation/google/gemini-3.8-flash-lite-tts.md @@ -0,0 +1,21 @@ +--- +title: "Gemini 3.8 Flash Lite TTS API Reference" +description: "Gemini 3.8 Flash Lite TTS API reference for SandBase. Use model google/gemini-3.8-flash-lite-tts with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "audio/google/gemini-3.8-flash-lite-tts" +apiReferenceJson: "{\"title\":\"Gemini 3.8 Flash Lite TTS\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gemini 3.8 Flash Lite TTS by Google turns text into expressive speech with 30 prebuilt voices and natural-language style direction.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3.8-flash-lite-tts.\",\"default\":\"google/gemini-3.8-flash-lite-tts\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Verbatim text to speak. Put delivery directions in style_instructions; inline vocal events may use or . The provider limits the complete input to 8,192 tokens.\"},{\"name\":\"style_instructions\",\"type\":\"string\",\"required\":false,\"description\":\"Delivery style, separate from the spoken transcript.\"},{\"name\":\"voice\",\"type\":\"string\",\"required\":false,\"description\":\"Prebuilt voice for single-speaker speech.\",\"default\":\"Kore\",\"constraints\":\"Allowed values: Achernar, Achird, Algenib, Algieba, Alnilam, Aoede, Autonoe, Callirrhoe, Charon, Despina, Enceladus, Erinome, Fenrir, Gacrux, Iapetus, Kore, Laomedeia, Leda, Orus, Pulcherrima, Puck, Rasalgethi, Sadachbia, Sadaltager, Schedar, Sulafat, Umbriel, Vindemiatrix, Zephyr, Zubenelgenubi\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3.8-flash-lite-tts\\\",\\n \\\"prompt\\\": \\\"Have a wonderful day!\\\",\\n \\\"voice\\\": \\\"Kore\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/gemini-3.8-flash-lite-tts\\\",\\n \\\"prompt\\\": \\\"Have a wonderful day!\\\",\\n \\\"voice\\\": \\\"Kore\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/gemini-3.8-flash-lite-tts\\\",\\n \\\"prompt\\\": \\\"Have a wonderful day!\\\",\\n \\\"voice\\\": \\\"Kore\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/gemini-3.8-flash-lite-tts\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Gemini 3.8 Flash Lite TTS" + modelId: "google/gemini-3.8-flash-lite-tts" + vendor: "Google" + vendorSlug: "google" + modelSlug: "gemini-3.8-flash-lite-tts" + protocol: "Audio Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-09-25T19:10:26.969Z" + capabilities: ["text-to-speech"] + category: "Audio Generation" +--- + + diff --git a/model-api-reference/audio-generation/google/gemini-3.8-flash-tts.md b/model-api-reference/audio-generation/google/gemini-3.8-flash-tts.md new file mode 100644 index 00000000..f8b5ba4c --- /dev/null +++ b/model-api-reference/audio-generation/google/gemini-3.8-flash-tts.md @@ -0,0 +1,21 @@ +--- +title: "Gemini 3.8 Flash TTS API Reference" +description: "Gemini 3.8 Flash TTS API reference for SandBase. Use model google/gemini-3.8-flash-tts with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "audio/google/gemini-3.8-flash-tts" +apiReferenceJson: "{\"title\":\"Gemini 3.8 Flash TTS\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gemini 3.8 Flash TTS by Google turns text into expressive speech with 30 prebuilt voices and natural-language style direction.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3.8-flash-tts.\",\"default\":\"google/gemini-3.8-flash-tts\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Verbatim text to speak. Put delivery directions in style_instructions; inline vocal events may use or . The provider limits the complete input to 8,192 tokens.\"},{\"name\":\"style_instructions\",\"type\":\"string\",\"required\":false,\"description\":\"Delivery style, separate from the spoken transcript.\"},{\"name\":\"voice\",\"type\":\"string\",\"required\":false,\"description\":\"Prebuilt voice for single-speaker speech.\",\"default\":\"Kore\",\"constraints\":\"Allowed values: Achernar, Achird, Algenib, Algieba, Alnilam, Aoede, Autonoe, Callirrhoe, Charon, Despina, Enceladus, Erinome, Fenrir, Gacrux, Iapetus, Kore, Laomedeia, Leda, Orus, Pulcherrima, Puck, Rasalgethi, Sadachbia, Sadaltager, Schedar, Sulafat, Umbriel, Vindemiatrix, Zephyr, Zubenelgenubi\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3.8-flash-tts\\\",\\n \\\"prompt\\\": \\\"Have a wonderful day!\\\",\\n \\\"voice\\\": \\\"Kore\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/gemini-3.8-flash-tts\\\",\\n \\\"prompt\\\": \\\"Have a wonderful day!\\\",\\n \\\"voice\\\": \\\"Kore\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/gemini-3.8-flash-tts\\\",\\n \\\"prompt\\\": \\\"Have a wonderful day!\\\",\\n \\\"voice\\\": \\\"Kore\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/gemini-3.8-flash-tts\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Gemini 3.8 Flash TTS" + modelId: "google/gemini-3.8-flash-tts" + vendor: "Google" + vendorSlug: "google" + modelSlug: "gemini-3.8-flash-tts" + protocol: "Audio Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-09-25T19:10:28.801Z" + capabilities: ["text-to-speech"] + category: "Audio Generation" +--- + + diff --git a/model-api-reference/audio-generation/google/gemini-tts.md b/model-api-reference/audio-generation/google/gemini-tts.md deleted file mode 100644 index f52fe26a..00000000 --- a/model-api-reference/audio-generation/google/gemini-tts.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Gemini TTS API Reference" -description: "Gemini TTS API reference for SandBase. Use model google/gemini-tts with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/google/gemini-tts" -apiReferenceJson: "{\"title\":\"Gemini TTS\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gemini TTS by Google - convert text to natural-sounding speech with AI. Supports multiple voices, languages, emotions, and speaking styles for content creation and accessibility.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-tts.\",\"default\":\"google/gemini-tts\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text to convert to speech. Gemini TTS supports natural-language prompting for style, pace, accent, and emotional expression — include delivery instructions inline with the text (e.g. 'Say cheerfully: Have a wonderful day!'). For multi-speaker synthesis, prefix lines with speaker aliases defined in the speakers field (e.g. 'Alice: Hello!\\\\nBob: Hi!'). Supports inline pace/style markers like [slowly], [whispering], [excited], [extremely fast].\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Audio output format. mp3: compressed, small file size (recommended). wav: uncompressed PCM wrapped in WAV (24 kHz, 16-bit mono). ogg_opus: Ogg container with Opus codec, good quality-to-size ratio.\",\"default\":\"mp3\",\"constraints\":\"Allowed values: wav, mp3, ogg_opus\"},{\"name\":\"style_instructions\",\"type\":\"string\",\"required\":false,\"description\":\"Optional style and delivery instructions prepended to the prompt. Controls expressiveness, accent, pace, tone, and emotional expression using natural language. Use this to separate style control from the text content. Examples: 'Speak warmly and slowly', 'Read this as a dramatic newscast', 'Use a British accent with a cheerful tone', 'Whisper mysteriously'.\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"Language for multilingual synthesis. When set, steers the model to speak in the specified language. Supports 24 GA languages and 60+ Preview languages. If not set, the model auto-detects the language from the text.\",\"constraints\":\"Allowed values: Arabic (Egypt), Bangla (Bangladesh), Dutch (Netherlands), English (India), English (US), French (France), German (Germany), Hindi (India), Indonesian (Indonesia), Italian (Italy), Japanese (Japan), Korean (South Korea), Marathi (India), Polish (Poland), Portuguese (Brazil), Romanian (Romania), Russian (Russia), Spanish (Spain), Tamil (India), Telugu (India), Thai (Thailand), Turkish (Turkey), Ukrainian (Ukraine), Vietnamese (Vietnam), Afrikaans (South Africa), Albanian (Albania), Amharic (Ethiopia), Arabic (World), Armenian (Armenia), Azerbaijani (Azerbaijan), Basque (Spain), Belarusian (Belarus), Bulgarian (Bulgaria), Burmese (Myanmar), Catalan (Spain), Cebuano (Philippines), Chinese Mandarin (China), Chinese Mandarin (Taiwan), Croatian (Croatia), Czech (Czech Republic), Danish (Denmark), English (Australia), English (UK), Estonian (Estonia), Filipino (Philippines), Finnish (Finland), French (Canada), Galician (Spain), Georgian (Georgia), Greek (Greece), Gujarati (India), Haitian Creole (Haiti), Hebrew (Israel), Hungarian (Hungary), Icelandic (Iceland), Javanese (Java), Kannada (India), Konkani (India), Lao (Laos), Latin (Vatican City), Latvian (Latvia), Lithuanian (Lithuania), Luxembourgish (Luxembourg), Macedonian (North Macedonia), Maithili (India), Malagasy (Madagascar), Malay (Malaysia), Malayalam (India), Mongolian (Mongolia), Nepali (Nepal), Norwegian Bokmal (Norway), Norwegian Nynorsk (Norway), Odia (India), Pashto (Afghanistan), Persian (Iran), Portuguese (Portugal), Punjabi (India), Serbian (Serbia), Sindhi (India), Sinhala (Sri Lanka), Slovak (Slovakia), Slovenian (Slovenia), Spanish (Latin America), Spanish (Mexico), Swahili (Kenya), Swedish (Sweden), Urdu (Pakistan)\"},{\"name\":\"speakers\",\"type\":\"array\",\"required\":false,\"description\":\"Multi-speaker voice configuration. When set, enables multi-speaker synthesis where different parts of the text are spoken by different voices. Each speaker needs a voice and a speaker_id (alias) that matches prefixes in the prompt. Requires gemini-2.5-pro-tts or gemini-2.5-flash-tts model. Not supported with gemini-2.5-flash-lite-preview-tts.\"},{\"name\":\"voice\",\"type\":\"string\",\"required\":false,\"description\":\"Voice preset for single-speaker synthesis. 30 distinct voices are available. Ignored when speakers is set. Popular choices: Kore (strong, firm female), Puck (upbeat, lively male), Charon (calm, professional male), Zephyr (bright, clear female), Aoede (warm, melodic female).\",\"default\":\"Kore\",\"constraints\":\"Allowed values: Achernar, Achird, Algenib, Algieba, Alnilam, Aoede, Autonoe, Callirrhoe, Charon, Despina, Enceladus, Erinome, Fenrir, Gacrux, Iapetus, Kore, Laomedeia, Leda, Orus, Pulcherrima, Puck, Rasalgethi, Sadachbia, Sadaltager, Schedar, Sulafat, Umbriel, Vindemiatrix, Zephyr, Zubenelgenubi\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Controls the randomness of the speech output. Higher values produce more creative and varied delivery, while lower values make the output more predictable and focused.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-tts\\\",\\n \\\"prompt\\\": \\\"Host: Welcome back to AI Frontiers, the podcast where we explore the latest breakthroughs in artificial intelligence. Today we have a very special guest. Doctor Chen, thank you for joining us!\\\\nDrChen: Thanks for having me! I'm excited to be here.\\\\nHost: So, let's dive right in. Your recent paper on neural architecture search has been making waves. Can you tell our listeners what inspired this research?\\\\nDrChen: Absolutely. It all started when we noticed that most existing approaches were optimizing for the wrong metrics. We asked ourselves, what if we could let the model design itself?\\\",\\n \\\"output_format\\\": \\\"mp3\\\",\\n \\\"voice\\\": \\\"Kore\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/gemini-tts\\\",\\n \\\"prompt\\\": \\\"Host: Welcome back to AI Frontiers, the podcast where we explore the latest breakthroughs in artificial intelligence. Today we have a very special guest. Doctor Chen, thank you for joining us!\\\\nDrChen: Thanks for having me! I'm excited to be here.\\\\nHost: So, let's dive right in. Your recent paper on neural architecture search has been making waves. Can you tell our listeners what inspired this research?\\\\nDrChen: Absolutely. It all started when we noticed that most existing approaches were optimizing for the wrong metrics. We asked ourselves, what if we could let the model design itself?\\\",\\n \\\"output_format\\\": \\\"mp3\\\",\\n \\\"voice\\\": \\\"Kore\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/gemini-tts\\\",\\n \\\"prompt\\\": \\\"Host: Welcome back to AI Frontiers, the podcast where we explore the latest breakthroughs in artificial intelligence. Today we have a very special guest. Doctor Chen, thank you for joining us!\\\\nDrChen: Thanks for having me! I'm excited to be here.\\\\nHost: So, let's dive right in. Your recent paper on neural architecture search has been making waves. Can you tell our listeners what inspired this research?\\\\nDrChen: Absolutely. It all started when we noticed that most existing approaches were optimizing for the wrong metrics. We asked ourselves, what if we could let the model design itself?\\\",\\n \\\"output_format\\\": \\\"mp3\\\",\\n \\\"voice\\\": \\\"Kore\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/gemini-tts\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Gemini TTS" - modelId: "google/gemini-tts" - vendor: "Google" - vendorSlug: "google" - modelSlug: "gemini-tts" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-20T18:39:43.785Z" - capabilities: ["text-to-speech"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/google/lyria-2.md b/model-api-reference/audio-generation/google/lyria-2.md deleted file mode 100644 index 5184337f..00000000 --- a/model-api-reference/audio-generation/google/lyria-2.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Lyria2 API Reference" -description: "Lyria2 API reference for SandBase. Use model google/lyria-2 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/google/lyria-2" -apiReferenceJson: "{\"title\":\"Lyria2\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Lyria 2 is Google's AI audio generation model. Produce high-quality music tracks, sound effects, and audio landscapes from natural language prompts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/lyria-2.\",\"default\":\"google/lyria-2\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the music you want to generate\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"A seed for deterministic generation. If provided, the model will attempt to produce the same audio given the same prompt and other parameters.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/lyria-2\\\",\\n \\\"prompt\\\": \\\"A lush, ambient soundscape featuring the serene sounds of a flowing river, complemented by the distant chirping of birds, and a gentle, melancholic piano melody that slowly unfolds.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/lyria-2\\\",\\n \\\"prompt\\\": \\\"A lush, ambient soundscape featuring the serene sounds of a flowing river, complemented by the distant chirping of birds, and a gentle, melancholic piano melody that slowly unfolds.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/lyria-2\\\",\\n \\\"prompt\\\": \\\"A lush, ambient soundscape featuring the serene sounds of a flowing river, complemented by the distant chirping of birds, and a gentle, melancholic piano melody that slowly unfolds.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/lyria-2\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Lyria2" - modelId: "google/lyria-2" - vendor: "Google" - vendorSlug: "google" - modelSlug: "lyria-2" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-20T20:05:49.336Z" - capabilities: ["text-to-audio"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/google/lyria-3.5.md b/model-api-reference/audio-generation/google/lyria-3.5.md new file mode 100644 index 00000000..6f8427cc --- /dev/null +++ b/model-api-reference/audio-generation/google/lyria-3.5.md @@ -0,0 +1,21 @@ +--- +title: "Lyria 3.5 API Reference" +description: "Lyria 3.5 API reference for SandBase. Use model google/lyria-3.5 with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "audio/google/lyria-3.5" +apiReferenceJson: "{\"title\":\"Lyria 3.5\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Lyria 3.5 is Google's flagship music generation model for full-length songs up to a few minutes, with verses, choruses, bridges, expressive vocals, timed lyrics, and rich instrumental arrangements. It generates high-quality 44.1kHz stereo audio from a text prompt, optionally guided by an image.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/lyria-3.5.\",\"default\":\"google/lyria-3.5\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the music you want to generate. Include genre, mood, instrumentation, tempo, vocals, and structure. Use duration hints (e.g. 'a 2-minute track') or section markers like '[0:00-0:30] Intro: ...' to control length and structure. Supports English, German, Spanish, French, Hindi, Japanese, Korean, and Portuguese.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional image used as inspiration; the music will match the mood and theme of the image.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-music\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/lyria-3.5\\\",\\n \\\"prompt\\\": \\\"An uplifting indie pop song with bright acoustic guitar, warm female vocals, and a catchy chorus about a summer road trip, 110 BPM.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/lyria-3.5\\\",\\n \\\"prompt\\\": \\\"An uplifting indie pop song with bright acoustic guitar, warm female vocals, and a catchy chorus about a summer road trip, 110 BPM.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/lyria-3.5\\\",\\n \\\"prompt\\\": \\\"An uplifting indie pop song with bright acoustic guitar, warm female vocals, and a catchy chorus about a summer road trip, 110 BPM.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/lyria-3.5\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Lyria 3.5" + modelId: "google/lyria-3.5" + vendor: "Google" + vendorSlug: "google" + modelSlug: "lyria-3.5" + protocol: "Audio Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-09-15T00:00:00Z" + capabilities: ["text-to-music"] + category: "Audio Generation" +--- + + diff --git a/model-api-reference/audio-generation/kwaivgi/kling-tts.md b/model-api-reference/audio-generation/kwaivgi/kling-tts.md deleted file mode 100644 index 6494d667..00000000 --- a/model-api-reference/audio-generation/kwaivgi/kling-tts.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling TTS API Reference" -description: "Kling TTS API reference for SandBase. Use model kwaivgi/kling-tts with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/kwaivgi/kling-tts" -apiReferenceJson: "{\"title\":\"Kling TTS\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling TTS is KwaiVGI's text-to-speech AI model. Generate human-like voiceovers with expressive intonation, multilingual support, and customizable voice characteristics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-tts.\",\"default\":\"kwaivgi/kling-tts\"},{\"name\":\"text\",\"type\":\"string\",\"required\":false,\"description\":\"The text to be converted to speech\"},{\"name\":\"voice_id\",\"type\":\"string\",\"required\":false,\"description\":\"The voice ID to use for speech synthesis\",\"default\":\"genshin_vindi2\",\"constraints\":\"Allowed values: genshin_vindi2, zhinen_xuesheng, AOT, ai_shatang, genshin_klee2, genshin_kirara, ai_kaiya, oversea_male1, ai_chenjiahao_712, girlfriend_4_speech02, chat1_female_new-3, chat_0407_5-1, cartoon-boy-07, uk_boy1, cartoon-girl-01, PeppaPig_platform, ai_huangzhong_712, ai_huangyaoshi_712, ai_laoguowang_712, chengshu_jiejie, you_pingjing, calm_story1, uk_man2, laopopo_speech02, heainainai_speech02, reader_en_m-v1, commercial_lady_en_f-v1, tiyuxi_xuedi, tiexin_nanyou, girlfriend_1_speech02, girlfriend_2_speech02, zhuxi_speech02, uk_oldman3, dongbeilaotie_speech02, chongqingxiaohuo_speech02, chuanmeizi_speech02, chaoshandashu_speech02, ai_taiwan_man2_speech02, xianzhanggui_speech02, tianjinjiejie_speech02, diyinnansang_DB_CN_M_04-v2, yizhipiannan-v1, guanxiaofang-v2, tianmeixuemei-v1, daopianyansang-v1, mengwa-v1\"},{\"name\":\"voice_speed\",\"type\":\"number\",\"required\":false,\"description\":\"Rate of speech\",\"default\":\"1\",\"constraints\":\"Range: 0.8 to 2\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-tts\\\",\\n \\\"text\\\": \\\"Hello world! Kling TTS is available on FAL!\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-tts\\\",\\n \\\"text\\\": \\\"Hello world! Kling TTS is available on FAL!\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-tts\\\",\\n \\\"text\\\": \\\"Hello world! Kling TTS is available on FAL!\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-tts\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling TTS" - modelId: "kwaivgi/kling-tts" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-tts" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-13T07:45:11.363Z" - capabilities: ["text-to-speech"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/kwaivgi/kling-video/video-to-audio.md b/model-api-reference/audio-generation/kwaivgi/kling-video/video-to-audio.md deleted file mode 100644 index 49aa3286..00000000 --- a/model-api-reference/audio-generation/kwaivgi/kling-video/video-to-audio.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Video API Reference" -description: "Kling Video API reference for SandBase. Use model kwaivgi/kling-video/video-to-audio with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/kwaivgi/kling-video/video-to-audio" -apiReferenceJson: "{\"title\":\"Kling Video\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video Video To Audio by KwaiVGI - advanced AI model for video-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/video-to-audio.\",\"default\":\"kwaivgi/kling-video/video-to-audio\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The video URL to extract audio from. Only .mp4/.mov formats are supported. File size does not exceed 100MB. Video duration between 3.0s and 20.0s.\"},{\"name\":\"background_music_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Background music prompt. Cannot exceed 200 characters.\",\"default\":\"intense car race\"},{\"name\":\"asmr_mode\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable ASMR mode. This mode enhances detailed sound effects and is suitable for highly immersive content scenarios.\",\"default\":\"false\"},{\"name\":\"sound_effect_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Sound effect prompt. Cannot exceed 200 characters.\",\"default\":\"Car tires screech as they accelerate in a drag race\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/video-to-audio\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/video-to-audio/output_url_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/video-to-audio\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/video-to-audio/output_url_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/video-to-audio\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/video-to-audio/output_url_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/video-to-audio\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Video" - modelId: "kwaivgi/kling-video/video-to-audio" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/video-to-audio" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-09T17:25:52.059Z" - capabilities: ["video-to-audio"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/minimax/minimax-music.md b/model-api-reference/audio-generation/minimax/minimax-music.md deleted file mode 100644 index 48c74dd9..00000000 --- a/model-api-reference/audio-generation/minimax/minimax-music.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiniMax (Hailuo AI) Music API Reference" -description: "MiniMax (Hailuo AI) Music API reference for SandBase. Use model minimax/minimax-music with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/minimax/minimax-music" -apiReferenceJson: "{\"title\":\"MiniMax (Hailuo AI) Music\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Minimax Music is MiniMax's AI audio generation model. Produce high-quality music tracks, sound effects, and audio landscapes from natural language prompts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/minimax-music.\",\"default\":\"minimax/minimax-music\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Lyrics with optional formatting. You can use a newline to separate each line of lyrics. You can use two newlines to add a pause between lines. You can use double hash marks (##) at the beginning and end of the lyrics to add accompaniment. Maximum 600 characters.\"},{\"name\":\"reference_audio_url\",\"type\":\"string\",\"required\":false,\"description\":\"Reference song, should contain music and vocals. Must be a .wav or .mp3 file longer than 15 seconds.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/minimax-music\\\",\\n \\\"prompt\\\": \\\"## Fast and Limitless \\\\n In the heart of the code, where dreams collide, \\\\n\\\\nFAL's the name, taking tech for a ride. \\\\nGenerative media, blazing the trail, \\\\n\\\\nFast inference power, we'll never fail.\\\\n##\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/minimax-music\\\",\\n \\\"prompt\\\": \\\"## Fast and Limitless \\\\n In the heart of the code, where dreams collide, \\\\n\\\\nFAL's the name, taking tech for a ride. \\\\nGenerative media, blazing the trail, \\\\n\\\\nFast inference power, we'll never fail.\\\\n##\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/minimax-music\\\",\\n \\\"prompt\\\": \\\"## Fast and Limitless \\\\n In the heart of the code, where dreams collide, \\\\n\\\\nFAL's the name, taking tech for a ride. \\\\nGenerative media, blazing the trail, \\\\n\\\\nFast inference power, we'll never fail.\\\\n##\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/minimax-music\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "MiniMax (Hailuo AI) Music" - modelId: "minimax/minimax-music" - vendor: "MiniMax" - vendorSlug: "minimax" - modelSlug: "minimax-music" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-12-17T00:00:00Z" - capabilities: ["text-to-audio"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/minimax/music/2.5.md b/model-api-reference/audio-generation/minimax/music/2.5.md deleted file mode 100644 index e29bb145..00000000 --- a/model-api-reference/audio-generation/minimax/music/2.5.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiniMax Music 2.5 API Reference" -description: "MiniMax Music 2.5 API reference for SandBase. Use model minimax/music/2.5 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/minimax/music/2.5" -apiReferenceJson: "{\"title\":\"MiniMax Music 2.5\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax Music 2.5 text-to-music model with lyrics support, instrumental generation, and configurable audio output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/music/2.5.\",\"default\":\"minimax/music/2.5\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"A description of the music style, mood, genre, and scenario.\",\"default\":\"Indie folk, melancholic, introspective, longing, solitary walk, coffee shop\"},{\"name\":\"lyrics\",\"type\":\"string\",\"required\":false,\"description\":\"Lyrics of the song. Use \\\\n to separate lines. Supports structure tags: [Intro], [Verse], [Pre Chorus], [Chorus], [Bridge], [Outro], [Interlude], [Hook], [Break], [Solo], [Inst].\",\"default\":\"[verse]\\nStreetlights flicker, the night breeze sighs\\nShadows stretch as I walk alone\\nAn old coat wraps my silent sorrow\\nWandering, longing, where should I go\\n[chorus]\\nPushing the wooden door, the aroma spreads\\nIn a familiar corner, a stranger gazes\"},{\"name\":\"sample_rate\",\"type\":\"integer\",\"required\":false,\"description\":\"Sample rate of generated audio.\",\"constraints\":\"Allowed values: 16000, 24000, 32000, 44100\"},{\"name\":\"bitrate\",\"type\":\"integer\",\"required\":false,\"description\":\"Bitrate of generated audio.\",\"constraints\":\"Allowed values: 32000, 64000, 128000, 256000\"},{\"name\":\"format\",\"type\":\"string\",\"required\":false,\"description\":\"Format of generated audio.\",\"constraints\":\"Allowed values: mp3, wav, pcm\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-music\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/music/2.5\\\",\\n \\\"prompt\\\": \\\"Indie folk, melancholic, introspective, longing, solitary walk, coffee shop\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/music/2.5\\\",\\n \\\"prompt\\\": \\\"Indie folk, melancholic, introspective, longing, solitary walk, coffee shop\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/music/2.5\\\",\\n \\\"prompt\\\": \\\"Indie folk, melancholic, introspective, longing, solitary walk, coffee shop\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/music/2.5\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "MiniMax Music 2.5" - modelId: "minimax/music/2.5" - vendor: "MiniMax" - vendorSlug: "minimax" - modelSlug: "music/2.5" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-11T06:22:56.644Z" - capabilities: ["text-to-music"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/minimax/music/2.6.md b/model-api-reference/audio-generation/minimax/music/2.6.md index fc65d550..70a4bdeb 100644 --- a/model-api-reference/audio-generation/minimax/music/2.6.md +++ b/model-api-reference/audio-generation/minimax/music/2.6.md @@ -4,7 +4,7 @@ description: "MiniMax Music 2.6 API reference for SandBase. Use model minimax/mu aside: false outline: false apiReferenceKey: "audio/minimax/music/2.6" -apiReferenceJson: "{\"title\":\"MiniMax Music 2.6\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax Music 2.6 text-to-music model with enhanced quality, lyrics support, instrumental generation, and configurable audio output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/music/2.6.\",\"default\":\"minimax/music/2.6\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"A description of the music style, mood, genre, and scenario.\",\"default\":\"Indie folk, melancholic, introspective, longing, solitary walk, coffee shop\"},{\"name\":\"lyrics\",\"type\":\"string\",\"required\":false,\"description\":\"Lyrics of the song. Use \\\\n to separate lines. Supports structure tags: [Intro], [Verse], [Pre Chorus], [Chorus], [Bridge], [Outro], [Interlude], [Hook], [Break], [Solo], [Inst].\",\"default\":\"[verse]\\nStreetlights flicker, the night breeze sighs\\nShadows stretch as I walk alone\\nAn old coat wraps my silent sorrow\\nWandering, longing, where should I go\\n[chorus]\\nPushing the wooden door, the aroma spreads\\nIn a familiar corner, a stranger gazes\"},{\"name\":\"is_instrumental\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, generates vocal-free instrumental music.\",\"default\":\"false\"},{\"name\":\"lyrics_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true and lyrics is empty, auto-generates lyrics from the prompt.\",\"default\":\"false\"},{\"name\":\"sample_rate\",\"type\":\"integer\",\"required\":false,\"description\":\"Sample rate of generated audio.\",\"constraints\":\"Allowed values: 16000, 24000, 32000, 44100\"},{\"name\":\"bitrate\",\"type\":\"integer\",\"required\":false,\"description\":\"Bitrate of generated audio.\",\"constraints\":\"Allowed values: 32000, 64000, 128000, 256000\"},{\"name\":\"format\",\"type\":\"string\",\"required\":false,\"description\":\"Format of generated audio.\",\"constraints\":\"Allowed values: mp3, wav, pcm\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-music\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/music/2.6\\\",\\n \\\"prompt\\\": \\\"Indie folk, melancholic, introspective, longing, solitary walk, coffee shop\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/music/2.6\\\",\\n \\\"prompt\\\": \\\"Indie folk, melancholic, introspective, longing, solitary walk, coffee shop\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/music/2.6\\\",\\n \\\"prompt\\\": \\\"Indie folk, melancholic, introspective, longing, solitary walk, coffee shop\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/music/2.6\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"MiniMax Music 2.6\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax Music 2.6 by MiniMax composes a full song with vocals and accompaniment from a style prompt and lyrics, or an instrumental track without lyrics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/music/2.6.\",\"default\":\"minimax/music/2.6\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"A description of the music style, mood, genre, and scenario.\",\"default\":\"Indie folk, melancholic, introspective, longing, solitary walk, coffee shop\"},{\"name\":\"lyrics\",\"type\":\"string\",\"required\":false,\"description\":\"Lyrics of the song. Use \\\\n to separate lines. Supports structure tags: [Intro], [Verse], [Pre Chorus], [Chorus], [Bridge], [Outro], [Interlude], [Hook], [Break], [Solo], [Inst].\",\"default\":\"[verse]\\nStreetlights flicker, the night breeze sighs\\nShadows stretch as I walk alone\\nAn old coat wraps my silent sorrow\\nWandering, longing, where should I go\\n[chorus]\\nPushing the wooden door, the aroma spreads\\nIn a familiar corner, a stranger gazes\"},{\"name\":\"is_instrumental\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, generates vocal-free instrumental music.\",\"default\":\"false\"},{\"name\":\"lyrics_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true and lyrics is empty, auto-generates lyrics from the prompt.\",\"default\":\"false\"},{\"name\":\"sample_rate\",\"type\":\"integer\",\"required\":false,\"description\":\"Sample rate of generated audio.\",\"constraints\":\"Allowed values: 16000, 24000, 32000, 44100\"},{\"name\":\"bitrate\",\"type\":\"integer\",\"required\":false,\"description\":\"Bitrate of generated audio.\",\"constraints\":\"Allowed values: 32000, 64000, 128000, 256000\"},{\"name\":\"format\",\"type\":\"string\",\"required\":false,\"description\":\"Format of generated audio.\",\"constraints\":\"Allowed values: mp3, wav, pcm\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-music\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/music/2.6\\\",\\n \\\"prompt\\\": \\\"Indie folk, melancholic, introspective, longing, solitary walk, coffee shop\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/music/2.6\\\",\\n \\\"prompt\\\": \\\"Indie folk, melancholic, introspective, longing, solitary walk, coffee shop\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/music/2.6\\\",\\n \\\"prompt\\\": \\\"Indie folk, melancholic, introspective, longing, solitary walk, coffee shop\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/music/2.6\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "MiniMax Music 2.6" modelId: "minimax/music/2.6" diff --git a/model-api-reference/audio-generation/minimax/music/3.md b/model-api-reference/audio-generation/minimax/music/3.md new file mode 100644 index 00000000..2f0a11c8 --- /dev/null +++ b/model-api-reference/audio-generation/minimax/music/3.md @@ -0,0 +1,21 @@ +--- +title: "MiniMax Music 3 API Reference" +description: "MiniMax Music 3 API reference for SandBase. Use model minimax/music/3 with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "audio/minimax/music/3" +apiReferenceJson: "{\"title\":\"MiniMax Music 3\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax Music 3 by MiniMax composes a complete song up to five minutes long with expressive vocals and evolving arrangements from a style prompt and lyrics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/music/3.\",\"default\":\"minimax/music/3\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Music description: style, mood, vocals, instrumentation, and arrangement.\"},{\"name\":\"lyrics\",\"type\":\"string\",\"required\":true,\"description\":\"Lyrics to sing. Put structure tags such as [intro], [verse], [chorus], [bridge], [instrumental], and [outro] on their own lines.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Upper bound on the generated song length in seconds (1-300). The model may stop earlier; billing uses this upper bound.\",\"default\":\"60\",\"constraints\":\"Range: 1 to 300\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results. Omit for a random seed.\",\"constraints\":\"Range: 0 to 2147483647\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-music\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/music/3\\\",\\n \\\"prompt\\\": \\\"Genre: acoustic pop. BPM: 96. Key: C major. Warm and intimate, building gently into the chorus. Vocals: soft female lead, close and breathy, light stacked harmonies in the chorus. Arrangement: fingerpicked guitar and soft piano; brushed drums and upright bass enter in the chorus.\\\",\\n \\\"lyrics\\\": \\\"[verse]\\\\nMorning light filtering through the pine\\\\nEvery quiet street is yours and mine\\\\n[chorus]\\\\nSoftly the world begins to breathe\\\",\\n \\\"duration\\\": 60\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/music/3\\\",\\n \\\"prompt\\\": \\\"Genre: acoustic pop. BPM: 96. Key: C major. Warm and intimate, building gently into the chorus. Vocals: soft female lead, close and breathy, light stacked harmonies in the chorus. Arrangement: fingerpicked guitar and soft piano; brushed drums and upright bass enter in the chorus.\\\",\\n \\\"lyrics\\\": \\\"[verse]\\\\nMorning light filtering through the pine\\\\nEvery quiet street is yours and mine\\\\n[chorus]\\\\nSoftly the world begins to breathe\\\",\\n \\\"duration\\\": 60\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/music/3\\\",\\n \\\"prompt\\\": \\\"Genre: acoustic pop. BPM: 96. Key: C major. Warm and intimate, building gently into the chorus. Vocals: soft female lead, close and breathy, light stacked harmonies in the chorus. Arrangement: fingerpicked guitar and soft piano; brushed drums and upright bass enter in the chorus.\\\",\\n \\\"lyrics\\\": \\\"[verse]\\\\nMorning light filtering through the pine\\\\nEvery quiet street is yours and mine\\\\n[chorus]\\\\nSoftly the world begins to breathe\\\",\\n \\\"duration\\\": 60\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/music/3\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "MiniMax Music 3" + modelId: "minimax/music/3" + vendor: "MiniMax" + vendorSlug: "minimax" + modelSlug: "music/3" + protocol: "Audio Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-10-05T09:33:18Z" + capabilities: ["text-to-music"] + category: "Audio Generation" +--- + + diff --git a/model-api-reference/audio-generation/minimax/music/v1.5.md b/model-api-reference/audio-generation/minimax/music/v1.5.md deleted file mode 100644 index 0b9e25c3..00000000 --- a/model-api-reference/audio-generation/minimax/music/v1.5.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiniMax (Hailuo AI) Music v1.5 API Reference" -description: "MiniMax (Hailuo AI) Music v1.5 API reference for SandBase. Use model minimax/music/v1.5 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/minimax/music/v1.5" -apiReferenceJson: "{\"title\":\"MiniMax (Hailuo AI) Music v1.5\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Music V1.5 by MiniMax - generate music, sound effects, and audio from text descriptions with AI. Create original compositions, ambient sounds, and audio content for any creative project.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/music/v1.5.\",\"default\":\"minimax/music/v1.5\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Lyrics, supports [intro][verse][chorus][bridge][outro] sections. 10-600 characters.\"},{\"name\":\"audio_setting\",\"type\":\"string\",\"required\":false,\"description\":\"Audio configuration settings\"},{\"name\":\"lyrics_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Control music generation. 10-3000 characters.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/music/v1.5\\\",\\n \\\"prompt\\\": \\\"[verse]\\\\n Fast and Limitless \\\\n In the heart of the code, where dreams collide, \\\\n\\\\nFAL's the name, taking tech for a ride. \\\\nGenerative media, blazing the trail, \\\\n\\\\nFast inference power, we'll never fail.\\\\n##\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/music/v1.5\\\",\\n \\\"prompt\\\": \\\"[verse]\\\\n Fast and Limitless \\\\n In the heart of the code, where dreams collide, \\\\n\\\\nFAL's the name, taking tech for a ride. \\\\nGenerative media, blazing the trail, \\\\n\\\\nFast inference power, we'll never fail.\\\\n##\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/music/v1.5\\\",\\n \\\"prompt\\\": \\\"[verse]\\\\n Fast and Limitless \\\\n In the heart of the code, where dreams collide, \\\\n\\\\nFAL's the name, taking tech for a ride. \\\\nGenerative media, blazing the trail, \\\\n\\\\nFast inference power, we'll never fail.\\\\n##\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/music/v1.5\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "MiniMax (Hailuo AI) Music v1.5" - modelId: "minimax/music/v1.5" - vendor: "MiniMax" - vendorSlug: "minimax" - modelSlug: "music/v1.5" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-11T22:14:58.124Z" - capabilities: ["text-to-audio"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/minimax/music/v2.md b/model-api-reference/audio-generation/minimax/music/v2.md deleted file mode 100644 index 4521316e..00000000 --- a/model-api-reference/audio-generation/minimax/music/v2.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Minimax Music API Reference" -description: "Minimax Music API reference for SandBase. Use model minimax/music/v2 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/minimax/music/v2" -apiReferenceJson: "{\"title\":\"Minimax Music\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Music V2 by MiniMax - generate music, sound effects, and audio from text descriptions with AI. Create original compositions, ambient sounds, and audio content for any creative project.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/music/v2.\",\"default\":\"minimax/music/v2\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"A description of the music, specifying style, mood, and scenario. 10-300 characters.\"},{\"name\":\"lyrics_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Lyrics of the song. Use n to separate lines. You may add structure tags like [Intro], [Verse], [Chorus], [Bridge], [Outro] to enhance the arrangement. 10-3000 characters.\"},{\"name\":\"audio_setting\",\"type\":\"string\",\"required\":false,\"description\":\"Audio configuration settings\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/music/v2\\\",\\n \\\"prompt\\\": \\\"Indie folk, melancholic, introspective, longing, solitary walk, coffee shop\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/music/v2\\\",\\n \\\"prompt\\\": \\\"Indie folk, melancholic, introspective, longing, solitary walk, coffee shop\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/music/v2\\\",\\n \\\"prompt\\\": \\\"Indie folk, melancholic, introspective, longing, solitary walk, coffee shop\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/music/v2\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Minimax Music" - modelId: "minimax/music/v2" - vendor: "MiniMax" - vendorSlug: "minimax" - modelSlug: "music/v2" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-30T22:33:42.886Z" - capabilities: ["text-to-audio"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/minimax/preview/speech-2.5-hd.md b/model-api-reference/audio-generation/minimax/preview/speech-2.5-hd.md deleted file mode 100644 index 720cd3e3..00000000 --- a/model-api-reference/audio-generation/minimax/preview/speech-2.5-hd.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Minimax API Reference" -description: "Minimax API reference for SandBase. Use model minimax/preview/speech-2.5-hd with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/minimax/preview/speech-2.5-hd" -apiReferenceJson: "{\"title\":\"Minimax\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Preview Speech 2.5 Hd is MiniMax's text-to-speech AI model. Generate human-like voiceovers with expressive intonation, multilingual support, and customizable voice characteristics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/preview/speech-2.5-hd.\",\"default\":\"minimax/preview/speech-2.5-hd\"},{\"name\":\"text\",\"type\":\"string\",\"required\":false,\"description\":\"Text to convert to speech (max 5000 characters, minimum 1 non-whitespace character)\",\"default\":\"Hello, welcome to Sandbase\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Format of the output content (non-streaming only)\",\"default\":\"hex\",\"constraints\":\"Allowed values: url, hex\"},{\"name\":\"pronunciation_dict\",\"type\":\"string\",\"required\":false,\"description\":\"Custom pronunciation dictionary for text replacement\"},{\"name\":\"audio_setting\",\"type\":\"string\",\"required\":false,\"description\":\"Audio configuration settings\"},{\"name\":\"language_boost\",\"type\":\"string\",\"required\":false,\"description\":\"Enhance recognition of specified languages and dialects\",\"constraints\":\"Allowed values: Persian, Filipino, Tamil, Chinese, Chinese,Yue, English, Arabic, Russian, Spanish, French, Portuguese, German, Turkish, Dutch, Ukrainian, Vietnamese, Indonesian, Japanese, Italian, Korean, Thai, Polish, Romanian, Greek, Czech, Finnish, Hindi, Bulgarian, Danish, Hebrew, Malay, Slovak, Swedish, Croatian, Hungarian, Norwegian, Slovenian, Catalan, Nynorsk, Afrikaans, auto\"},{\"name\":\"voice_setting\",\"type\":\"string\",\"required\":false,\"description\":\"Voice configuration settings\",\"default\":\"[object Object]\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/preview/speech-2.5-hd\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"output_format\\\": \\\"hex\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/preview/speech-2.5-hd\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"output_format\\\": \\\"hex\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/preview/speech-2.5-hd\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"output_format\\\": \\\"hex\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/preview/speech-2.5-hd\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Minimax" - modelId: "minimax/preview/speech-2.5-hd" - vendor: "MiniMax" - vendorSlug: "minimax" - modelSlug: "preview/speech-2.5-hd" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-11T09:41:03.032Z" - capabilities: ["text-to-speech"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/minimax/preview/speech-2.5-turbo.md b/model-api-reference/audio-generation/minimax/preview/speech-2.5-turbo.md deleted file mode 100644 index 6623d0ce..00000000 --- a/model-api-reference/audio-generation/minimax/preview/speech-2.5-turbo.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiniMax Speech 2.5 Turbo API Reference" -description: "MiniMax Speech 2.5 Turbo API reference for SandBase. Use model minimax/preview/speech-2.5-turbo with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/minimax/preview/speech-2.5-turbo" -apiReferenceJson: "{\"title\":\"MiniMax Speech 2.5 Turbo\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Preview Speech 2.5 Turbo by MiniMax - convert text to natural-sounding speech with AI. Supports multiple voices, languages, emotions, and speaking styles for content creation and accessibility.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/preview/speech-2.5-turbo.\",\"default\":\"minimax/preview/speech-2.5-turbo\"},{\"name\":\"text\",\"type\":\"string\",\"required\":false,\"description\":\"Text to convert to speech (max 5000 characters, minimum 1 non-whitespace character)\",\"default\":\"Hello, welcome to Sandbase\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Format of the output content (non-streaming only)\",\"default\":\"hex\",\"constraints\":\"Allowed values: url, hex\"},{\"name\":\"pronunciation_dict\",\"type\":\"string\",\"required\":false,\"description\":\"Custom pronunciation dictionary for text replacement\"},{\"name\":\"audio_setting\",\"type\":\"string\",\"required\":false,\"description\":\"Audio configuration settings\"},{\"name\":\"language_boost\",\"type\":\"string\",\"required\":false,\"description\":\"Enhance recognition of specified languages and dialects\",\"constraints\":\"Allowed values: Persian, Filipino, Tamil, Chinese, Chinese,Yue, English, Arabic, Russian, Spanish, French, Portuguese, German, Turkish, Dutch, Ukrainian, Vietnamese, Indonesian, Japanese, Italian, Korean, Thai, Polish, Romanian, Greek, Czech, Finnish, Hindi, Bulgarian, Danish, Hebrew, Malay, Slovak, Swedish, Croatian, Hungarian, Norwegian, Slovenian, Catalan, Nynorsk, Afrikaans, auto\"},{\"name\":\"voice_setting\",\"type\":\"string\",\"required\":false,\"description\":\"Voice configuration settings\",\"default\":\"[object Object]\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/preview/speech-2.5-turbo\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"output_format\\\": \\\"hex\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/preview/speech-2.5-turbo\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"output_format\\\": \\\"hex\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/preview/speech-2.5-turbo\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"output_format\\\": \\\"hex\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/preview/speech-2.5-turbo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "MiniMax Speech 2.5 Turbo" - modelId: "minimax/preview/speech-2.5-turbo" - vendor: "MiniMax" - vendorSlug: "minimax" - modelSlug: "preview/speech-2.5-turbo" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-11T09:33:12.088Z" - capabilities: ["text-to-speech"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/minimax/speech/02-hd.md b/model-api-reference/audio-generation/minimax/speech/02-hd.md deleted file mode 100644 index 586f18d2..00000000 --- a/model-api-reference/audio-generation/minimax/speech/02-hd.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiniMax Speech-02 HD API Reference" -description: "MiniMax Speech-02 HD API reference for SandBase. Use model minimax/speech/02-hd with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/minimax/speech/02-hd" -apiReferenceJson: "{\"title\":\"MiniMax Speech-02 HD\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Speech 02 Hd by MiniMax - convert text to natural-sounding speech with AI. Supports multiple voices, languages, emotions, and speaking styles for content creation and accessibility.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/speech/02-hd.\",\"default\":\"minimax/speech/02-hd\"},{\"name\":\"text\",\"type\":\"string\",\"required\":false,\"description\":\"Text to convert to speech (max 5000 characters, minimum 1 non-whitespace character)\",\"default\":\"Hello, welcome to Sandbase\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Format of the output content (non-streaming only)\",\"default\":\"hex\",\"constraints\":\"Allowed values: url, hex\"},{\"name\":\"voice_setting\",\"type\":\"string\",\"required\":false,\"description\":\"Voice configuration settings\",\"default\":\"[object Object]\"},{\"name\":\"pronunciation_dict\",\"type\":\"string\",\"required\":false,\"description\":\"Custom pronunciation dictionary for text replacement\"},{\"name\":\"audio_setting\",\"type\":\"string\",\"required\":false,\"description\":\"Audio configuration settings\"},{\"name\":\"language_boost\",\"type\":\"string\",\"required\":false,\"description\":\"Enhance recognition of specified languages and dialects\",\"constraints\":\"Allowed values: Chinese, Chinese,Yue, English, Arabic, Russian, Spanish, French, Portuguese, German, Turkish, Dutch, Ukrainian, Vietnamese, Indonesian, Japanese, Italian, Korean, Thai, Polish, Romanian, Greek, Czech, Finnish, Hindi, Bulgarian, Danish, Hebrew, Malay, Slovak, Swedish, Croatian, Hungarian, Norwegian, Slovenian, Catalan, Nynorsk, Afrikaans, auto\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/speech/02-hd\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"output_format\\\": \\\"hex\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/speech/02-hd\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"output_format\\\": \\\"hex\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/speech/02-hd\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"output_format\\\": \\\"hex\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/speech/02-hd\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "MiniMax Speech-02 HD" - modelId: "minimax/speech/02-hd" - vendor: "MiniMax" - vendorSlug: "minimax" - modelSlug: "speech/02-hd" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-06T16:17:49.56Z" - capabilities: ["text-to-speech"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/minimax/speech/02-turbo.md b/model-api-reference/audio-generation/minimax/speech/02-turbo.md deleted file mode 100644 index a6d241df..00000000 --- a/model-api-reference/audio-generation/minimax/speech/02-turbo.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiniMax Speech-02 Turbo API Reference" -description: "MiniMax Speech-02 Turbo API reference for SandBase. Use model minimax/speech/02-turbo with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/minimax/speech/02-turbo" -apiReferenceJson: "{\"title\":\"MiniMax Speech-02 Turbo\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Speech 02 Turbo is MiniMax's text-to-speech AI model. Generate human-like voiceovers with expressive intonation, multilingual support, and customizable voice characteristics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/speech/02-turbo.\",\"default\":\"minimax/speech/02-turbo\"},{\"name\":\"text\",\"type\":\"string\",\"required\":false,\"description\":\"Text to convert to speech (max 5000 characters, minimum 1 non-whitespace character)\",\"default\":\"Hello, welcome to Sandbase\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Format of the output content (non-streaming only)\",\"default\":\"hex\",\"constraints\":\"Allowed values: url, hex\"},{\"name\":\"language_boost\",\"type\":\"string\",\"required\":false,\"description\":\"Enhance recognition of specified languages and dialects\",\"constraints\":\"Allowed values: Chinese, Chinese,Yue, English, Arabic, Russian, Spanish, French, Portuguese, German, Turkish, Dutch, Ukrainian, Vietnamese, Indonesian, Japanese, Italian, Korean, Thai, Polish, Romanian, Greek, Czech, Finnish, Hindi, Bulgarian, Danish, Hebrew, Malay, Slovak, Swedish, Croatian, Hungarian, Norwegian, Slovenian, Catalan, Nynorsk, Afrikaans, auto\"},{\"name\":\"voice_setting\",\"type\":\"string\",\"required\":false,\"description\":\"Voice configuration settings\",\"default\":\"[object Object]\"},{\"name\":\"pronunciation_dict\",\"type\":\"string\",\"required\":false,\"description\":\"Custom pronunciation dictionary for text replacement\"},{\"name\":\"audio_setting\",\"type\":\"string\",\"required\":false,\"description\":\"Audio configuration settings\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/speech/02-turbo\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"output_format\\\": \\\"hex\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/speech/02-turbo\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"output_format\\\": \\\"hex\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/speech/02-turbo\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"output_format\\\": \\\"hex\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/speech/02-turbo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "MiniMax Speech-02 Turbo" - modelId: "minimax/speech/02-turbo" - vendor: "MiniMax" - vendorSlug: "minimax" - modelSlug: "speech/02-turbo" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-06T16:20:17.682Z" - capabilities: ["text-to-speech"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/minimax/speech/2.6/hd.md b/model-api-reference/audio-generation/minimax/speech/2.6/hd.md index f76a7d92..3f89a074 100644 --- a/model-api-reference/audio-generation/minimax/speech/2.6/hd.md +++ b/model-api-reference/audio-generation/minimax/speech/2.6/hd.md @@ -4,7 +4,7 @@ description: "MiniMax Speech 2.6 HD API reference for SandBase. Use model minima aside: false outline: false apiReferenceKey: "audio/minimax/speech/2.6/hd" -apiReferenceJson: "{\"title\":\"MiniMax Speech 2.6 HD\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax Speech 2.6 HD text-to-speech model with high-definition voice synthesis, 40+ language support, voice cloning, and expressive emotion control.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/speech/2.6/hd.\",\"default\":\"minimax/speech/2.6/hd\"},{\"name\":\"text\",\"type\":\"string\",\"required\":true,\"description\":\"Text to convert to speech. Use <#x#> between words to control pause duration (0.01-99.99s).\",\"default\":\"Hello, welcome to Sandbase\"},{\"name\":\"voice_id\",\"type\":\"string\",\"required\":true,\"description\":\"Voice ID for speech synthesis. Use a predefined system voice or a custom cloned voice ID.\",\"default\":\"Wise_Woman\"},{\"name\":\"speed\",\"type\":\"number\",\"required\":false,\"description\":\"Speech speed. Range: 0.5-2.0, where 1.0 is normal speed.\",\"default\":\"1\",\"constraints\":\"Range: 0.5 to 2\"},{\"name\":\"volume\",\"type\":\"number\",\"required\":false,\"description\":\"Speech volume. Range: 0.1-10.0, where 1.0 is normal volume.\",\"default\":\"1\",\"constraints\":\"Range: 0.1 to 10\"},{\"name\":\"pitch\",\"type\":\"integer\",\"required\":false,\"description\":\"Speech pitch. Range: -12 to 12, where 0 is normal pitch.\",\"default\":\"0\",\"constraints\":\"Range: -12 to 12\"},{\"name\":\"emotion\",\"type\":\"string\",\"required\":false,\"description\":\"The emotion of the generated speech.\",\"default\":\"happy\",\"constraints\":\"Allowed values: happy, sad, angry, fearful, disgusted, surprised, neutral\"},{\"name\":\"english_normalization\",\"type\":\"boolean\",\"required\":false,\"description\":\"Improves performance in number-reading scenarios.\",\"default\":\"false\"},{\"name\":\"sample_rate\",\"type\":\"integer\",\"required\":false,\"description\":\"Sample rate of generated sound.\",\"constraints\":\"Allowed values: 8000, 16000, 22050, 24000, 32000, 44100\"},{\"name\":\"bitrate\",\"type\":\"integer\",\"required\":false,\"description\":\"Bitrate of generated sound.\",\"constraints\":\"Allowed values: 32000, 64000, 128000, 256000\"},{\"name\":\"channel\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of channels. 1: mono, 2: stereo.\",\"constraints\":\"Allowed values: 1, 2\"},{\"name\":\"format\",\"type\":\"string\",\"required\":false,\"description\":\"Format of generated sound.\",\"constraints\":\"Allowed values: mp3, pcm, flac\"},{\"name\":\"language_boost\",\"type\":\"string\",\"required\":false,\"description\":\"Enhance the ability to recognize specified languages and dialects.\",\"constraints\":\"Allowed values: Chinese, Chinese,Yue, English, Arabic, Russian, Spanish, French, Portuguese, German, Turkish, Dutch, Ukrainian, Vietnamese, Indonesian, Japanese, Italian, Korean, Thai, Polish, Romanian, Greek, Czech, Finnish, Hindi, Bulgarian, Danish, Hebrew, Malay, Slovak, Swedish, Croatian, Hungarian, Norwegian, Slovenian, Catalan, Nynorsk, Afrikaans, auto\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/speech/2.6/hd\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"voice_id\\\": \\\"Wise_Woman\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/speech/2.6/hd\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"voice_id\\\": \\\"Wise_Woman\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/speech/2.6/hd\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"voice_id\\\": \\\"Wise_Woman\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/speech/2.6/hd\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"MiniMax Speech 2.6 HD\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax Speech 2.6 HD by MiniMax converts text into natural, high-fidelity speech in 40+ languages with system or cloned voices and emotion control.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/speech/2.6/hd.\",\"default\":\"minimax/speech/2.6/hd\"},{\"name\":\"text\",\"type\":\"string\",\"required\":true,\"description\":\"Text to convert to speech. Use <#x#> between words to control pause duration (0.01-99.99s).\",\"default\":\"Hello, welcome to Sandbase\"},{\"name\":\"voice_id\",\"type\":\"string\",\"required\":true,\"description\":\"Voice ID for speech synthesis. Use a predefined system voice or a custom cloned voice ID.\",\"default\":\"Wise_Woman\"},{\"name\":\"speed\",\"type\":\"number\",\"required\":false,\"description\":\"Speech speed. Range: 0.5-2.0, where 1.0 is normal speed.\",\"default\":\"1\",\"constraints\":\"Range: 0.5 to 2\"},{\"name\":\"volume\",\"type\":\"number\",\"required\":false,\"description\":\"Speech volume. Range: 0.1-10.0, where 1.0 is normal volume.\",\"default\":\"1\",\"constraints\":\"Range: 0.1 to 10\"},{\"name\":\"pitch\",\"type\":\"integer\",\"required\":false,\"description\":\"Speech pitch. Range: -12 to 12, where 0 is normal pitch.\",\"default\":\"0\",\"constraints\":\"Range: -12 to 12\"},{\"name\":\"emotion\",\"type\":\"string\",\"required\":false,\"description\":\"The emotion of the generated speech.\",\"default\":\"happy\",\"constraints\":\"Allowed values: happy, sad, angry, fearful, disgusted, surprised, neutral\"},{\"name\":\"english_normalization\",\"type\":\"boolean\",\"required\":false,\"description\":\"Improves performance in number-reading scenarios.\",\"default\":\"false\"},{\"name\":\"sample_rate\",\"type\":\"integer\",\"required\":false,\"description\":\"Sample rate of generated sound.\",\"constraints\":\"Allowed values: 8000, 16000, 22050, 24000, 32000, 44100\"},{\"name\":\"bitrate\",\"type\":\"integer\",\"required\":false,\"description\":\"Bitrate of generated sound.\",\"constraints\":\"Allowed values: 32000, 64000, 128000, 256000\"},{\"name\":\"channel\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of channels. 1: mono, 2: stereo.\",\"constraints\":\"Allowed values: 1, 2\"},{\"name\":\"format\",\"type\":\"string\",\"required\":false,\"description\":\"Format of generated sound.\",\"constraints\":\"Allowed values: mp3, pcm, flac\"},{\"name\":\"language_boost\",\"type\":\"string\",\"required\":false,\"description\":\"Enhance the ability to recognize specified languages and dialects.\",\"constraints\":\"Allowed values: Chinese, Chinese,Yue, English, Arabic, Russian, Spanish, French, Portuguese, German, Turkish, Dutch, Ukrainian, Vietnamese, Indonesian, Japanese, Italian, Korean, Thai, Polish, Romanian, Greek, Czech, Finnish, Hindi, Bulgarian, Danish, Hebrew, Malay, Slovak, Swedish, Croatian, Hungarian, Norwegian, Slovenian, Catalan, Nynorsk, Afrikaans, auto\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/speech/2.6/hd\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"voice_id\\\": \\\"Wise_Woman\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/speech/2.6/hd\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"voice_id\\\": \\\"Wise_Woman\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/speech/2.6/hd\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"voice_id\\\": \\\"Wise_Woman\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/speech/2.6/hd\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "MiniMax Speech 2.6 HD" modelId: "minimax/speech/2.6/hd" diff --git a/model-api-reference/audio-generation/minimax/speech/2.6/turbo.md b/model-api-reference/audio-generation/minimax/speech/2.6/turbo.md index f24d6ef5..b6659032 100644 --- a/model-api-reference/audio-generation/minimax/speech/2.6/turbo.md +++ b/model-api-reference/audio-generation/minimax/speech/2.6/turbo.md @@ -4,7 +4,7 @@ description: "MiniMax Speech 2.6 Turbo API reference for SandBase. Use model min aside: false outline: false apiReferenceKey: "audio/minimax/speech/2.6/turbo" -apiReferenceJson: "{\"title\":\"MiniMax Speech 2.6 Turbo\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax Speech 2.6 Turbo text-to-speech model with fast voice synthesis, 40+ language support, voice cloning, and expressive emotion control.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/speech/2.6/turbo.\",\"default\":\"minimax/speech/2.6/turbo\"},{\"name\":\"text\",\"type\":\"string\",\"required\":true,\"description\":\"Text to convert to speech. Use <#x#> between words to control pause duration (0.01-99.99s).\",\"default\":\"Hello, welcome to Sandbase\"},{\"name\":\"voice_id\",\"type\":\"string\",\"required\":true,\"description\":\"Voice ID for speech synthesis. Use a predefined system voice or a custom cloned voice ID.\",\"default\":\"Wise_Woman\"},{\"name\":\"speed\",\"type\":\"number\",\"required\":false,\"description\":\"Speech speed. Range: 0.5-2.0, where 1.0 is normal speed.\",\"default\":\"1\",\"constraints\":\"Range: 0.5 to 2\"},{\"name\":\"volume\",\"type\":\"number\",\"required\":false,\"description\":\"Speech volume. Range: 0.1-10.0, where 1.0 is normal volume.\",\"default\":\"1\",\"constraints\":\"Range: 0.1 to 10\"},{\"name\":\"pitch\",\"type\":\"integer\",\"required\":false,\"description\":\"Speech pitch. Range: -12 to 12, where 0 is normal pitch.\",\"default\":\"0\",\"constraints\":\"Range: -12 to 12\"},{\"name\":\"emotion\",\"type\":\"string\",\"required\":false,\"description\":\"The emotion of the generated speech.\",\"default\":\"happy\",\"constraints\":\"Allowed values: happy, sad, angry, fearful, disgusted, surprised, neutral\"},{\"name\":\"english_normalization\",\"type\":\"boolean\",\"required\":false,\"description\":\"Improves performance in number-reading scenarios.\",\"default\":\"false\"},{\"name\":\"sample_rate\",\"type\":\"integer\",\"required\":false,\"description\":\"Sample rate of generated sound.\",\"constraints\":\"Allowed values: 8000, 16000, 22050, 24000, 32000, 44100\"},{\"name\":\"bitrate\",\"type\":\"integer\",\"required\":false,\"description\":\"Bitrate of generated sound.\",\"constraints\":\"Allowed values: 32000, 64000, 128000, 256000\"},{\"name\":\"channel\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of channels. 1: mono, 2: stereo.\",\"constraints\":\"Allowed values: 1, 2\"},{\"name\":\"format\",\"type\":\"string\",\"required\":false,\"description\":\"Format of generated sound.\",\"constraints\":\"Allowed values: mp3, pcm, flac\"},{\"name\":\"language_boost\",\"type\":\"string\",\"required\":false,\"description\":\"Enhance the ability to recognize specified languages and dialects.\",\"constraints\":\"Allowed values: Chinese, Chinese,Yue, English, Arabic, Russian, Spanish, French, Portuguese, German, Turkish, Dutch, Ukrainian, Vietnamese, Indonesian, Japanese, Italian, Korean, Thai, Polish, Romanian, Greek, Czech, Finnish, Hindi, Bulgarian, Danish, Hebrew, Malay, Slovak, Swedish, Croatian, Hungarian, Norwegian, Slovenian, Catalan, Nynorsk, Afrikaans, auto\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/speech/2.6/turbo\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"voice_id\\\": \\\"Wise_Woman\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/speech/2.6/turbo\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"voice_id\\\": \\\"Wise_Woman\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/speech/2.6/turbo\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"voice_id\\\": \\\"Wise_Woman\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/speech/2.6/turbo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"MiniMax Speech 2.6 Turbo\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax Speech 2.6 Turbo by MiniMax converts text into natural speech in 40+ languages with low latency, system or cloned voices, and emotion control.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/speech/2.6/turbo.\",\"default\":\"minimax/speech/2.6/turbo\"},{\"name\":\"text\",\"type\":\"string\",\"required\":true,\"description\":\"Text to convert to speech. Use <#x#> between words to control pause duration (0.01-99.99s).\",\"default\":\"Hello, welcome to Sandbase\"},{\"name\":\"voice_id\",\"type\":\"string\",\"required\":true,\"description\":\"Voice ID for speech synthesis. Use a predefined system voice or a custom cloned voice ID.\",\"default\":\"Wise_Woman\"},{\"name\":\"speed\",\"type\":\"number\",\"required\":false,\"description\":\"Speech speed. Range: 0.5-2.0, where 1.0 is normal speed.\",\"default\":\"1\",\"constraints\":\"Range: 0.5 to 2\"},{\"name\":\"volume\",\"type\":\"number\",\"required\":false,\"description\":\"Speech volume. Range: 0.1-10.0, where 1.0 is normal volume.\",\"default\":\"1\",\"constraints\":\"Range: 0.1 to 10\"},{\"name\":\"pitch\",\"type\":\"integer\",\"required\":false,\"description\":\"Speech pitch. Range: -12 to 12, where 0 is normal pitch.\",\"default\":\"0\",\"constraints\":\"Range: -12 to 12\"},{\"name\":\"emotion\",\"type\":\"string\",\"required\":false,\"description\":\"The emotion of the generated speech.\",\"default\":\"happy\",\"constraints\":\"Allowed values: happy, sad, angry, fearful, disgusted, surprised, neutral\"},{\"name\":\"english_normalization\",\"type\":\"boolean\",\"required\":false,\"description\":\"Improves performance in number-reading scenarios.\",\"default\":\"false\"},{\"name\":\"sample_rate\",\"type\":\"integer\",\"required\":false,\"description\":\"Sample rate of generated sound.\",\"constraints\":\"Allowed values: 8000, 16000, 22050, 24000, 32000, 44100\"},{\"name\":\"bitrate\",\"type\":\"integer\",\"required\":false,\"description\":\"Bitrate of generated sound.\",\"constraints\":\"Allowed values: 32000, 64000, 128000, 256000\"},{\"name\":\"channel\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of channels. 1: mono, 2: stereo.\",\"constraints\":\"Allowed values: 1, 2\"},{\"name\":\"format\",\"type\":\"string\",\"required\":false,\"description\":\"Format of generated sound.\",\"constraints\":\"Allowed values: mp3, pcm, flac\"},{\"name\":\"language_boost\",\"type\":\"string\",\"required\":false,\"description\":\"Enhance the ability to recognize specified languages and dialects.\",\"constraints\":\"Allowed values: Chinese, Chinese,Yue, English, Arabic, Russian, Spanish, French, Portuguese, German, Turkish, Dutch, Ukrainian, Vietnamese, Indonesian, Japanese, Italian, Korean, Thai, Polish, Romanian, Greek, Czech, Finnish, Hindi, Bulgarian, Danish, Hebrew, Malay, Slovak, Swedish, Croatian, Hungarian, Norwegian, Slovenian, Catalan, Nynorsk, Afrikaans, auto\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/speech/2.6/turbo\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"voice_id\\\": \\\"Wise_Woman\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/speech/2.6/turbo\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"voice_id\\\": \\\"Wise_Woman\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/speech/2.6/turbo\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"voice_id\\\": \\\"Wise_Woman\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/speech/2.6/turbo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "MiniMax Speech 2.6 Turbo" modelId: "minimax/speech/2.6/turbo" diff --git a/model-api-reference/audio-generation/minimax/speech/2.8/hd.md b/model-api-reference/audio-generation/minimax/speech/2.8/hd.md index 8a4b2a32..bbf466a4 100644 --- a/model-api-reference/audio-generation/minimax/speech/2.8/hd.md +++ b/model-api-reference/audio-generation/minimax/speech/2.8/hd.md @@ -4,7 +4,7 @@ description: "MiniMax Speech 2.8 HD API reference for SandBase. Use model minima aside: false outline: false apiReferenceKey: "audio/minimax/speech/2.8/hd" -apiReferenceJson: "{\"title\":\"MiniMax Speech 2.8 HD\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax Speech 2.8 HD text-to-speech model with high-definition voice synthesis, enhanced expressiveness, 40+ language support, and voice cloning.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/speech/2.8/hd.\",\"default\":\"minimax/speech/2.8/hd\"},{\"name\":\"text\",\"type\":\"string\",\"required\":true,\"description\":\"Text to convert to speech. Use <#x#> between words to control pause duration (0.01-99.99s).\",\"default\":\"Hello, welcome to Sandbase\"},{\"name\":\"voice_id\",\"type\":\"string\",\"required\":true,\"description\":\"Voice ID for speech synthesis. Use a predefined system voice or a custom cloned voice ID.\",\"default\":\"Wise_Woman\"},{\"name\":\"speed\",\"type\":\"number\",\"required\":false,\"description\":\"Speech speed. Range: 0.5-2.0, where 1.0 is normal speed.\",\"default\":\"1\",\"constraints\":\"Range: 0.5 to 2\"},{\"name\":\"volume\",\"type\":\"number\",\"required\":false,\"description\":\"Speech volume. Range: 0.1-10.0, where 1.0 is normal volume.\",\"default\":\"1\",\"constraints\":\"Range: 0.1 to 10\"},{\"name\":\"pitch\",\"type\":\"integer\",\"required\":false,\"description\":\"Speech pitch. Range: -12 to 12, where 0 is normal pitch.\",\"default\":\"0\",\"constraints\":\"Range: -12 to 12\"},{\"name\":\"emotion\",\"type\":\"string\",\"required\":false,\"description\":\"The emotion of the generated speech.\",\"default\":\"happy\",\"constraints\":\"Allowed values: happy, sad, angry, fearful, disgusted, surprised, neutral\"},{\"name\":\"english_normalization\",\"type\":\"boolean\",\"required\":false,\"description\":\"Improves performance in number-reading scenarios.\",\"default\":\"false\"},{\"name\":\"sample_rate\",\"type\":\"integer\",\"required\":false,\"description\":\"Sample rate of generated sound.\",\"constraints\":\"Allowed values: 8000, 16000, 22050, 24000, 32000, 44100\"},{\"name\":\"bitrate\",\"type\":\"integer\",\"required\":false,\"description\":\"Bitrate of generated sound.\",\"constraints\":\"Allowed values: 32000, 64000, 128000, 256000\"},{\"name\":\"channel\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of channels. 1: mono, 2: stereo.\",\"constraints\":\"Allowed values: 1, 2\"},{\"name\":\"format\",\"type\":\"string\",\"required\":false,\"description\":\"Format of generated sound.\",\"constraints\":\"Allowed values: mp3, pcm, flac\"},{\"name\":\"language_boost\",\"type\":\"string\",\"required\":false,\"description\":\"Enhance the ability to recognize specified languages and dialects.\",\"constraints\":\"Allowed values: Chinese, Chinese,Yue, English, Arabic, Russian, Spanish, French, Portuguese, German, Turkish, Dutch, Ukrainian, Vietnamese, Indonesian, Japanese, Italian, Korean, Thai, Polish, Romanian, Greek, Czech, Finnish, Hindi, Bulgarian, Danish, Hebrew, Malay, Slovak, Swedish, Croatian, Hungarian, Norwegian, Slovenian, Catalan, Nynorsk, Afrikaans, auto\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/speech/2.8/hd\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"voice_id\\\": \\\"Wise_Woman\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/speech/2.8/hd\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"voice_id\\\": \\\"Wise_Woman\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/speech/2.8/hd\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"voice_id\\\": \\\"Wise_Woman\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/speech/2.8/hd\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"MiniMax Speech 2.8 HD\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax Speech 2.8 HD by MiniMax converts text into expressive, high-fidelity speech in 40+ languages with system or cloned voices and emotion control.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/speech/2.8/hd.\",\"default\":\"minimax/speech/2.8/hd\"},{\"name\":\"text\",\"type\":\"string\",\"required\":true,\"description\":\"Text to convert to speech. Use <#x#> between words to control pause duration (0.01-99.99s).\",\"default\":\"Hello, welcome to Sandbase\"},{\"name\":\"voice_id\",\"type\":\"string\",\"required\":true,\"description\":\"Voice ID for speech synthesis. Use a predefined system voice or a custom cloned voice ID.\",\"default\":\"Wise_Woman\"},{\"name\":\"speed\",\"type\":\"number\",\"required\":false,\"description\":\"Speech speed. Range: 0.5-2.0, where 1.0 is normal speed.\",\"default\":\"1\",\"constraints\":\"Range: 0.5 to 2\"},{\"name\":\"volume\",\"type\":\"number\",\"required\":false,\"description\":\"Speech volume. Range: 0.1-10.0, where 1.0 is normal volume.\",\"default\":\"1\",\"constraints\":\"Range: 0.1 to 10\"},{\"name\":\"pitch\",\"type\":\"integer\",\"required\":false,\"description\":\"Speech pitch. Range: -12 to 12, where 0 is normal pitch.\",\"default\":\"0\",\"constraints\":\"Range: -12 to 12\"},{\"name\":\"emotion\",\"type\":\"string\",\"required\":false,\"description\":\"The emotion of the generated speech.\",\"default\":\"happy\",\"constraints\":\"Allowed values: happy, sad, angry, fearful, disgusted, surprised, neutral\"},{\"name\":\"english_normalization\",\"type\":\"boolean\",\"required\":false,\"description\":\"Improves performance in number-reading scenarios.\",\"default\":\"false\"},{\"name\":\"sample_rate\",\"type\":\"integer\",\"required\":false,\"description\":\"Sample rate of generated sound.\",\"constraints\":\"Allowed values: 8000, 16000, 22050, 24000, 32000, 44100\"},{\"name\":\"bitrate\",\"type\":\"integer\",\"required\":false,\"description\":\"Bitrate of generated sound.\",\"constraints\":\"Allowed values: 32000, 64000, 128000, 256000\"},{\"name\":\"channel\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of channels. 1: mono, 2: stereo.\",\"constraints\":\"Allowed values: 1, 2\"},{\"name\":\"format\",\"type\":\"string\",\"required\":false,\"description\":\"Format of generated sound.\",\"constraints\":\"Allowed values: mp3, pcm, flac\"},{\"name\":\"language_boost\",\"type\":\"string\",\"required\":false,\"description\":\"Enhance the ability to recognize specified languages and dialects.\",\"constraints\":\"Allowed values: Chinese, Chinese,Yue, English, Arabic, Russian, Spanish, French, Portuguese, German, Turkish, Dutch, Ukrainian, Vietnamese, Indonesian, Japanese, Italian, Korean, Thai, Polish, Romanian, Greek, Czech, Finnish, Hindi, Bulgarian, Danish, Hebrew, Malay, Slovak, Swedish, Croatian, Hungarian, Norwegian, Slovenian, Catalan, Nynorsk, Afrikaans, auto\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/speech/2.8/hd\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"voice_id\\\": \\\"Wise_Woman\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/speech/2.8/hd\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"voice_id\\\": \\\"Wise_Woman\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/speech/2.8/hd\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"voice_id\\\": \\\"Wise_Woman\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/speech/2.8/hd\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "MiniMax Speech 2.8 HD" modelId: "minimax/speech/2.8/hd" diff --git a/model-api-reference/audio-generation/minimax/speech/2.8/turbo.md b/model-api-reference/audio-generation/minimax/speech/2.8/turbo.md index e259a519..f0e16963 100644 --- a/model-api-reference/audio-generation/minimax/speech/2.8/turbo.md +++ b/model-api-reference/audio-generation/minimax/speech/2.8/turbo.md @@ -4,7 +4,7 @@ description: "MiniMax Speech 2.8 Turbo API reference for SandBase. Use model min aside: false outline: false apiReferenceKey: "audio/minimax/speech/2.8/turbo" -apiReferenceJson: "{\"title\":\"MiniMax Speech 2.8 Turbo\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax Speech 2.8 Turbo text-to-speech model with fast voice synthesis, enhanced expressiveness, 40+ language support, and voice cloning.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/speech/2.8/turbo.\",\"default\":\"minimax/speech/2.8/turbo\"},{\"name\":\"text\",\"type\":\"string\",\"required\":true,\"description\":\"Text to convert to speech. Use <#x#> between words to control pause duration (0.01-99.99s).\",\"default\":\"Hello, welcome to Sandbase\"},{\"name\":\"voice_id\",\"type\":\"string\",\"required\":true,\"description\":\"Voice ID for speech synthesis. Use a predefined system voice or a custom cloned voice ID.\",\"default\":\"Wise_Woman\"},{\"name\":\"speed\",\"type\":\"number\",\"required\":false,\"description\":\"Speech speed. Range: 0.5-2.0, where 1.0 is normal speed.\",\"default\":\"1\",\"constraints\":\"Range: 0.5 to 2\"},{\"name\":\"volume\",\"type\":\"number\",\"required\":false,\"description\":\"Speech volume. Range: 0.1-10.0, where 1.0 is normal volume.\",\"default\":\"1\",\"constraints\":\"Range: 0.1 to 10\"},{\"name\":\"pitch\",\"type\":\"integer\",\"required\":false,\"description\":\"Speech pitch. Range: -12 to 12, where 0 is normal pitch.\",\"default\":\"0\",\"constraints\":\"Range: -12 to 12\"},{\"name\":\"emotion\",\"type\":\"string\",\"required\":false,\"description\":\"The emotion of the generated speech.\",\"default\":\"happy\",\"constraints\":\"Allowed values: happy, sad, angry, fearful, disgusted, surprised, neutral\"},{\"name\":\"english_normalization\",\"type\":\"boolean\",\"required\":false,\"description\":\"Improves performance in number-reading scenarios.\",\"default\":\"false\"},{\"name\":\"sample_rate\",\"type\":\"integer\",\"required\":false,\"description\":\"Sample rate of generated sound.\",\"constraints\":\"Allowed values: 8000, 16000, 22050, 24000, 32000, 44100\"},{\"name\":\"bitrate\",\"type\":\"integer\",\"required\":false,\"description\":\"Bitrate of generated sound.\",\"constraints\":\"Allowed values: 32000, 64000, 128000, 256000\"},{\"name\":\"channel\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of channels. 1: mono, 2: stereo.\",\"constraints\":\"Allowed values: 1, 2\"},{\"name\":\"format\",\"type\":\"string\",\"required\":false,\"description\":\"Format of generated sound.\",\"constraints\":\"Allowed values: mp3, pcm, flac\"},{\"name\":\"language_boost\",\"type\":\"string\",\"required\":false,\"description\":\"Enhance the ability to recognize specified languages and dialects.\",\"constraints\":\"Allowed values: Chinese, Chinese,Yue, English, Arabic, Russian, Spanish, French, Portuguese, German, Turkish, Dutch, Ukrainian, Vietnamese, Indonesian, Japanese, Italian, Korean, Thai, Polish, Romanian, Greek, Czech, Finnish, Hindi, Bulgarian, Danish, Hebrew, Malay, Slovak, Swedish, Croatian, Hungarian, Norwegian, Slovenian, Catalan, Nynorsk, Afrikaans, auto\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/speech/2.8/turbo\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"voice_id\\\": \\\"Wise_Woman\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/speech/2.8/turbo\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"voice_id\\\": \\\"Wise_Woman\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/speech/2.8/turbo\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"voice_id\\\": \\\"Wise_Woman\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/speech/2.8/turbo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"MiniMax Speech 2.8 Turbo\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax Speech 2.8 Turbo by MiniMax converts text into expressive speech in 40+ languages with low latency, system or cloned voices, and emotion control.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/speech/2.8/turbo.\",\"default\":\"minimax/speech/2.8/turbo\"},{\"name\":\"text\",\"type\":\"string\",\"required\":true,\"description\":\"Text to convert to speech. Use <#x#> between words to control pause duration (0.01-99.99s).\",\"default\":\"Hello, welcome to Sandbase\"},{\"name\":\"voice_id\",\"type\":\"string\",\"required\":true,\"description\":\"Voice ID for speech synthesis. Use a predefined system voice or a custom cloned voice ID.\",\"default\":\"Wise_Woman\"},{\"name\":\"speed\",\"type\":\"number\",\"required\":false,\"description\":\"Speech speed. Range: 0.5-2.0, where 1.0 is normal speed.\",\"default\":\"1\",\"constraints\":\"Range: 0.5 to 2\"},{\"name\":\"volume\",\"type\":\"number\",\"required\":false,\"description\":\"Speech volume. Range: 0.1-10.0, where 1.0 is normal volume.\",\"default\":\"1\",\"constraints\":\"Range: 0.1 to 10\"},{\"name\":\"pitch\",\"type\":\"integer\",\"required\":false,\"description\":\"Speech pitch. Range: -12 to 12, where 0 is normal pitch.\",\"default\":\"0\",\"constraints\":\"Range: -12 to 12\"},{\"name\":\"emotion\",\"type\":\"string\",\"required\":false,\"description\":\"The emotion of the generated speech.\",\"default\":\"happy\",\"constraints\":\"Allowed values: happy, sad, angry, fearful, disgusted, surprised, neutral\"},{\"name\":\"english_normalization\",\"type\":\"boolean\",\"required\":false,\"description\":\"Improves performance in number-reading scenarios.\",\"default\":\"false\"},{\"name\":\"sample_rate\",\"type\":\"integer\",\"required\":false,\"description\":\"Sample rate of generated sound.\",\"constraints\":\"Allowed values: 8000, 16000, 22050, 24000, 32000, 44100\"},{\"name\":\"bitrate\",\"type\":\"integer\",\"required\":false,\"description\":\"Bitrate of generated sound.\",\"constraints\":\"Allowed values: 32000, 64000, 128000, 256000\"},{\"name\":\"channel\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of channels. 1: mono, 2: stereo.\",\"constraints\":\"Allowed values: 1, 2\"},{\"name\":\"format\",\"type\":\"string\",\"required\":false,\"description\":\"Format of generated sound.\",\"constraints\":\"Allowed values: mp3, pcm, flac\"},{\"name\":\"language_boost\",\"type\":\"string\",\"required\":false,\"description\":\"Enhance the ability to recognize specified languages and dialects.\",\"constraints\":\"Allowed values: Chinese, Chinese,Yue, English, Arabic, Russian, Spanish, French, Portuguese, German, Turkish, Dutch, Ukrainian, Vietnamese, Indonesian, Japanese, Italian, Korean, Thai, Polish, Romanian, Greek, Czech, Finnish, Hindi, Bulgarian, Danish, Hebrew, Malay, Slovak, Swedish, Croatian, Hungarian, Norwegian, Slovenian, Catalan, Nynorsk, Afrikaans, auto\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/speech/2.8/turbo\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"voice_id\\\": \\\"Wise_Woman\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/speech/2.8/turbo\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"voice_id\\\": \\\"Wise_Woman\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/speech/2.8/turbo\\\",\\n \\\"text\\\": \\\"Hello, welcome to Sandbase\\\",\\n \\\"voice_id\\\": \\\"Wise_Woman\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/speech/2.8/turbo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "MiniMax Speech 2.8 Turbo" modelId: "minimax/speech/2.8/turbo" diff --git a/model-api-reference/audio-generation/minimax/voice-clone.md b/model-api-reference/audio-generation/minimax/voice-clone.md index bd582cd5..d96f3ec0 100644 --- a/model-api-reference/audio-generation/minimax/voice-clone.md +++ b/model-api-reference/audio-generation/minimax/voice-clone.md @@ -1,12 +1,12 @@ --- -title: "MiniMax Voice Cloning API Reference" -description: "MiniMax Voice Cloning API reference for SandBase. Use model minimax/voice-clone with /v1/run; see request and response examples." +title: "MiniMax Voice Clone API Reference" +description: "MiniMax Voice Clone API reference for SandBase. Use model minimax/voice-clone with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "audio/minimax/voice-clone" -apiReferenceJson: "{\"title\":\"MiniMax Voice Cloning\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Voice Clone is MiniMax's text-to-speech AI model. Generate human-like voiceovers with expressive intonation, multilingual support, and customizable voice characteristics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/voice-clone.\",\"default\":\"minimax/voice-clone\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input audio file for voice cloning. Should be at least 10 seconds long. To retain the voice permanently, use it with a TTS (text-to-speech) endpoint at least once within 7 days. Otherwise, it will be automatically deleted.\"},{\"name\":\"text\",\"type\":\"string\",\"required\":false,\"description\":\"Text to generate a TTS preview with the cloned voice (optional)\",\"default\":\"Hello, this is a preview of your cloned voice! I hope you like it!\"},{\"name\":\"need_volume_normalization\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable volume normalization for the cloned voice\",\"default\":\"false\"},{\"name\":\"noise_reduction\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable noise reduction for the cloned voice\",\"default\":\"false\"},{\"name\":\"accuracy\",\"type\":\"number\",\"required\":false,\"description\":\"Text validation accuracy threshold (0-1)\",\"constraints\":\"Range: 0 to 1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/voice-clone\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/minimax/voice-clone/input_audio_0.wav\\\",\\n \\\"text\\\": \\\"Hello, this is a preview of your cloned voice! I hope you like it!\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/voice-clone\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/minimax/voice-clone/input_audio_0.wav\\\",\\n \\\"text\\\": \\\"Hello, this is a preview of your cloned voice! I hope you like it!\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/voice-clone\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/minimax/voice-clone/input_audio_0.wav\\\",\\n \\\"text\\\": \\\"Hello, this is a preview of your cloned voice! I hope you like it!\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/voice-clone\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"MiniMax Voice Clone\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax Voice Clone by MiniMax creates a reusable custom voice from a reference recording of at least 10 seconds and returns a short preview spoken in that voice.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/voice-clone.\",\"default\":\"minimax/voice-clone\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input audio file for voice cloning. Should be at least 10 seconds long. To retain the voice permanently, use it with a TTS (text-to-speech) endpoint at least once within 7 days. Otherwise, it will be automatically deleted.\"},{\"name\":\"text\",\"type\":\"string\",\"required\":false,\"description\":\"Text to generate a TTS preview with the cloned voice (optional)\",\"default\":\"Hello, this is a preview of your cloned voice! I hope you like it!\"},{\"name\":\"need_volume_normalization\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable volume normalization for the cloned voice\",\"default\":\"false\"},{\"name\":\"noise_reduction\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable noise reduction for the cloned voice\",\"default\":\"false\"},{\"name\":\"accuracy\",\"type\":\"number\",\"required\":false,\"description\":\"Text validation accuracy threshold (0-1)\",\"constraints\":\"Range: 0 to 1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/voice-clone\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/minimax/voice-clone/input_audio_0.wav\\\",\\n \\\"text\\\": \\\"Hello, this is a preview of your cloned voice! I hope you like it!\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/voice-clone\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/minimax/voice-clone/input_audio_0.wav\\\",\\n \\\"text\\\": \\\"Hello, this is a preview of your cloned voice! I hope you like it!\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/voice-clone\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/minimax/voice-clone/input_audio_0.wav\\\",\\n \\\"text\\\": \\\"Hello, this is a preview of your cloned voice! I hope you like it!\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/voice-clone\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "MiniMax Voice Cloning" + modelName: "MiniMax Voice Clone" modelId: "minimax/voice-clone" vendor: "MiniMax" vendorSlug: "minimax" diff --git a/model-api-reference/audio-generation/minimax/voice-design.md b/model-api-reference/audio-generation/minimax/voice-design.md index a6314d8c..7368a349 100644 --- a/model-api-reference/audio-generation/minimax/voice-design.md +++ b/model-api-reference/audio-generation/minimax/voice-design.md @@ -4,7 +4,7 @@ description: "MiniMax Voice Design API reference for SandBase. Use model minimax aside: false outline: false apiReferenceKey: "audio/minimax/voice-design" -apiReferenceJson: "{\"title\":\"MiniMax Voice Design\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Voice Design by MiniMax - convert text to natural-sounding speech with AI. Supports multiple voices, languages, emotions, and speaking styles for content creation and accessibility.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/voice-design.\",\"default\":\"minimax/voice-design\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Voice description prompt for generating a personalized voice\"},{\"name\":\"preview_text\",\"type\":\"string\",\"required\":false,\"description\":\"Text for audio preview. Limited to 500 characters. A fee of $30 per 1M characters will be charged for the generation of the preview audio.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/voice-design\\\",\\n \\\"prompt\\\": \\\"Bubbly and excitable female pop star interviewee, youthful, slightly breathless, and very enthusiastic\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/voice-design\\\",\\n \\\"prompt\\\": \\\"Bubbly and excitable female pop star interviewee, youthful, slightly breathless, and very enthusiastic\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/voice-design\\\",\\n \\\"prompt\\\": \\\"Bubbly and excitable female pop star interviewee, youthful, slightly breathless, and very enthusiastic\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/voice-design\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"MiniMax Voice Design\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax Voice Design by MiniMax creates a new reusable voice from a text description of its timbre, age, and style, and returns a spoken preview.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/voice-design.\",\"default\":\"minimax/voice-design\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Voice description prompt for generating a personalized voice\"},{\"name\":\"preview_text\",\"type\":\"string\",\"required\":false,\"description\":\"Text for audio preview. Limited to 500 characters. A fee of $30 per 1M characters will be charged for the generation of the preview audio.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/voice-design\\\",\\n \\\"prompt\\\": \\\"Bubbly and excitable female pop star interviewee, youthful, slightly breathless, and very enthusiastic\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/voice-design\\\",\\n \\\"prompt\\\": \\\"Bubbly and excitable female pop star interviewee, youthful, slightly breathless, and very enthusiastic\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/voice-design\\\",\\n \\\"prompt\\\": \\\"Bubbly and excitable female pop star interviewee, youthful, slightly breathless, and very enthusiastic\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/voice-design\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "MiniMax Voice Design" modelId: "minimax/voice-design" diff --git a/model-api-reference/audio-generation/mirelo/sfx1.6/text-to-audio.md b/model-api-reference/audio-generation/mirelo/sfx1.6/text-to-audio.md deleted file mode 100644 index 1476c74b..00000000 --- a/model-api-reference/audio-generation/mirelo/sfx1.6/text-to-audio.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Mirelo SFX1.6 API Reference — Mirelo Sfx1.6 / Text To Audio API" -description: "Mirelo SFX1.6 API reference for SandBase. Use model mirelo/sfx1.6/text-to-audio with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/mirelo/sfx1.6/text-to-audio" -apiReferenceJson: "{\"title\":\"Mirelo SFX1.6\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sfx1.6 by Mirelo - generate music, sound effects, and audio from text descriptions with AI. Create original compositions, ambient sounds, and audio content for any creative project.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mirelo/sfx1.6/text-to-audio.\",\"default\":\"mirelo/sfx1.6/text-to-audio\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated audio in seconds.\",\"default\":\"10\",\"constraints\":\"Range: 0.1 to 60\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for generation. -1 or None for random.\",\"constraints\":\"Range: -1 to ∞\"},{\"name\":\"upload_audio_format\",\"type\":\"string\",\"required\":false,\"description\":\"Audio format for the returned files.\",\"default\":\"wav\",\"constraints\":\"Allowed values: wav, mp3, aac, flac\"},{\"name\":\"ambience\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, generate a seamlessly loopable ambience tile (room tone, rain, drones, etc.). When false, generate a generic text-conditioned SFX of `duration` seconds.\",\"default\":\"false\"},{\"name\":\"double_output\",\"type\":\"boolean\",\"required\":false,\"description\":\"Only used when ambience=true: concatenate the loop with itself for a 2x-length output.\",\"default\":\"false\"},{\"name\":\"num_samples\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of variations to generate.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 4\"},{\"name\":\"text_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Text prompt for the generated audio.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mirelo/sfx1.6/text-to-audio\\\",\\n \\\"duration\\\": 10\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"mirelo/sfx1.6/text-to-audio\\\",\\n \\\"duration\\\": 10\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"mirelo/sfx1.6/text-to-audio\\\",\\n \\\"duration\\\": 10\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"mirelo/sfx1.6/text-to-audio\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Mirelo SFX1.6" - modelId: "mirelo/sfx1.6/text-to-audio" - vendor: "Mirelo" - vendorSlug: "mirelo" - modelSlug: "sfx1.6/text-to-audio" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-05-18T18:43:51.572Z" - capabilities: ["text-to-audio"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/sonilo/1.1/text-to-music.md b/model-api-reference/audio-generation/sonilo/1.1/text-to-music.md deleted file mode 100644 index 3403a88b..00000000 --- a/model-api-reference/audio-generation/sonilo/1.1/text-to-music.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sonilo V1.1 Text to Music API Reference" -description: "Sonilo V1.1 Text to Music API reference for SandBase. Use model sonilo/1.1/text-to-music with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/sonilo/1.1/text-to-music" -apiReferenceJson: "{\"title\":\"Sonilo V1.1 Text to Music\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"1.1 Text To Music is Sonilo's AI audio generation model. Produce high-quality music tracks, sound effects, and audio landscapes from natural language prompts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sonilo/1.1/text-to-music.\",\"default\":\"sonilo/1.1/text-to-music\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the music to generate.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Requested output duration in seconds (max 600). Also used for billing (one billable unit per second per sample, rounded up; each sample under 10s bills as 10s).\",\"default\":\"90\",\"constraints\":\"Range: 1 to 600\"},{\"name\":\"num_samples\",\"type\":\"integer\",\"required\":false,\"description\":\"How many distinct music tracks to generate.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 3\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sonilo/1.1/text-to-music\\\",\\n \\\"prompt\\\": \\\"A blend of R&B warmth, soul depth, neo-soul texture, gospel spirit, pop clarity, and jazz sophistication.\\\",\\n \\\"duration\\\": 90\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"sonilo/1.1/text-to-music\\\",\\n \\\"prompt\\\": \\\"A blend of R&B warmth, soul depth, neo-soul texture, gospel spirit, pop clarity, and jazz sophistication.\\\",\\n \\\"duration\\\": 90\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"sonilo/1.1/text-to-music\\\",\\n \\\"prompt\\\": \\\"A blend of R&B warmth, soul depth, neo-soul texture, gospel spirit, pop clarity, and jazz sophistication.\\\",\\n \\\"duration\\\": 90\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"sonilo/1.1/text-to-music\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Sonilo V1.1 Text to Music" - modelId: "sonilo/1.1/text-to-music" - vendor: "Sonilo" - vendorSlug: "sonilo" - modelSlug: "1.1/text-to-music" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-03T18:40:52.042Z" - capabilities: ["text-to-audio"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/sonilo/1.1/text-to-sound-effects.md b/model-api-reference/audio-generation/sonilo/1.1/text-to-sound-effects.md deleted file mode 100644 index 543c8fdb..00000000 --- a/model-api-reference/audio-generation/sonilo/1.1/text-to-sound-effects.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "V1.1 Text to Sound Effects API Reference" -description: "V1.1 Text to Sound Effects API reference for SandBase. Use model sonilo/1.1/text-to-sound-effects with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/sonilo/1.1/text-to-sound-effects" -apiReferenceJson: "{\"title\":\"V1.1 Text to Sound Effects\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"1.1 Text To Sound Effects is Sonilo's AI audio generation model. Produce high-quality music tracks, sound effects, and audio landscapes from natural language prompts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sonilo/1.1/text-to-sound-effects.\",\"default\":\"sonilo/1.1/text-to-sound-effects\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Describe the sound you want to create.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"How long the audio should be, in seconds.\",\"default\":\"8\",\"constraints\":\"Range: 1 to 180\"},{\"name\":\"audio_format\",\"type\":\"string\",\"required\":false,\"description\":\"Audio file format: aac (default), mp3, wav, or flac.\",\"default\":\"aac\",\"constraints\":\"Allowed values: wav, mp3, aac, flac\"},{\"name\":\"num_samples\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of output samples to generate and bill.\",\"default\":\"1\",\"constraints\":\"Minimum: 1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sonilo/1.1/text-to-sound-effects\\\",\\n \\\"prompt\\\": \\\"Heavy rain on a tin roof with distant rolling thunder\\\",\\n \\\"duration\\\": 8\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"sonilo/1.1/text-to-sound-effects\\\",\\n \\\"prompt\\\": \\\"Heavy rain on a tin roof with distant rolling thunder\\\",\\n \\\"duration\\\": 8\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"sonilo/1.1/text-to-sound-effects\\\",\\n \\\"prompt\\\": \\\"Heavy rain on a tin roof with distant rolling thunder\\\",\\n \\\"duration\\\": 8\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"sonilo/1.1/text-to-sound-effects\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "V1.1 Text to Sound Effects" - modelId: "sonilo/1.1/text-to-sound-effects" - vendor: "Sonilo" - vendorSlug: "sonilo" - modelSlug: "1.1/text-to-sound-effects" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-07-21T09:44:15.658Z" - capabilities: ["text-to-audio"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/stability-ai/stable-audio/2.5/audio-to-audio.md b/model-api-reference/audio-generation/stability-ai/stable-audio/2.5/audio-to-audio.md deleted file mode 100644 index 11b69a2d..00000000 --- a/model-api-reference/audio-generation/stability-ai/stable-audio/2.5/audio-to-audio.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Stable Audio 2.5 Audio to Audio API Reference" -description: "Stable Audio 2.5 Audio to Audio API reference for SandBase. Use model stability-ai/stable-audio/2.5/audio-to-audio with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/stability-ai/stable-audio/2.5/audio-to-audio" -apiReferenceJson: "{\"title\":\"Stable Audio 2.5 Audio to Audio\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Stable Audio 2.5 Audio To Audio by stability-ai - advanced AI model for audio-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to stability-ai/stable-audio/2.5/audio-to-audio.\",\"default\":\"stability-ai/stable-audio/2.5/audio-to-audio\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to guide the audio generation\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The audio clip to transform\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"stability-ai/stable-audio/2.5/audio-to-audio\\\",\\n \\\"prompt\\\": \\\"Post rock, guitars, bass, strings, euphoric, up-lifting, moody, flowing, raw, epic\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/stability-ai/stable-audio/2.5/audio-to-audio/input_audio_0.wav\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"stability-ai/stable-audio/2.5/audio-to-audio\\\",\\n \\\"prompt\\\": \\\"Post rock, guitars, bass, strings, euphoric, up-lifting, moody, flowing, raw, epic\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/stability-ai/stable-audio/2.5/audio-to-audio/input_audio_0.wav\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"stability-ai/stable-audio/2.5/audio-to-audio\\\",\\n \\\"prompt\\\": \\\"Post rock, guitars, bass, strings, euphoric, up-lifting, moody, flowing, raw, epic\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/stability-ai/stable-audio/2.5/audio-to-audio/input_audio_0.wav\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"stability-ai/stable-audio/2.5/audio-to-audio\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Stable Audio 2.5 Audio to Audio" - modelId: "stability-ai/stable-audio/2.5/audio-to-audio" - vendor: "stability-ai" - vendorSlug: "stability-ai" - modelSlug: "stable-audio/2.5/audio-to-audio" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-10T11:51:47.856Z" - capabilities: ["audio-to-audio"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/stability-ai/stable-audio/2.5/inpaint.md b/model-api-reference/audio-generation/stability-ai/stable-audio/2.5/inpaint.md deleted file mode 100644 index 0b7563b5..00000000 --- a/model-api-reference/audio-generation/stability-ai/stable-audio/2.5/inpaint.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Stable Audio 2.5 Inpaint API Reference" -description: "Stable Audio 2.5 Inpaint API reference for SandBase. Use model stability-ai/stable-audio/2.5/inpaint with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/stability-ai/stable-audio/2.5/inpaint" -apiReferenceJson: "{\"title\":\"Stable Audio 2.5 Inpaint\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Stable Audio 2.5 Inpaint by stability-ai - advanced AI model for audio-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to stability-ai/stable-audio/2.5/inpaint.\",\"default\":\"stability-ai/stable-audio/2.5/inpaint\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to guide the audio generation\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The audio clip to inpaint\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"stability-ai/stable-audio/2.5/inpaint\\\",\\n \\\"prompt\\\": \\\"Lofi hip hop beat, chillhop\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/stability-ai/stable-audio/2.5/inpaint/input_audio_0.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"stability-ai/stable-audio/2.5/inpaint\\\",\\n \\\"prompt\\\": \\\"Lofi hip hop beat, chillhop\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/stability-ai/stable-audio/2.5/inpaint/input_audio_0.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"stability-ai/stable-audio/2.5/inpaint\\\",\\n \\\"prompt\\\": \\\"Lofi hip hop beat, chillhop\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/stability-ai/stable-audio/2.5/inpaint/input_audio_0.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"stability-ai/stable-audio/2.5/inpaint\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Stable Audio 2.5 Inpaint" - modelId: "stability-ai/stable-audio/2.5/inpaint" - vendor: "stability-ai" - vendorSlug: "stability-ai" - modelSlug: "stable-audio/2.5/inpaint" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-10T11:46:09.286Z" - capabilities: ["audio-to-audio"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/stability-ai/stable-audio/2.5/text-to-audio.md b/model-api-reference/audio-generation/stability-ai/stable-audio/2.5/text-to-audio.md deleted file mode 100644 index c4bab4e5..00000000 --- a/model-api-reference/audio-generation/stability-ai/stable-audio/2.5/text-to-audio.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Stable Audio 2.5 Text to Audio API Reference" -description: "Stable Audio 2.5 Text to Audio API reference for SandBase. Use model stability-ai/stable-audio/2.5/text-to-audio with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/stability-ai/stable-audio/2.5/text-to-audio" -apiReferenceJson: "{\"title\":\"Stable Audio 2.5 Text to Audio\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Stable Audio 2.5 by stability-ai - generate music, sound effects, and audio from text descriptions with AI. Create original compositions, ambient sounds, and audio content for any creative project.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to stability-ai/stable-audio/2.5/text-to-audio.\",\"default\":\"stability-ai/stable-audio/2.5/text-to-audio\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate audio from\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"stability-ai/stable-audio/2.5/text-to-audio\\\",\\n \\\"prompt\\\": \\\"A beautiful piano arpeggio grows into a grand orchestral climax\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"stability-ai/stable-audio/2.5/text-to-audio\\\",\\n \\\"prompt\\\": \\\"A beautiful piano arpeggio grows into a grand orchestral climax\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"stability-ai/stable-audio/2.5/text-to-audio\\\",\\n \\\"prompt\\\": \\\"A beautiful piano arpeggio grows into a grand orchestral climax\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"stability-ai/stable-audio/2.5/text-to-audio\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Stable Audio 2.5 Text to Audio" - modelId: "stability-ai/stable-audio/2.5/text-to-audio" - vendor: "stability-ai" - vendorSlug: "stability-ai" - modelSlug: "stable-audio/2.5/text-to-audio" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-10T11:50:27.666Z" - capabilities: ["text-to-audio"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/stability-ai/stable-audio/3/medium/text-to-audio.md b/model-api-reference/audio-generation/stability-ai/stable-audio/3/medium/text-to-audio.md new file mode 100644 index 00000000..964c821f --- /dev/null +++ b/model-api-reference/audio-generation/stability-ai/stable-audio/3/medium/text-to-audio.md @@ -0,0 +1,21 @@ +--- +title: "Stable Audio 3 Medium Text to Audio API Reference" +description: "SandBase API reference for model stability-ai/stable-audio/3/medium/text-to-audio. Call /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "audio/stability-ai/stable-audio/3/medium/text-to-audio" +apiReferenceJson: "{\"title\":\"Stable Audio 3 Medium Text to Audio\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Stable Audio 3 Medium by Stability AI generates music, ambience and sound design up to about 6 minutes from a text prompt.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to stability-ai/stable-audio/3/medium/text-to-audio.\",\"default\":\"stability-ai/stable-audio/3/medium/text-to-audio\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of the audio to generate.\"},{\"name\":\"negative_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Qualities to avoid in the output.\",\"default\":\"\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Audio container format.\",\"default\":\"mp3\",\"constraints\":\"Allowed values: mp3, wav, flac, ogg, opus, m4a, aac\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible outputs.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration in seconds (1–380).\",\"default\":\"30\",\"constraints\":\"Range: 1 to 380\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"stability-ai/stable-audio/3/medium/text-to-audio\\\",\\n \\\"prompt\\\": \\\"An anthemic Pop Rock instrumental that fills your head with nostalgic thoughtfulness\\\",\\n \\\"duration\\\": 30,\\n \\\"output_format\\\": \\\"mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"stability-ai/stable-audio/3/medium/text-to-audio\\\",\\n \\\"prompt\\\": \\\"An anthemic Pop Rock instrumental that fills your head with nostalgic thoughtfulness\\\",\\n \\\"duration\\\": 30,\\n \\\"output_format\\\": \\\"mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"stability-ai/stable-audio/3/medium/text-to-audio\\\",\\n \\\"prompt\\\": \\\"An anthemic Pop Rock instrumental that fills your head with nostalgic thoughtfulness\\\",\\n \\\"duration\\\": 30,\\n \\\"output_format\\\": \\\"mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"stability-ai/stable-audio/3/medium/text-to-audio\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Stable Audio 3 Medium Text to Audio" + modelId: "stability-ai/stable-audio/3/medium/text-to-audio" + vendor: "stability-ai" + vendorSlug: "stability-ai" + modelSlug: "stable-audio/3/medium/text-to-audio" + protocol: "Audio Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-06-03T23:39:28.991Z" + capabilities: ["text-to-audio"] + category: "Audio Generation" +--- + + diff --git a/model-api-reference/audio-generation/stability-ai/stable-audio/3/small/music/text-to-audio.md b/model-api-reference/audio-generation/stability-ai/stable-audio/3/small/music/text-to-audio.md new file mode 100644 index 00000000..9f15edd9 --- /dev/null +++ b/model-api-reference/audio-generation/stability-ai/stable-audio/3/small/music/text-to-audio.md @@ -0,0 +1,21 @@ +--- +title: "Stable Audio 3 Small Music API Reference" +description: "Stable Audio 3 Small Music API reference for SandBase. Use model stability-ai/stable-audio/3/small/music/text-to-audio with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "audio/stability-ai/stable-audio/3/small/music/text-to-audio" +apiReferenceJson: "{\"title\":\"Stable Audio 3 Small Music\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Stable Audio 3 Small Music by Stability AI is a fast, low-cost music generator producing tracks up to 2 minutes from a text prompt.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to stability-ai/stable-audio/3/small/music/text-to-audio.\",\"default\":\"stability-ai/stable-audio/3/small/music/text-to-audio\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of the audio to generate.\"},{\"name\":\"negative_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Qualities to avoid in the output.\",\"default\":\"\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Audio container format.\",\"default\":\"mp3\",\"constraints\":\"Allowed values: mp3, wav, flac, ogg, opus, m4a, aac\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible outputs.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration in seconds (1–120).\",\"default\":\"30\",\"constraints\":\"Range: 1 to 120\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-music\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"stability-ai/stable-audio/3/small/music/text-to-audio\\\",\\n \\\"prompt\\\": \\\"An anthemic Pop Rock instrumental that fills your head with nostalgic thoughtfulness\\\",\\n \\\"duration\\\": 30,\\n \\\"output_format\\\": \\\"mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"stability-ai/stable-audio/3/small/music/text-to-audio\\\",\\n \\\"prompt\\\": \\\"An anthemic Pop Rock instrumental that fills your head with nostalgic thoughtfulness\\\",\\n \\\"duration\\\": 30,\\n \\\"output_format\\\": \\\"mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"stability-ai/stable-audio/3/small/music/text-to-audio\\\",\\n \\\"prompt\\\": \\\"An anthemic Pop Rock instrumental that fills your head with nostalgic thoughtfulness\\\",\\n \\\"duration\\\": 30,\\n \\\"output_format\\\": \\\"mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"stability-ai/stable-audio/3/small/music/text-to-audio\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Stable Audio 3 Small Music" + modelId: "stability-ai/stable-audio/3/small/music/text-to-audio" + vendor: "stability-ai" + vendorSlug: "stability-ai" + modelSlug: "stable-audio/3/small/music/text-to-audio" + protocol: "Audio Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-06-03T23:38:34.502Z" + capabilities: ["text-to-music"] + category: "Audio Generation" +--- + + diff --git a/model-api-reference/audio-generation/stability-ai/stable-audio/open.md b/model-api-reference/audio-generation/stability-ai/stable-audio/open.md deleted file mode 100644 index b6601e37..00000000 --- a/model-api-reference/audio-generation/stability-ai/stable-audio/open.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Stable Audio Open API Reference" -description: "Stable Audio Open API reference for SandBase. Use model stability-ai/stable-audio/open with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "audio/stability-ai/stable-audio/open" -apiReferenceJson: "{\"title\":\"Stable Audio Open\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Stable Audio Open is stability-ai's AI audio generation model. Produce high-quality music tracks, sound effects, and audio landscapes from natural language prompts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to stability-ai/stable-audio/open.\",\"default\":\"stability-ai/stable-audio/open\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate audio from\"},{\"name\":\"seconds_start\",\"type\":\"integer\",\"required\":false,\"description\":\"The start point of the audio clip to generate\",\"default\":\"0\",\"constraints\":\"Range: 0 to 47\"},{\"name\":\"seconds_total\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the audio clip to generate\",\"default\":\"30\",\"constraints\":\"Range: 0 to 47\"},{\"name\":\"steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of steps to denoise the audio for\",\"default\":\"100\",\"constraints\":\"Range: 2 to 1000\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"stability-ai/stable-audio/open\\\",\\n \\\"prompt\\\": \\\"128 BPM tech house drum loop\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"stability-ai/stable-audio/open\\\",\\n \\\"prompt\\\": \\\"128 BPM tech house drum loop\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"stability-ai/stable-audio/open\\\",\\n \\\"prompt\\\": \\\"128 BPM tech house drum loop\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"stability-ai/stable-audio/open\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Stable Audio Open" - modelId: "stability-ai/stable-audio/open" - vendor: "stability-ai" - vendorSlug: "stability-ai" - modelSlug: "stable-audio/open" - protocol: "Audio Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-01-04T00:00:00Z" - capabilities: ["text-to-audio"] - category: "Audio Generation" ---- - - diff --git a/model-api-reference/audio-generation/xai/grok-tts.md b/model-api-reference/audio-generation/xai/grok-tts.md index 80557c41..f9d8bfa0 100644 --- a/model-api-reference/audio-generation/xai/grok-tts.md +++ b/model-api-reference/audio-generation/xai/grok-tts.md @@ -4,7 +4,7 @@ description: "xAI Text to Speech API reference for SandBase. Use model xai/grok- aside: false outline: false apiReferenceKey: "audio/xai/grok-tts" -apiReferenceJson: "{\"title\":\"xAI Text to Speech\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Grok TTS by xAI - convert text to natural-sounding speech with AI. Supports multiple voices, languages, emotions, and speaking styles for content creation and accessibility.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xai/grok-tts.\",\"default\":\"xai/grok-tts\"},{\"name\":\"text\",\"type\":\"string\",\"required\":false,\"description\":\"The text to convert to speech. Maximum 15,000 characters. Supports speech tags for expressive delivery: inline tags like [laugh], [pause], [sigh] and wrapping tags like text, text.\"},{\"name\":\"voice\",\"type\":\"string\",\"required\":false,\"description\":\"The voice to use for speech synthesis.\",\"constraints\":\"Allowed values: eve, ara, rex, sal, leo\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xai/grok-tts\\\",\\n \\\"text\\\": \\\"Hello! This is xAI text to speech, brought to you by Fal AI.\\\",\\n \\\"voice\\\": \\\"alloy\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"xai/grok-tts\\\",\\n \\\"text\\\": \\\"Hello! This is xAI text to speech, brought to you by Fal AI.\\\",\\n \\\"voice\\\": \\\"alloy\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"xai/grok-tts\\\",\\n \\\"text\\\": \\\"Hello! This is xAI text to speech, brought to you by Fal AI.\\\",\\n \\\"voice\\\": \\\"alloy\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"xai/grok-tts\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"xAI Text to Speech\",\"operation\":\"Audio Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Grok Tts by xAI - convert text to natural-sounding speech with AI. Supports multiple voices, languages, emotions, and speaking styles for content creation and accessibility.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xai/grok-tts.\",\"default\":\"xai/grok-tts\"},{\"name\":\"text\",\"type\":\"string\",\"required\":false,\"description\":\"The text to convert to speech. Maximum 15,000 characters. Supports speech tags for expressive delivery: inline tags like [laugh], [pause], [sigh] and wrapping tags like text, text.\"},{\"name\":\"voice\",\"type\":\"string\",\"required\":false,\"description\":\"The voice to use for speech synthesis.\",\"constraints\":\"Allowed values: eve, ara, rex, sal, leo\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-speech\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xai/grok-tts\\\",\\n \\\"text\\\": \\\"Hello! This is xAI text to speech, brought to you by Fal AI.\\\",\\n \\\"voice\\\": \\\"alloy\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"xai/grok-tts\\\",\\n \\\"text\\\": \\\"Hello! This is xAI text to speech, brought to you by Fal AI.\\\",\\n \\\"voice\\\": \\\"alloy\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"xai/grok-tts\\\",\\n \\\"text\\\": \\\"Hello! This is xAI text to speech, brought to you by Fal AI.\\\",\\n \\\"voice\\\": \\\"alloy\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"xai/grok-tts\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "xAI Text to Speech" modelId: "xai/grok-tts" diff --git a/model-api-reference/image-generation.md b/model-api-reference/image-generation.md index d75711e1..ba054029 100644 --- a/model-api-reference/image-generation.md +++ b/model-api-reference/image-generation.md @@ -7,377 +7,168 @@ description: Browse SandBase Image Generation APIs by provider and open a model Browse enabled image generation models by provider in the left navigation. Open an entry for its exact model identifier, supported capabilities, and a working request. -Image Generation models use the SandBase generation protocol declared in each model registry file. Most are asynchronous: submit a request, receive an opaque run ID, then poll `GET /v1/run/{id}` until the generation is completed, failed, or timed out. Check the selected model page's execution mode because synchronous models return their result in the initial response. +Image Generation models use the SandBase generation protocol declared in each model registry file. Most are asynchronous: submit a request, receive an opaque run ID, then poll GET /v1/run/{id} until the generation is completed, failed, or timed out. Check the selected model page's execution mode because synchronous models return their result in the initial response. ## Providers ### OpenAI -- [GPT Image 2 Official API](/model-api-reference/image-generation/openai/gpt-image-2-official) — GPT Image 2 through the OpenAI Images API contract. -- [GPT Image 2 Official Edit API](/model-api-reference/image-generation/openai/gpt-image-2-official/edit) — GPT Image 2 editing through the OpenAI Images API contract. -- [GPT Image 2.5 Flare](/model-api-reference/image-generation/openai/gpt-image-2.5-flare) — GPT Image 2.5 Flare is optimized for fast, high-quality image generation for everyday creative workflows. +- [GPT Image 2.5 Flare Text to Image](/model-api-reference/image-generation/openai/gpt-image-2.5-flare) — GPT Image 2.5 Flare is optimized for fast, high-quality image generation for everyday creative workflows. - [GPT Image 2.5 Flare Edit](/model-api-reference/image-generation/openai/gpt-image-2.5-flare/edit) — GPT Image 2.5 Flare Edit is optimized for fast, high-quality image editing and multi-image composition. -- [GPT Image 2.5 Sunburst](/model-api-reference/image-generation/openai/gpt-image-2.5-sunburst) — GPT Image 2.5 Sunburst prioritizes visual fidelity and precision for complex image generation workflows. +- [GPT Image 2.5 Sunburst Text to Image](/model-api-reference/image-generation/openai/gpt-image-2.5-sunburst) — GPT Image 2.5 Sunburst prioritizes visual fidelity and precision for complex image generation workflows. - [GPT Image 2.5 Sunburst Edit](/model-api-reference/image-generation/openai/gpt-image-2.5-sunburst/edit) — GPT Image 2.5 Sunburst Edit prioritizes precision and visual fidelity for complex image editing workflows. -- [GPT Image 2](/model-api-reference/image-generation/openai/gpt-image-2) — GPT Image 2, OpenAI's available image model, is capable of making fine-grained, detailed edits to images. -- [GPT Image 2 Editing](/model-api-reference/image-generation/openai/gpt-image-2/edit) — GPT Image 2 Editing supports image editing and multi-image synthesis with high-quality results. -- [GPT-Image 1.5](/model-api-reference/image-generation/openai/gpt-image-1.5/edit) — Gpt Image 1.5 Edit by OpenAI - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [GPT Image 1.5](/model-api-reference/image-generation/openai/gpt-image-1.5) — Gpt Image 1.5 is OpenAI's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. +- [GPT Image 2 Text to Image](/model-api-reference/image-generation/openai/gpt-image-2) — GPT Image 2, OpenAI's available image model, is capable of making fine-grained, detailed edits to images. +- [GPT Image 2 Edit](/model-api-reference/image-generation/openai/gpt-image-2/edit) — GPT Image 2 Editing supports image editing and multi-image synthesis with high-quality results. +- [GPT Image 1.5 Edit](/model-api-reference/image-generation/openai/gpt-image-1.5/edit) — Gpt Image 1.5 Edit by OpenAI - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. +- [GPT Image 1.5 Text to Image](/model-api-reference/image-generation/openai/gpt-image-1.5) — Gpt Image 1.5 is OpenAI's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. - [GPT Image 1 Mini Edit](/model-api-reference/image-generation/openai/gpt-image-1-mini/edit) — Gpt Image 1 Mini Edit is OpenAI's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [GPT Image 1 Mini](/model-api-reference/image-generation/openai/gpt-image-1-mini) — Gpt Image 1 Mini by OpenAI - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- …and 2 more models in the sidebar. ### Google -- [Nano Banana 2 Lite](/model-api-reference/image-generation/google/nano-banana-2-lite) — Nano Banana 2 Lite by Google - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [Nano Banana Lite](/model-api-reference/image-generation/google/nano-banana-lite) — Nano Banana Lite by Google - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [Nano Banana Lite Edit](/model-api-reference/image-generation/google/nano-banana-lite/edit) — Nano Banana Lite Edit is Google's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [Nano Banana 2 Image Editing](/model-api-reference/image-generation/google/nano-banana-2/edit) — Nano Banana 2 is Google's new state-of-the-art image generation and editing model -- [Nano Banana 2](/model-api-reference/image-generation/google/nano-banana-2) — Nano Banana 2 is Google's new state-of-the-art fast image generation and editing model -- [Gemini 3.1 Flash Image Preview](/model-api-reference/image-generation/google/gemini-3.1-flash-image-preview/edit) — Gemini 3.1 Flash Image Preview Edit is Google's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [Nano Banana Pro Image Editing](/model-api-reference/image-generation/google/nano-banana-pro/edit) — Nano Banana Pro is Google's new state-of-the-art image generation and editing model -- [Nano Banana Pro](/model-api-reference/image-generation/google/nano-banana-pro) — Nano Banana Pro is Google's new state-of-the-art image generation and editing model -- [Gemini 2.5 Flash Image Edit](/model-api-reference/image-generation/google/gemini-2.5-flash-image/edit) — Gemini 2.5 Flash Image Edit is Google's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [Nano Banana Image Editing](/model-api-reference/image-generation/google/nano-banana/edit) — Nano Banana Pro is Google's new state-of-the-art image generation and editing model -- [Nano Banana](/model-api-reference/image-generation/google/nano-banana) — Google's famous original image generation and editing model. -- [Imagen 4 (Google: imagen-4 / preview / fast)](/model-api-reference/image-generation/google/imagen-4/preview/fast) — Imagen 4 Preview Fast is Google's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. -- …and 4 more models in the sidebar. +- [Nano Banana 2.1 Text to Image](/model-api-reference/image-generation/google/nano-banana-2.1) — Nano Banana 2.1 is Google's available fast image generation model, with better prompt adherence, cleaner text rendering, extreme aspect ratios and 1K to 4K output. +- [Nano Banana 2.1 Edit](/model-api-reference/image-generation/google/nano-banana-2.1/edit) — Nano Banana 2.1 Edit is Google's available fast image editing model, fusing up to 14 reference images with stronger subject consistency and 1K to 4K output. +- [Nano Banana 2 Lite Text to Image](/model-api-reference/image-generation/google/nano-banana-2-lite) — Nano Banana 2 Lite by Google - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. +- [Nano Banana 2 Lite Edit](/model-api-reference/image-generation/google/nano-banana-2-lite/edit) — Nano Banana 2 Lite Edit is Google's low-latency, cost-efficient image editing model (Gemini 3.1 Flash Lite Image). Edit and combine supplied images with a text prompt; output is a 1K image. +- [Nano Banana 2 Edit](/model-api-reference/image-generation/google/nano-banana-2/edit) — Nano Banana 2 is Google's new state-of-the-art image generation and editing model +- [Nano Banana 2 Text to Image](/model-api-reference/image-generation/google/nano-banana-2) — Nano Banana 2 is Google's new state-of-the-art fast image generation and editing model +- [Nano Banana Pro Edit](/model-api-reference/image-generation/google/nano-banana-pro/edit) — Nano Banana Pro is Google's new state-of-the-art image generation and editing model +- [Nano Banana Pro Text to Image](/model-api-reference/image-generation/google/nano-banana-pro) — Nano Banana Pro is Google's new state-of-the-art image generation and editing model ### Ideogram -- [Ideogram Object Removal](/model-api-reference/image-generation/ideogram/object-removal) — Object Removal by Ideogram - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [V4.0q [instant]](/model-api-reference/image-generation/ideogram/4.0/instant) — 4.0 Instant is Ideogram's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. -- [V4.0q [fast]](/model-api-reference/image-generation/ideogram/4.0/fast) — 4.0 Fast by Ideogram - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [Ideogram V4.0q Tiling](/model-api-reference/image-generation/ideogram/4.0/tiling) — 4.0 Tiling by Ideogram - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Ideogram V4.0q Image to Image](/model-api-reference/image-generation/ideogram/4.0/image-to-image) — 4.0 by Ideogram - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Ideogram (Ideogram: custom-models)](/model-api-reference/image-generation/ideogram/custom-models) — Custom Models by Ideogram - advanced AI model for training. Delivers high-quality results with fast inference, suitable for both creative and production workflows. +- [Ideogram 4.5 Edit](/model-api-reference/image-generation/ideogram/4.5/edit) — Ideogram 4.5 edits an image from a text instruction, with an optional mask and style references, with reliable text rendering and polished graphic design output. +- [Ideogram 4.5 Text to Image](/model-api-reference/image-generation/ideogram/4.5) — Ideogram 4.5 generates images from a text prompt, with reliable text rendering and polished graphic design output. ### ByteDance -- [Seedream 5.0 Pro Image Editing](/model-api-reference/image-generation/bytedance/seedream/5.0/pro/edit) — Seedream 5.0 Pro is ByteDance's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. +- [Seedream 5.0 Flash Text to Image](/model-api-reference/image-generation/bytedance/seedream/5.0/flash) — Seedream 5.0 Flash is ByteDance's fast, low-cost Seedream 5.0 tier for high-volume text-to-image generation, with roughly 15–20 second turnaround and one flat price per image. +- [Seedream 5.0 Flash Edit](/model-api-reference/image-generation/bytedance/seedream/5.0/flash/edit) — Seedream 5.0 Flash Editing edits and fuses up to 10 reference images from a text instruction at one flat price per image, with fast 15–20 second turnaround. +- [Seedream 5.0 Pro Edit](/model-api-reference/image-generation/bytedance/seedream/5.0/pro/edit) — Seedream 5.0 Pro is ByteDance's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. - [Seedream 5.0 Pro Text to Image](/model-api-reference/image-generation/bytedance/seedream/5.0/pro) — Seedream 5.0 Pro by ByteDance - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [SeedVR2 (ByteDance: seedvr / upscale / image / seamless)](/model-api-reference/image-generation/bytedance/seedvr/upscale/image/seamless) — Seedvr Upscale Image is ByteDance's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [ByteDance Seed 2.0 Mini](/model-api-reference/image-generation/bytedance/seed/v2/mini) — Seed V2 Mini by ByteDance - advanced AI model for llm. Delivers high-quality results with fast inference, suitable for both creative and production workflows. -- [Seedream v5.0 Lite](/model-api-reference/image-generation/bytedance/seedream/5.0/lite) — Seedream 5.0 Lite — Fast Text-to-Image API The lightweight version of Seedream 5.0, delivering high-quality, low-latency AI image generation from text prompts. Ideal for real-time creative tools, e-commerce visuals, and high-volume AIGC pipelines. -- [Seedream v4.5](/model-api-reference/image-generation/bytedance/seedream/4.5) — A new-generation image creation model from ByteDance, Seedream 4.5 integrates text-to-image generation and image editing into a single unified architecture, delivering high-fidelity visuals, precise prompt control, and seamless creative workflows for professional AIGC applications. -- [Seedream v4.5 Image Editing](/model-api-reference/image-generation/bytedance/seedream/4.5/edit) — A new-generation image creation model from ByteDance, Seedream 4.5 integrates text-to-image generation and image editing into a single unified architecture, delivering high-fidelity visuals, precise prompt control, and seamless creative workflows for professional AIGC applications. -- [SeedVR2 (ByteDance: seedvr / upscale / image)](/model-api-reference/image-generation/bytedance/seedvr/upscale/image) — Seedvr Upscale Image by ByteDance - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [ByteDance Seedream v4 Edit](/model-api-reference/image-generation/bytedance/seedream/4.0/edit) — Seedream 4.0 Edit is ByteDance's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [ByteDance Seedream v4](/model-api-reference/image-generation/bytedance/seedream/4.0) — Seedream 4.0 by ByteDance - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [Dreamina 3.1](/model-api-reference/image-generation/bytedance/dreamina/3.1) — Dreamina 3.1 by ByteDance - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [Seedream v5.0 Lite Editing](/model-api-reference/image-generation/bytedance/seedream/5.0/lite/edit) — Seedream 5.0 Lite — Fast Text-to-Image API The lightweight version of Seedream 5.0, delivering high-quality, low-latency AI image generation from text prompts. Ideal for real-time creative tools, e-commerce visuals, and high-volume AIGC pipelines. +- [Seedream 5.0 Lite Text to Image](/model-api-reference/image-generation/bytedance/seedream/5.0/lite) — Seedream 5.0 Lite — Fast Text-to-Image API The lightweight version of Seedream 5.0, delivering high-quality, low-latency AI image generation from text prompts. Ideal for real-time creative tools, e-commerce visuals, and high-volume AIGC pipelines. +- [Seedream 4.5 Text to Image](/model-api-reference/image-generation/bytedance/seedream/4.5) — A new-generation image creation model from ByteDance, Seedream 4.5 integrates text-to-image generation and image editing into a single unified architecture, delivering high-fidelity visuals, precise prompt control, and seamless creative workflows for professional AIGC applications. +- [Seedream 4.5 Edit](/model-api-reference/image-generation/bytedance/seedream/4.5/edit) — A new-generation image creation model from ByteDance, Seedream 4.5 integrates text-to-image generation and image editing into a single unified architecture, delivering high-fidelity visuals, precise prompt control, and seamless creative workflows for professional AIGC applications. +- [SeedVR2 Image Upscale](/model-api-reference/image-generation/bytedance/seedvr/upscale/image) — Seedvr Upscale Image by ByteDance - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. +- [Seedream 5.0 Lite Edit](/model-api-reference/image-generation/bytedance/seedream/5.0/lite/edit) — Seedream 5.0 Lite — Fast Text-to-Image API The lightweight version of Seedream 5.0, delivering high-quality, low-latency AI image generation from text prompts. Ideal for real-time creative tools, e-commerce visuals, and high-volume AIGC pipelines. ### Recraft - [Recraft V4.1 Utility](/model-api-reference/image-generation/recraft/recraft/v4.1/utility) — Recraft V4.1 Utility by Recraft - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [Recraft V4.1 Utility Pro](/model-api-reference/image-generation/recraft/recraft/v4.1/utility/pro) — Recraft V4.1 Utility by Recraft - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [Recraft V4.1 Vector](/model-api-reference/image-generation/recraft/recraft/v4.1/vector) — Recraft V4.1 Vector is Recraft's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. - [Recraft V4.1](/model-api-reference/image-generation/recraft/recraft/v4.1) — Recraft V4.1 by Recraft - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [Recraft V4.1 Pro Vector](/model-api-reference/image-generation/recraft/recraft/v4.1/pro/vector) — Recraft V4.1 Pro is Recraft's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. -- [Recraft V4.1 Pro](/model-api-reference/image-generation/recraft/recraft/v4.1/pro) — Recraft V4.1 Pro by Recraft - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [Recraft V4 Pro (Vector)](/model-api-reference/image-generation/recraft/recraft/v4/pro/vector) — Recraft V4 Pro is Recraft's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. -- [Recraft V4 (Vector)](/model-api-reference/image-generation/recraft/recraft/v4/vector) — Recraft V4 Vector is Recraft's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. -- [Recraft V4 Pro](/model-api-reference/image-generation/recraft/recraft/v4/pro) — Recraft V4 Pro by Recraft - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [Recraft V4](/model-api-reference/image-generation/recraft/recraft/v4) — Recraft V4 by Recraft - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [Recraft Vectorize](/model-api-reference/image-generation/recraft/recraft/vectorize) — Recraft Vectorize is Recraft's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [Recraft Creative Upscale](/model-api-reference/image-generation/recraft/recraft/upscale/creative) — Recraft Upscale Creative by Recraft - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- …and 5 more models in the sidebar. - -### Luma - -- [Luma Uni-1 Edit](/model-api-reference/image-generation/luma/agent/uni-1/1.0/edit) — Agent Uni 1 1.0 by Luma - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Luma Uni-1 Text to Image Max](/model-api-reference/image-generation/luma/agent/uni-1/1.0/max) — Agent Uni 1 1.0 is Luma's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. -- [Luma Uni-1 Edit Max](/model-api-reference/image-generation/luma/agent/uni-1/1.0/max/edit) — Agent Uni 1 1.0 by Luma - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Luma Uni-1 Text to Image](/model-api-reference/image-generation/luma/agent/uni-1/1.0/text-to-image) — Agent Uni 1 1.0 is Luma's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. -- [Luma Photon Flash Edit](/model-api-reference/image-generation/luma/photon-flash-1/edit) — Photon Flash 1 Edit is Luma's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [Luma Photon Edit](/model-api-reference/image-generation/luma/photon-1/edit) — Photon 1 Edit is Luma's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [Luma Photon Flash Reframe](/model-api-reference/image-generation/luma/photon-flash-1/reframe) — Photon Flash 1 Reframe by Luma - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Luma Photon Reframe](/model-api-reference/image-generation/luma/photon-1/reframe) — Photon 1 Reframe by Luma - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Luma Photon Flash](/model-api-reference/image-generation/luma/photon-flash-1) — Photon Flash 1 by Luma - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [Luma Photon](/model-api-reference/image-generation/luma/photon-1) — Photon 1 by Luma - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. ### Z-Image -- [Z-Image Turbo (Z-Image: turbo)](/model-api-reference/image-generation/z-image/turbo) — Turbo is Z-Image's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. +- [Z-Image Turbo Text to Image](/model-api-reference/image-generation/z-image/turbo) — Turbo is Z-Image's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. ### Alibaba -- [Qwen Image 3](/model-api-reference/image-generation/alibaba/qwen-image-3) — Qwen Image 3 by Alibaba - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [Qwen Image 3 Edit](/model-api-reference/image-generation/alibaba/qwen-image-3/edit) — Alibaba Qwen Image 3 image editing model with support for up to three reference images. - [Qwen Image 3 Text to Image](/model-api-reference/image-generation/alibaba/qwen-image-3/text-to-image) — Qwen Image 3 by Alibaba - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [Wan 2.7 Pro Edit](/model-api-reference/image-generation/alibaba/wan/2.7/pro/edit) — Alibaba Wan 2.7 Pro image editing model with multi-reference support and configurable output format. -- [Wan 2.7 Edit](/model-api-reference/image-generation/alibaba/wan/2.7/edit) — Alibaba Wan 2.7 image editing model with multi-reference support and configurable output format. -- [Wan 2.7](/model-api-reference/image-generation/alibaba/wan/2.7) — Alibaba Wan 2.7 text-to-image model with high-quality generation and configurable output format. -- [Wan 2.7 Pro](/model-api-reference/image-generation/alibaba/wan/2.7/pro) — Alibaba Wan 2.7 Pro text-to-image model with enhanced quality and configurable output format. -- [Z-Image Turbo Seamless Tiling (Alibaba: z-image / turbo / tiling / lora)](/model-api-reference/image-generation/alibaba/z-image/turbo/tiling/lora) — Z Image Turbo Tiling is Alibaba's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. -- [Z-Image Turbo Seamless Tiling (Alibaba: z-image / turbo / tiling)](/model-api-reference/image-generation/alibaba/z-image/turbo/tiling) — Z Image Turbo Tiling by Alibaba - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [Qwen Image 2 (Alibaba: qwen-image-2 / pro / text-to-image)](/model-api-reference/image-generation/alibaba/qwen-image-2/pro/text-to-image) — Qwen Image 2 Pro by Alibaba - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [Qwen Image 2 Pro](/model-api-reference/image-generation/alibaba/qwen-image-2/pro) — Alibaba Qwen Image 2 Pro text-to-image model with enhanced quality and configurable output format. -- [Qwen Image 2 (Alibaba: qwen-image-2)](/model-api-reference/image-generation/alibaba/qwen-image-2) — Alibaba Qwen Image 2 text-to-image model with high-quality generation and configurable output format. -- …and 56 more models in the sidebar. - -### Baidu - -- [ERNIE-Image Trainer](/model-api-reference/image-generation/baidu/ernie-image-trainer) — Ernie Image Trainer by Baidu - advanced AI model for training. Delivers high-quality results with fast inference, suitable for both creative and production workflows. -- [Ernie Image (Baidu: ernie-image)](/model-api-reference/image-generation/baidu/ernie-image) — Ernie Image is Baidu's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. -- [Ernie Image (Baidu: ernie-image / turbo)](/model-api-reference/image-generation/baidu/ernie-image/turbo) — Ernie Image Turbo is Baidu's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. +- [Qwen Image 3 Edit](/model-api-reference/image-generation/alibaba/qwen-image-3/edit) — Alibaba Qwen Image 3 image editing model with support for up to three reference images. +- [Wan 2.7 Pro Image to Image](/model-api-reference/image-generation/alibaba/wan/2.7/pro/image-to-image) — Alibaba Wan 2.7 Pro image-to-image model that edits images from a natural-language instruction, with multi-reference support and selectable aspect ratio. +- [Wan 2.7 Image to Image](/model-api-reference/image-generation/alibaba/wan/2.7/image-to-image) — Alibaba Wan 2.7 image-to-image model that edits images from a natural-language instruction, with multi-reference support and selectable aspect ratio. +- [Wan 2.7 Text to Image](/model-api-reference/image-generation/alibaba/wan/2.7/text-to-image) — Alibaba Wan 2.7 text-to-image model with high-quality generation and selectable aspect ratio. +- [Wan 2.7 Pro Text to Image](/model-api-reference/image-generation/alibaba/wan/2.7/pro/text-to-image) — Alibaba Wan 2.7 Pro text-to-image model with enhanced quality and selectable aspect ratio. +- [Qwen Image 2](/model-api-reference/image-generation/alibaba/qwen-image-2) — Alibaba Qwen Image 2 text-to-image model with high-quality generation and configurable output format. +- [Z Image Base](/model-api-reference/image-generation/alibaba/z-image/base) — Z Image Base by Alibaba - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. +- [Qwen Image Edit 2511 Multiple Angles](/model-api-reference/image-generation/alibaba/qwen-image-edit/2511/multiple-angles) — Qwen Image Edit 2511 Multiple Angles by Alibaba - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. +- [Wan 2.6 Text to Image](/model-api-reference/image-generation/alibaba/wan/2.6/text-to-image) — Alibaba Wan 2.6 text-to-image model with high-quality generation and selectable aspect ratio. +- [Wan 2.6 Image to Image](/model-api-reference/image-generation/alibaba/wan/2.6/image-to-image) — Alibaba Wan 2.6 image-to-image model that edits images from a natural-language instruction, with multi-reference support and selectable aspect ratio. +- [Qwen Image Edit 2511](/model-api-reference/image-generation/alibaba/qwen-image-edit/2511) — Qwen Image Edit 2511 by Alibaba - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. +- …and 4 more models in the sidebar. ### BFL -- [FLUX Virtual Try-On](/model-api-reference/image-generation/bfl/flux-pro/1.0/vto) — Flux Pro 1.0 Vto by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Flux Pro Erase](/model-api-reference/image-generation/bfl/flux-pro/1.0/erase) — Flux Pro 1.0 Erase by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Flux 2 Pro (BFL: flux-2-pro / outpaint)](/model-api-reference/image-generation/bfl/flux-2-pro/outpaint) — Flux 2 Pro Outpaint is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [FLUX.2 [klein] 9B LoRA (BFL: flux-2 / klein / 9b / edit / lora)](/model-api-reference/image-generation/bfl/flux-2/klein/9b/edit/lora) — Flux 2 Klein 9b is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [FLUX.2 [klein] 9B LoRA (BFL: flux-2 / klein / 9b / lora)](/model-api-reference/image-generation/bfl/flux-2/klein/9b/lora) — Flux 2 Klein 9b by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [FLUX.2 [klein] 4B LoRA (BFL: flux-2 / klein / 4b / edit / lora)](/model-api-reference/image-generation/bfl/flux-2/klein/4b/edit/lora) — Flux 2 Klein 4b is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [FLUX.2 [klein] 4B LoRA (BFL: flux-2 / klein / 4b / lora)](/model-api-reference/image-generation/bfl/flux-2/klein/4b/lora) — Flux 2 Klein 4b by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [Flux 2 [klein] Realtime](/model-api-reference/image-generation/bfl/flux-2/klein/realtime) — Flux 2 Klein Realtime is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [FLUX.2 [klein] 9B Base LoRA (BFL: flux-2 / klein / 9b / base / edit / lora)](/model-api-reference/image-generation/bfl/flux-2/klein/9b/base/edit/lora) — Flux 2 Klein 9b by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [FLUX.2 [klein] 9B Base LoRA (BFL: flux-2 / klein / 9b / base / lora)](/model-api-reference/image-generation/bfl/flux-2/klein/9b/base/lora) — Flux 2 Klein 9b is BFL's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. -- [FLUX.2 [klein] 4B Base LoRA (BFL: flux-2 / klein / 4b / base / edit / lora)](/model-api-reference/image-generation/bfl/flux-2/klein/4b/base/edit/lora) — Flux 2 Klein 4b by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [FLUX.2 [klein] 4B Base LoRA (BFL: flux-2 / klein / 4b / base / lora)](/model-api-reference/image-generation/bfl/flux-2/klein/4b/base/lora) — Flux 2 Klein 4b is BFL's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. -- …and 80 more models in the sidebar. - -### Bria - -- [Extract Object](/model-api-reference/image-generation/bria/extract-object) — Extract Object by Bria - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Bria Embed Product](/model-api-reference/image-generation/bria/embed-product) — Embed Product is Bria's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [Bria Upscale Creative](/model-api-reference/image-generation/bria/upscale/creative) — Upscale Creative by Bria - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Bria Replace Background](/model-api-reference/image-generation/bria/replace-background) — Replace Background by Bria - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Bria Fibo Edit](/model-api-reference/image-generation/bria/fibo/edit) — Fibo Edit is Bria's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [Bria Fibo Lite](/model-api-reference/image-generation/bria/fibo-lite) — Fibo Lite is Bria's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. -- [Bria Fibo](/model-api-reference/image-generation/bria/fibo) — Fibo by Bria - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [Bria Reimagine 3.2](/model-api-reference/image-generation/bria/reimagine/3.2) — Reimagine 3.2 is Bria's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [Bria Reimagine](/model-api-reference/image-generation/bria/reimagine) — Reimagine is Bria's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [BRIA RMBG 2.0](/model-api-reference/image-generation/bria/background/remove) — Background Remove is Bria's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [Bria Expand Image](/model-api-reference/image-generation/bria/expand) — Expand by Bria - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Bria Eraser](/model-api-reference/image-generation/bria/eraser) — Eraser by Bria - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- …and 6 more models in the sidebar. +- [Flux 3 Text to Image](/model-api-reference/image-generation/bfl/flux-3/text-to-image) — FLUX 3 by Black Forest Labs generates images from a text prompt, with strong prompt adherence and typography at 512px to 4K resolution tiers. +- [Flux 3 Edit](/model-api-reference/image-generation/bfl/flux-3/edit) — FLUX 3 by Black Forest Labs edits up to 10 reference images from a text instruction, with strong prompt adherence and typography at 512px to 4K resolution tiers. +- [Flux 2 Klein 4B Edit](/model-api-reference/image-generation/bfl/flux-2/klein/4b/edit) — Flux 2 Klein 4b by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. +- [Flux 2 Klein 9B Edit](/model-api-reference/image-generation/bfl/flux-2/klein/9b/edit) — Flux 2 Klein 9b by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. +- [Flux 2 Klein 9B Text to Image](/model-api-reference/image-generation/bfl/flux-2/klein/9b) — Flux 2 Klein 9b is BFL's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. +- [Flux 2 Klein 4B Text to Image](/model-api-reference/image-generation/bfl/flux-2/klein/4b) — Flux 2 Klein 4b is BFL's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. +- [Flux 2 Flash Edit](/model-api-reference/image-generation/bfl/flux-2/flash/edit) — Flux 2 Flash Edit is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. +- [Flux 2 Flash Text to Image](/model-api-reference/image-generation/bfl/flux-2/flash) — Flux 2 Flash by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. +- [Flux 2 Turbo Edit](/model-api-reference/image-generation/bfl/flux-2/turbo/edit) — Flux 2 Turbo Edit is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. +- [Flux 2 Turbo Text to Image](/model-api-reference/image-generation/bfl/flux-2/turbo) — Flux 2 Turbo by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. +- [Flux 2 Max Text to Image](/model-api-reference/image-generation/bfl/flux-2/max) — Flux 2 Max by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. +- [Flux 2 Max Edit](/model-api-reference/image-generation/bfl/flux-2/max/edit) — Flux 2 Max Edit is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. +- …and 8 more models in the sidebar. ### ClarityAI - [Clarity Upscaler](/model-api-reference/image-generation/clarity-ai/clarity-upscaler) — Clarity Upscaler by ClarityAI - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -### ElevenLabs - -- [ElevenLabs Speech to Text](/model-api-reference/image-generation/elevenlabs/speech-to-text) — Speech To Text by ElevenLabs - accurate speech-to-text transcription with AI. Convert audio and video to text with high accuracy, multilingual support, and speaker identification. - -### FASHN - -- [FASHN Virtual Try-On V1.6](/model-api-reference/image-generation/fashn/tryon/v1.6) — Tryon V1.6 by FASHN - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [FASHN Virtual Try-On V1.5](/model-api-reference/image-generation/fashn/tryon/v1.5) — Tryon V1.5 by FASHN - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. - ### HiDream -- [HiDream O1 Dev Edit](/model-api-reference/image-generation/hidream-ai/hidream-o1/dev/edit) — Hidream O1 Dev Edit is hidream-ai's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [HiDream O1 Edit](/model-api-reference/image-generation/hidream-ai/hidream-o1/edit) — Hidream O1 Edit is hidream-ai's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [HiDream O1](/model-api-reference/image-generation/hidream-ai/hidream-o1) — Hidream O1 by hidream-ai - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. - [HiDream O1 Dev](/model-api-reference/image-generation/hidream-ai/hidream-o1/dev) — Hidream O1 Dev by hidream-ai - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [HiDream I1 Full Edit](/model-api-reference/image-generation/hidream-ai/hidream-i1/full/edit) — Hidream I1 Full Edit by hidream-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [HiDream I1 Full](/model-api-reference/image-generation/hidream-ai/hidream-i1/full) — Hidream I1 Full is hidream-ai's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. -- [HiDream I1 Dev](/model-api-reference/image-generation/hidream-ai/hidream-i1/dev) — Hidream I1 Dev by hidream-ai - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [HiDream I1 Fast](/model-api-reference/image-generation/hidream-ai/hidream-i1/fast) — Hidream I1 Fast is hidream-ai's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. -- [HiDream E1](/model-api-reference/image-generation/hidream-ai/hidream-e1/1) — Hidream E1 1 by hidream-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [HiDream E1 Full](/model-api-reference/image-generation/hidream-ai/hidream-e1/full) — Hidream E1 Full is hidream-ai's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. ### hyper3d -- [Hyper3d](/model-api-reference/image-generation/hyper3d/rodin/v2) — Rodin V2 by hyper3d - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation. -- [Hyper3D Rodin](/model-api-reference/image-generation/hyper3d/rodin) — Rodin is hyper3d's image-to-3D AI model. Transform photographs into production-ready 3D meshes with accurate geometry and texture mapping. +- [Rodin 2.5 Fast Text to 3D](/model-api-reference/image-generation/hyper3d/rodin/2.5/fast/text-to-3d) — Rodin Gen-2.5 by Hyper3D (Deemos) generates game- and production-ready 3D assets from a text prompt, tuned for speed with the low tiers. +- [Rodin 2.5 Fast Image to 3D](/model-api-reference/image-generation/hyper3d/rodin/2.5/fast/image-to-3d) — Rodin Gen-2.5 by Hyper3D (Deemos) generates game- and production-ready 3D assets from one to five reference images, tuned for speed with the low tiers. +- [Rodin 2.5 Text to 3D](/model-api-reference/image-generation/hyper3d/rodin/2.5/text-to-3d) — Rodin Gen-2.5 by Hyper3D (Deemos) generates game- and production-ready 3D assets from a text prompt. +- [Rodin 2.5 Image to 3D](/model-api-reference/image-generation/hyper3d/rodin/2.5/image-to-3d) — Rodin Gen-2.5 by Hyper3D (Deemos) generates game- and production-ready 3D assets from one to five reference images. ### Ideogram -- [Ideogram Remove Background](/model-api-reference/image-generation/ideogram-ai/ideogram/remove-background) — Ideogram Remove Background by ideogram-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Ideogram (ideogram-ai: ideogram / custom-models / generate)](/model-api-reference/image-generation/ideogram-ai/ideogram/custom-models/generate) — Ideogram Custom Models Generate is ideogram-ai's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. -- [Ideogram V3 Layerize Text](/model-api-reference/image-generation/ideogram-ai/ideogram-v3/layerize-text) — Ideogram V3 Layerize Text is ideogram-ai's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [Ideogram V3 Transparent](/model-api-reference/image-generation/ideogram-ai/ideogram-v3/transparent) — Ideogram V3 Transparent is ideogram-ai's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. -- [Ideogram V3 Character Edit](/model-api-reference/image-generation/ideogram-ai/ideogram-v3/character/edit) — Ideogram V3 Character Edit by ideogram-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Ideogram V3 Character](/model-api-reference/image-generation/ideogram-ai/ideogram-v3/character) — Ideogram V3 Character is ideogram-ai's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [Ideogram V3 Character Remix](/model-api-reference/image-generation/ideogram-ai/ideogram-v3/character/remix) — Ideogram V3 Character Remix is ideogram-ai's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [Ideogram V3 Reframe](/model-api-reference/image-generation/ideogram-ai/ideogram-v3/reframe) — Ideogram V3 Reframe is ideogram-ai's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [Ideogram 3.0](/model-api-reference/image-generation/ideogram-ai/ideogram-v3) — 3.0 is Ideogram's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. -- [Ideogram V3 Replace Background](/model-api-reference/image-generation/ideogram-ai/ideogram-v3/replace-background) — Ideogram V3 Replace Background by ideogram-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Ideogram V3 Remix](/model-api-reference/image-generation/ideogram-ai/ideogram-v3/remix) — Ideogram V3 Remix is ideogram-ai's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [Ideogram V3 Edit](/model-api-reference/image-generation/ideogram-ai/ideogram-v3/edit) — Ideogram V3 Edit by ideogram-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- …and 11 more models in the sidebar. - -### ImagineArt - -- [Imagineart 2.0 Edit Preview](/model-api-reference/image-generation/imagineart/imagineart-2.0-edit-preview/image-to-image) — Imagineart 2.0 Edit Preview by ImagineArt - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Imagineart 2.0 Preview](/model-api-reference/image-generation/imagineart/imagineart-2.0-preview/text-to-image) — Imagineart 2.0 Preview by ImagineArt - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. +- [Ideogram 3.0 Text to Image](/model-api-reference/image-generation/ideogram-ai/ideogram-v3) — 3.0 is Ideogram's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. +- [Ideogram 3.0 Edit](/model-api-reference/image-generation/ideogram-ai/ideogram-v3/edit) — Ideogram V3 Edit by ideogram-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. ### KwaiVGI -- [Kling Image V3](/model-api-reference/image-generation/kwaivgi/kling-image/v3) — Kling Image V3 by KwaiVGI - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [Kling Image V3 Edit](/model-api-reference/image-generation/kwaivgi/kling-image/v3/edit) — Kling Image V3 Edit is KwaiVGI's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [Kling Image (KwaiVGI: kling-image / o3 / edit)](/model-api-reference/image-generation/kwaivgi/kling-image/o3/edit) — Kling Image O3 Edit is KwaiVGI's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [Kling Image (KwaiVGI: kling-image / o3)](/model-api-reference/image-generation/kwaivgi/kling-image/o3) — Kling Image O3 by KwaiVGI - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [Kling O1 Image](/model-api-reference/image-generation/kwaivgi/kling-image/o1) — Kling Image O1 by KwaiVGI - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Kling Kolors Virtual TryOn v1.5](/model-api-reference/image-generation/kwaivgi/kolors-tryon) — Kolors Tryon by KwaiVGI - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Kolors Image to Image](/model-api-reference/image-generation/kwaivgi/kolors/image-to-image) — Kolors is KwaiVGI's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [Kolors](/model-api-reference/image-generation/kwaivgi/kolors) — Kolors by KwaiVGI - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. - -### Lightricks - -- [LTX-2.3 22B Video to Video Trainer](/model-api-reference/image-generation/lightricks/ltx23-v2v-trainer) — Ltx23 V2v Trainer by Lightricks - advanced AI model for training. Delivers high-quality results with fast inference, suitable for both creative and production workflows. -- [LTX-2.3 22B Video Trainer](/model-api-reference/image-generation/lightricks/ltx23-video-trainer) — Ltx23 Video Trainer by Lightricks - advanced AI model for training. Delivers high-quality results with fast inference, suitable for both creative and production workflows. - -### meituan - -- [Longcat Image (meituan: longcat-image / edit)](/model-api-reference/image-generation/meituan/longcat-image/edit) — Longcat Image Edit by sandbase-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Longcat Image (meituan: longcat-image)](/model-api-reference/image-generation/meituan/longcat-image) — Longcat Image is meituan's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. +- [Kling Image O3 Edit](/model-api-reference/image-generation/kwaivgi/kling-image/o3/edit) — Kling Image O3 Edit by Kuaishou edits or recomposes images from a text instruction using up to 10 reference images, with 1K, 2K, or 4K output. +- [Kling Image O3 Text to Image](/model-api-reference/image-generation/kwaivgi/kling-image/o3) — Kling Image O3 by Kuaishou generates images from a text prompt at 1K, 2K, or 4K resolution in common aspect ratios. ### Meshy -- [Meshy Rigging Multi Animation](/model-api-reference/image-generation/meshy/rigging/multi-animation) — Rigging Multi Animation by Meshy - advanced AI model for 3d-to-3d. Delivers high-quality results with fast inference, suitable for both creative and production workflows. -- [Meshy Rigging](/model-api-reference/image-generation/meshy/rigging) — Rigging by Meshy - advanced AI model for 3d-to-3d. Delivers high-quality results with fast inference, suitable for both creative and production workflows. -- [Meshy 6 - Multi Image To 3D](/model-api-reference/image-generation/meshy/meshy-v6/multi-image-to-3d) — Meshy V6 Multi Image To 3d by Meshy - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation. -- [Meshy 6 (Meshy: meshy-v6)](/model-api-reference/image-generation/meshy/meshy-v6) — Meshy V6 by Meshy - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation. -- [Meshy 6 (Meshy: meshy-v6 / text-to-3d)](/model-api-reference/image-generation/meshy/meshy-v6/text-to-3d) — Meshy V6 is Meshy's text-to-3D AI model. Turn written descriptions into textured 3D objects with realistic geometry and materials. -- [Meshy 5 Retexture](/model-api-reference/image-generation/meshy/meshy/v5/retexture) — Meshy V5 Retexture by Meshy - advanced AI model for 3d-to-3d. Delivers high-quality results with fast inference, suitable for both creative and production workflows. -- [Meshy 5 Remesh](/model-api-reference/image-generation/meshy/meshy/v5/remesh) — Meshy V5 Remesh by Meshy - advanced AI model for 3d-to-3d. Delivers high-quality results with fast inference, suitable for both creative and production workflows. -- [Meshy 6 Preview (Meshy: meshy-v6-preview / text-to-3d)](/model-api-reference/image-generation/meshy/meshy-v6-preview/text-to-3d) — Meshy V6 Preview is Meshy's text-to-3D AI model. Turn written descriptions into textured 3D objects with realistic geometry and materials. -- [Meshy 5 Multi](/model-api-reference/image-generation/meshy/meshy/v5/multi-image-to-3d) — Meshy V5 Multi Image To 3d by Meshy - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation. -- [Meshy 6 Preview (Meshy: meshy-v6-preview)](/model-api-reference/image-generation/meshy/meshy-v6-preview) — Meshy V6 Preview by Meshy - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation. +- [Meshy 7.1 Multi-Image to 3D](/model-api-reference/image-generation/meshy/7.1/multi-image-to-3d) — Meshy 7.1 reconstructs a textured, optionally rigged 3D model from 1–4 views of the same object. +- [Meshy 7.1 Image to 3D](/model-api-reference/image-generation/meshy/7.1/image-to-3d) — Meshy 7.1 turns a single image into a textured, optionally rigged and animated 3D model. +- [Meshy 7.1 Text to 3D](/model-api-reference/image-generation/meshy/7.1/text-to-3d) — Meshy 7.1 generates a textured, optionally rigged and animated 3D model from a text prompt. ### Meta -- [Sam 3 1 (Meta: sam-3-1 / image-rle)](/model-api-reference/image-generation/meta/sam-3-1/image-rle) — Sam 3 1 Image Rle is Meta's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [Sam 3 1 (Meta: sam-3-1 / image)](/model-api-reference/image-generation/meta/sam-3-1/image) — Sam 3 1 Image is Meta's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [SAM 3 3D Align](/model-api-reference/image-generation/meta/sam-3/3d-align) — Sam 3 3d Align by Meta - advanced AI model for 3d-to-3d. Delivers high-quality results with fast inference, suitable for both creative and production workflows. -- [Sam 3 (Meta: sam-3 / 3d-body)](/model-api-reference/image-generation/meta/sam-3/3d-body) — Sam 3 3d Body is Meta's image-to-3D AI model. Transform photographs into production-ready 3D meshes with accurate geometry and texture mapping. -- [Sam 3 (Meta: sam-3 / 3d-objects)](/model-api-reference/image-generation/meta/sam-3/3d-objects) — Sam 3 3d Objects by Meta - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation. -- [Sam 3 (Meta: sam-3 / image-rle)](/model-api-reference/image-generation/meta/sam-3/image-rle) — Sam 3 Image Rle is Meta's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [SAM 3 Embed](/model-api-reference/image-generation/meta/sam-3/image/embed) — Sam 3 Image Embed by Meta - advanced AI model for vision. Delivers high-quality results with fast inference, suitable for both creative and production workflows. +- [SAM 3 3D Objects](/model-api-reference/image-generation/meta/sam-3/3d-objects) — Sam 3 3d Objects by Meta - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation. - [SAM 3 Image](/model-api-reference/image-generation/meta/sam-3/image) — Sam 3 Image is Meta's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [Demucs](/model-api-reference/image-generation/meta/demucs) — Demucs by Meta - advanced AI model for audio-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows. ### Microsoft -- [MAI Image 2.5 Pro (Edit)](/model-api-reference/image-generation/microsoft/mai-image-2.5-pro/edit) — Mai Image 2.5 Pro Edit by Microsoft - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Mai Image 2.5](/model-api-reference/image-generation/microsoft/mai-image-2.5/edit) — Mai Image 2.5 Edit by Microsoft - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. +- [MAI Image 2.5 Pro Edit](/model-api-reference/image-generation/microsoft/mai-image-2.5-pro/edit) — Mai Image 2.5 Pro Edit by Microsoft - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. +- [MAI Image 2.5 Edit](/model-api-reference/image-generation/microsoft/mai-image-2.5/edit) — Mai Image 2.5 Edit by Microsoft - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. ### Midjourney - [Midjourney V8.1](/model-api-reference/image-generation/midjourney/midjourney-v8.1) — Midjourney V8.1 text-to-image generation through Evolink.ai. -### MiniMax - -- [Minimax Image Subject Reference](/model-api-reference/image-generation/minimax/image-01/subject-reference) — Image 01 Subject Reference by MiniMax - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [MiniMax (Hailuo AI) Text to Image](/model-api-reference/image-generation/minimax/image-01) — Image 01 by MiniMax - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. - -### Mirelo - -- [Mirelo SFX1.6 (Mirelo: sfx1.6 / inpaint-audio)](/model-api-reference/image-generation/mirelo/sfx1.6/inpaint-audio) — Sfx1.6 Inpaint Audio by Mirelo - advanced AI model for audio-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows. -- [Mirelo SFX1.6 (Mirelo: sfx1.6 / extend-audio)](/model-api-reference/image-generation/mirelo/sfx1.6/extend-audio) — Sfx1.6 Extend Audio by Mirelo - advanced AI model for audio-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows. - -### NVIDIA - -- [Cosmos 3 Super](/model-api-reference/image-generation/nvidia/cosmos-3-super/text-to-image) — Cosmos 3 Super by NVIDIA - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [Nemotron 3 Nano Omni (NVIDIA: nemotron-3-nano-omni / vision)](/model-api-reference/image-generation/nvidia/nemotron-3-nano-omni/vision) — Nemotron 3 Nano Omni Vision by NVIDIA - advanced AI model for image-to-text. Delivers high-quality results with fast inference, suitable for both creative and production workflows. -- [Nemotron 3 Nano Omni (NVIDIA: nemotron-3-nano-omni / audio)](/model-api-reference/image-generation/nvidia/nemotron-3-nano-omni/audio) — Nemotron 3 Nano Omni Audio by NVIDIA - advanced AI model for audio-to-text. Delivers high-quality results with fast inference, suitable for both creative and production workflows. - -### patina - -- [PATINA (patina: material / extract)](/model-api-reference/image-generation/patina/material/extract) — Material Extract by patina - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [PATINA (patina: material)](/model-api-reference/image-generation/patina/material) — Material by patina - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. - -### pixal3d - -- [Pixal3d](/model-api-reference/image-generation/pixal3d/pixal3d) — Pixal3d is pixal3d's image-to-3D AI model. Transform photographs into production-ready 3D meshes with accurate geometry and texture mapping. - -### Reve - -- [Reve 2.1 (Reve: 2.1 / remix)](/model-api-reference/image-generation/reve/2.1/remix) — 2.1 Remix is Reve's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [Reve 2.1 (Reve: 2.1 / edit)](/model-api-reference/image-generation/reve/2.1/edit) — 2.1 Edit by Reve - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Reve 2.1 (Reve: 2.1 / text-to-image)](/model-api-reference/image-generation/reve/2.1/text-to-image) — 2.1 is Reve's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. - ### sandbase-ai -- [Phota Text to Image](/model-api-reference/image-generation/sandbase-ai/phota) — Phota is sandbase-ai's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. -- [Hy Wu Edit](/model-api-reference/image-generation/sandbase-ai/hy-wu-edit) — Hy Wu Edit by sandbase-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Firered Image Edit V1.1](/model-api-reference/image-generation/sandbase-ai/firered-image-edit-v1.1) — Firered Image Edit V1.1 is sandbase-ai's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [try-on](/model-api-reference/image-generation/sandbase-ai/cat-vton) — Cat VTON by sandbase-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Sana](/model-api-reference/image-generation/sandbase-ai/sana) — Sana by sandbase-ai - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [Creative Upscaler](/model-api-reference/image-generation/sandbase-ai/creative-upscaler) — Creative Upscaler is sandbase-ai's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. - -### Stability AI - -- [Stable Diffusion 3.5 Large](/model-api-reference/image-generation/stability-ai/sd/3.5-large) — Sd 3.5 Large by stability-ai - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [Stable Diffusion 3.5 Medium](/model-api-reference/image-generation/stability-ai/sd/3.5-medium) — Sd 3.5 Medium is stability-ai's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. -- [Stable Diffusion V3 (Stability AI: stable-diffusion-v3-medium)](/model-api-reference/image-generation/stability-ai/stable-diffusion-v3-medium) — Stable Diffusion V3 Medium by Stability AI - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [SDXL ControlNet Union (Stability AI: sdxl-controlnet-union / image-to-image)](/model-api-reference/image-generation/stability-ai/sdxl-controlnet-union/image-to-image) — Sdxl Controlnet Union by Stability AI - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [SDXL ControlNet Union (Stability AI: sdxl-controlnet-union)](/model-api-reference/image-generation/stability-ai/sdxl-controlnet-union) — Sdxl Controlnet Union is Stability AI's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. -- [SDXL ControlNet Union (Stability AI: sdxl-controlnet-union / inpainting)](/model-api-reference/image-generation/stability-ai/sdxl-controlnet-union/inpainting) — Sdxl Controlnet Union Inpainting by Stability AI - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Stable Cascade](/model-api-reference/image-generation/stability-ai/stable-cascade) — Stable Cascade by Stability AI - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [Stable Diffusion XL (Stability AI: fast-sdxl)](/model-api-reference/image-generation/stability-ai/fast-sdxl) — Fast Sdxl is Stability AI's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. -- [Stable Diffusion V3 (Stability AI: stable-diffusion-v3-medium / image-to-image)](/model-api-reference/image-generation/stability-ai/stable-diffusion-v3-medium/image-to-image) — Stable Diffusion V3 Medium is Stability AI's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [SoteDiffusion](/model-api-reference/image-generation/stability-ai/stable-cascade/sote-diffusion) — Stable Cascade Sote Diffusion is Stability AI's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. -- [Stable Diffusion XL (Stability AI: fast-sdxl / image-to-image)](/model-api-reference/image-generation/stability-ai/fast-sdxl/image-to-image) — Fast Sdxl by Stability AI - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Stable Diffusion v1.5](/model-api-reference/image-generation/stability-ai/stable-diffusion-v15) — Stable Diffusion V15 by Stability AI - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- …and 3 more models in the sidebar. +- [try-on](/model-api-reference/image-generation/sandbase-ai/cat-vton) — Cat Vton by sandbase-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. ### Tencent -- [Hunyuan 3D 3.1 Rapid Text to 3D](/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/rapid/text-to-3d) — Hunyuan 3d 3.1 Rapid is Tencent's text-to-3D AI model. Turn written descriptions into textured 3D objects with realistic geometry and materials. - [Hunyuan Image 3.0 Edit](/model-api-reference/image-generation/tencent/hunyuan-image/3.0/edit) — Hunyuan Image 3.0 Edit by Tencent - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Hunyuan Image 3.0 Instruct](/model-api-reference/image-generation/tencent/hunyuan-image/3.0/instruct) — Hunyuan Image 3.0 Instruct by Tencent - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. -- [Hunyuan 3D Smart Topology](/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/smart-topology) — Hunyuan 3d 3.1 Smart Topology by Tencent - advanced AI model for 3d-to-3d. Delivers high-quality results with fast inference, suitable for both creative and production workflows. -- [Hunyuan 3D 3.1 Rapid Image to 3D](/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/rapid/image-to-3d) — Hunyuan 3d 3.1 Rapid by Tencent - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation. - [Hunyuan 3D 3.1 Pro Text to 3D](/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/pro/text-to-3d) — Hunyuan 3d 3.1 Pro is Tencent's text-to-3D AI model. Turn written descriptions into textured 3D objects with realistic geometry and materials. - [Hunyuan 3D 3.1 Pro Image to 3D](/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/pro/image-to-3d) — Hunyuan 3d 3.1 Pro by Tencent - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation. -- [Hunyuan 3D Part Splitter](/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/part) — Hunyuan 3d 3.1 Part by Tencent - advanced AI model for 3d-to-3d. Delivers high-quality results with fast inference, suitable for both creative and production workflows. -- [Hunyuan Motion Fast](/model-api-reference/image-generation/tencent/hunyuan-motion/fast) — Hunyuan Motion Fast is Tencent's text-to-3D AI model. Turn written descriptions into textured 3D objects with realistic geometry and materials. -- [Hunyuan Motion](/model-api-reference/image-generation/tencent/hunyuan-motion) — Hunyuan Motion by Tencent - generate 3D models from text descriptions with AI. Create detailed 3D assets from natural language for games, visualization, and digital production. -- [Hunyuan3d V3 (Tencent: hunyuan-3d / v3 / text-to-3d)](/model-api-reference/image-generation/tencent/hunyuan-3d/v3/text-to-3d) — Hunyuan 3d V3 by Tencent - generate 3D models from text descriptions with AI. Create detailed 3D assets from natural language for games, visualization, and digital production. -- [Hunyuan3d V3 (Tencent: hunyuan-3d / v3 / sketch-to-3d)](/model-api-reference/image-generation/tencent/hunyuan-3d/v3/sketch-to-3d) — Hunyuan 3d V3 Sketch To 3d by Tencent - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation. -- …and 11 more models in the sidebar. +- [Hunyuan 3D 3.0 Image to 3D](/model-api-reference/image-generation/tencent/hunyuan-3d/3.0/image-to-3d) — Hunyuan 3d V3 is Tencent's image-to-3D AI model. Transform photographs into production-ready 3D meshes with accurate geometry and texture mapping. +- [Hunyuan Image 3.0 Text to Image](/model-api-reference/image-generation/tencent/hunyuan-image/3.0) — Hunyuan Image 3.0 is Tencent's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. ### Topaz Labs -- [Topaz Adjust Image](/model-api-reference/image-generation/topaz/adjust/image) — Adjust Image by Topaz Labs - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Topaz Sharpen Image](/model-api-reference/image-generation/topaz/sharpen/image) — Sharpen Image is Topaz Labs's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [Topaz Denoise Image](/model-api-reference/image-generation/topaz/denoise/image) — Denoise Image is Topaz Labs's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [Topaz Restore Image](/model-api-reference/image-generation/topaz/restore/image) — Restore Image is Topaz Labs's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [Topaz Upscale Image Transparent](/model-api-reference/image-generation/topaz/upscale/image/transparent) — Upscale Image Transparent is Topaz Labs's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -- [Topaz Upscale Image Creative](/model-api-reference/image-generation/topaz/upscale/image/creative) — Upscale Image Creative by Topaz Labs - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Topaz Upscale Image Generative](/model-api-reference/image-generation/topaz/upscale/image/generative) — Upscale Image Generative by Topaz Labs - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Topaz Upscale Image Precision](/model-api-reference/image-generation/topaz/upscale/image/precision) — Upscale Image Precision is Topaz Labs's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. - [Topaz Upscale](/model-api-reference/image-generation/topaz/upscale/image) — Upscale Image is Topaz Labs's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -### trellis - -- [Trellis 2 (trellis: trellis-2 / retexture)](/model-api-reference/image-generation/trellis/trellis-2/retexture) — Trellis 2 Retexture is trellis's image-to-3D AI model. Transform photographs into production-ready 3D meshes with accurate geometry and texture mapping. -- [Trellis 2 (trellis: trellis-2)](/model-api-reference/image-generation/trellis/trellis-2) — Trellis 2 is trellis's image-to-3D AI model. Transform photographs into production-ready 3D meshes with accurate geometry and texture mapping. -- [Trellis (trellis: trellis / multi)](/model-api-reference/image-generation/trellis/trellis/multi) — Trellis Multi is trellis's image-to-3D AI model. Transform photographs into production-ready 3D meshes with accurate geometry and texture mapping. -- [Trellis (trellis: trellis)](/model-api-reference/image-generation/trellis/trellis) — Trellis is trellis's image-to-3D AI model. Transform photographs into production-ready 3D meshes with accurate geometry and texture mapping. - ### Tripo3D -- [Triposplat](/model-api-reference/image-generation/tripo3d/triposplat) — Triposplat by Tripo3D - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation. +- [Tripo P2 Text to 3D](/model-api-reference/image-generation/tripo3d/tripo-p2/text-to-3d) — Tripo P2 is Tripo3D's current flagship 3D generation model. It turns a text description into a production-ready mesh with optional PBR textures. +- [Tripo P2 Image to 3D](/model-api-reference/image-generation/tripo3d/tripo-p2/image-to-3d) — Tripo P2 is Tripo3D's current flagship 3D generation model. It reconstructs a production-ready mesh with optional PBR textures from a single image. - [Tripo H3.1 Multiview to 3D](/model-api-reference/image-generation/tripo3d/tripo-h3.1/multiview-to-3d) — Tripo H3.1 Multiview To 3d by Tripo3D - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation. - [Tripo H3.1 Text to 3D](/model-api-reference/image-generation/tripo3d/tripo-h3.1/text-to-3d) — Tripo H3.1 is Tripo3D's text-to-3D AI model. Turn written descriptions into textured 3D objects with realistic geometry and materials. - [Tripo H3.1 Image to 3D](/model-api-reference/image-generation/tripo3d/tripo-h3.1/image-to-3d) — Tripo H3.1 by Tripo3D - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation. -- [Tripo P1 Text to 3D](/model-api-reference/image-generation/tripo3d/tripo-p1/text-to-3d) — Tripo P1 is Tripo3D's text-to-3D AI model. Turn written descriptions into textured 3D objects with realistic geometry and materials. -- [Tripo P1 Image to 3D](/model-api-reference/image-generation/tripo3d/tripo-p1/image-to-3d) — Tripo P1 by Tripo3D - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation. - -### Vidu - -- [Vidu Q2 Reference to Image](/model-api-reference/image-generation/vidu/q2/reference-to-image) — Vidu Q2 Reference To Image by Shengshu - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Vidu Q2 Text to Image](/model-api-reference/image-generation/vidu/q2/text-to-image) — Vidu Q2 is Shengshu's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. -- [Vidu 2.0 Reference to Image](/model-api-reference/image-generation/vidu/2.0/reference-to-image) — Vidu 2.0 Reference To Image is Shengshu's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. ### xAI -- [Grok Imagine Image Quality](/model-api-reference/image-generation/xai/grok-imagine-image/quality) — Grok Imagine Image Quality by xAI - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. +- [Grok Imagine Image 2.0 Edit](/model-api-reference/image-generation/xai/grok-imagine-image/2.0/edit) — Grok Imagine Image 2.0 Edit is xAI's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. +- [Grok Imagine Image 2.0 Text to Image](/model-api-reference/image-generation/xai/grok-imagine-image/2.0/text-to-image) — Grok Imagine Image 2.0 by xAI - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. +- [Grok Imagine Image Quality Text to Image](/model-api-reference/image-generation/xai/grok-imagine-image/quality) — Grok Imagine Image Quality by xAI - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use. - [Grok Imagine Image Quality Edit](/model-api-reference/image-generation/xai/grok-imagine-image/quality/edit) — Grok Imagine Image Quality Edit is xAI's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. - [Grok Imagine Image Edit](/model-api-reference/image-generation/xai/grok-imagine-image/edit) — Grok Imagine Image Edit is xAI's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion. -### zhipu - -- [Glm Image (zhipu: glm-image / edit)](/model-api-reference/image-generation/zhipu/glm-image/edit) — Glm Image Edit by zhipu - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly. -- [Glm Image (zhipu: glm-image)](/model-api-reference/image-generation/zhipu/glm-image) — Glm Image is zhipu's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence. - ## Capability coverage -`3d-to-3d`, `audio-to-audio`, `audio-to-text`, `audio-to-video`, `commercial`, `image-editing`, `image-to-3d`, `image-to-image`, `image-to-text`, `llm`, `mcp_exposable`, `protocol-ingress-only`, `speech-to-text`, `text-to-3d`, `text-to-image`, `training`, `video-to-audio`, `video-to-text`, `video-to-video`, `vision` +`commercial`, `image-to-3d`, `image-to-image`, `mcp_exposable`, `text-to-3d`, `text-to-image` diff --git a/model-api-reference/image-generation/alibaba/face-swap.md b/model-api-reference/image-generation/alibaba/face-swap.md deleted file mode 100644 index 89cd0d2d..00000000 --- a/model-api-reference/image-generation/alibaba/face-swap.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Face Swap API Reference" -description: "Face Swap API reference for SandBase. Use model alibaba/face-swap with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/face-swap" -apiReferenceJson: "{\"title\":\"Face Swap\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Face Swap replaces the face in a target image with the face from a source image, producing a realistic face-swapped result.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/face-swap.\",\"default\":\"alibaba/face-swap\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The target image whose face will be replaced (URL or Base64-encoded string). Maximum file size is 50 MB.\"},{\"name\":\"face_image\",\"type\":\"string\",\"required\":true,\"description\":\"The image containing the face to use as the source (URL or Base64-encoded string). Maximum file size is 50 MB.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed. Omit for an auto-generated seed.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/face-swap\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"face_image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/face-swap\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"face_image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/face-swap\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"face_image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/face-swap\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Face Swap" - modelId: "alibaba/face-swap" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "face-swap" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/head-swap.md b/model-api-reference/image-generation/alibaba/head-swap.md deleted file mode 100644 index adc16349..00000000 --- a/model-api-reference/image-generation/alibaba/head-swap.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Head Swap API Reference" -description: "Head Swap API reference for SandBase. Use model alibaba/head-swap with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/head-swap" -apiReferenceJson: "{\"title\":\"Head Swap\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Head Swap replaces the head in a target image with the head from a source image, producing a realistic head-swapped result.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/head-swap.\",\"default\":\"alibaba/head-swap\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The target image whose head will be replaced (URL or Base64-encoded string). Maximum file size is 50 MB.\"},{\"name\":\"head_image\",\"type\":\"string\",\"required\":true,\"description\":\"The image containing the head to use as the source (URL or Base64-encoded string). Maximum file size is 50 MB.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed. Omit for an auto-generated seed.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/head-swap\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"head_image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/head-swap\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"head_image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/head-swap\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"head_image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/head-swap\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Head Swap" - modelId: "alibaba/head-swap" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "head-swap" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-2.md b/model-api-reference/image-generation/alibaba/qwen-image-2.md index bd100e0f..faab185c 100644 --- a/model-api-reference/image-generation/alibaba/qwen-image-2.md +++ b/model-api-reference/image-generation/alibaba/qwen-image-2.md @@ -1,5 +1,5 @@ --- -title: "Qwen Image 2 API Reference — Alibaba Qwen Image 2 API" +title: "Qwen Image 2 API Reference" description: "Qwen Image 2 API reference for SandBase. Use model alibaba/qwen-image-2 with /v1/run; see request and response examples." aside: false outline: false diff --git a/model-api-reference/image-generation/alibaba/qwen-image-2/edit.md b/model-api-reference/image-generation/alibaba/qwen-image-2/edit.md deleted file mode 100644 index 62e0a2e8..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-2/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image 2 Edit API Reference" -description: "Qwen Image 2 Edit API reference for SandBase. Use model alibaba/qwen-image-2/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-2/edit" -apiReferenceJson: "{\"title\":\"Qwen Image 2 Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Qwen Image 2 image editing model with multi-reference support and configurable output format.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-2/edit.\",\"default\":\"alibaba/qwen-image-2/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The editing instruction describing what changes to make.\",\"default\":\"\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"List of input image URLs for editing. Up to 4 images.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16, 9:21\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-editing\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-2/edit\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"images\\\": [\\n \\\"https://cdn.sanity.io/images/2gpum2i6/production/60c0bd0873dce1991931829d93ca1270dd42cb0c-1680x952.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-2/edit\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"images\\\": [\\n \\\"https://cdn.sanity.io/images/2gpum2i6/production/60c0bd0873dce1991931829d93ca1270dd42cb0c-1680x952.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-2/edit\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"images\\\": [\\n \\\"https://cdn.sanity.io/images/2gpum2i6/production/60c0bd0873dce1991931829d93ca1270dd42cb0c-1680x952.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-2/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image 2 Edit" - modelId: "alibaba/qwen-image-2/edit" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-2/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-03T15:27:59.231Z" - capabilities: ["image-editing"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-2/pro.md b/model-api-reference/image-generation/alibaba/qwen-image-2/pro.md deleted file mode 100644 index b935411a..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-2/pro.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image 2 Pro API Reference" -description: "Qwen Image 2 Pro API reference for SandBase. Use model alibaba/qwen-image-2/pro with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-2/pro" -apiReferenceJson: "{\"title\":\"Qwen Image 2 Pro\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Qwen Image 2 Pro text-to-image model with enhanced quality and configurable output format.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-2/pro.\",\"default\":\"alibaba/qwen-image-2/pro\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\",\"default\":\"\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16, 9:21\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-2/pro\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-2/pro\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-2/pro\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-2/pro\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image 2 Pro" - modelId: "alibaba/qwen-image-2/pro" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-2/pro" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-03T15:33:50.635Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-2/pro/edit.md b/model-api-reference/image-generation/alibaba/qwen-image-2/pro/edit.md deleted file mode 100644 index b93c76ba..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-2/pro/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image 2 Pro Edit API Reference" -description: "Qwen Image 2 Pro Edit API reference for SandBase. Use model alibaba/qwen-image-2/pro/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-2/pro/edit" -apiReferenceJson: "{\"title\":\"Qwen Image 2 Pro Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Qwen Image 2 Pro image editing model with multi-reference support and configurable output format.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-2/pro/edit.\",\"default\":\"alibaba/qwen-image-2/pro/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The editing instruction describing what changes to make.\",\"default\":\"\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"List of input image URLs for editing. Up to 4 images.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16, 9:21\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-editing\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-2/pro/edit\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"images\\\": [\\n \\\"https://cdn.sanity.io/images/2gpum2i6/production/60c0bd0873dce1991931829d93ca1270dd42cb0c-1680x952.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-2/pro/edit\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"images\\\": [\\n \\\"https://cdn.sanity.io/images/2gpum2i6/production/60c0bd0873dce1991931829d93ca1270dd42cb0c-1680x952.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-2/pro/edit\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"images\\\": [\\n \\\"https://cdn.sanity.io/images/2gpum2i6/production/60c0bd0873dce1991931829d93ca1270dd42cb0c-1680x952.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-2/pro/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image 2 Pro Edit" - modelId: "alibaba/qwen-image-2/pro/edit" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-2/pro/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-03T15:29:45.35Z" - capabilities: ["image-editing"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-2/pro/text-to-image.md b/model-api-reference/image-generation/alibaba/qwen-image-2/pro/text-to-image.md deleted file mode 100644 index 1d8d057b..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-2/pro/text-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image 2 API Reference — Alibaba 2 / Pro / Text To Image" -description: "Qwen Image 2 API reference for SandBase. Use model alibaba/qwen-image-2/pro/text-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-2/pro/text-to-image" -apiReferenceJson: "{\"title\":\"Qwen Image 2\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image 2 Pro by Alibaba - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-2/pro/text-to-image.\",\"default\":\"alibaba/qwen-image-2/pro/text-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the desired image. Supports Chinese and English;.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility (0-2147483647).\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-2/pro/text-to-image\\\",\\n \\\"prompt\\\": \\\"# 1930s Luxury Automobile Manufacturing – 11-Stage Infographic\\\\n## LAYOUT\\\\n- 3 rows, flowchart with arrows left→right, curving down between rows\\\\n- Row 1: Stages 1–3 | Row 2: Stages 4–6 | Row 3: Stages 7–11\\\\n- Style: hand-drawn sketch, watercolor coloring. Car color: deep burgundy/cream accents\\\\n- Car style: 1930s grand tourer (long hood, flowing fenders, wire wheels, art deco chrome)\\\\n---\\\\n## ROW 1\\\\n### STAGE 1 – DESIGN & COACHBUILDING PLANNING\\\\n- Isometric design studio with wooden drafting tables\\\\n- 3 designers in waistcoats: one drawing side-profile with French curves, one sculpting a cream clay scale model on turntable, one reviewing a full-size blueprint on wall\\\\n- Art Deco posters on walls, inkwells, callipers, blackboard with chassis dimensions\\\\n### STAGE 2 – SUPPLY CHAIN & RAW MATERIALS\\\\n- Components spread out with label lines:\\\\n - **STEEL INGOTS & BILLETS** – dark gray blocks, warm foundry glow\\\\n - **ALUMINUM SHEETS** – silver sheets on wooden pallet\\\\n - **ASH WOOD TIMBER** – honey-brown planks bundled (for body frame)\\\\n - **LEATHER HIDES** – rolled cognac-brown full-grain hides\\\\n - **WIRE SPOKES & HUB CASTINGS** – bundled steel spokes, gray castings\\\\n - **GLASS PANES** – transparent sheets in straw-packed crates\\\\n - **CHROME & BRASS FITTINGS** – shiny strips, handles, hood ornament blanks\\\\n- Background: foundry/tannery silhouettes with smoking chimneys\\\\n### STAGE 3 – PART FABRICATION (METALWORK & WOODWORK)\\\\nTwo bordered sub-boxes:\\\\n**Top – \\\\\\\"METALWORK & FORGING\\\\\\\":**\\\\nSteel billets → **DROP FORGE** (hammer press, glowing orange part) → **PRECISION LATHE** (belt-driven, machinist in flat cap) → **HAND GAUGING** (micrometers, go/no-go gauges on wooden bench)\\\\n**Bottom – \\\\\\\"COACHWORK FRAME & PANEL BEATING\\\\\\\":**\\\\n**ASH CUTTING** (bandsaw, sawdust) → **FRAME JIG ASSEMBLY** (skeletal wooden body on jig, car shape visible) → **HAND PANEL BEATING** (craftsman hammering aluminum over wooden buck) → **ENGLISH WHEEL** (rolling panel for smooth curves)\\\\n---\\\\n## ROW 2\\\\n### STAGE 4 – CHASSIS & MECHANICAL ASSEMBLY\\\\n- **LADDER CHASSIS** – dark steel twin rails + cross-members on trestles, riveted. Workers fitting braces\\\\n- **FRONT AXLE & LEAF SPRINGS** – beam axle with semi-elliptic springs, worker with wrench\\\\n- **REAR AXLE & DIFFERENTIAL** – live axle with pumpkin-shaped housing\\\\n- **DRUM BRAKES** – cable-operated assemblies at each wheel position\\\\n- **STEERING GEARBOX** – worm-and-sector box, drag link to front axle\\\\n### STAGE 5 – ENGINE BUILDING & INSTALLATION\\\\n- Left: **ENGINE BENCH** – inline-8 block (dark green/gray), forged crankshaft being lowered in, pistons in a row, twin brass carburetors, magneto ignition, cylinder head being torqued. Oil cans, rags, hand tools\\\\n- Right: **ENGINE DROP-IN** – completed engine lowered by chain hoist on A-frame crane into chassis. Two workers guiding. Transmission bell housing visible\\\\n### STAGE 6 – BODY MOUNTING\\\\n- Bare aluminum body shell (silver, on wooden frame) lowered by overhead gantry onto rolling chassis\\\\n- 4–5 workers guiding body down. Red alignment lines between mount points\\\\n- Labels: \\\\\\\"Body mount bolts\\\\\\\", \\\\\\\"Firewall alignment\\\\\\\", \\\\\\\"Running board brackets\\\\\\\"\\\\n- Full car silhouette now recognizable: long hood, set-back cabin, swept tail\\\\n---\\\\n## ROW 3\\\\n### STAGE 7 – PAINTING & FINISHING\\\\n- Painter in white coveralls spraying with gun: gray primer on rear half, deep burgundy lacquer on front half\\\\n- Second worker wet-sanding between coats\\\\n- Labels: \\\\\\\"Lead filler & primer\\\\\\\", \\\\\\\"Nitrocellulose lacquer\\\\\\\", \\\\\\\"Hand rubbing & polishing\\\\\\\"\\\\n### STAGE 8 – INTERIOR TRIMMING\\\\n- Cabin cutaway showing: hand-stitched diamond-tufted cognac leather seats, burled walnut dashboard with round gauge holes and chrome bezels, leather door panels with chrome cranks, dark maroon wool carpet, cream cloth headliner\\\\n### STAGE 9 – CHROME & BRIGHTWORK\\\\n- Vignettes: chrome bumpers bolted on, art deco hood ornament (leaping figurine) on radiator cap, round chrome headlamps on fenders, tall vertical-bar radiator grille, trim strips and door handles. Worker polishing fender to mirror shine\\\\n### STAGE 10 – MECHANICAL TESTING\\\\n- Completed burgundy car with cream fenders and full chrome\\\\n- Labels: \\\\\\\"Ignition timing & carburetor tuning\\\\\\\" (mechanic with timing light), \\\\\\\"Brake balance test\\\\\\\", \\\\\\\"Wheel alignment\\\\\\\" (string method), \\\\\\\"Electrical check\\\\\\\" (lights glowing), \\\\\\\"Fluid fill & leak check\\\\\\\"\\\\n- Handwritten checklist on clipboard resting on fender\\\\n### STAGE 11 – ROAD TEST & DELIVERY\\\\n- Left: car in motion on country road, dust trail, driver in goggles/leather cap. Green hills in watercolor background\\\\n- Right: car at Art Deco showroom entrance. Factory director in three-piece suit, client in top hat receiving leather key fob, chauffeur in uniform by driver's door\\\\n---\\\\n## STYLE GUIDE\\\\n- **Colors:** Burgundy body (#6B1024), cream accents (#F5E6C8), dark steel chassis, silver aluminum, honey-brown ash wood, cognac leather, bright chrome highlights\\\\n- **Typography:** Bold uppercase sans-serif titles (\\\\\\\"STAGE [#] – [NAME]\\\\\\\"), smaller labels with thin connector lines\\\\n- **Style:** Ink outlines, watercolor flat fill, isometric/3/4 view, period-correct details (belt-driven machines, chain hoists, flat caps, Art Deco flourishes)\\\\n- **Arrows:** Thin black, left→right, curving down between rows\\\\n- **Proportions:** Landscape ~3:1, 3 equal rows, Stage 3 taller, Row 3 has 5 narrower stages\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-2/pro/text-to-image\\\",\\n \\\"prompt\\\": \\\"# 1930s Luxury Automobile Manufacturing – 11-Stage Infographic\\\\n## LAYOUT\\\\n- 3 rows, flowchart with arrows left→right, curving down between rows\\\\n- Row 1: Stages 1–3 | Row 2: Stages 4–6 | Row 3: Stages 7–11\\\\n- Style: hand-drawn sketch, watercolor coloring. Car color: deep burgundy/cream accents\\\\n- Car style: 1930s grand tourer (long hood, flowing fenders, wire wheels, art deco chrome)\\\\n---\\\\n## ROW 1\\\\n### STAGE 1 – DESIGN & COACHBUILDING PLANNING\\\\n- Isometric design studio with wooden drafting tables\\\\n- 3 designers in waistcoats: one drawing side-profile with French curves, one sculpting a cream clay scale model on turntable, one reviewing a full-size blueprint on wall\\\\n- Art Deco posters on walls, inkwells, callipers, blackboard with chassis dimensions\\\\n### STAGE 2 – SUPPLY CHAIN & RAW MATERIALS\\\\n- Components spread out with label lines:\\\\n - **STEEL INGOTS & BILLETS** – dark gray blocks, warm foundry glow\\\\n - **ALUMINUM SHEETS** – silver sheets on wooden pallet\\\\n - **ASH WOOD TIMBER** – honey-brown planks bundled (for body frame)\\\\n - **LEATHER HIDES** – rolled cognac-brown full-grain hides\\\\n - **WIRE SPOKES & HUB CASTINGS** – bundled steel spokes, gray castings\\\\n - **GLASS PANES** – transparent sheets in straw-packed crates\\\\n - **CHROME & BRASS FITTINGS** – shiny strips, handles, hood ornament blanks\\\\n- Background: foundry/tannery silhouettes with smoking chimneys\\\\n### STAGE 3 – PART FABRICATION (METALWORK & WOODWORK)\\\\nTwo bordered sub-boxes:\\\\n**Top – \\\\\\\"METALWORK & FORGING\\\\\\\":**\\\\nSteel billets → **DROP FORGE** (hammer press, glowing orange part) → **PRECISION LATHE** (belt-driven, machinist in flat cap) → **HAND GAUGING** (micrometers, go/no-go gauges on wooden bench)\\\\n**Bottom – \\\\\\\"COACHWORK FRAME & PANEL BEATING\\\\\\\":**\\\\n**ASH CUTTING** (bandsaw, sawdust) → **FRAME JIG ASSEMBLY** (skeletal wooden body on jig, car shape visible) → **HAND PANEL BEATING** (craftsman hammering aluminum over wooden buck) → **ENGLISH WHEEL** (rolling panel for smooth curves)\\\\n---\\\\n## ROW 2\\\\n### STAGE 4 – CHASSIS & MECHANICAL ASSEMBLY\\\\n- **LADDER CHASSIS** – dark steel twin rails + cross-members on trestles, riveted. Workers fitting braces\\\\n- **FRONT AXLE & LEAF SPRINGS** – beam axle with semi-elliptic springs, worker with wrench\\\\n- **REAR AXLE & DIFFERENTIAL** – live axle with pumpkin-shaped housing\\\\n- **DRUM BRAKES** – cable-operated assemblies at each wheel position\\\\n- **STEERING GEARBOX** – worm-and-sector box, drag link to front axle\\\\n### STAGE 5 – ENGINE BUILDING & INSTALLATION\\\\n- Left: **ENGINE BENCH** – inline-8 block (dark green/gray), forged crankshaft being lowered in, pistons in a row, twin brass carburetors, magneto ignition, cylinder head being torqued. Oil cans, rags, hand tools\\\\n- Right: **ENGINE DROP-IN** – completed engine lowered by chain hoist on A-frame crane into chassis. Two workers guiding. Transmission bell housing visible\\\\n### STAGE 6 – BODY MOUNTING\\\\n- Bare aluminum body shell (silver, on wooden frame) lowered by overhead gantry onto rolling chassis\\\\n- 4–5 workers guiding body down. Red alignment lines between mount points\\\\n- Labels: \\\\\\\"Body mount bolts\\\\\\\", \\\\\\\"Firewall alignment\\\\\\\", \\\\\\\"Running board brackets\\\\\\\"\\\\n- Full car silhouette now recognizable: long hood, set-back cabin, swept tail\\\\n---\\\\n## ROW 3\\\\n### STAGE 7 – PAINTING & FINISHING\\\\n- Painter in white coveralls spraying with gun: gray primer on rear half, deep burgundy lacquer on front half\\\\n- Second worker wet-sanding between coats\\\\n- Labels: \\\\\\\"Lead filler & primer\\\\\\\", \\\\\\\"Nitrocellulose lacquer\\\\\\\", \\\\\\\"Hand rubbing & polishing\\\\\\\"\\\\n### STAGE 8 – INTERIOR TRIMMING\\\\n- Cabin cutaway showing: hand-stitched diamond-tufted cognac leather seats, burled walnut dashboard with round gauge holes and chrome bezels, leather door panels with chrome cranks, dark maroon wool carpet, cream cloth headliner\\\\n### STAGE 9 – CHROME & BRIGHTWORK\\\\n- Vignettes: chrome bumpers bolted on, art deco hood ornament (leaping figurine) on radiator cap, round chrome headlamps on fenders, tall vertical-bar radiator grille, trim strips and door handles. Worker polishing fender to mirror shine\\\\n### STAGE 10 – MECHANICAL TESTING\\\\n- Completed burgundy car with cream fenders and full chrome\\\\n- Labels: \\\\\\\"Ignition timing & carburetor tuning\\\\\\\" (mechanic with timing light), \\\\\\\"Brake balance test\\\\\\\", \\\\\\\"Wheel alignment\\\\\\\" (string method), \\\\\\\"Electrical check\\\\\\\" (lights glowing), \\\\\\\"Fluid fill & leak check\\\\\\\"\\\\n- Handwritten checklist on clipboard resting on fender\\\\n### STAGE 11 – ROAD TEST & DELIVERY\\\\n- Left: car in motion on country road, dust trail, driver in goggles/leather cap. Green hills in watercolor background\\\\n- Right: car at Art Deco showroom entrance. Factory director in three-piece suit, client in top hat receiving leather key fob, chauffeur in uniform by driver's door\\\\n---\\\\n## STYLE GUIDE\\\\n- **Colors:** Burgundy body (#6B1024), cream accents (#F5E6C8), dark steel chassis, silver aluminum, honey-brown ash wood, cognac leather, bright chrome highlights\\\\n- **Typography:** Bold uppercase sans-serif titles (\\\\\\\"STAGE [#] – [NAME]\\\\\\\"), smaller labels with thin connector lines\\\\n- **Style:** Ink outlines, watercolor flat fill, isometric/3/4 view, period-correct details (belt-driven machines, chain hoists, flat caps, Art Deco flourishes)\\\\n- **Arrows:** Thin black, left→right, curving down between rows\\\\n- **Proportions:** Landscape ~3:1, 3 equal rows, Stage 3 taller, Row 3 has 5 narrower stages\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-2/pro/text-to-image\\\",\\n \\\"prompt\\\": \\\"# 1930s Luxury Automobile Manufacturing – 11-Stage Infographic\\\\n## LAYOUT\\\\n- 3 rows, flowchart with arrows left→right, curving down between rows\\\\n- Row 1: Stages 1–3 | Row 2: Stages 4–6 | Row 3: Stages 7–11\\\\n- Style: hand-drawn sketch, watercolor coloring. Car color: deep burgundy/cream accents\\\\n- Car style: 1930s grand tourer (long hood, flowing fenders, wire wheels, art deco chrome)\\\\n---\\\\n## ROW 1\\\\n### STAGE 1 – DESIGN & COACHBUILDING PLANNING\\\\n- Isometric design studio with wooden drafting tables\\\\n- 3 designers in waistcoats: one drawing side-profile with French curves, one sculpting a cream clay scale model on turntable, one reviewing a full-size blueprint on wall\\\\n- Art Deco posters on walls, inkwells, callipers, blackboard with chassis dimensions\\\\n### STAGE 2 – SUPPLY CHAIN & RAW MATERIALS\\\\n- Components spread out with label lines:\\\\n - **STEEL INGOTS & BILLETS** – dark gray blocks, warm foundry glow\\\\n - **ALUMINUM SHEETS** – silver sheets on wooden pallet\\\\n - **ASH WOOD TIMBER** – honey-brown planks bundled (for body frame)\\\\n - **LEATHER HIDES** – rolled cognac-brown full-grain hides\\\\n - **WIRE SPOKES & HUB CASTINGS** – bundled steel spokes, gray castings\\\\n - **GLASS PANES** – transparent sheets in straw-packed crates\\\\n - **CHROME & BRASS FITTINGS** – shiny strips, handles, hood ornament blanks\\\\n- Background: foundry/tannery silhouettes with smoking chimneys\\\\n### STAGE 3 – PART FABRICATION (METALWORK & WOODWORK)\\\\nTwo bordered sub-boxes:\\\\n**Top – \\\\\\\"METALWORK & FORGING\\\\\\\":**\\\\nSteel billets → **DROP FORGE** (hammer press, glowing orange part) → **PRECISION LATHE** (belt-driven, machinist in flat cap) → **HAND GAUGING** (micrometers, go/no-go gauges on wooden bench)\\\\n**Bottom – \\\\\\\"COACHWORK FRAME & PANEL BEATING\\\\\\\":**\\\\n**ASH CUTTING** (bandsaw, sawdust) → **FRAME JIG ASSEMBLY** (skeletal wooden body on jig, car shape visible) → **HAND PANEL BEATING** (craftsman hammering aluminum over wooden buck) → **ENGLISH WHEEL** (rolling panel for smooth curves)\\\\n---\\\\n## ROW 2\\\\n### STAGE 4 – CHASSIS & MECHANICAL ASSEMBLY\\\\n- **LADDER CHASSIS** – dark steel twin rails + cross-members on trestles, riveted. Workers fitting braces\\\\n- **FRONT AXLE & LEAF SPRINGS** – beam axle with semi-elliptic springs, worker with wrench\\\\n- **REAR AXLE & DIFFERENTIAL** – live axle with pumpkin-shaped housing\\\\n- **DRUM BRAKES** – cable-operated assemblies at each wheel position\\\\n- **STEERING GEARBOX** – worm-and-sector box, drag link to front axle\\\\n### STAGE 5 – ENGINE BUILDING & INSTALLATION\\\\n- Left: **ENGINE BENCH** – inline-8 block (dark green/gray), forged crankshaft being lowered in, pistons in a row, twin brass carburetors, magneto ignition, cylinder head being torqued. Oil cans, rags, hand tools\\\\n- Right: **ENGINE DROP-IN** – completed engine lowered by chain hoist on A-frame crane into chassis. Two workers guiding. Transmission bell housing visible\\\\n### STAGE 6 – BODY MOUNTING\\\\n- Bare aluminum body shell (silver, on wooden frame) lowered by overhead gantry onto rolling chassis\\\\n- 4–5 workers guiding body down. Red alignment lines between mount points\\\\n- Labels: \\\\\\\"Body mount bolts\\\\\\\", \\\\\\\"Firewall alignment\\\\\\\", \\\\\\\"Running board brackets\\\\\\\"\\\\n- Full car silhouette now recognizable: long hood, set-back cabin, swept tail\\\\n---\\\\n## ROW 3\\\\n### STAGE 7 – PAINTING & FINISHING\\\\n- Painter in white coveralls spraying with gun: gray primer on rear half, deep burgundy lacquer on front half\\\\n- Second worker wet-sanding between coats\\\\n- Labels: \\\\\\\"Lead filler & primer\\\\\\\", \\\\\\\"Nitrocellulose lacquer\\\\\\\", \\\\\\\"Hand rubbing & polishing\\\\\\\"\\\\n### STAGE 8 – INTERIOR TRIMMING\\\\n- Cabin cutaway showing: hand-stitched diamond-tufted cognac leather seats, burled walnut dashboard with round gauge holes and chrome bezels, leather door panels with chrome cranks, dark maroon wool carpet, cream cloth headliner\\\\n### STAGE 9 – CHROME & BRIGHTWORK\\\\n- Vignettes: chrome bumpers bolted on, art deco hood ornament (leaping figurine) on radiator cap, round chrome headlamps on fenders, tall vertical-bar radiator grille, trim strips and door handles. Worker polishing fender to mirror shine\\\\n### STAGE 10 – MECHANICAL TESTING\\\\n- Completed burgundy car with cream fenders and full chrome\\\\n- Labels: \\\\\\\"Ignition timing & carburetor tuning\\\\\\\" (mechanic with timing light), \\\\\\\"Brake balance test\\\\\\\", \\\\\\\"Wheel alignment\\\\\\\" (string method), \\\\\\\"Electrical check\\\\\\\" (lights glowing), \\\\\\\"Fluid fill & leak check\\\\\\\"\\\\n- Handwritten checklist on clipboard resting on fender\\\\n### STAGE 11 – ROAD TEST & DELIVERY\\\\n- Left: car in motion on country road, dust trail, driver in goggles/leather cap. Green hills in watercolor background\\\\n- Right: car at Art Deco showroom entrance. Factory director in three-piece suit, client in top hat receiving leather key fob, chauffeur in uniform by driver's door\\\\n---\\\\n## STYLE GUIDE\\\\n- **Colors:** Burgundy body (#6B1024), cream accents (#F5E6C8), dark steel chassis, silver aluminum, honey-brown ash wood, cognac leather, bright chrome highlights\\\\n- **Typography:** Bold uppercase sans-serif titles (\\\\\\\"STAGE [#] – [NAME]\\\\\\\"), smaller labels with thin connector lines\\\\n- **Style:** Ink outlines, watercolor flat fill, isometric/3/4 view, period-correct details (belt-driven machines, chain hoists, flat caps, Art Deco flourishes)\\\\n- **Arrows:** Thin black, left→right, curving down between rows\\\\n- **Proportions:** Landscape ~3:1, 3 equal rows, Stage 3 taller, Row 3 has 5 narrower stages\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-2/pro/text-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image 2" - modelId: "alibaba/qwen-image-2/pro/text-to-image" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-2/pro/text-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-03T15:33:50.635Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-2/text-to-image.md b/model-api-reference/image-generation/alibaba/qwen-image-2/text-to-image.md deleted file mode 100644 index 5746dacf..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-2/text-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image 2 API Reference — Alibaba Qwen Image 2 / Text To Image" -description: "Qwen Image 2 API reference for SandBase. Use model alibaba/qwen-image-2/text-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-2/text-to-image" -apiReferenceJson: "{\"title\":\"Qwen Image 2\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image 2 by Alibaba - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-2/text-to-image.\",\"default\":\"alibaba/qwen-image-2/text-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the desired image. Supports Chinese and English.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility (0-2147483647).\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-2/text-to-image\\\",\\n \\\"prompt\\\": \\\"A cute baby koala holding a card says 'Qwen Image 2 is now available on fal' while on a water slider\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-2/text-to-image\\\",\\n \\\"prompt\\\": \\\"A cute baby koala holding a card says 'Qwen Image 2 is now available on fal' while on a water slider\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-2/text-to-image\\\",\\n \\\"prompt\\\": \\\"A cute baby koala holding a card says 'Qwen Image 2 is now available on fal' while on a water slider\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-2/text-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image 2" - modelId: "alibaba/qwen-image-2/text-to-image" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-2/text-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-03T15:32:25.533Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-3.md b/model-api-reference/image-generation/alibaba/qwen-image-3.md deleted file mode 100644 index 98508bbb..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-3.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image 3 API Reference" -description: "Qwen Image 3 API reference for SandBase. Use model alibaba/qwen-image-3 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-3" -apiReferenceJson: "{\"title\":\"Qwen Image 3\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image 3 by Alibaba - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-3.\",\"default\":\"alibaba/qwen-image-3\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the desired image. Supports Chinese and English. Max 800 characters.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility (0-2147483647).\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-3\\\",\\n \\\"prompt\\\": \\\"A cute baby koala holding a card that says \\\\\\\"Qwen Image 3 is now available on fal\\\\\\\" while on a water slide\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-3\\\",\\n \\\"prompt\\\": \\\"A cute baby koala holding a card that says \\\\\\\"Qwen Image 3 is now available on fal\\\\\\\" while on a water slide\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-3\\\",\\n \\\"prompt\\\": \\\"A cute baby koala holding a card that says \\\\\\\"Qwen Image 3 is now available on fal\\\\\\\" while on a water slide\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-3\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image 3" - modelId: "alibaba/qwen-image-3" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-3" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-07-21T12:20:35.851Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-3/edit.md b/model-api-reference/image-generation/alibaba/qwen-image-3/edit.md index 423b98a8..6bd8f6ea 100644 --- a/model-api-reference/image-generation/alibaba/qwen-image-3/edit.md +++ b/model-api-reference/image-generation/alibaba/qwen-image-3/edit.md @@ -4,7 +4,7 @@ description: "Qwen Image 3 Edit API reference for SandBase. Use model alibaba/qw aside: false outline: false apiReferenceKey: "image/alibaba/qwen-image-3/edit" -apiReferenceJson: "{\"title\":\"Qwen Image 3 Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Qwen Image 3 image editing model with support for up to three reference images.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-3/edit.\",\"default\":\"alibaba/qwen-image-3/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The editing instruction describing what changes to make.\",\"default\":\"用途:precise-object-edit。图像1是唯一编辑目标。这是中国高中数学试卷批改真实性测试。\\n严格保留原图的木桌、相机视角、纸张轮廓与阴影,以及全部黑色印刷文字、题号、公式、图形和版式;禁止重绘、改写、移动或删除原试卷内容。只新增以下红色教师签字笔笔迹:\\n1. 在试卷右上角写“112/150”并用红笔圈住。\\n2. 在四个部分标题旁依次写“45/60”“15/20”“10/20”“42/70”。\\n3. 仅在第3、14、25题题号旁画红色叉号;仅在第1、13、21题题号旁画红色勾号。\\n4. 在第25题旁写“计算错误”,在第22题旁写“过程不完整”。\\n红笔必须像中国高中教师真实批卷:自然手写、轻微倾斜、压感和墨迹浓淡变化,位置准确且不遮挡题干。不要添加学生答案、手、人物、文具、印章、水印或其他内容。除指定红笔内容外,画面保持不变。\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"List of input image URLs for editing. Supports 1 to 3 images.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"3:4\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility (0-2147483647).\",\"default\":\"20260724\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-editing\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-3/edit\\\",\\n \\\"prompt\\\": \\\"用途:precise-object-edit。图像1是唯一编辑目标。这是中国高中数学试卷批改真实性测试。\\\\n严格保留原图的木桌、相机视角、纸张轮廓与阴影,以及全部黑色印刷文字、题号、公式、图形和版式;禁止重绘、改写、移动或删除原试卷内容。只新增以下红色教师签字笔笔迹:\\\\n1. 在试卷右上角写“112/150”并用红笔圈住。\\\\n2. 在四个部分标题旁依次写“45/60”“15/20”“10/20”“42/70”。\\\\n3. 仅在第3、14、25题题号旁画红色叉号;仅在第1、13、21题题号旁画红色勾号。\\\\n4. 在第25题旁写“计算错误”,在第22题旁写“过程不完整”。\\\\n红笔必须像中国高中教师真实批卷:自然手写、轻微倾斜、压感和墨迹浓淡变化,位置准确且不遮挡题干。不要添加学生答案、手、人物、文具、印章、水印或其他内容。除指定红笔内容外,画面保持不变。\\\",\\n \\\"images\\\": [\\n \\\"https://media.sandbase.ai/files/3b376bfd-65d4-4653-817b-51098dee1045.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"3:4\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-3/edit\\\",\\n \\\"prompt\\\": \\\"用途:precise-object-edit。图像1是唯一编辑目标。这是中国高中数学试卷批改真实性测试。\\\\n严格保留原图的木桌、相机视角、纸张轮廓与阴影,以及全部黑色印刷文字、题号、公式、图形和版式;禁止重绘、改写、移动或删除原试卷内容。只新增以下红色教师签字笔笔迹:\\\\n1. 在试卷右上角写“112/150”并用红笔圈住。\\\\n2. 在四个部分标题旁依次写“45/60”“15/20”“10/20”“42/70”。\\\\n3. 仅在第3、14、25题题号旁画红色叉号;仅在第1、13、21题题号旁画红色勾号。\\\\n4. 在第25题旁写“计算错误”,在第22题旁写“过程不完整”。\\\\n红笔必须像中国高中教师真实批卷:自然手写、轻微倾斜、压感和墨迹浓淡变化,位置准确且不遮挡题干。不要添加学生答案、手、人物、文具、印章、水印或其他内容。除指定红笔内容外,画面保持不变。\\\",\\n \\\"images\\\": [\\n \\\"https://media.sandbase.ai/files/3b376bfd-65d4-4653-817b-51098dee1045.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"3:4\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-3/edit\\\",\\n \\\"prompt\\\": \\\"用途:precise-object-edit。图像1是唯一编辑目标。这是中国高中数学试卷批改真实性测试。\\\\n严格保留原图的木桌、相机视角、纸张轮廓与阴影,以及全部黑色印刷文字、题号、公式、图形和版式;禁止重绘、改写、移动或删除原试卷内容。只新增以下红色教师签字笔笔迹:\\\\n1. 在试卷右上角写“112/150”并用红笔圈住。\\\\n2. 在四个部分标题旁依次写“45/60”“15/20”“10/20”“42/70”。\\\\n3. 仅在第3、14、25题题号旁画红色叉号;仅在第1、13、21题题号旁画红色勾号。\\\\n4. 在第25题旁写“计算错误”,在第22题旁写“过程不完整”。\\\\n红笔必须像中国高中教师真实批卷:自然手写、轻微倾斜、压感和墨迹浓淡变化,位置准确且不遮挡题干。不要添加学生答案、手、人物、文具、印章、水印或其他内容。除指定红笔内容外,画面保持不变。\\\",\\n \\\"images\\\": [\\n \\\"https://media.sandbase.ai/files/3b376bfd-65d4-4653-817b-51098dee1045.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"3:4\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-3/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Qwen Image 3 Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Qwen Image 3 image editing model with support for up to three reference images.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-3/edit.\",\"default\":\"alibaba/qwen-image-3/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The editing instruction describing what changes to make.\",\"default\":\"用途:precise-object-edit。图像1是唯一编辑目标。这是中国高中数学试卷批改真实性测试。\\n严格保留原图的木桌、相机视角、纸张轮廓与阴影,以及全部黑色印刷文字、题号、公式、图形和版式;禁止重绘、改写、移动或删除原试卷内容。只新增以下红色教师签字笔笔迹:\\n1. 在试卷右上角写“112/150”并用红笔圈住。\\n2. 在四个部分标题旁依次写“45/60”“15/20”“10/20”“42/70”。\\n3. 仅在第3、14、25题题号旁画红色叉号;仅在第1、13、21题题号旁画红色勾号。\\n4. 在第25题旁写“计算错误”,在第22题旁写“过程不完整”。\\n红笔必须像中国高中教师真实批卷:自然手写、轻微倾斜、压感和墨迹浓淡变化,位置准确且不遮挡题干。不要添加学生答案、手、人物、文具、印章、水印或其他内容。除指定红笔内容外,画面保持不变。\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"List of input image URLs for editing. Supports 1 to 3 images.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"3:4\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility (0-2147483647).\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-3/edit\\\",\\n \\\"prompt\\\": \\\"用途:precise-object-edit。图像1是唯一编辑目标。这是中国高中数学试卷批改真实性测试。\\\\n严格保留原图的木桌、相机视角、纸张轮廓与阴影,以及全部黑色印刷文字、题号、公式、图形和版式;禁止重绘、改写、移动或删除原试卷内容。只新增以下红色教师签字笔笔迹:\\\\n1. 在试卷右上角写“112/150”并用红笔圈住。\\\\n2. 在四个部分标题旁依次写“45/60”“15/20”“10/20”“42/70”。\\\\n3. 仅在第3、14、25题题号旁画红色叉号;仅在第1、13、21题题号旁画红色勾号。\\\\n4. 在第25题旁写“计算错误”,在第22题旁写“过程不完整”。\\\\n红笔必须像中国高中教师真实批卷:自然手写、轻微倾斜、压感和墨迹浓淡变化,位置准确且不遮挡题干。不要添加学生答案、手、人物、文具、印章、水印或其他内容。除指定红笔内容外,画面保持不变。\\\",\\n \\\"images\\\": [\\n \\\"https://media.sandbase.ai/files/3b376bfd-65d4-4653-817b-51098dee1045.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"3:4\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-3/edit\\\",\\n \\\"prompt\\\": \\\"用途:precise-object-edit。图像1是唯一编辑目标。这是中国高中数学试卷批改真实性测试。\\\\n严格保留原图的木桌、相机视角、纸张轮廓与阴影,以及全部黑色印刷文字、题号、公式、图形和版式;禁止重绘、改写、移动或删除原试卷内容。只新增以下红色教师签字笔笔迹:\\\\n1. 在试卷右上角写“112/150”并用红笔圈住。\\\\n2. 在四个部分标题旁依次写“45/60”“15/20”“10/20”“42/70”。\\\\n3. 仅在第3、14、25题题号旁画红色叉号;仅在第1、13、21题题号旁画红色勾号。\\\\n4. 在第25题旁写“计算错误”,在第22题旁写“过程不完整”。\\\\n红笔必须像中国高中教师真实批卷:自然手写、轻微倾斜、压感和墨迹浓淡变化,位置准确且不遮挡题干。不要添加学生答案、手、人物、文具、印章、水印或其他内容。除指定红笔内容外,画面保持不变。\\\",\\n \\\"images\\\": [\\n \\\"https://media.sandbase.ai/files/3b376bfd-65d4-4653-817b-51098dee1045.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"3:4\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-3/edit\\\",\\n \\\"prompt\\\": \\\"用途:precise-object-edit。图像1是唯一编辑目标。这是中国高中数学试卷批改真实性测试。\\\\n严格保留原图的木桌、相机视角、纸张轮廓与阴影,以及全部黑色印刷文字、题号、公式、图形和版式;禁止重绘、改写、移动或删除原试卷内容。只新增以下红色教师签字笔笔迹:\\\\n1. 在试卷右上角写“112/150”并用红笔圈住。\\\\n2. 在四个部分标题旁依次写“45/60”“15/20”“10/20”“42/70”。\\\\n3. 仅在第3、14、25题题号旁画红色叉号;仅在第1、13、21题题号旁画红色勾号。\\\\n4. 在第25题旁写“计算错误”,在第22题旁写“过程不完整”。\\\\n红笔必须像中国高中教师真实批卷:自然手写、轻微倾斜、压感和墨迹浓淡变化,位置准确且不遮挡题干。不要添加学生答案、手、人物、文具、印章、水印或其他内容。除指定红笔内容外,画面保持不变。\\\",\\n \\\"images\\\": [\\n \\\"https://media.sandbase.ai/files/3b376bfd-65d4-4653-817b-51098dee1045.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"3:4\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-3/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Qwen Image 3 Edit" modelId: "alibaba/qwen-image-3/edit" @@ -14,7 +14,7 @@ seo: protocol: "Image Generation Reference" endpoint: "/v1/run" publishedAt: "2026-07-21T12:20:35.851Z" - capabilities: ["image-editing"] + capabilities: ["image-to-image"] category: "Image Generation" --- diff --git a/model-api-reference/image-generation/alibaba/qwen-image-edit-2509-lora-gallery/multiple-angles.md b/model-api-reference/image-generation/alibaba/qwen-image-edit-2509-lora-gallery/multiple-angles.md deleted file mode 100644 index 2763a357..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-edit-2509-lora-gallery/multiple-angles.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Edit 2509 Lora Gallery API Reference — Alibaba Angles" -description: "SandBase API reference for model alibaba/qwen-image-edit-2509-lora-gallery/multiple-angles. Call /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-edit-2509-lora-gallery/multiple-angles" -apiReferenceJson: "{\"title\":\"Qwen Image Edit 2509 Lora Gallery\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Edit 2509 Lora Gallery Multiple Angles is Alibaba's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-edit-2509-lora-gallery/multiple-angles.\",\"default\":\"alibaba/qwen-image-edit-2509-lora-gallery/multiple-angles\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URL of the image to adjust camera angle for.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale. Controls how closely the model follows the prompt.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"6\",\"constraints\":\"Range: 2 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale factor for the LoRA model. Controls the strength of the camera control effect.\",\"default\":\"1.25\",\"constraints\":\"Range: 0 to 4\"},{\"name\":\"wide_angle_lens\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable wide-angle lens effect\",\"default\":\"false\"},{\"name\":\"vertical_angle\",\"type\":\"number\",\"required\":false,\"description\":\"Adjust vertical camera angle (-1=bird's-eye view/looking down, 0=neutral, 1=worm's-eye view/looking up)\",\"default\":\"0\",\"constraints\":\"Range: -1 to 1\"},{\"name\":\"rotate_right_left\",\"type\":\"number\",\"required\":false,\"description\":\"Rotate camera left (positive) or right (negative) in degrees. Positive values rotate left, negative values rotate right.\",\"default\":\"0\",\"constraints\":\"Range: -90 to 90\"},{\"name\":\"move_forward\",\"type\":\"number\",\"required\":false,\"description\":\"Move camera forward (0=no movement, 10=close-up)\",\"default\":\"0\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. Same seed with same prompt will produce same result.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-2509-lora-gallery/multiple-angles\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-2509-lora-gallery/multiple-angles\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-2509-lora-gallery/multiple-angles\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-2509-lora-gallery/multiple-angles\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Edit 2509 Lora Gallery" - modelId: "alibaba/qwen-image-edit-2509-lora-gallery/multiple-angles" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-edit-2509-lora-gallery/multiple-angles" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-15T23:32:35.288Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-edit-2509-lora-gallery/remove-element.md b/model-api-reference/image-generation/alibaba/qwen-image-edit-2509-lora-gallery/remove-element.md deleted file mode 100644 index 216bbb3b..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-edit-2509-lora-gallery/remove-element.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Edit 2509 Lora Gallery API Reference — Alibaba Element" -description: "SandBase API reference for model alibaba/qwen-image-edit-2509-lora-gallery/remove-element. Call /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-edit-2509-lora-gallery/remove-element" -apiReferenceJson: "{\"title\":\"Qwen Image Edit 2509 Lora Gallery\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Edit 2509 Lora Gallery Remove Element by Alibaba - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-edit-2509-lora-gallery/remove-element.\",\"default\":\"alibaba/qwen-image-edit-2509-lora-gallery/remove-element\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Specify what element(s) to remove from the image (objects, people, text, etc.). The model will cleanly remove the element while maintaining consistency of the rest of the image.\",\"default\":\"Remove the specified element from the scene\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URL of the image containing elements to remove.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale. Controls how closely the model follows the prompt.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"6\",\"constraints\":\"Range: 2 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale factor for the LoRA model. Controls the strength of the LoRA effect.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 4\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. Same seed with same prompt will produce same result.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-2509-lora-gallery/remove-element\\\",\\n \\\"prompt\\\": \\\"Remove the specified element from the scene\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-2509-lora-gallery/remove-element\\\",\\n \\\"prompt\\\": \\\"Remove the specified element from the scene\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-2509-lora-gallery/remove-element\\\",\\n \\\"prompt\\\": \\\"Remove the specified element from the scene\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-2509-lora-gallery/remove-element\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Edit 2509 Lora Gallery" - modelId: "alibaba/qwen-image-edit-2509-lora-gallery/remove-element" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-edit-2509-lora-gallery/remove-element" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-15T23:46:58.957Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-edit-2509.md b/model-api-reference/image-generation/alibaba/qwen-image-edit-2509.md deleted file mode 100644 index fb2e8ecc..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-edit-2509.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Edit 2509 API Reference" -description: "Qwen Image Edit 2509 API reference for SandBase. Use model alibaba/qwen-image-edit-2509 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-edit-2509" -apiReferenceJson: "{\"title\":\"Qwen Image Edit 2509\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Edit 2509 by Alibaba - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-edit-2509.\",\"default\":\"alibaba/qwen-image-edit-2509\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the image with\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images to edit.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"50\",\"constraints\":\"Range: 2 to 100\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"4\",\"constraints\":\"Range: 0 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-2509\\\",\\n \\\"prompt\\\": \\\"Close shot of a woman standing in next to this car on this highway\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-2509\\\",\\n \\\"prompt\\\": \\\"Close shot of a woman standing in next to this car on this highway\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-2509\\\",\\n \\\"prompt\\\": \\\"Close shot of a woman standing in next to this car on this highway\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-2509\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Edit 2509" - modelId: "alibaba/qwen-image-edit-2509" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-edit-2509" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-15T21:06:45.628Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-edit-exp0622.md b/model-api-reference/image-generation/alibaba/qwen-image-edit-exp0622.md deleted file mode 100644 index 980894b5..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-edit-exp0622.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Edit Exp0622 API Reference" -description: "Qwen Image Edit Exp0622 API reference for SandBase. Use model alibaba/qwen-image-edit-exp0622 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-edit-exp0622" -apiReferenceJson: "{\"title\":\"Qwen Image Edit Exp0622\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Edit Exp0622 performs instruction-based image editing, modifying an input image according to a text prompt.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-edit-exp0622.\",\"default\":\"alibaba/qwen-image-edit-exp0622\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image to edit (URL or Base64-encoded string). Maximum file size is 50 MB.\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text instruction describing the desired edits to apply to the image.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed. Omit for an auto-generated seed.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-exp0622\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-exp0622\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-exp0622\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-exp0622\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Edit Exp0622" - modelId: "alibaba/qwen-image-edit-exp0622" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-edit-exp0622" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-edit-plus-lora-gallery/group-photo.md b/model-api-reference/image-generation/alibaba/qwen-image-edit-plus-lora-gallery/group-photo.md deleted file mode 100644 index 6fd2740a..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-edit-plus-lora-gallery/group-photo.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Edit Plus Lora Gallery API Reference — Alibaba Photo" -description: "SandBase API reference for model alibaba/qwen-image-edit-plus-lora-gallery/group-photo. Call /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-edit-plus-lora-gallery/group-photo" -apiReferenceJson: "{\"title\":\"Qwen Image Edit Plus Lora Gallery\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Edit Plus Lora Gallery Group Photo is Alibaba's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-edit-plus-lora-gallery/group-photo.\",\"default\":\"alibaba/qwen-image-edit-plus-lora-gallery/group-photo\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Describe the group photo scene, setting, and style. The model will maintain character consistency and add vintage effects like grain, blur, and retro filters.\",\"default\":\"Two people standing next to each other outside with a landscape background\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images to combine into a group photo. Provide 2 or more individual portrait images.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale. Controls how closely the model follows the prompt.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"6\",\"constraints\":\"Range: 2 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale factor for the LoRA model. Controls the strength of the LoRA effect.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 4\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. Same seed with same prompt will produce same result.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus-lora-gallery/group-photo\\\",\\n \\\"prompt\\\": \\\"Two people standing next to each other outside with a landscape background\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus-lora-gallery/group-photo\\\",\\n \\\"prompt\\\": \\\"Two people standing next to each other outside with a landscape background\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus-lora-gallery/group-photo\\\",\\n \\\"prompt\\\": \\\"Two people standing next to each other outside with a landscape background\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus-lora-gallery/group-photo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Edit Plus Lora Gallery" - modelId: "alibaba/qwen-image-edit-plus-lora-gallery/group-photo" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-edit-plus-lora-gallery/group-photo" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-11T20:11:58.194Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-edit-plus-lora-gallery/multiple-angles.md b/model-api-reference/image-generation/alibaba/qwen-image-edit-plus-lora-gallery/multiple-angles.md deleted file mode 100644 index c32bf48b..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-edit-plus-lora-gallery/multiple-angles.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Edit Plus Lora Gallery API Reference — Alibaba Angles" -description: "SandBase API reference for model alibaba/qwen-image-edit-plus-lora-gallery/multiple-angles. Call /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-edit-plus-lora-gallery/multiple-angles" -apiReferenceJson: "{\"title\":\"Qwen Image Edit Plus Lora Gallery\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Edit Plus Lora Gallery Multiple Angles is Alibaba's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-edit-plus-lora-gallery/multiple-angles.\",\"default\":\"alibaba/qwen-image-edit-plus-lora-gallery/multiple-angles\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URL of the image to adjust camera angle for.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale. Controls how closely the model follows the prompt.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"6\",\"constraints\":\"Range: 2 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"vertical_angle\",\"type\":\"number\",\"required\":false,\"description\":\"Adjust vertical camera angle (-1=bird's-eye view/looking down, 0=neutral, 1=worm's-eye view/looking up)\",\"default\":\"0\",\"constraints\":\"Range: -1 to 1\"},{\"name\":\"move_forward\",\"type\":\"number\",\"required\":false,\"description\":\"Move camera forward (0=no movement, 10=close-up)\",\"default\":\"0\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"wide_angle_lens\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable wide-angle lens effect\",\"default\":\"false\"},{\"name\":\"lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale factor for the LoRA model. Controls the strength of the camera control effect.\",\"default\":\"1.25\",\"constraints\":\"Range: 0 to 4\"},{\"name\":\"rotate_right_left\",\"type\":\"number\",\"required\":false,\"description\":\"Rotate camera left (positive) or right (negative) in degrees. Positive values rotate left, negative values rotate right.\",\"default\":\"0\",\"constraints\":\"Range: -90 to 90\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. Same seed with same prompt will produce same result.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus-lora-gallery/multiple-angles\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus-lora-gallery/multiple-angles\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus-lora-gallery/multiple-angles\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus-lora-gallery/multiple-angles\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Edit Plus Lora Gallery" - modelId: "alibaba/qwen-image-edit-plus-lora-gallery/multiple-angles" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-edit-plus-lora-gallery/multiple-angles" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-11T20:40:36.367Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-edit-plus-lora-gallery/remove-element.md b/model-api-reference/image-generation/alibaba/qwen-image-edit-plus-lora-gallery/remove-element.md deleted file mode 100644 index 16e59b24..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-edit-plus-lora-gallery/remove-element.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Edit Plus Lora Gallery API Reference — Alibaba Element" -description: "SandBase API reference for model alibaba/qwen-image-edit-plus-lora-gallery/remove-element. Call /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-edit-plus-lora-gallery/remove-element" -apiReferenceJson: "{\"title\":\"Qwen Image Edit Plus Lora Gallery\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Edit Plus Lora Gallery Remove Element by Alibaba - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-edit-plus-lora-gallery/remove-element.\",\"default\":\"alibaba/qwen-image-edit-plus-lora-gallery/remove-element\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Specify what element(s) to remove from the image (objects, people, text, etc.). The model will cleanly remove the element while maintaining consistency of the rest of the image.\",\"default\":\"Remove the specified element from the scene\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URL of the image containing elements to remove.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale. Controls how closely the model follows the prompt.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"6\",\"constraints\":\"Range: 2 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale factor for the LoRA model. Controls the strength of the LoRA effect.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 4\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. Same seed with same prompt will produce same result.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus-lora-gallery/remove-element\\\",\\n \\\"prompt\\\": \\\"Remove the specified element from the scene\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus-lora-gallery/remove-element\\\",\\n \\\"prompt\\\": \\\"Remove the specified element from the scene\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus-lora-gallery/remove-element\\\",\\n \\\"prompt\\\": \\\"Remove the specified element from the scene\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus-lora-gallery/remove-element\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Edit Plus Lora Gallery" - modelId: "alibaba/qwen-image-edit-plus-lora-gallery/remove-element" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-edit-plus-lora-gallery/remove-element" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-11T20:32:00.206Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-edit-plus.md b/model-api-reference/image-generation/alibaba/qwen-image-edit-plus.md deleted file mode 100644 index 769c3bf9..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-edit-plus.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Edit Plus API Reference" -description: "Qwen Image Edit Plus API reference for SandBase. Use model alibaba/qwen-image-edit-plus with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-edit-plus" -apiReferenceJson: "{\"title\":\"Qwen Image Edit Plus\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Edit Plus by Alibaba - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-edit-plus.\",\"default\":\"alibaba/qwen-image-edit-plus\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the image with\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images to edit.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"4\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"50\",\"constraints\":\"Range: 2 to 100\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus\\\",\\n \\\"prompt\\\": \\\"Close shot of a woman standing in next to this car on this highway\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus\\\",\\n \\\"prompt\\\": \\\"Close shot of a woman standing in next to this car on this highway\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus\\\",\\n \\\"prompt\\\": \\\"Close shot of a woman standing in next to this car on this highway\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Edit Plus" - modelId: "alibaba/qwen-image-edit-plus" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-edit-plus" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-22T23:20:39.729Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-edit-plus/lora-gallery/add-background.md b/model-api-reference/image-generation/alibaba/qwen-image-edit-plus/lora-gallery/add-background.md deleted file mode 100644 index 185307f4..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-edit-plus/lora-gallery/add-background.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Edit Plus Lora Gallery — 6dts1p API" -description: "SandBase API reference for model alibaba/qwen-image-edit-plus/lora-gallery/add-background. Call /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-edit-plus/lora-gallery/add-background" -apiReferenceJson: "{\"title\":\"Qwen Image Edit Plus Lora Gallery\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Edit Plus Lora Gallery Add Background by Alibaba - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-edit-plus/lora-gallery/add-background.\",\"default\":\"alibaba/qwen-image-edit-plus/lora-gallery/add-background\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Describe the background/scene you want to add behind the object. The model will remove the white background and add the specified environment.\",\"default\":\"Remove white background and add a realistic scene behind the object\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images to edit. Provide an image with a white or clean background.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale factor for the LoRA model. Controls the strength of the LoRA effect.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 4\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. Same seed with same prompt will produce same result.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"6\",\"constraints\":\"Range: 2 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus/lora-gallery/add-background\\\",\\n \\\"prompt\\\": \\\"Remove white background and add a realistic scene behind the object\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus/lora-gallery/add-background\\\",\\n \\\"prompt\\\": \\\"Remove white background and add a realistic scene behind the object\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus/lora-gallery/add-background\\\",\\n \\\"prompt\\\": \\\"Remove white background and add a realistic scene behind the object\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus/lora-gallery/add-background\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Edit Plus Lora Gallery" - modelId: "alibaba/qwen-image-edit-plus/lora-gallery/add-background" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-edit-plus/lora-gallery/add-background" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-11T19:08:44.764Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-edit-plus/lora-gallery/integrate-product.md b/model-api-reference/image-generation/alibaba/qwen-image-edit-plus/lora-gallery/integrate-product.md deleted file mode 100644 index bc68a08a..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-edit-plus/lora-gallery/integrate-product.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Edit Plus Lora Gallery API Reference — Alibaba Product" -description: "SandBase API reference for model alibaba/qwen-image-edit-plus/lora-gallery/integrate-product. Call /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-edit-plus/lora-gallery/integrate-product" -apiReferenceJson: "{\"title\":\"Qwen Image Edit Plus Lora Gallery\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Edit Plus Lora Gallery Integrate Product is Alibaba's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-edit-plus/lora-gallery/integrate-product.\",\"default\":\"alibaba/qwen-image-edit-plus/lora-gallery/integrate-product\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Describe how to blend and integrate the product/element into the background. The model will automatically correct perspective, lighting and shadows for natural integration.\",\"default\":\"Blend and integrate the product into the background\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URL of the image with product to integrate into background.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale factor for the LoRA model. Controls the strength of the LoRA effect.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 4\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. Same seed with same prompt will produce same result.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"6\",\"constraints\":\"Range: 2 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus/lora-gallery/integrate-product\\\",\\n \\\"prompt\\\": \\\"Blend and integrate the product into the background\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus/lora-gallery/integrate-product\\\",\\n \\\"prompt\\\": \\\"Blend and integrate the product into the background\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus/lora-gallery/integrate-product\\\",\\n \\\"prompt\\\": \\\"Blend and integrate the product into the background\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus/lora-gallery/integrate-product\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Edit Plus Lora Gallery" - modelId: "alibaba/qwen-image-edit-plus/lora-gallery/integrate-product" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-edit-plus/lora-gallery/integrate-product" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-11T20:16:11.899Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-edit-plus/lora-gallery/lighting-restoration.md b/model-api-reference/image-generation/alibaba/qwen-image-edit-plus/lora-gallery/lighting-restoration.md deleted file mode 100644 index a6124e50..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-edit-plus/lora-gallery/lighting-restoration.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Edit Plus Lora Gallery — k9a1dy API" -description: "SandBase API reference for model alibaba/qwen-image-edit-plus/lora-gallery/lighting-restoration. Call /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-edit-plus/lora-gallery/lighting-restoration" -apiReferenceJson: "{\"title\":\"Qwen Image Edit Plus Lora Gallery\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Edit Plus Lora Gallery Lighting Restoration by Alibaba - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-edit-plus/lora-gallery/lighting-restoration.\",\"default\":\"alibaba/qwen-image-edit-plus/lora-gallery/lighting-restoration\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URL of the image to restore lighting for.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. Same seed with same prompt will produce same result.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"6\",\"constraints\":\"Range: 2 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus/lora-gallery/lighting-restoration\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus/lora-gallery/lighting-restoration\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus/lora-gallery/lighting-restoration\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus/lora-gallery/lighting-restoration\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Edit Plus Lora Gallery" - modelId: "alibaba/qwen-image-edit-plus/lora-gallery/lighting-restoration" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-edit-plus/lora-gallery/lighting-restoration" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-12T23:01:29.638Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-edit-plus/lora-gallery/next-scene.md b/model-api-reference/image-generation/alibaba/qwen-image-edit-plus/lora-gallery/next-scene.md deleted file mode 100644 index c54e2f26..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-edit-plus/lora-gallery/next-scene.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Edit Plus Lora Gallery API Reference — Alibaba Scene" -description: "SandBase API reference for model alibaba/qwen-image-edit-plus/lora-gallery/next-scene. Call /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-edit-plus/lora-gallery/next-scene" -apiReferenceJson: "{\"title\":\"Qwen Image Edit Plus Lora Gallery\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Edit Plus Lora Gallery Next Scene by Alibaba - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-edit-plus/lora-gallery/next-scene.\",\"default\":\"alibaba/qwen-image-edit-plus/lora-gallery/next-scene\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Describe the camera movement, framing change, or scene transition. Start with 'Next Scene:' for best results. Examples: camera movements (dolly, push-in, pull-back), framing changes (wide to close-up), new elements entering frame.\",\"default\":\"Next Scene: The camera moves forward revealing more of the scene\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URL of the image to create the next scene from.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale factor for the LoRA model. Controls the strength of the LoRA effect.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 4\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. Same seed with same prompt will produce same result.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"6\",\"constraints\":\"Range: 2 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus/lora-gallery/next-scene\\\",\\n \\\"prompt\\\": \\\"Next Scene: The camera moves forward revealing more of the scene\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus/lora-gallery/next-scene\\\",\\n \\\"prompt\\\": \\\"Next Scene: The camera moves forward revealing more of the scene\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus/lora-gallery/next-scene\\\",\\n \\\"prompt\\\": \\\"Next Scene: The camera moves forward revealing more of the scene\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus/lora-gallery/next-scene\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Edit Plus Lora Gallery" - modelId: "alibaba/qwen-image-edit-plus/lora-gallery/next-scene" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-edit-plus/lora-gallery/next-scene" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-11T20:29:00.375Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-edit-plus/lora-gallery/remove-lighting.md b/model-api-reference/image-generation/alibaba/qwen-image-edit-plus/lora-gallery/remove-lighting.md deleted file mode 100644 index 01508bed..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-edit-plus/lora-gallery/remove-lighting.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Edit Plus Lora Gallery — ovpzzg API" -description: "SandBase API reference for model alibaba/qwen-image-edit-plus/lora-gallery/remove-lighting. Call /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-edit-plus/lora-gallery/remove-lighting" -apiReferenceJson: "{\"title\":\"Qwen Image Edit Plus Lora Gallery\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Edit Plus Lora Gallery Remove Lighting is Alibaba's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-edit-plus/lora-gallery/remove-lighting.\",\"default\":\"alibaba/qwen-image-edit-plus/lora-gallery/remove-lighting\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URL of the image with lighting/shadows to remove.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. Same seed with same prompt will produce same result.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"6\",\"constraints\":\"Range: 2 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus/lora-gallery/remove-lighting\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus/lora-gallery/remove-lighting\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus/lora-gallery/remove-lighting\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-edit-plus/lora-gallery/remove-lighting\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Edit Plus Lora Gallery" - modelId: "alibaba/qwen-image-edit-plus/lora-gallery/remove-lighting" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-edit-plus/lora-gallery/remove-lighting" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-11T20:34:59.313Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-edit.md b/model-api-reference/image-generation/alibaba/qwen-image-edit.md index b398e420..ab1ba0ff 100644 --- a/model-api-reference/image-generation/alibaba/qwen-image-edit.md +++ b/model-api-reference/image-generation/alibaba/qwen-image-edit.md @@ -1,5 +1,5 @@ --- -title: "Qwen Image Edit API Reference — Alibaba Qwen Image Edit API" +title: "Qwen Image Edit API Reference" description: "Qwen Image Edit API reference for SandBase. Use model alibaba/qwen-image-edit with /v1/run; see request and response examples." aside: false outline: false diff --git a/model-api-reference/image-generation/alibaba/qwen-image-edit/2509-lora-gallery/add-background.md b/model-api-reference/image-generation/alibaba/qwen-image-edit/2509-lora-gallery/add-background.md deleted file mode 100644 index 4f47a0d2..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-edit/2509-lora-gallery/add-background.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Edit 2509 Lora Gallery — cxekn API" -description: "SandBase API reference for model alibaba/qwen-image-edit/2509-lora-gallery/add-background. Call /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-edit/2509-lora-gallery/add-background" -apiReferenceJson: "{\"title\":\"Qwen Image Edit 2509 Lora Gallery\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Edit 2509 Lora Gallery Add Background by Alibaba - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-edit/2509-lora-gallery/add-background.\",\"default\":\"alibaba/qwen-image-edit/2509-lora-gallery/add-background\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Describe the background/scene you want to add behind the object. The model will remove the white background and add the specified environment.\",\"default\":\"Remove white background and add a realistic scene behind the object\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images to edit. Provide an image with a white or clean background.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale factor for the LoRA model. Controls the strength of the LoRA effect.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 4\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. Same seed with same prompt will produce same result.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"6\",\"constraints\":\"Range: 2 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/2509-lora-gallery/add-background\\\",\\n \\\"prompt\\\": \\\"Remove white background and add a realistic scene behind the object\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/2509-lora-gallery/add-background\\\",\\n \\\"prompt\\\": \\\"Remove white background and add a realistic scene behind the object\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/2509-lora-gallery/add-background\\\",\\n \\\"prompt\\\": \\\"Remove white background and add a realistic scene behind the object\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/2509-lora-gallery/add-background\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Edit 2509 Lora Gallery" - modelId: "alibaba/qwen-image-edit/2509-lora-gallery/add-background" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-edit/2509-lora-gallery/add-background" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-15T23:37:41.612Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-edit/2509-lora-gallery/face-to-full-portrait.md b/model-api-reference/image-generation/alibaba/qwen-image-edit/2509-lora-gallery/face-to-full-portrait.md deleted file mode 100644 index d4227d41..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-edit/2509-lora-gallery/face-to-full-portrait.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Edit 2509 Lora Gallery — lv25ko API" -description: "SandBase API reference for model alibaba/qwen-image-edit/2509-lora-gallery/face-to-full-portrait. Call /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-edit/2509-lora-gallery/face-to-full-portrait" -apiReferenceJson: "{\"title\":\"Qwen Image Edit 2509 Lora Gallery\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Edit 2509 Lora Gallery Face To Full Portrait is Alibaba's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-edit/2509-lora-gallery/face-to-full-portrait.\",\"default\":\"alibaba/qwen-image-edit/2509-lora-gallery/face-to-full-portrait\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Describe the full portrait you want to generate from the face. Include clothing, setting, pose, and style details.\",\"default\":\"Photography. A portrait of the person in professional attire with natural lighting\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URL of the cropped face image. Provide a close-up face photo.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale factor for the LoRA model. Controls the strength of the LoRA effect.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 4\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. Same seed with same prompt will produce same result.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"6\",\"constraints\":\"Range: 2 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/2509-lora-gallery/face-to-full-portrait\\\",\\n \\\"prompt\\\": \\\"Photography. A portrait of the person in professional attire with natural lighting\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/2509-lora-gallery/face-to-full-portrait\\\",\\n \\\"prompt\\\": \\\"Photography. A portrait of the person in professional attire with natural lighting\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/2509-lora-gallery/face-to-full-portrait\\\",\\n \\\"prompt\\\": \\\"Photography. A portrait of the person in professional attire with natural lighting\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/2509-lora-gallery/face-to-full-portrait\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Edit 2509 Lora Gallery" - modelId: "alibaba/qwen-image-edit/2509-lora-gallery/face-to-full-portrait" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-edit/2509-lora-gallery/face-to-full-portrait" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-15T23:39:48.88Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-edit/2509-lora-gallery/integrate-product.md b/model-api-reference/image-generation/alibaba/qwen-image-edit/2509-lora-gallery/integrate-product.md deleted file mode 100644 index 2be1e9b5..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-edit/2509-lora-gallery/integrate-product.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Edit 2509 Lora Gallery API Reference — Alibaba Product" -description: "SandBase API reference for model alibaba/qwen-image-edit/2509-lora-gallery/integrate-product. Call /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-edit/2509-lora-gallery/integrate-product" -apiReferenceJson: "{\"title\":\"Qwen Image Edit 2509 Lora Gallery\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Edit 2509 Lora Gallery Integrate Product is Alibaba's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-edit/2509-lora-gallery/integrate-product.\",\"default\":\"alibaba/qwen-image-edit/2509-lora-gallery/integrate-product\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Describe how to blend and integrate the product/element into the background. The model will automatically correct perspective, lighting and shadows for natural integration.\",\"default\":\"Blend and integrate the product into the background\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URL of the image with product to integrate into background.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale factor for the LoRA model. Controls the strength of the LoRA effect.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 4\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. Same seed with same prompt will produce same result.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"6\",\"constraints\":\"Range: 2 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/2509-lora-gallery/integrate-product\\\",\\n \\\"prompt\\\": \\\"Blend and integrate the product into the background\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/2509-lora-gallery/integrate-product\\\",\\n \\\"prompt\\\": \\\"Blend and integrate the product into the background\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/2509-lora-gallery/integrate-product\\\",\\n \\\"prompt\\\": \\\"Blend and integrate the product into the background\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/2509-lora-gallery/integrate-product\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Edit 2509 Lora Gallery" - modelId: "alibaba/qwen-image-edit/2509-lora-gallery/integrate-product" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-edit/2509-lora-gallery/integrate-product" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-15T23:43:51.495Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-edit/2509-lora-gallery/lighting-restoration.md b/model-api-reference/image-generation/alibaba/qwen-image-edit/2509-lora-gallery/lighting-restoration.md deleted file mode 100644 index 28352832..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-edit/2509-lora-gallery/lighting-restoration.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Edit 2509 Lora Gallery — 3g9ubo API" -description: "SandBase API reference for model alibaba/qwen-image-edit/2509-lora-gallery/lighting-restoration. Call /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-edit/2509-lora-gallery/lighting-restoration" -apiReferenceJson: "{\"title\":\"Qwen Image Edit 2509 Lora Gallery\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Edit 2509 Lora Gallery Lighting Restoration by Alibaba - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-edit/2509-lora-gallery/lighting-restoration.\",\"default\":\"alibaba/qwen-image-edit/2509-lora-gallery/lighting-restoration\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URL of the image to restore lighting for.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. Same seed with same prompt will produce same result.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"6\",\"constraints\":\"Range: 2 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/2509-lora-gallery/lighting-restoration\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/2509-lora-gallery/lighting-restoration\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/2509-lora-gallery/lighting-restoration\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/2509-lora-gallery/lighting-restoration\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Edit 2509 Lora Gallery" - modelId: "alibaba/qwen-image-edit/2509-lora-gallery/lighting-restoration" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-edit/2509-lora-gallery/lighting-restoration" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-15T23:45:10.369Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-edit/2509/lora.md b/model-api-reference/image-generation/alibaba/qwen-image-edit/2509/lora.md deleted file mode 100644 index 3ed23a15..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-edit/2509/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Edit 2509 LoRA API Reference" -description: "Qwen Image Edit 2509 LoRA API reference for SandBase. Use model alibaba/qwen-image-edit/2509/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-edit/2509/lora" -apiReferenceJson: "{\"title\":\"Qwen Image Edit 2509 LoRA\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Edit 2509 Lora is Alibaba's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-edit/2509/lora.\",\"default\":\"alibaba/qwen-image-edit/2509/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the image with\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images to edit.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation. You can use up to 3 LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/2509/lora\\\",\\n \\\"prompt\\\": \\\"Close shot of a woman standing in next to this car on this highway\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/2509/lora\\\",\\n \\\"prompt\\\": \\\"Close shot of a woman standing in next to this car on this highway\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/2509/lora\\\",\\n \\\"prompt\\\": \\\"Close shot of a woman standing in next to this car on this highway\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/2509/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Edit 2509 LoRA" - modelId: "alibaba/qwen-image-edit/2509/lora" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-edit/2509/lora" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-15T21:23:02.927Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-edit/2511/lora.md b/model-api-reference/image-generation/alibaba/qwen-image-edit/2511/lora.md deleted file mode 100644 index 9b9a5736..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-edit/2511/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Edit 2511 LoRA API Reference" -description: "Qwen Image Edit 2511 LoRA API reference for SandBase. Use model alibaba/qwen-image-edit/2511/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-edit/2511/lora" -apiReferenceJson: "{\"title\":\"Qwen Image Edit 2511 LoRA\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Edit 2511 Lora is Alibaba's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-edit/2511/lora.\",\"default\":\"alibaba/qwen-image-edit/2511/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to edit the image with.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images to edit.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation. You can use up to 3 LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/2511/lora\\\",\\n \\\"prompt\\\": \\\"Change angle to front view\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/2511/lora\\\",\\n \\\"prompt\\\": \\\"Change angle to front view\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/2511/lora\\\",\\n \\\"prompt\\\": \\\"Change angle to front view\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/2511/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Edit 2511 LoRA" - modelId: "alibaba/qwen-image-edit/2511/lora" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-edit/2511/lora" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-30T22:32:05.672Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-edit/image-to-image.md b/model-api-reference/image-generation/alibaba/qwen-image-edit/image-to-image.md deleted file mode 100644 index bbd3c284..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-edit/image-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Edit API Reference — Alibaba Edit / Image To Image" -description: "Qwen Image Edit API reference for SandBase. Use model alibaba/qwen-image-edit/image-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-edit/image-to-image" -apiReferenceJson: "{\"title\":\"Qwen Image Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Edit by Alibaba - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-edit/image-to-image.\",\"default\":\"alibaba/qwen-image-edit/image-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the image with\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to edit.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"4\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"30\",\"constraints\":\"Range: 2 to 50\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"Strength of the image-to-image transformation. Lower values preserve more of the original image.\",\"default\":\"0.94\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/image-to-image\\\",\\n \\\"prompt\\\": \\\"Change bag to apple macbook\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-image-edit/image-to-image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/image-to-image\\\",\\n \\\"prompt\\\": \\\"Change bag to apple macbook\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-image-edit/image-to-image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/image-to-image\\\",\\n \\\"prompt\\\": \\\"Change bag to apple macbook\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-image-edit/image-to-image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/image-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Edit" - modelId: "alibaba/qwen-image-edit/image-to-image" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-edit/image-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-30T17:20:50.035Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-edit/inpaint.md b/model-api-reference/image-generation/alibaba/qwen-image-edit/inpaint.md deleted file mode 100644 index b7702ba7..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-edit/inpaint.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Edit Inpaint API Reference" -description: "Qwen Image Edit Inpaint API reference for SandBase. Use model alibaba/qwen-image-edit/inpaint with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-edit/inpaint" -apiReferenceJson: "{\"title\":\"Qwen Image Edit Inpaint\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Edit Inpaint is Alibaba's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-edit/inpaint.\",\"default\":\"alibaba/qwen-image-edit/inpaint\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the image with\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to edit.\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the mask for inpainting\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"Strength of noising process for inpainting\",\"default\":\"0.93\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/inpaint\\\",\\n \\\"prompt\\\": \\\"Change the ball to a black and white football\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-image-edit/inpaint/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/inpaint\\\",\\n \\\"prompt\\\": \\\"Change the ball to a black and white football\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-image-edit/inpaint/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/inpaint\\\",\\n \\\"prompt\\\": \\\"Change the ball to a black and white football\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-image-edit/inpaint/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/inpaint\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Edit Inpaint" - modelId: "alibaba/qwen-image-edit/inpaint" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-edit/inpaint" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-17T21:37:12.411Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-edit/lora.md b/model-api-reference/image-generation/alibaba/qwen-image-edit/lora.md deleted file mode 100644 index 85331f1e..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-edit/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Edit LoRA API Reference" -description: "Qwen Image Edit LoRA API reference for SandBase. Use model alibaba/qwen-image-edit/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-edit/lora" -apiReferenceJson: "{\"title\":\"Qwen Image Edit LoRA\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Edit Lora by Alibaba - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-edit/lora.\",\"default\":\"alibaba/qwen-image-edit/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the image with\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to edit.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation. You can use up to 3 LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/lora\\\",\\n \\\"prompt\\\": \\\"Change bag to apple macbook\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-image-edit/lora/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/lora\\\",\\n \\\"prompt\\\": \\\"Change bag to apple macbook\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-image-edit/lora/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/lora\\\",\\n \\\"prompt\\\": \\\"Change bag to apple macbook\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-image-edit/lora/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Edit LoRA" - modelId: "alibaba/qwen-image-edit/lora" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-edit/lora" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-10T12:39:02.983Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image-edit/plus/lora.md b/model-api-reference/image-generation/alibaba/qwen-image-edit/plus/lora.md deleted file mode 100644 index 2772df7a..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image-edit/plus/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Edit Plus LoRA API Reference" -description: "Qwen Image Edit Plus LoRA API reference for SandBase. Use model alibaba/qwen-image-edit/plus/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image-edit/plus/lora" -apiReferenceJson: "{\"title\":\"Qwen Image Edit Plus LoRA\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Edit Plus Lora is Alibaba's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image-edit/plus/lora.\",\"default\":\"alibaba/qwen-image-edit/plus/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the image with\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images to edit.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation. You can use up to 3 LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/plus/lora\\\",\\n \\\"prompt\\\": \\\"Close shot of a woman standing in next to this car on this highway\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/plus/lora\\\",\\n \\\"prompt\\\": \\\"Close shot of a woman standing in next to this car on this highway\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/plus/lora\\\",\\n \\\"prompt\\\": \\\"Close shot of a woman standing in next to this car on this highway\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image-edit/plus/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Edit Plus LoRA" - modelId: "alibaba/qwen-image-edit/plus/lora" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image-edit/plus/lora" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-03T21:13:29.106Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image.md b/model-api-reference/image-generation/alibaba/qwen-image.md deleted file mode 100644 index 5a1ddbd8..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image API Reference" -description: "Qwen Image API reference for SandBase. Use model alibaba/qwen-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image" -apiReferenceJson: "{\"title\":\"Qwen Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image by Alibaba - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image.\",\"default\":\"alibaba/qwen-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the image with\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"},{\"name\":\"use_turbo\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable turbo mode for faster generation with high quality. When enabled, uses optimized settings (10 steps, CFG=1.2).\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image\\\",\\n \\\"prompt\\\": \\\"Mount Fuji with cherry blossoms in the foreground, clear sky, peaceful spring day, soft natural light, realistic landscape.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image\\\",\\n \\\"prompt\\\": \\\"Mount Fuji with cherry blossoms in the foreground, clear sky, peaceful spring day, soft natural light, realistic landscape.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image\\\",\\n \\\"prompt\\\": \\\"Mount Fuji with cherry blossoms in the foreground, clear sky, peaceful spring day, soft natural light, realistic landscape.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image" - modelId: "alibaba/qwen-image" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-04T17:48:45.35Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image/2512.md b/model-api-reference/image-generation/alibaba/qwen-image/2512.md deleted file mode 100644 index 728361e7..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image/2512.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image 2512 API Reference" -description: "Qwen Image 2512 API reference for SandBase. Use model alibaba/qwen-image/2512 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image/2512" -apiReferenceJson: "{\"title\":\"Qwen Image 2512\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image 2512 is Alibaba's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image/2512.\",\"default\":\"alibaba/qwen-image/2512\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image/2512\\\",\\n \\\"prompt\\\": \\\"Single red rose in a clear glass vase on white marble streaked with black and gold veins, harsh directional shadow, high contrast, editorial style, clean negative space.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image/2512\\\",\\n \\\"prompt\\\": \\\"Single red rose in a clear glass vase on white marble streaked with black and gold veins, harsh directional shadow, high contrast, editorial style, clean negative space.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image/2512\\\",\\n \\\"prompt\\\": \\\"Single red rose in a clear glass vase on white marble streaked with black and gold veins, harsh directional shadow, high contrast, editorial style, clean negative space.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image/2512\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image 2512" - modelId: "alibaba/qwen-image/2512" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image/2512" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-30T18:09:37.348Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image/2512/lora.md b/model-api-reference/image-generation/alibaba/qwen-image/2512/lora.md deleted file mode 100644 index aa7ebedb..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image/2512/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image 2512 LoRA API Reference" -description: "Qwen Image 2512 LoRA API reference for SandBase. Use model alibaba/qwen-image/2512/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image/2512/lora" -apiReferenceJson: "{\"title\":\"Qwen Image 2512 LoRA\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image 2512 Lora by Alibaba - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image/2512/lora.\",\"default\":\"alibaba/qwen-image/2512/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation. You can use up to 3 LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image/2512/lora\\\",\\n \\\"prompt\\\": \\\"Single red rose in a clear glass vase on white marble streaked with black and gold veins, harsh directional shadow, high contrast, editorial style, clean negative space.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image/2512/lora\\\",\\n \\\"prompt\\\": \\\"Single red rose in a clear glass vase on white marble streaked with black and gold veins, harsh directional shadow, high contrast, editorial style, clean negative space.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image/2512/lora\\\",\\n \\\"prompt\\\": \\\"Single red rose in a clear glass vase on white marble streaked with black and gold veins, harsh directional shadow, high contrast, editorial style, clean negative space.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image/2512/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image 2512 LoRA" - modelId: "alibaba/qwen-image/2512/lora" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image/2512/lora" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-02T07:15:39.36Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image/edit.md b/model-api-reference/image-generation/alibaba/qwen-image/edit.md deleted file mode 100644 index 39d50fcb..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Edit API Reference — Alibaba Qwen Image / Edit API" -description: "Qwen Image Edit API reference for SandBase. Use model alibaba/qwen-image/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image/edit" -apiReferenceJson: "{\"title\":\"Qwen Image Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Edit is Alibaba's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image/edit.\",\"default\":\"alibaba/qwen-image/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the image with\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The reference image to guide the generation.\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"Denoising strength. 1.0 = fully remake; 0.0 = preserve original.\",\"default\":\"0.6\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"use_turbo\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable turbo mode for faster generation with high quality. When enabled, uses optimized settings (10 steps, CFG=1.2).\",\"default\":\"false\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image/edit\\\",\\n \\\"prompt\\\": \\\"Mount Fuji with purple japanese wisteria in the foreground, clear sky, peaceful spring day, soft natural light, landscape, painted with oil brush on a wood panel with abstract mixed colors\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-image/edit/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image/edit\\\",\\n \\\"prompt\\\": \\\"Mount Fuji with purple japanese wisteria in the foreground, clear sky, peaceful spring day, soft natural light, landscape, painted with oil brush on a wood panel with abstract mixed colors\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-image/edit/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image/edit\\\",\\n \\\"prompt\\\": \\\"Mount Fuji with purple japanese wisteria in the foreground, clear sky, peaceful spring day, soft natural light, landscape, painted with oil brush on a wood panel with abstract mixed colors\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-image/edit/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Edit" - modelId: "alibaba/qwen-image/edit" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-25T12:14:09.649Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image/layered.md b/model-api-reference/image-generation/alibaba/qwen-image/layered.md deleted file mode 100644 index 9a09016e..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image/layered.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Layered API Reference" -description: "Qwen Image Layered API reference for SandBase. Use model alibaba/qwen-image/layered with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image/layered" -apiReferenceJson: "{\"title\":\"Qwen Image Layered\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Layered by Alibaba - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image/layered.\",\"default\":\"alibaba/qwen-image/layered\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"A caption for the input image.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the input image.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: png\"},{\"name\":\"num_layers\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of layers to generate.\",\"default\":\"4\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image/layered\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-image/layered/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image/layered\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-image/layered/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image/layered\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-image/layered/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image/layered\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Layered" - modelId: "alibaba/qwen-image/layered" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image/layered" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-19T15:38:51.622Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image/layered/lora.md b/model-api-reference/image-generation/alibaba/qwen-image/layered/lora.md deleted file mode 100644 index 57f5f11f..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image/layered/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Layered LoRA API Reference" -description: "Qwen Image Layered LoRA API reference for SandBase. Use model alibaba/qwen-image/layered/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image/layered/lora" -apiReferenceJson: "{\"title\":\"Qwen Image Layered LoRA\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Layered Lora is Alibaba's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image/layered/lora.\",\"default\":\"alibaba/qwen-image/layered/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"A caption for the input image.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the input image.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: png\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"List of LoRA weights to apply (maximum 3).\",\"default\":\"\"},{\"name\":\"num_layers\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of layers to generate.\",\"default\":\"4\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image/layered/lora\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-image/layered/lora/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image/layered/lora\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-image/layered/lora/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image/layered/lora\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-image/layered/lora/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image/layered/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Layered LoRA" - modelId: "alibaba/qwen-image/layered/lora" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image/layered/lora" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-24T17:45:40.614Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image/max.md b/model-api-reference/image-generation/alibaba/qwen-image/max.md deleted file mode 100644 index 5292cb11..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image/max.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Max API Reference" -description: "Qwen Image Max API reference for SandBase. Use model alibaba/qwen-image/max with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image/max" -apiReferenceJson: "{\"title\":\"Qwen Image Max\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Max by Alibaba - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image/max.\",\"default\":\"alibaba/qwen-image/max\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the desired image. Supports Chinese and English. Max 800 characters.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility (0-2147483647).\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image/max\\\",\\n \\\"prompt\\\": \\\"A cute baby koala holding a card says \\\\\\\"Qwen Image Max is now available on fal\\\\\\\" while on a water slider\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image/max\\\",\\n \\\"prompt\\\": \\\"A cute baby koala holding a card says \\\\\\\"Qwen Image Max is now available on fal\\\\\\\" while on a water slider\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image/max\\\",\\n \\\"prompt\\\": \\\"A cute baby koala holding a card says \\\\\\\"Qwen Image Max is now available on fal\\\\\\\" while on a water slider\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image/max\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Max" - modelId: "alibaba/qwen-image/max" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image/max" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-27T20:21:53.796Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/qwen-image/max/edit.md b/model-api-reference/image-generation/alibaba/qwen-image/max/edit.md deleted file mode 100644 index 8502e8a7..00000000 --- a/model-api-reference/image-generation/alibaba/qwen-image/max/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen Image Max Edit API Reference" -description: "Qwen Image Max Edit API reference for SandBase. Use model alibaba/qwen-image/max/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/qwen-image/max/edit" -apiReferenceJson: "{\"title\":\"Qwen Image Max Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Qwen Image Max Edit is Alibaba's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-image/max/edit.\",\"default\":\"alibaba/qwen-image/max/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the desired image. Supports Chinese and English. Max 800 characters.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for editing (1-3 images required). Order matters: reference as 'image 1', 'image 2', 'image 3' in prompt. Resolution: 384-5000px each dimension. Max size: 10MB each. Formats: JPEG, JPG, PNG (no alpha), WEBP.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility (0-2147483647).\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-image/max/edit\\\",\\n \\\"prompt\\\": \\\"Change wolves with extremely realistic small puppies of different colors.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/qwen-image/max/edit\\\",\\n \\\"prompt\\\": \\\"Change wolves with extremely realistic small puppies of different colors.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/qwen-image/max/edit\\\",\\n \\\"prompt\\\": \\\"Change wolves with extremely realistic small puppies of different colors.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/qwen-image/max/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Qwen Image Max Edit" - modelId: "alibaba/qwen-image/max/edit" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-image/max/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-27T20:18:43.738Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/wan-vace.md b/model-api-reference/image-generation/alibaba/wan-vace.md deleted file mode 100644 index 4a33f092..00000000 --- a/model-api-reference/image-generation/alibaba/wan-vace.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Vace reference moved" -description: "The alibaba/wan-vace reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/alibaba/wan-vace -robots: noindex,follow ---- - -# This page has moved - -`alibaba/wan-vace` is a video model. Its API reference now lives at [Vace](/model-api-reference/video-generation/alibaba/wan-vace) under Video Generation. diff --git a/model-api-reference/image-generation/alibaba/wan/2.2/5b/text-to-image.md b/model-api-reference/image-generation/alibaba/wan/2.2/5b/text-to-image.md deleted file mode 100644 index bec3ea40..00000000 --- a/model-api-reference/image-generation/alibaba/wan/2.2/5b/text-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.2 5B Text to Image API Reference" -description: "Wan 2.2 5B Text to Image API reference for SandBase. Use model alibaba/wan/2.2/5b/text-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/wan/2.2/5b/text-to-image" -apiReferenceJson: "{\"title\":\"Wan 2.2 5B Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 5b by Alibaba - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/5b/text-to-image.\",\"default\":\"alibaba/wan/2.2/5b/text-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide image generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: png, jpeg\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/5b/text-to-image\\\",\\n \\\"prompt\\\": \\\"In this breathtaking wildlife documentary, we are drawn into an intimate close-up of a majestic lion's face, framed against the backdrop of a vast African savannah at dawn. The camera captures the raw power and nobility of the creature as it gazes intently into the distance, its golden-brown fur glistening under the soft, diffused light that bathes the scene in an ethereal glow. Harsh shadows dance across its features, accentuating the deep wrinkles around its eyes and the rugged texture of its fur, each strand a testament to its age and wisdom. The static camera angle invites viewers to immerse themselves in this moment of profound stillness, where the lion's intense focus hints at an unseen presence or a distant threat. As the sun ascends, the landscape transforms into a symphony of warm hues, enhancing the serene yet tense atmosphere that envelops this extraordinary encounter with nature's untamed beauty.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/5b/text-to-image\\\",\\n \\\"prompt\\\": \\\"In this breathtaking wildlife documentary, we are drawn into an intimate close-up of a majestic lion's face, framed against the backdrop of a vast African savannah at dawn. The camera captures the raw power and nobility of the creature as it gazes intently into the distance, its golden-brown fur glistening under the soft, diffused light that bathes the scene in an ethereal glow. Harsh shadows dance across its features, accentuating the deep wrinkles around its eyes and the rugged texture of its fur, each strand a testament to its age and wisdom. The static camera angle invites viewers to immerse themselves in this moment of profound stillness, where the lion's intense focus hints at an unseen presence or a distant threat. As the sun ascends, the landscape transforms into a symphony of warm hues, enhancing the serene yet tense atmosphere that envelops this extraordinary encounter with nature's untamed beauty.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/5b/text-to-image\\\",\\n \\\"prompt\\\": \\\"In this breathtaking wildlife documentary, we are drawn into an intimate close-up of a majestic lion's face, framed against the backdrop of a vast African savannah at dawn. The camera captures the raw power and nobility of the creature as it gazes intently into the distance, its golden-brown fur glistening under the soft, diffused light that bathes the scene in an ethereal glow. Harsh shadows dance across its features, accentuating the deep wrinkles around its eyes and the rugged texture of its fur, each strand a testament to its age and wisdom. The static camera angle invites viewers to immerse themselves in this moment of profound stillness, where the lion's intense focus hints at an unseen presence or a distant threat. As the sun ascends, the landscape transforms into a symphony of warm hues, enhancing the serene yet tense atmosphere that envelops this extraordinary encounter with nature's untamed beauty.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/5b/text-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.2 5B Text to Image" - modelId: "alibaba/wan/2.2/5b/text-to-image" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.2/5b/text-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-05T21:53:55.05Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/wan/2.2/image-edit.md b/model-api-reference/image-generation/alibaba/wan/2.2/image-edit.md deleted file mode 100644 index 6f21ed0b..00000000 --- a/model-api-reference/image-generation/alibaba/wan/2.2/image-edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.2 Image Edit API Reference" -description: "Wan 2.2 Image Edit API reference for SandBase. Use model alibaba/wan/2.2/image-edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/wan/2.2/image-edit" -apiReferenceJson: "{\"title\":\"Wan 2.2 Image Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 Image Edit by Alibaba - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/image-edit.\",\"default\":\"alibaba/wan/2.2/image-edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide image generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image.\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"Denoising strength. 1.0 = fully remake; 0.0 = preserve original.\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/image-edit\\\",\\n \\\"prompt\\\": \\\"A cinematic shot of an ancient city at sunset, intricate stone buildings, warm golden light\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/image-edit/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/image-edit\\\",\\n \\\"prompt\\\": \\\"A cinematic shot of an ancient city at sunset, intricate stone buildings, warm golden light\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/image-edit/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/image-edit\\\",\\n \\\"prompt\\\": \\\"A cinematic shot of an ancient city at sunset, intricate stone buildings, warm golden light\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/image-edit/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/image-edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.2 Image Edit" - modelId: "alibaba/wan/2.2/image-edit" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.2/image-edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-03T07:19:12.41Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/wan/2.2/text-to-image.md b/model-api-reference/image-generation/alibaba/wan/2.2/text-to-image.md deleted file mode 100644 index 48768208..00000000 --- a/model-api-reference/image-generation/alibaba/wan/2.2/text-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.2 Text to Image API Reference" -description: "Wan 2.2 Text to Image API reference for SandBase. Use model alibaba/wan/2.2/text-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/wan/2.2/text-to-image" -apiReferenceJson: "{\"title\":\"Wan 2.2 Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 is Alibaba's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/text-to-image.\",\"default\":\"alibaba/wan/2.2/text-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide image generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/text-to-image\\\",\\n \\\"prompt\\\": \\\"In this breathtaking wildlife documentary, we are drawn into an intimate close-up of a majestic lion's face, framed against the backdrop of a vast African savannah at dawn. The camera captures the raw power and nobility of the creature as it gazes intently into the distance, its golden-brown fur glistening under the soft, diffused light that bathes the scene in an ethereal glow. Harsh shadows dance across its features, accentuating the deep wrinkles around its eyes and the rugged texture of its fur, each strand a testament to its age and wisdom. The static camera angle invites viewers to immerse themselves in this moment of profound stillness, where the lion's intense focus hints at an unseen presence or a distant threat. As the sun ascends, the landscape transforms into a symphony of warm hues, enhancing the serene yet tense atmosphere that envelops this extraordinary encounter with nature's untamed beauty.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/text-to-image\\\",\\n \\\"prompt\\\": \\\"In this breathtaking wildlife documentary, we are drawn into an intimate close-up of a majestic lion's face, framed against the backdrop of a vast African savannah at dawn. The camera captures the raw power and nobility of the creature as it gazes intently into the distance, its golden-brown fur glistening under the soft, diffused light that bathes the scene in an ethereal glow. Harsh shadows dance across its features, accentuating the deep wrinkles around its eyes and the rugged texture of its fur, each strand a testament to its age and wisdom. The static camera angle invites viewers to immerse themselves in this moment of profound stillness, where the lion's intense focus hints at an unseen presence or a distant threat. As the sun ascends, the landscape transforms into a symphony of warm hues, enhancing the serene yet tense atmosphere that envelops this extraordinary encounter with nature's untamed beauty.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/text-to-image\\\",\\n \\\"prompt\\\": \\\"In this breathtaking wildlife documentary, we are drawn into an intimate close-up of a majestic lion's face, framed against the backdrop of a vast African savannah at dawn. The camera captures the raw power and nobility of the creature as it gazes intently into the distance, its golden-brown fur glistening under the soft, diffused light that bathes the scene in an ethereal glow. Harsh shadows dance across its features, accentuating the deep wrinkles around its eyes and the rugged texture of its fur, each strand a testament to its age and wisdom. The static camera angle invites viewers to immerse themselves in this moment of profound stillness, where the lion's intense focus hints at an unseen presence or a distant threat. As the sun ascends, the landscape transforms into a symphony of warm hues, enhancing the serene yet tense atmosphere that envelops this extraordinary encounter with nature's untamed beauty.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/text-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.2 Text to Image" - modelId: "alibaba/wan/2.2/text-to-image" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.2/text-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-05T21:53:20.379Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/wan/2.2/text-to-image/lora.md b/model-api-reference/image-generation/alibaba/wan/2.2/text-to-image/lora.md deleted file mode 100644 index 50c901d2..00000000 --- a/model-api-reference/image-generation/alibaba/wan/2.2/text-to-image/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.2 Text to Image LoRA API Reference" -description: "Wan 2.2 Text to Image LoRA API reference for SandBase. Use model alibaba/wan/2.2/text-to-image/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/wan/2.2/text-to-image/lora" -apiReferenceJson: "{\"title\":\"Wan 2.2 Text to Image LoRA\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 Lora by Alibaba - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/text-to-image/lora.\",\"default\":\"alibaba/wan/2.2/text-to-image/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide image generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"},{\"name\":\"reverse_video\",\"type\":\"boolean\",\"required\":false,\"description\":\"If true, the video will be reversed.\",\"default\":\"false\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA weights to be used in the inference.\",\"default\":\"\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: png, jpeg\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/text-to-image/lora\\\",\\n \\\"prompt\\\": \\\"In this breathtaking wildlife documentary, we are drawn into an intimate close-up of a majestic lion's face, framed against the backdrop of a vast African savannah at dawn. The camera captures the raw power and nobility of the creature as it gazes intently into the distance, its golden-brown fur glistening under the soft, diffused light that bathes the scene in an ethereal glow. Harsh shadows dance across its features, accentuating the deep wrinkles around its eyes and the rugged texture of its fur, each strand a testament to its age and wisdom. The static camera angle invites viewers to immerse themselves in this moment of profound stillness, where the lion's intense focus hints at an unseen presence or a distant threat. As the sun ascends, the landscape transforms into a symphony of warm hues, enhancing the serene yet tense atmosphere that envelops this extraordinary encounter with nature's untamed beauty.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/text-to-image/lora\\\",\\n \\\"prompt\\\": \\\"In this breathtaking wildlife documentary, we are drawn into an intimate close-up of a majestic lion's face, framed against the backdrop of a vast African savannah at dawn. The camera captures the raw power and nobility of the creature as it gazes intently into the distance, its golden-brown fur glistening under the soft, diffused light that bathes the scene in an ethereal glow. Harsh shadows dance across its features, accentuating the deep wrinkles around its eyes and the rugged texture of its fur, each strand a testament to its age and wisdom. The static camera angle invites viewers to immerse themselves in this moment of profound stillness, where the lion's intense focus hints at an unseen presence or a distant threat. As the sun ascends, the landscape transforms into a symphony of warm hues, enhancing the serene yet tense atmosphere that envelops this extraordinary encounter with nature's untamed beauty.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/text-to-image/lora\\\",\\n \\\"prompt\\\": \\\"In this breathtaking wildlife documentary, we are drawn into an intimate close-up of a majestic lion's face, framed against the backdrop of a vast African savannah at dawn. The camera captures the raw power and nobility of the creature as it gazes intently into the distance, its golden-brown fur glistening under the soft, diffused light that bathes the scene in an ethereal glow. Harsh shadows dance across its features, accentuating the deep wrinkles around its eyes and the rugged texture of its fur, each strand a testament to its age and wisdom. The static camera angle invites viewers to immerse themselves in this moment of profound stillness, where the lion's intense focus hints at an unseen presence or a distant threat. As the sun ascends, the landscape transforms into a symphony of warm hues, enhancing the serene yet tense atmosphere that envelops this extraordinary encounter with nature's untamed beauty.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/text-to-image/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.2 Text to Image LoRA" - modelId: "alibaba/wan/2.2/text-to-image/lora" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.2/text-to-image/lora" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-05T23:56:14.535Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/wan/2.5/image-edit.md b/model-api-reference/image-generation/alibaba/wan/2.5/image-edit.md deleted file mode 100644 index 527bb159..00000000 --- a/model-api-reference/image-generation/alibaba/wan/2.5/image-edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.5 Image Edit API Reference" -description: "Wan 2.5 Image Edit API reference for SandBase. Use model alibaba/wan/2.5/image-edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/wan/2.5/image-edit" -apiReferenceJson: "{\"title\":\"Wan 2.5 Image Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.5 Image Edit by Alibaba - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.5/image-edit.\",\"default\":\"alibaba/wan/2.5/image-edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing how to edit the image. Max 2000 characters.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"URLs of images to edit. For single-image editing, provide 1 URL. For multi-reference generation, provide up to 2 URLs. If more than 2 URLs are provided, only the first 2 will be used.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.5/image-edit\\\",\\n \\\"prompt\\\": \\\"Reimagine the scene under a raging thunderstorm at night: lightning forks across the sky, illuminating the samurai in stark flashes of white light.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.5/image-edit\\\",\\n \\\"prompt\\\": \\\"Reimagine the scene under a raging thunderstorm at night: lightning forks across the sky, illuminating the samurai in stark flashes of white light.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.5/image-edit\\\",\\n \\\"prompt\\\": \\\"Reimagine the scene under a raging thunderstorm at night: lightning forks across the sky, illuminating the samurai in stark flashes of white light.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.5/image-edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.5 Image Edit" - modelId: "alibaba/wan/2.5/image-edit" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.5/image-edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-25T20:59:52.034Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/wan/2.5/image-to-image.md b/model-api-reference/image-generation/alibaba/wan/2.5/image-to-image.md new file mode 100644 index 00000000..b4cd4e44 --- /dev/null +++ b/model-api-reference/image-generation/alibaba/wan/2.5/image-to-image.md @@ -0,0 +1,21 @@ +--- +title: "Wan 2.5 Image to Image API Reference" +description: "Wan 2.5 Image to Image API reference for SandBase. Use model alibaba/wan/2.5/image-to-image with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/alibaba/wan/2.5/image-to-image" +apiReferenceJson: "{\"title\":\"Wan 2.5 Image to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.5 image-to-image model that edits one or more input images from a natural-language instruction, with selectable output aspect ratio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.5/image-to-image.\",\"default\":\"alibaba/wan/2.5/image-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing how to edit the image. Max 2000 characters.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"URLs of images to edit. For single-image editing, provide 1 URL. For multi-reference generation, provide up to 2 URLs. If more than 2 URLs are provided, only the first 2 will be used.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.5/image-to-image\\\",\\n \\\"prompt\\\": \\\"Reimagine the scene under a raging thunderstorm at night: lightning forks across the sky, illuminating the samurai in stark flashes of white light.\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/alibaba/wan/2.5/image-edit/input_images_0.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.5/image-to-image\\\",\\n \\\"prompt\\\": \\\"Reimagine the scene under a raging thunderstorm at night: lightning forks across the sky, illuminating the samurai in stark flashes of white light.\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/alibaba/wan/2.5/image-edit/input_images_0.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.5/image-to-image\\\",\\n \\\"prompt\\\": \\\"Reimagine the scene under a raging thunderstorm at night: lightning forks across the sky, illuminating the samurai in stark flashes of white light.\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/alibaba/wan/2.5/image-edit/input_images_0.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.5/image-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Wan 2.5 Image to Image" + modelId: "alibaba/wan/2.5/image-to-image" + vendor: "Alibaba" + vendorSlug: "alibaba" + modelSlug: "wan/2.5/image-to-image" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2025-09-25T20:59:52.034Z" + capabilities: ["image-to-image"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/alibaba/wan/2.6.md b/model-api-reference/image-generation/alibaba/wan/2.6.md deleted file mode 100644 index 6a014893..00000000 --- a/model-api-reference/image-generation/alibaba/wan/2.6.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.6 API Reference" -description: "Wan 2.6 API reference for SandBase. Use model alibaba/wan/2.6 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/wan/2.6" -apiReferenceJson: "{\"title\":\"Wan 2.6\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.6 text-to-image model with high-quality generation and configurable output format.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.6.\",\"default\":\"alibaba/wan/2.6\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\",\"default\":\"Flowing liquid metal in iridescent blue and gold forming an impossible Möbius strip, floating in a void with soft caustic reflections, 3D render, octane, studio lighting\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16, 9:21\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.6\\\",\\n \\\"prompt\\\": \\\"Flowing liquid metal in iridescent blue and gold forming an impossible Möbius strip, floating in a void with soft caustic reflections, 3D render, octane, studio lighting\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6\\\",\\n \\\"prompt\\\": \\\"Flowing liquid metal in iridescent blue and gold forming an impossible Möbius strip, floating in a void with soft caustic reflections, 3D render, octane, studio lighting\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6\\\",\\n \\\"prompt\\\": \\\"Flowing liquid metal in iridescent blue and gold forming an impossible Möbius strip, floating in a void with soft caustic reflections, 3D render, octane, studio lighting\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.6\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.6" - modelId: "alibaba/wan/2.6" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.6" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-23T21:00:10.736Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/wan/2.6/edit.md b/model-api-reference/image-generation/alibaba/wan/2.6/edit.md deleted file mode 100644 index 9e773f50..00000000 --- a/model-api-reference/image-generation/alibaba/wan/2.6/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.6 Edit API Reference" -description: "Wan 2.6 Edit API reference for SandBase. Use model alibaba/wan/2.6/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/wan/2.6/edit" -apiReferenceJson: "{\"title\":\"Wan 2.6 Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.6 image editing model with multi-reference support and configurable output format.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.6/edit.\",\"default\":\"alibaba/wan/2.6/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The editing instruction describing what changes to make.\",\"default\":\"Convert this photograph into a delicate watercolor painting style with visible brush strokes and soft color bleeding\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"List of input image URLs for editing. Up to 4 images.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16, 9:21\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-editing\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.6/edit\\\",\\n \\\"prompt\\\": \\\"Convert this photograph into a delicate watercolor painting style with visible brush strokes and soft color bleeding\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/samples/image-editing/edit-style-watercolor-source.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/edit\\\",\\n \\\"prompt\\\": \\\"Convert this photograph into a delicate watercolor painting style with visible brush strokes and soft color bleeding\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/samples/image-editing/edit-style-watercolor-source.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/edit\\\",\\n \\\"prompt\\\": \\\"Convert this photograph into a delicate watercolor painting style with visible brush strokes and soft color bleeding\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/samples/image-editing/edit-style-watercolor-source.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.6/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.6 Edit" - modelId: "alibaba/wan/2.6/edit" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.6/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-23T21:00:06.432Z" - capabilities: ["image-editing"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/wan/2.6/image-to-image.md b/model-api-reference/image-generation/alibaba/wan/2.6/image-to-image.md new file mode 100644 index 00000000..fd25f12e --- /dev/null +++ b/model-api-reference/image-generation/alibaba/wan/2.6/image-to-image.md @@ -0,0 +1,21 @@ +--- +title: "Wan 2.6 Image to Image API Reference" +description: "Wan 2.6 Image to Image API reference for SandBase. Use model alibaba/wan/2.6/image-to-image with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/alibaba/wan/2.6/image-to-image" +apiReferenceJson: "{\"title\":\"Wan 2.6 Image to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.6 image-to-image model that edits images from a natural-language instruction, with multi-reference support and selectable aspect ratio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.6/image-to-image.\",\"default\":\"alibaba/wan/2.6/image-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The editing instruction describing what changes to make.\",\"default\":\"Convert this photograph into a delicate watercolor painting style with visible brush strokes and soft color bleeding\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"List of input image URLs for editing. Up to 4 images.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16, 9:21\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.6/image-to-image\\\",\\n \\\"prompt\\\": \\\"Convert this photograph into a delicate watercolor painting style with visible brush strokes and soft color bleeding\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/samples/image-editing/edit-style-watercolor-source.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/image-to-image\\\",\\n \\\"prompt\\\": \\\"Convert this photograph into a delicate watercolor painting style with visible brush strokes and soft color bleeding\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/samples/image-editing/edit-style-watercolor-source.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/image-to-image\\\",\\n \\\"prompt\\\": \\\"Convert this photograph into a delicate watercolor painting style with visible brush strokes and soft color bleeding\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/samples/image-editing/edit-style-watercolor-source.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.6/image-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Wan 2.6 Image to Image" + modelId: "alibaba/wan/2.6/image-to-image" + vendor: "Alibaba" + vendorSlug: "alibaba" + modelSlug: "wan/2.6/image-to-image" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2025-12-23T21:00:06.432Z" + capabilities: ["image-to-image"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/alibaba/wan/2.6/text-to-image.md b/model-api-reference/image-generation/alibaba/wan/2.6/text-to-image.md new file mode 100644 index 00000000..f1369b66 --- /dev/null +++ b/model-api-reference/image-generation/alibaba/wan/2.6/text-to-image.md @@ -0,0 +1,21 @@ +--- +title: "Wan 2.6 Text to Image API Reference" +description: "Wan 2.6 Text to Image API reference for SandBase. Use model alibaba/wan/2.6/text-to-image with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/alibaba/wan/2.6/text-to-image" +apiReferenceJson: "{\"title\":\"Wan 2.6 Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.6 text-to-image model with high-quality generation and selectable aspect ratio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.6/text-to-image.\",\"default\":\"alibaba/wan/2.6/text-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\",\"default\":\"Flowing liquid metal in iridescent blue and gold forming an impossible Möbius strip, floating in a void with soft caustic reflections, 3D render, octane, studio lighting\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16, 9:21\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.6/text-to-image\\\",\\n \\\"prompt\\\": \\\"Flowing liquid metal in iridescent blue and gold forming an impossible Möbius strip, floating in a void with soft caustic reflections, 3D render, octane, studio lighting\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/text-to-image\\\",\\n \\\"prompt\\\": \\\"Flowing liquid metal in iridescent blue and gold forming an impossible Möbius strip, floating in a void with soft caustic reflections, 3D render, octane, studio lighting\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/text-to-image\\\",\\n \\\"prompt\\\": \\\"Flowing liquid metal in iridescent blue and gold forming an impossible Möbius strip, floating in a void with soft caustic reflections, 3D render, octane, studio lighting\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.6/text-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Wan 2.6 Text to Image" + modelId: "alibaba/wan/2.6/text-to-image" + vendor: "Alibaba" + vendorSlug: "alibaba" + modelSlug: "wan/2.6/text-to-image" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2025-12-23T21:00:10.736Z" + capabilities: ["text-to-image"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/alibaba/wan/2.7.md b/model-api-reference/image-generation/alibaba/wan/2.7.md deleted file mode 100644 index 8822f321..00000000 --- a/model-api-reference/image-generation/alibaba/wan/2.7.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.7 API Reference" -description: "Wan 2.7 API reference for SandBase. Use model alibaba/wan/2.7 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/wan/2.7" -apiReferenceJson: "{\"title\":\"Wan 2.7\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.7 text-to-image model with high-quality generation and configurable output format.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.7.\",\"default\":\"alibaba/wan/2.7\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\",\"default\":\"Flowing liquid metal in iridescent blue and gold forming an impossible Möbius strip, floating in a void with soft caustic reflections, 3D render, octane, studio lighting\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16, 9:21\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.7\\\",\\n \\\"prompt\\\": \\\"Flowing liquid metal in iridescent blue and gold forming an impossible Möbius strip, floating in a void with soft caustic reflections, 3D render, octane, studio lighting\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7\\\",\\n \\\"prompt\\\": \\\"Flowing liquid metal in iridescent blue and gold forming an impossible Möbius strip, floating in a void with soft caustic reflections, 3D render, octane, studio lighting\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7\\\",\\n \\\"prompt\\\": \\\"Flowing liquid metal in iridescent blue and gold forming an impossible Möbius strip, floating in a void with soft caustic reflections, 3D render, octane, studio lighting\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.7\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.7" - modelId: "alibaba/wan/2.7" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.7" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-01T12:19:40.609Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/wan/2.7/edit.md b/model-api-reference/image-generation/alibaba/wan/2.7/edit.md deleted file mode 100644 index 642794e2..00000000 --- a/model-api-reference/image-generation/alibaba/wan/2.7/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.7 Edit API Reference" -description: "Wan 2.7 Edit API reference for SandBase. Use model alibaba/wan/2.7/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/wan/2.7/edit" -apiReferenceJson: "{\"title\":\"Wan 2.7 Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.7 image editing model with multi-reference support and configurable output format.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.7/edit.\",\"default\":\"alibaba/wan/2.7/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The editing instruction describing what changes to make.\",\"default\":\"Convert this photograph into a delicate watercolor painting style with visible brush strokes and soft color bleeding\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"List of input image URLs for editing. Up to 4 images.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16, 9:21\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-editing\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.7/edit\\\",\\n \\\"prompt\\\": \\\"Convert this photograph into a delicate watercolor painting style with visible brush strokes and soft color bleeding\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/samples/image-editing/edit-style-watercolor-source.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/edit\\\",\\n \\\"prompt\\\": \\\"Convert this photograph into a delicate watercolor painting style with visible brush strokes and soft color bleeding\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/samples/image-editing/edit-style-watercolor-source.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/edit\\\",\\n \\\"prompt\\\": \\\"Convert this photograph into a delicate watercolor painting style with visible brush strokes and soft color bleeding\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/samples/image-editing/edit-style-watercolor-source.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.7/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.7 Edit" - modelId: "alibaba/wan/2.7/edit" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.7/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-01T12:21:58.544Z" - capabilities: ["image-editing"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/wan/2.7/image-to-image.md b/model-api-reference/image-generation/alibaba/wan/2.7/image-to-image.md new file mode 100644 index 00000000..3fc3281a --- /dev/null +++ b/model-api-reference/image-generation/alibaba/wan/2.7/image-to-image.md @@ -0,0 +1,21 @@ +--- +title: "Wan 2.7 Image to Image API Reference" +description: "Wan 2.7 Image to Image API reference for SandBase. Use model alibaba/wan/2.7/image-to-image with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/alibaba/wan/2.7/image-to-image" +apiReferenceJson: "{\"title\":\"Wan 2.7 Image to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.7 image-to-image model that edits images from a natural-language instruction, with multi-reference support and selectable aspect ratio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.7/image-to-image.\",\"default\":\"alibaba/wan/2.7/image-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The editing instruction describing what changes to make.\",\"default\":\"Convert this photograph into a delicate watercolor painting style with visible brush strokes and soft color bleeding\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"List of input image URLs for editing. Up to 4 images.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16, 9:21\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.7/image-to-image\\\",\\n \\\"prompt\\\": \\\"Convert this photograph into a delicate watercolor painting style with visible brush strokes and soft color bleeding\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/samples/image-editing/edit-style-watercolor-source.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/image-to-image\\\",\\n \\\"prompt\\\": \\\"Convert this photograph into a delicate watercolor painting style with visible brush strokes and soft color bleeding\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/samples/image-editing/edit-style-watercolor-source.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/image-to-image\\\",\\n \\\"prompt\\\": \\\"Convert this photograph into a delicate watercolor painting style with visible brush strokes and soft color bleeding\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/samples/image-editing/edit-style-watercolor-source.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.7/image-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Wan 2.7 Image to Image" + modelId: "alibaba/wan/2.7/image-to-image" + vendor: "Alibaba" + vendorSlug: "alibaba" + modelSlug: "wan/2.7/image-to-image" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-04-01T12:21:58.544Z" + capabilities: ["image-to-image"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/alibaba/wan/2.7/pro.md b/model-api-reference/image-generation/alibaba/wan/2.7/pro.md deleted file mode 100644 index ff8c1705..00000000 --- a/model-api-reference/image-generation/alibaba/wan/2.7/pro.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.7 Pro API Reference" -description: "Wan 2.7 Pro API reference for SandBase. Use model alibaba/wan/2.7/pro with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/wan/2.7/pro" -apiReferenceJson: "{\"title\":\"Wan 2.7 Pro\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.7 Pro text-to-image model with enhanced quality and configurable output format.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.7/pro.\",\"default\":\"alibaba/wan/2.7/pro\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\",\"default\":\"A futuristic glass library building with organic curved walls surrounded by cherry blossom trees, blue sky with scattered clouds, architectural visualization, golden ratio composition\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16, 9:21\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.7/pro\\\",\\n \\\"prompt\\\": \\\"A futuristic glass library building with organic curved walls surrounded by cherry blossom trees, blue sky with scattered clouds, architectural visualization, golden ratio composition\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/pro\\\",\\n \\\"prompt\\\": \\\"A futuristic glass library building with organic curved walls surrounded by cherry blossom trees, blue sky with scattered clouds, architectural visualization, golden ratio composition\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/pro\\\",\\n \\\"prompt\\\": \\\"A futuristic glass library building with organic curved walls surrounded by cherry blossom trees, blue sky with scattered clouds, architectural visualization, golden ratio composition\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.7/pro\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.7 Pro" - modelId: "alibaba/wan/2.7/pro" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.7/pro" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-01T12:18:29.243Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/wan/2.7/pro/edit.md b/model-api-reference/image-generation/alibaba/wan/2.7/pro/edit.md deleted file mode 100644 index 58ef40ac..00000000 --- a/model-api-reference/image-generation/alibaba/wan/2.7/pro/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.7 Pro Edit API Reference" -description: "Wan 2.7 Pro Edit API reference for SandBase. Use model alibaba/wan/2.7/pro/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/wan/2.7/pro/edit" -apiReferenceJson: "{\"title\":\"Wan 2.7 Pro Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.7 Pro image editing model with multi-reference support and configurable output format.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.7/pro/edit.\",\"default\":\"alibaba/wan/2.7/pro/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The editing instruction describing what changes to make.\",\"default\":\"Change the time to dramatic sunset with orange and purple sky, long shadows, warm golden light on the lighthouse\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"List of input image URLs for editing. Up to 4 images.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16, 9:21\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-editing\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.7/pro/edit\\\",\\n \\\"prompt\\\": \\\"Change the time to dramatic sunset with orange and purple sky, long shadows, warm golden light on the lighthouse\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/samples/image-editing/edit-time-of-day-source.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/pro/edit\\\",\\n \\\"prompt\\\": \\\"Change the time to dramatic sunset with orange and purple sky, long shadows, warm golden light on the lighthouse\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/samples/image-editing/edit-time-of-day-source.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/pro/edit\\\",\\n \\\"prompt\\\": \\\"Change the time to dramatic sunset with orange and purple sky, long shadows, warm golden light on the lighthouse\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/samples/image-editing/edit-time-of-day-source.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.7/pro/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.7 Pro Edit" - modelId: "alibaba/wan/2.7/pro/edit" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.7/pro/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-01T12:24:21.597Z" - capabilities: ["image-editing"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/wan/2.7/pro/image-to-image.md b/model-api-reference/image-generation/alibaba/wan/2.7/pro/image-to-image.md new file mode 100644 index 00000000..bb6720d5 --- /dev/null +++ b/model-api-reference/image-generation/alibaba/wan/2.7/pro/image-to-image.md @@ -0,0 +1,21 @@ +--- +title: "Wan 2.7 Pro Image to Image API Reference" +description: "Wan 2.7 Pro Image to Image API reference for SandBase. Use model alibaba/wan/2.7/pro/image-to-image with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/alibaba/wan/2.7/pro/image-to-image" +apiReferenceJson: "{\"title\":\"Wan 2.7 Pro Image to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.7 Pro image-to-image model that edits images from a natural-language instruction, with multi-reference support and selectable aspect ratio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.7/pro/image-to-image.\",\"default\":\"alibaba/wan/2.7/pro/image-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The editing instruction describing what changes to make.\",\"default\":\"Change the time to dramatic sunset with orange and purple sky, long shadows, warm golden light on the lighthouse\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"List of input image URLs for editing. Up to 4 images.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16, 9:21\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.7/pro/image-to-image\\\",\\n \\\"prompt\\\": \\\"Change the time to dramatic sunset with orange and purple sky, long shadows, warm golden light on the lighthouse\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/samples/image-editing/edit-time-of-day-source.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/pro/image-to-image\\\",\\n \\\"prompt\\\": \\\"Change the time to dramatic sunset with orange and purple sky, long shadows, warm golden light on the lighthouse\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/samples/image-editing/edit-time-of-day-source.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/pro/image-to-image\\\",\\n \\\"prompt\\\": \\\"Change the time to dramatic sunset with orange and purple sky, long shadows, warm golden light on the lighthouse\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/samples/image-editing/edit-time-of-day-source.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.7/pro/image-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Wan 2.7 Pro Image to Image" + modelId: "alibaba/wan/2.7/pro/image-to-image" + vendor: "Alibaba" + vendorSlug: "alibaba" + modelSlug: "wan/2.7/pro/image-to-image" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-04-01T12:24:21.597Z" + capabilities: ["image-to-image"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/alibaba/wan/2.7/pro/text-to-image.md b/model-api-reference/image-generation/alibaba/wan/2.7/pro/text-to-image.md new file mode 100644 index 00000000..e3883ad5 --- /dev/null +++ b/model-api-reference/image-generation/alibaba/wan/2.7/pro/text-to-image.md @@ -0,0 +1,21 @@ +--- +title: "Wan 2.7 Pro Text to Image API Reference" +description: "Wan 2.7 Pro Text to Image API reference for SandBase. Use model alibaba/wan/2.7/pro/text-to-image with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/alibaba/wan/2.7/pro/text-to-image" +apiReferenceJson: "{\"title\":\"Wan 2.7 Pro Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.7 Pro text-to-image model with enhanced quality and selectable aspect ratio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.7/pro/text-to-image.\",\"default\":\"alibaba/wan/2.7/pro/text-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\",\"default\":\"A futuristic glass library building with organic curved walls surrounded by cherry blossom trees, blue sky with scattered clouds, architectural visualization, golden ratio composition\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16, 9:21\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.7/pro/text-to-image\\\",\\n \\\"prompt\\\": \\\"A futuristic glass library building with organic curved walls surrounded by cherry blossom trees, blue sky with scattered clouds, architectural visualization, golden ratio composition\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/pro/text-to-image\\\",\\n \\\"prompt\\\": \\\"A futuristic glass library building with organic curved walls surrounded by cherry blossom trees, blue sky with scattered clouds, architectural visualization, golden ratio composition\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/pro/text-to-image\\\",\\n \\\"prompt\\\": \\\"A futuristic glass library building with organic curved walls surrounded by cherry blossom trees, blue sky with scattered clouds, architectural visualization, golden ratio composition\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.7/pro/text-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Wan 2.7 Pro Text to Image" + modelId: "alibaba/wan/2.7/pro/text-to-image" + vendor: "Alibaba" + vendorSlug: "alibaba" + modelSlug: "wan/2.7/pro/text-to-image" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-04-01T12:18:29.243Z" + capabilities: ["text-to-image"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/alibaba/wan/2.7/text-to-image.md b/model-api-reference/image-generation/alibaba/wan/2.7/text-to-image.md new file mode 100644 index 00000000..863f3fe9 --- /dev/null +++ b/model-api-reference/image-generation/alibaba/wan/2.7/text-to-image.md @@ -0,0 +1,21 @@ +--- +title: "Wan 2.7 Text to Image API Reference" +description: "Wan 2.7 Text to Image API reference for SandBase. Use model alibaba/wan/2.7/text-to-image with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/alibaba/wan/2.7/text-to-image" +apiReferenceJson: "{\"title\":\"Wan 2.7 Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.7 text-to-image model with high-quality generation and selectable aspect ratio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.7/text-to-image.\",\"default\":\"alibaba/wan/2.7/text-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\",\"default\":\"Flowing liquid metal in iridescent blue and gold forming an impossible Möbius strip, floating in a void with soft caustic reflections, 3D render, octane, studio lighting\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16, 9:21\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.7/text-to-image\\\",\\n \\\"prompt\\\": \\\"Flowing liquid metal in iridescent blue and gold forming an impossible Möbius strip, floating in a void with soft caustic reflections, 3D render, octane, studio lighting\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/text-to-image\\\",\\n \\\"prompt\\\": \\\"Flowing liquid metal in iridescent blue and gold forming an impossible Möbius strip, floating in a void with soft caustic reflections, 3D render, octane, studio lighting\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/text-to-image\\\",\\n \\\"prompt\\\": \\\"Flowing liquid metal in iridescent blue and gold forming an impossible Möbius strip, floating in a void with soft caustic reflections, 3D render, octane, studio lighting\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.7/text-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Wan 2.7 Text to Image" + modelId: "alibaba/wan/2.7/text-to-image" + vendor: "Alibaba" + vendorSlug: "alibaba" + modelSlug: "wan/2.7/text-to-image" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-04-01T12:19:40.609Z" + capabilities: ["text-to-image"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/alibaba/z-image-exp0622.md b/model-api-reference/image-generation/alibaba/z-image-exp0622.md deleted file mode 100644 index 10340039..00000000 --- a/model-api-reference/image-generation/alibaba/z-image-exp0622.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Z-Image Exp0622 API Reference" -description: "Z-Image Exp0622 API reference for SandBase. Use model alibaba/z-image-exp0622 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/z-image-exp0622" -apiReferenceJson: "{\"title\":\"Z-Image Exp0622\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Z-Image Exp0622 generates high-quality images from text prompts with creative content generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/z-image-exp0622.\",\"default\":\"alibaba/z-image-exp0622\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of the image to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output image aspect ratio. 2:3 corresponds to portrait 1024×1536.\",\"default\":\"2:3\",\"constraints\":\"Allowed values: 1:1, 16:9, 9:16, 4:3, 3:4, 2:3\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable built-in prompt optimization to enhance generation quality.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed. Omit for an auto-generated seed.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/z-image-exp0622\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"aspect_ratio\\\": \\\"2:3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/z-image-exp0622\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"aspect_ratio\\\": \\\"2:3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/z-image-exp0622\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"aspect_ratio\\\": \\\"2:3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/z-image-exp0622\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Z-Image Exp0622" - modelId: "alibaba/z-image-exp0622" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "z-image-exp0622" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/z-image/base/lora.md b/model-api-reference/image-generation/alibaba/z-image/base/lora.md deleted file mode 100644 index 42a8b78b..00000000 --- a/model-api-reference/image-generation/alibaba/z-image/base/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Z Image Base (LoRA) API Reference" -description: "Z Image Base (LoRA) API reference for SandBase. Use model alibaba/z-image/base/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/z-image/base/lora" -apiReferenceJson: "{\"title\":\"Z Image Base (LoRA)\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Z Image Base Lora is Alibaba's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/z-image/base/lora.\",\"default\":\"alibaba/z-image/base/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"List of LoRA weights to apply (maximum 3).\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/z-image/base/lora\\\",\\n \\\"prompt\\\": \\\"Grandmother knitting by a window, an empty chair by her\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/z-image/base/lora\\\",\\n \\\"prompt\\\": \\\"Grandmother knitting by a window, an empty chair by her\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/z-image/base/lora\\\",\\n \\\"prompt\\\": \\\"Grandmother knitting by a window, an empty chair by her\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/z-image/base/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Z Image Base (LoRA)" - modelId: "alibaba/z-image/base/lora" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "z-image/base/lora" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-27T17:26:38.446Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/z-image/turbo.md b/model-api-reference/image-generation/alibaba/z-image/turbo.md deleted file mode 100644 index d4ff86fa..00000000 --- a/model-api-reference/image-generation/alibaba/z-image/turbo.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Z-Image Turbo API Reference — Alibaba Z Image / Turbo API" -description: "Z-Image Turbo API reference for SandBase. Use model alibaba/z-image/turbo with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/z-image/turbo" -apiReferenceJson: "{\"title\":\"Z-Image Turbo\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Z Image Turbo is Alibaba's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/z-image/turbo.\",\"default\":\"alibaba/z-image/turbo\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/z-image/turbo\\\",\\n \\\"prompt\\\": \\\"A hyper-realistic, close-up portrait of a tribal elder from the Omo Valley, painted with intricate white chalk patterns and adorned with a headdress made of dried flowers, seed pods, and rusted bottle caps. The focus is razor-sharp on the texture of the skin, showing every pore, wrinkle, and scar that tells a story of survival. The background is a blurred, smoky hut interior, with the warm glow of a cooking fire reflecting in the subject's dark, soulful eyes. Shot on a Leica M6 with Kodak Portra 400 film grain aesthetic.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/z-image/turbo\\\",\\n \\\"prompt\\\": \\\"A hyper-realistic, close-up portrait of a tribal elder from the Omo Valley, painted with intricate white chalk patterns and adorned with a headdress made of dried flowers, seed pods, and rusted bottle caps. The focus is razor-sharp on the texture of the skin, showing every pore, wrinkle, and scar that tells a story of survival. The background is a blurred, smoky hut interior, with the warm glow of a cooking fire reflecting in the subject's dark, soulful eyes. Shot on a Leica M6 with Kodak Portra 400 film grain aesthetic.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/z-image/turbo\\\",\\n \\\"prompt\\\": \\\"A hyper-realistic, close-up portrait of a tribal elder from the Omo Valley, painted with intricate white chalk patterns and adorned with a headdress made of dried flowers, seed pods, and rusted bottle caps. The focus is razor-sharp on the texture of the skin, showing every pore, wrinkle, and scar that tells a story of survival. The background is a blurred, smoky hut interior, with the warm glow of a cooking fire reflecting in the subject's dark, soulful eyes. Shot on a Leica M6 with Kodak Portra 400 film grain aesthetic.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/z-image/turbo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Z-Image Turbo" - modelId: "alibaba/z-image/turbo" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "z-image/turbo" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-26T14:38:10.381Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/z-image/turbo/edit/lora.md b/model-api-reference/image-generation/alibaba/z-image/turbo/edit/lora.md deleted file mode 100644 index 364879ed..00000000 --- a/model-api-reference/image-generation/alibaba/z-image/turbo/edit/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Z-Image Turbo Edit LoRA API Reference" -description: "Z-Image Turbo Edit LoRA API reference for SandBase. Use model alibaba/z-image/turbo/edit/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/z-image/turbo/edit/lora" -apiReferenceJson: "{\"title\":\"Z-Image Turbo Edit LoRA\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Z Image Turbo Edit is Alibaba's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/z-image/turbo/edit/lora.\",\"default\":\"alibaba/z-image/turbo/edit/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of Image for Image-to-Image generation.\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the image-to-image conditioning.\",\"default\":\"0.6\",\"constraints\":\"Maximum: 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"List of LoRA weights to apply (maximum 3).\",\"default\":\"\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/z-image/turbo/edit/lora\\\",\\n \\\"prompt\\\": \\\"A young Asian woman with long, vibrant purple hair stands on a sunlit sandy beach, posing confidently with her left hand resting on her hip. She gazes directly at the camera with a neutral expression. A sleek black ribbon bow is tied neatly on the right side of her head, just above her ear. She wears a flowing white cotton dress with a fitted bodice and a flared skirt that reaches mid-calf, slightly lifted by a gentle sea breeze. The beach behind her features fine, pale golden sand with subtle footprints, leading to calm turquoise waves under a clear blue sky with soft, wispy clouds. The lighting is natural daylight, casting soft shadows to her left, indicating late afternoon sun. The horizon line is visible in the background, with a faint silhouette of distant dunes. Her skin tone is fair with a natural glow, and her facial features are delicately defined. The composition is centered on her figure, framed from mid-thigh up, with shallow depth of field blurring the distant waves slightly.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/z-image/turbo/edit/lora/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/z-image/turbo/edit/lora\\\",\\n \\\"prompt\\\": \\\"A young Asian woman with long, vibrant purple hair stands on a sunlit sandy beach, posing confidently with her left hand resting on her hip. She gazes directly at the camera with a neutral expression. A sleek black ribbon bow is tied neatly on the right side of her head, just above her ear. She wears a flowing white cotton dress with a fitted bodice and a flared skirt that reaches mid-calf, slightly lifted by a gentle sea breeze. The beach behind her features fine, pale golden sand with subtle footprints, leading to calm turquoise waves under a clear blue sky with soft, wispy clouds. The lighting is natural daylight, casting soft shadows to her left, indicating late afternoon sun. The horizon line is visible in the background, with a faint silhouette of distant dunes. Her skin tone is fair with a natural glow, and her facial features are delicately defined. The composition is centered on her figure, framed from mid-thigh up, with shallow depth of field blurring the distant waves slightly.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/z-image/turbo/edit/lora/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/z-image/turbo/edit/lora\\\",\\n \\\"prompt\\\": \\\"A young Asian woman with long, vibrant purple hair stands on a sunlit sandy beach, posing confidently with her left hand resting on her hip. She gazes directly at the camera with a neutral expression. A sleek black ribbon bow is tied neatly on the right side of her head, just above her ear. She wears a flowing white cotton dress with a fitted bodice and a flared skirt that reaches mid-calf, slightly lifted by a gentle sea breeze. The beach behind her features fine, pale golden sand with subtle footprints, leading to calm turquoise waves under a clear blue sky with soft, wispy clouds. The lighting is natural daylight, casting soft shadows to her left, indicating late afternoon sun. The horizon line is visible in the background, with a faint silhouette of distant dunes. Her skin tone is fair with a natural glow, and her facial features are delicately defined. The composition is centered on her figure, framed from mid-thigh up, with shallow depth of field blurring the distant waves slightly.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/z-image/turbo/edit/lora/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/z-image/turbo/edit/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Z-Image Turbo Edit LoRA" - modelId: "alibaba/z-image/turbo/edit/lora" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "z-image/turbo/edit/lora" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-07T20:39:40.8Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/z-image/turbo/inpaint.md b/model-api-reference/image-generation/alibaba/z-image/turbo/inpaint.md deleted file mode 100644 index 1b1c48ce..00000000 --- a/model-api-reference/image-generation/alibaba/z-image/turbo/inpaint.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Z-Image Turbo Inpaint API Reference" -description: "Z-Image Turbo Inpaint API reference for SandBase. Use model alibaba/z-image/turbo/inpaint with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/z-image/turbo/inpaint" -apiReferenceJson: "{\"title\":\"Z-Image Turbo Inpaint\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Z Image Turbo Inpaint is Alibaba's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/z-image/turbo/inpaint.\",\"default\":\"alibaba/z-image/turbo/inpaint\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of Image for Inpaint generation.\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"URL of Mask for Inpaint generation.\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the inpaint conditioning.\",\"default\":\"1\",\"constraints\":\"Maximum: 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"control_end\",\"type\":\"number\",\"required\":false,\"description\":\"The end of the controlnet conditioning.\",\"default\":\"0.8\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"control_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the controlnet conditioning.\",\"default\":\"0.75\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"control_start\",\"type\":\"number\",\"required\":false,\"description\":\"The start of the controlnet conditioning.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/z-image/turbo/inpaint\\\",\\n \\\"prompt\\\": \\\"A young Asian woman with long, vibrant purple hair stands on a sunlit sandy beach, posing confidently with her left hand resting on her hip. She gazes directly at the camera with a neutral expression. A sleek black ribbon bow is tied neatly on the right side of her head, just above her ear. She wears a flowing white cotton dress with a fitted bodice and a flared skirt that reaches mid-calf, slightly lifted by a gentle sea breeze. The beach behind her features fine, pale golden sand with subtle footprints, leading to calm turquoise waves under a clear blue sky with soft, wispy clouds. The lighting is natural daylight, casting soft shadows to her left, indicating late afternoon sun. The horizon line is visible in the background, with a faint silhouette of distant dunes. Her skin tone is fair with a natural glow, and her facial features are delicately defined. The composition is centered on her figure, framed from mid-thigh up, with shallow depth of field blurring the distant waves slightly.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/z-image/turbo/inpaint/input_image_0.jpg\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/z-image/turbo/inpaint\\\",\\n \\\"prompt\\\": \\\"A young Asian woman with long, vibrant purple hair stands on a sunlit sandy beach, posing confidently with her left hand resting on her hip. She gazes directly at the camera with a neutral expression. A sleek black ribbon bow is tied neatly on the right side of her head, just above her ear. She wears a flowing white cotton dress with a fitted bodice and a flared skirt that reaches mid-calf, slightly lifted by a gentle sea breeze. The beach behind her features fine, pale golden sand with subtle footprints, leading to calm turquoise waves under a clear blue sky with soft, wispy clouds. The lighting is natural daylight, casting soft shadows to her left, indicating late afternoon sun. The horizon line is visible in the background, with a faint silhouette of distant dunes. Her skin tone is fair with a natural glow, and her facial features are delicately defined. The composition is centered on her figure, framed from mid-thigh up, with shallow depth of field blurring the distant waves slightly.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/z-image/turbo/inpaint/input_image_0.jpg\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/z-image/turbo/inpaint\\\",\\n \\\"prompt\\\": \\\"A young Asian woman with long, vibrant purple hair stands on a sunlit sandy beach, posing confidently with her left hand resting on her hip. She gazes directly at the camera with a neutral expression. A sleek black ribbon bow is tied neatly on the right side of her head, just above her ear. She wears a flowing white cotton dress with a fitted bodice and a flared skirt that reaches mid-calf, slightly lifted by a gentle sea breeze. The beach behind her features fine, pale golden sand with subtle footprints, leading to calm turquoise waves under a clear blue sky with soft, wispy clouds. The lighting is natural daylight, casting soft shadows to her left, indicating late afternoon sun. The horizon line is visible in the background, with a faint silhouette of distant dunes. Her skin tone is fair with a natural glow, and her facial features are delicately defined. The composition is centered on her figure, framed from mid-thigh up, with shallow depth of field blurring the distant waves slightly.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/z-image/turbo/inpaint/input_image_0.jpg\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/z-image/turbo/inpaint\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Z-Image Turbo Inpaint" - modelId: "alibaba/z-image/turbo/inpaint" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "z-image/turbo/inpaint" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-18T16:14:23.744Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/z-image/turbo/inpaint/lora.md b/model-api-reference/image-generation/alibaba/z-image/turbo/inpaint/lora.md deleted file mode 100644 index 226fc2b6..00000000 --- a/model-api-reference/image-generation/alibaba/z-image/turbo/inpaint/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Z-Image Turbo Inpaint LoRA API Reference" -description: "Z-Image Turbo Inpaint LoRA API reference for SandBase. Use model alibaba/z-image/turbo/inpaint/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/z-image/turbo/inpaint/lora" -apiReferenceJson: "{\"title\":\"Z-Image Turbo Inpaint LoRA\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Z Image Turbo Inpaint by Alibaba - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/z-image/turbo/inpaint/lora.\",\"default\":\"alibaba/z-image/turbo/inpaint/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of Image for Inpaint generation.\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"URL of Mask for Inpaint generation.\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the inpaint conditioning.\",\"default\":\"1\",\"constraints\":\"Maximum: 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"control_start\",\"type\":\"number\",\"required\":false,\"description\":\"The start of the controlnet conditioning.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"control_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the controlnet conditioning.\",\"default\":\"0.75\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"control_end\",\"type\":\"number\",\"required\":false,\"description\":\"The end of the controlnet conditioning.\",\"default\":\"0.8\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"List of LoRA weights to apply (maximum 3).\",\"default\":\"\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/z-image/turbo/inpaint/lora\\\",\\n \\\"prompt\\\": \\\"A young Asian woman with long, vibrant purple hair stands on a sunlit sandy beach, posing confidently with her left hand resting on her hip. She gazes directly at the camera with a neutral expression. A sleek black ribbon bow is tied neatly on the right side of her head, just above her ear. She wears a flowing white cotton dress with a fitted bodice and a flared skirt that reaches mid-calf, slightly lifted by a gentle sea breeze. The beach behind her features fine, pale golden sand with subtle footprints, leading to calm turquoise waves under a clear blue sky with soft, wispy clouds. The lighting is natural daylight, casting soft shadows to her left, indicating late afternoon sun. The horizon line is visible in the background, with a faint silhouette of distant dunes. Her skin tone is fair with a natural glow, and her facial features are delicately defined. The composition is centered on her figure, framed from mid-thigh up, with shallow depth of field blurring the distant waves slightly.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/z-image/turbo/inpaint/lora/input_image_0.jpg\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/z-image/turbo/inpaint/lora\\\",\\n \\\"prompt\\\": \\\"A young Asian woman with long, vibrant purple hair stands on a sunlit sandy beach, posing confidently with her left hand resting on her hip. She gazes directly at the camera with a neutral expression. A sleek black ribbon bow is tied neatly on the right side of her head, just above her ear. She wears a flowing white cotton dress with a fitted bodice and a flared skirt that reaches mid-calf, slightly lifted by a gentle sea breeze. The beach behind her features fine, pale golden sand with subtle footprints, leading to calm turquoise waves under a clear blue sky with soft, wispy clouds. The lighting is natural daylight, casting soft shadows to her left, indicating late afternoon sun. The horizon line is visible in the background, with a faint silhouette of distant dunes. Her skin tone is fair with a natural glow, and her facial features are delicately defined. The composition is centered on her figure, framed from mid-thigh up, with shallow depth of field blurring the distant waves slightly.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/z-image/turbo/inpaint/lora/input_image_0.jpg\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/z-image/turbo/inpaint/lora\\\",\\n \\\"prompt\\\": \\\"A young Asian woman with long, vibrant purple hair stands on a sunlit sandy beach, posing confidently with her left hand resting on her hip. She gazes directly at the camera with a neutral expression. A sleek black ribbon bow is tied neatly on the right side of her head, just above her ear. She wears a flowing white cotton dress with a fitted bodice and a flared skirt that reaches mid-calf, slightly lifted by a gentle sea breeze. The beach behind her features fine, pale golden sand with subtle footprints, leading to calm turquoise waves under a clear blue sky with soft, wispy clouds. The lighting is natural daylight, casting soft shadows to her left, indicating late afternoon sun. The horizon line is visible in the background, with a faint silhouette of distant dunes. Her skin tone is fair with a natural glow, and her facial features are delicately defined. The composition is centered on her figure, framed from mid-thigh up, with shallow depth of field blurring the distant waves slightly.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/z-image/turbo/inpaint/lora/input_image_0.jpg\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/z-image/turbo/inpaint/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Z-Image Turbo Inpaint LoRA" - modelId: "alibaba/z-image/turbo/inpaint/lora" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "z-image/turbo/inpaint/lora" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-18T16:19:58.658Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/z-image/turbo/lora.md b/model-api-reference/image-generation/alibaba/z-image/turbo/lora.md deleted file mode 100644 index 5ea45313..00000000 --- a/model-api-reference/image-generation/alibaba/z-image/turbo/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Z-Image Turbo LoRA API Reference" -description: "Z-Image Turbo LoRA API reference for SandBase. Use model alibaba/z-image/turbo/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/z-image/turbo/lora" -apiReferenceJson: "{\"title\":\"Z-Image Turbo LoRA\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Z Image Turbo Lora by Alibaba - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/z-image/turbo/lora.\",\"default\":\"alibaba/z-image/turbo/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"List of LoRA weights to apply (maximum 3).\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/z-image/turbo/lora\\\",\\n \\\"prompt\\\": \\\"A hyper-realistic, close-up portrait of a tribal elder from the Omo Valley, painted with intricate white chalk patterns and adorned with a headdress made of dried flowers, seed pods, and rusted bottle caps. The focus is razor-sharp on the texture of the skin, showing every pore, wrinkle, and scar that tells a story of survival. The background is a blurred, smoky hut interior, with the warm glow of a cooking fire reflecting in the subject's dark, soulful eyes. Shot on a Leica M6 with Kodak Portra 400 film grain aesthetic.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/z-image/turbo/lora\\\",\\n \\\"prompt\\\": \\\"A hyper-realistic, close-up portrait of a tribal elder from the Omo Valley, painted with intricate white chalk patterns and adorned with a headdress made of dried flowers, seed pods, and rusted bottle caps. The focus is razor-sharp on the texture of the skin, showing every pore, wrinkle, and scar that tells a story of survival. The background is a blurred, smoky hut interior, with the warm glow of a cooking fire reflecting in the subject's dark, soulful eyes. Shot on a Leica M6 with Kodak Portra 400 film grain aesthetic.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/z-image/turbo/lora\\\",\\n \\\"prompt\\\": \\\"A hyper-realistic, close-up portrait of a tribal elder from the Omo Valley, painted with intricate white chalk patterns and adorned with a headdress made of dried flowers, seed pods, and rusted bottle caps. The focus is razor-sharp on the texture of the skin, showing every pore, wrinkle, and scar that tells a story of survival. The background is a blurred, smoky hut interior, with the warm glow of a cooking fire reflecting in the subject's dark, soulful eyes. Shot on a Leica M6 with Kodak Portra 400 film grain aesthetic.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/z-image/turbo/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Z-Image Turbo LoRA" - modelId: "alibaba/z-image/turbo/lora" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "z-image/turbo/lora" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-01T21:00:30.834Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/z-image/turbo/tiling.md b/model-api-reference/image-generation/alibaba/z-image/turbo/tiling.md deleted file mode 100644 index 5895a101..00000000 --- a/model-api-reference/image-generation/alibaba/z-image/turbo/tiling.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Z-Image Turbo Seamless Tiling API Reference — Alibaba / Tiling" -description: "Z-Image Turbo Seamless Tiling API reference for SandBase. Use model alibaba/z-image/turbo/tiling with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/z-image/turbo/tiling" -apiReferenceJson: "{\"title\":\"Z-Image Turbo Seamless Tiling\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Z Image Turbo Tiling by Alibaba - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/z-image/turbo/tiling.\",\"default\":\"alibaba/z-image/turbo/tiling\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of an image for image-to-image or inpainting. When provided without mask_image_url, performs image-to-image; with mask_image_url, performs inpainting.\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"URL of a mask image for inpainting. White regions are regenerated, black regions are preserved. Requires image_url.\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"How much to transform the input image. Only used when image_url is provided.\",\"default\":\"0.6\",\"constraints\":\"Maximum: 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"tiling_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Tiling direction: 'both' (omnidirectional), 'horizontal' (left-right only), 'vertical' (top-bottom only).\",\"default\":\"both\",\"constraints\":\"Allowed values: both, horizontal, vertical\"},{\"name\":\"tile_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Tile size in latent space. Must be even (divisible by 2) for patchification. (64 = 512px, 128 = 1024px, 256 = 2048px).\",\"default\":\"128\",\"constraints\":\"Range: 32 to 256\"},{\"name\":\"tile_stride\",\"type\":\"integer\",\"required\":false,\"description\":\"Tile stride in latent space. Must be even (divisible by 2). (32 = 256px, 64 = 512px, 128 = 1024px).\",\"default\":\"64\",\"constraints\":\"Range: 16 to 128\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/z-image/turbo/tiling\\\",\\n \\\"prompt\\\": \\\"A hyper-realistic, high-resolution 4k texture of an ancient weathered brick wall heavily overgrown with lush green moss and soft lichens. The bricks are aged, featuring deep earthy tones, natural cracks, and gritty textures. Vibrant emerald moss fills the mortar lines and spills over the rough surfaces of the stones. Uniform, flat cinematic lighting ensures no harsh shadows, highlighting the intricate organic details and damp stone surfaces. The composition is a perfectly balanced overhead view, showcasing a rich tapestry of botanical growth and masonry craftsmanship with professional clarity and hyper-detailed grit.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/z-image/turbo/tiling\\\",\\n \\\"prompt\\\": \\\"A hyper-realistic, high-resolution 4k texture of an ancient weathered brick wall heavily overgrown with lush green moss and soft lichens. The bricks are aged, featuring deep earthy tones, natural cracks, and gritty textures. Vibrant emerald moss fills the mortar lines and spills over the rough surfaces of the stones. Uniform, flat cinematic lighting ensures no harsh shadows, highlighting the intricate organic details and damp stone surfaces. The composition is a perfectly balanced overhead view, showcasing a rich tapestry of botanical growth and masonry craftsmanship with professional clarity and hyper-detailed grit.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/z-image/turbo/tiling\\\",\\n \\\"prompt\\\": \\\"A hyper-realistic, high-resolution 4k texture of an ancient weathered brick wall heavily overgrown with lush green moss and soft lichens. The bricks are aged, featuring deep earthy tones, natural cracks, and gritty textures. Vibrant emerald moss fills the mortar lines and spills over the rough surfaces of the stones. Uniform, flat cinematic lighting ensures no harsh shadows, highlighting the intricate organic details and damp stone surfaces. The composition is a perfectly balanced overhead view, showcasing a rich tapestry of botanical growth and masonry craftsmanship with professional clarity and hyper-detailed grit.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/z-image/turbo/tiling\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Z-Image Turbo Seamless Tiling" - modelId: "alibaba/z-image/turbo/tiling" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "z-image/turbo/tiling" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-17T03:10:40.551Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/alibaba/z-image/turbo/tiling/lora.md b/model-api-reference/image-generation/alibaba/z-image/turbo/tiling/lora.md deleted file mode 100644 index 93598e05..00000000 --- a/model-api-reference/image-generation/alibaba/z-image/turbo/tiling/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Z-Image Turbo Seamless Tiling API Reference — Alibaba / Lora" -description: "Z-Image Turbo Seamless Tiling API reference for SandBase. Use model alibaba/z-image/turbo/tiling/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/alibaba/z-image/turbo/tiling/lora" -apiReferenceJson: "{\"title\":\"Z-Image Turbo Seamless Tiling\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Z Image Turbo Tiling is Alibaba's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/z-image/turbo/tiling/lora.\",\"default\":\"alibaba/z-image/turbo/tiling/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of an image for image-to-image or inpainting. When provided without mask_image_url, performs image-to-image; with mask_image_url, performs inpainting.\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"URL of a mask image for inpainting. White regions are regenerated, black regions are preserved. Requires image_url.\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"How much to transform the input image. Only used when image_url is provided.\",\"default\":\"0.6\",\"constraints\":\"Maximum: 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"tiling_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Tiling direction: 'both' (omnidirectional), 'horizontal' (left-right only), 'vertical' (top-bottom only).\",\"default\":\"both\",\"constraints\":\"Allowed values: both, horizontal, vertical\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"List of LoRA weights to apply (maximum 3).\",\"default\":\"\"},{\"name\":\"tile_stride\",\"type\":\"integer\",\"required\":false,\"description\":\"Tile stride in latent space. Must be even (divisible by 2). (32 = 256px, 64 = 512px, 128 = 1024px).\",\"default\":\"64\",\"constraints\":\"Range: 16 to 128\"},{\"name\":\"tile_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Tile size in latent space. Must be even (divisible by 2) for patchification. (64 = 512px, 128 = 1024px, 256 = 2048px).\",\"default\":\"128\",\"constraints\":\"Range: 32 to 256\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/z-image/turbo/tiling/lora\\\",\\n \\\"prompt\\\": \\\"A hyper-realistic, high-resolution 4k texture of an ancient weathered brick wall heavily overgrown with lush green moss and soft lichens. The bricks are aged, featuring deep earthy tones, natural cracks, and gritty textures. Vibrant emerald moss fills the mortar lines and spills over the rough surfaces of the stones. Uniform, flat cinematic lighting ensures no harsh shadows, highlighting the intricate organic details and damp stone surfaces. The composition is a perfectly balanced overhead view, showcasing a rich tapestry of botanical growth and masonry craftsmanship with professional clarity and hyper-detailed grit.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/z-image/turbo/tiling/lora\\\",\\n \\\"prompt\\\": \\\"A hyper-realistic, high-resolution 4k texture of an ancient weathered brick wall heavily overgrown with lush green moss and soft lichens. The bricks are aged, featuring deep earthy tones, natural cracks, and gritty textures. Vibrant emerald moss fills the mortar lines and spills over the rough surfaces of the stones. Uniform, flat cinematic lighting ensures no harsh shadows, highlighting the intricate organic details and damp stone surfaces. The composition is a perfectly balanced overhead view, showcasing a rich tapestry of botanical growth and masonry craftsmanship with professional clarity and hyper-detailed grit.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/z-image/turbo/tiling/lora\\\",\\n \\\"prompt\\\": \\\"A hyper-realistic, high-resolution 4k texture of an ancient weathered brick wall heavily overgrown with lush green moss and soft lichens. The bricks are aged, featuring deep earthy tones, natural cracks, and gritty textures. Vibrant emerald moss fills the mortar lines and spills over the rough surfaces of the stones. Uniform, flat cinematic lighting ensures no harsh shadows, highlighting the intricate organic details and damp stone surfaces. The composition is a perfectly balanced overhead view, showcasing a rich tapestry of botanical growth and masonry craftsmanship with professional clarity and hyper-detailed grit.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/z-image/turbo/tiling/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Z-Image Turbo Seamless Tiling" - modelId: "alibaba/z-image/turbo/tiling/lora" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "z-image/turbo/tiling/lora" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-17T03:13:51.642Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/baidu/ernie-image-trainer.md b/model-api-reference/image-generation/baidu/ernie-image-trainer.md deleted file mode 100644 index c606cef4..00000000 --- a/model-api-reference/image-generation/baidu/ernie-image-trainer.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "ERNIE-Image Trainer API Reference" -description: "ERNIE-Image Trainer API reference for SandBase. Use model baidu/ernie-image-trainer with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/baidu/ernie-image-trainer" -apiReferenceJson: "{\"title\":\"ERNIE-Image Trainer\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ernie Image Trainer by Baidu - advanced AI model for training. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to baidu/ernie-image-trainer.\",\"default\":\"baidu/ernie-image-trainer\"},{\"name\":\"images_data_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL to the input data zip archive. The zip should contain pairs of images and corresponding captions. The images should be named: ROOT.EXT. For example: 001.jpg The corresponding captions should be named: ROOT.txt. For example: 001.txt If no text file is provided for an image, the default_caption will be used.\"},{\"name\":\"default_caption\",\"type\":\"string\",\"required\":false,\"description\":\"Default caption to use when caption files are missing. If None, missing captions will cause an error.\"},{\"name\":\"learning_rate\",\"type\":\"number\",\"required\":false,\"description\":\"Learning rate.\",\"default\":\"0.0005\"},{\"name\":\"steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of steps to train for\",\"default\":\"2000\",\"constraints\":\"Range: 10 to 40000\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"training\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"baidu/ernie-image-trainer\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"baidu/ernie-image-trainer\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"baidu/ernie-image-trainer\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"baidu/ernie-image-trainer\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "ERNIE-Image Trainer" - modelId: "baidu/ernie-image-trainer" - vendor: "Baidu" - vendorSlug: "baidu" - modelSlug: "ernie-image-trainer" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-15T22:52:57.158Z" - capabilities: ["training"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/baidu/ernie-image.md b/model-api-reference/image-generation/baidu/ernie-image.md deleted file mode 100644 index 4b0a8ced..00000000 --- a/model-api-reference/image-generation/baidu/ernie-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ernie Image API Reference — Baidu Ernie Image API" -description: "Ernie Image API reference for SandBase. Use model baidu/ernie-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/baidu/ernie-image" -apiReferenceJson: "{\"title\":\"Ernie Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ernie Image is Baidu's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to baidu/ernie-image.\",\"default\":\"baidu/ernie-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for image generation. Supports English, Chinese, and Japanese.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Classifier-free guidance scale.\",\"default\":\"5\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising steps.\",\"default\":\"50\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output image format.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"baidu/ernie-image\\\",\\n \\\"prompt\\\": \\\"A serene mountain landscape at sunset with golden light\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"baidu/ernie-image\\\",\\n \\\"prompt\\\": \\\"A serene mountain landscape at sunset with golden light\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"baidu/ernie-image\\\",\\n \\\"prompt\\\": \\\"A serene mountain landscape at sunset with golden light\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"baidu/ernie-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ernie Image" - modelId: "baidu/ernie-image" - vendor: "Baidu" - vendorSlug: "baidu" - modelSlug: "ernie-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T17:01:00.242Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/baidu/ernie-image/turbo.md b/model-api-reference/image-generation/baidu/ernie-image/turbo.md deleted file mode 100644 index bcfabd0f..00000000 --- a/model-api-reference/image-generation/baidu/ernie-image/turbo.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ernie Image API Reference — Baidu Ernie Image / Turbo API" -description: "Ernie Image API reference for SandBase. Use model baidu/ernie-image/turbo with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/baidu/ernie-image/turbo" -apiReferenceJson: "{\"title\":\"Ernie Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ernie Image Turbo is Baidu's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to baidu/ernie-image/turbo.\",\"default\":\"baidu/ernie-image/turbo\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for image generation. Supports English, Chinese, and Japanese.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Classifier-free guidance scale.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising steps. Turbo model is optimized for 8 steps.\",\"default\":\"8\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output image format.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"baidu/ernie-image/turbo\\\",\\n \\\"prompt\\\": \\\"A serene mountain landscape at sunset with golden light\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"baidu/ernie-image/turbo\\\",\\n \\\"prompt\\\": \\\"A serene mountain landscape at sunset with golden light\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"baidu/ernie-image/turbo\\\",\\n \\\"prompt\\\": \\\"A serene mountain landscape at sunset with golden light\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"baidu/ernie-image/turbo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ernie Image" - modelId: "baidu/ernie-image/turbo" - vendor: "Baidu" - vendorSlug: "baidu" - modelSlug: "ernie-image/turbo" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T17:00:39.191Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-1.1/pro-ultra.md b/model-api-reference/image-generation/bfl/flux-1.1/pro-ultra.md deleted file mode 100644 index 971fe126..00000000 --- a/model-api-reference/image-generation/bfl/flux-1.1/pro-ultra.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 1.1 Pro Ultra API Reference" -description: "Flux 1.1 Pro Ultra API reference for SandBase. Use model bfl/flux-1.1/pro-ultra with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-1.1/pro-ultra" -apiReferenceJson: "{\"title\":\"Flux 1.1 Pro Ultra\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 1.1 Pro Ultra by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-1.1/pro-ultra.\",\"default\":\"bfl/flux-1.1/pro-ultra\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-1.1/pro-ultra\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-1.1/pro-ultra\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-1.1/pro-ultra\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-1.1/pro-ultra\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 1.1 Pro Ultra" - modelId: "bfl/flux-1.1/pro-ultra" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-1.1/pro-ultra" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-12-17T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-1.1/pro.md b/model-api-reference/image-generation/bfl/flux-1.1/pro.md deleted file mode 100644 index 0c16834d..00000000 --- a/model-api-reference/image-generation/bfl/flux-1.1/pro.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 1.1 Pro API Reference" -description: "Flux 1.1 Pro API reference for SandBase. Use model bfl/flux-1.1/pro with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-1.1/pro" -apiReferenceJson: "{\"title\":\"Flux 1.1 Pro\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 1.1 Pro by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-1.1/pro.\",\"default\":\"bfl/flux-1.1/pro\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-1.1/pro\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-1.1/pro\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-1.1/pro\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-1.1/pro\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 1.1 Pro" - modelId: "bfl/flux-1.1/pro" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-1.1/pro" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-01-16T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-1.1/ultra/redux.md b/model-api-reference/image-generation/bfl/flux-1.1/ultra/redux.md deleted file mode 100644 index cc879d27..00000000 --- a/model-api-reference/image-generation/bfl/flux-1.1/ultra/redux.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX1.1 [pro] ultra Redux API Reference" -description: "FLUX1.1 [pro] ultra Redux API reference for SandBase. Use model bfl/flux-1.1/ultra/redux with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-1.1/ultra/redux" -apiReferenceJson: "{\"title\":\"FLUX1.1 [pro] ultra Redux\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 1.1 Ultra Redux by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-1.1/ultra/redux.\",\"default\":\"bfl/flux-1.1/ultra/redux\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\",\"default\":\"\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The image URL to generate an image from. Needs to match the dimensions of the mask.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"image_prompt_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the image prompt, between 0 and 1.\",\"default\":\"0.1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate less processed, more natural-looking images.\",\"default\":\"false\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-1.1/ultra/redux\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1.1/ultra/redux/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-1.1/ultra/redux\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1.1/ultra/redux/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-1.1/ultra/redux\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1.1/ultra/redux/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-1.1/ultra/redux\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX1.1 [pro] ultra Redux" - modelId: "bfl/flux-1.1/ultra/redux" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-1.1/ultra/redux" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-11-21T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-1/dev.md b/model-api-reference/image-generation/bfl/flux-1/dev.md deleted file mode 100644 index 0aa91d31..00000000 --- a/model-api-reference/image-generation/bfl/flux-1/dev.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 1 Dev API Reference" -description: "Flux 1 Dev API reference for SandBase. Use model bfl/flux-1/dev with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-1/dev" -apiReferenceJson: "{\"title\":\"Flux 1 Dev\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 1 Dev by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-1/dev.\",\"default\":\"bfl/flux-1/dev\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-1/dev\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-1/dev\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-1/dev\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-1/dev\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 1 Dev" - modelId: "bfl/flux-1/dev" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-1/dev" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-04-01T18:10:42.284Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-1/dev/edit.md b/model-api-reference/image-generation/bfl/flux-1/dev/edit.md deleted file mode 100644 index 8652a5da..00000000 --- a/model-api-reference/image-generation/bfl/flux-1/dev/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 1 Dev Edit API Reference" -description: "Flux 1 Dev Edit API reference for SandBase. Use model bfl/flux-1/dev/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-1/dev/edit" -apiReferenceJson: "{\"title\":\"Flux 1 Dev Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 1 Dev Edit is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-1/dev/edit.\",\"default\":\"bfl/flux-1/dev/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to generate an image from.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"40\",\"constraints\":\"Range: 10 to 50\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the initial image. Higher strength values are better for this model.\",\"default\":\"0.95\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-1/dev/edit\\\",\\n \\\"prompt\\\": \\\"A cat dressed as a wizard with a background of a mystic forest.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/dev/edit/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-1/dev/edit\\\",\\n \\\"prompt\\\": \\\"A cat dressed as a wizard with a background of a mystic forest.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/dev/edit/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-1/dev/edit\\\",\\n \\\"prompt\\\": \\\"A cat dressed as a wizard with a background of a mystic forest.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/dev/edit/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-1/dev/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 1 Dev Edit" - modelId: "bfl/flux-1/dev/edit" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-1/dev/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-07-11T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-1/dev/image-to-image.md b/model-api-reference/image-generation/bfl/flux-1/dev/image-to-image.md deleted file mode 100644 index 08c34620..00000000 --- a/model-api-reference/image-generation/bfl/flux-1/dev/image-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 [dev] API Reference" -description: "FLUX.1 [dev] API reference for SandBase. Use model bfl/flux-1/dev/image-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-1/dev/image-to-image" -apiReferenceJson: "{\"title\":\"FLUX.1 [dev]\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 1 Dev is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-1/dev/image-to-image.\",\"default\":\"bfl/flux-1/dev/image-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to generate an image from.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"40\",\"constraints\":\"Range: 10 to 50\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the initial image. Higher strength values are better for this model.\",\"default\":\"0.95\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-1/dev/image-to-image\\\",\\n \\\"prompt\\\": \\\"A cat dressed as a wizard with a background of a mystic forest.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/dev/image-to-image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-1/dev/image-to-image\\\",\\n \\\"prompt\\\": \\\"A cat dressed as a wizard with a background of a mystic forest.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/dev/image-to-image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-1/dev/image-to-image\\\",\\n \\\"prompt\\\": \\\"A cat dressed as a wizard with a background of a mystic forest.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/dev/image-to-image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-1/dev/image-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 [dev]" - modelId: "bfl/flux-1/dev/image-to-image" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-1/dev/image-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-02T18:28:08.12Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-1/dev/redux.md b/model-api-reference/image-generation/bfl/flux-1/dev/redux.md deleted file mode 100644 index b4844c78..00000000 --- a/model-api-reference/image-generation/bfl/flux-1/dev/redux.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 [dev] Redux API Reference" -description: "FLUX.1 [dev] Redux API reference for SandBase. Use model bfl/flux-1/dev/redux with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-1/dev/redux" -apiReferenceJson: "{\"title\":\"FLUX.1 [dev] Redux\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 1 Dev Redux by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-1/dev/redux.\",\"default\":\"bfl/flux-1/dev/redux\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to generate an image from.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"3.5\",\"constraints\":\"Range: 1 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-1/dev/redux\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/dev/redux/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-1/dev/redux\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/dev/redux/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-1/dev/redux\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/dev/redux/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-1/dev/redux\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 [dev] Redux" - modelId: "bfl/flux-1/dev/redux" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-1/dev/redux" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-02T18:29:41.412Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-1/fill.md b/model-api-reference/image-generation/bfl/flux-1/fill.md deleted file mode 100644 index 98ee997a..00000000 --- a/model-api-reference/image-generation/bfl/flux-1/fill.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 1 Fill API Reference" -description: "Flux 1 Fill API reference for SandBase. Use model bfl/flux-1/fill with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-1/fill" -apiReferenceJson: "{\"title\":\"Flux 1 Fill\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 1 Fill is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-1/fill.\",\"default\":\"bfl/flux-1/fill\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to fill the masked part of the image.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The image URL to generate an image from. Needs to match the dimensions of the mask.\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"The mask URL to inpaint the image. Needs to match the dimensions of the input image.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-1/fill\\\",\\n \\\"prompt\\\": \\\"A knight in shining armour holding a greatshield with \\\\\\\"EROUTER\\\\\\\" on it\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/fill/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-1/fill\\\",\\n \\\"prompt\\\": \\\"A knight in shining armour holding a greatshield with \\\\\\\"EROUTER\\\\\\\" on it\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/fill/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-1/fill\\\",\\n \\\"prompt\\\": \\\"A knight in shining armour holding a greatshield with \\\\\\\"EROUTER\\\\\\\" on it\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/fill/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-1/fill\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 1 Fill" - modelId: "bfl/flux-1/fill" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-1/fill" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-11-21T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-1/kontext-max.md b/model-api-reference/image-generation/bfl/flux-1/kontext-max.md deleted file mode 100644 index dc0786e4..00000000 --- a/model-api-reference/image-generation/bfl/flux-1/kontext-max.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 1 Kontext Max API Reference" -description: "Flux 1 Kontext Max API reference for SandBase. Use model bfl/flux-1/kontext-max with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-1/kontext-max" -apiReferenceJson: "{\"title\":\"Flux 1 Kontext Max\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 1 Kontext Max by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-1/kontext-max.\",\"default\":\"bfl/flux-1/kontext-max\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Image prompt for the omni model.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-1/kontext-max\\\",\\n \\\"prompt\\\": \\\"Put a donut next to the flour.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/kontext-max/output_url_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-1/kontext-max\\\",\\n \\\"prompt\\\": \\\"Put a donut next to the flour.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/kontext-max/output_url_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-1/kontext-max\\\",\\n \\\"prompt\\\": \\\"Put a donut next to the flour.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/kontext-max/output_url_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-1/kontext-max\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 1 Kontext Max" - modelId: "bfl/flux-1/kontext-max" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-1/kontext-max" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-29T04:53:59.306Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-1/kontext.md b/model-api-reference/image-generation/bfl/flux-1/kontext.md deleted file mode 100644 index cc28937a..00000000 --- a/model-api-reference/image-generation/bfl/flux-1/kontext.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 1 Kontext API Reference" -description: "Flux 1 Kontext API reference for SandBase. Use model bfl/flux-1/kontext with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-1/kontext" -apiReferenceJson: "{\"title\":\"Flux 1 Kontext\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 1 Kontext by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-1/kontext.\",\"default\":\"bfl/flux-1/kontext\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Image prompt for the omni model.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-1/kontext\\\",\\n \\\"prompt\\\": \\\"Put a donut next to the flour.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/kontext/output_url_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-1/kontext\\\",\\n \\\"prompt\\\": \\\"Put a donut next to the flour.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/kontext/output_url_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-1/kontext\\\",\\n \\\"prompt\\\": \\\"Put a donut next to the flour.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/kontext/output_url_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-1/kontext\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 1 Kontext" - modelId: "bfl/flux-1/kontext" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-1/kontext" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-28T18:30:52.718Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-1/krea.md b/model-api-reference/image-generation/bfl/flux-1/krea.md deleted file mode 100644 index 377d98e5..00000000 --- a/model-api-reference/image-generation/bfl/flux-1/krea.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 Krea [dev] API Reference — BFL Flux 1 / Krea API" -description: "FLUX.1 Krea [dev] API reference for SandBase. Use model bfl/flux-1/krea with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-1/krea" -apiReferenceJson: "{\"title\":\"FLUX.1 Krea [dev]\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 1 Krea is BFL's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-1/krea.\",\"default\":\"bfl/flux-1/krea\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"4.5\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-1/krea\\\",\\n \\\"prompt\\\": \\\"A candid street photo of a woman with a pink bob and bold eyeliner on a graffiti-covered subway platform. She wears a bright yellow patent leather coat over a black-and-white checkered turtleneck and platform boots. Natural subway lighting creates an authentic urban scene with a relaxed, unposed feel.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-1/krea\\\",\\n \\\"prompt\\\": \\\"A candid street photo of a woman with a pink bob and bold eyeliner on a graffiti-covered subway platform. She wears a bright yellow patent leather coat over a black-and-white checkered turtleneck and platform boots. Natural subway lighting creates an authentic urban scene with a relaxed, unposed feel.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-1/krea\\\",\\n \\\"prompt\\\": \\\"A candid street photo of a woman with a pink bob and bold eyeliner on a graffiti-covered subway platform. She wears a bright yellow patent leather coat over a black-and-white checkered turtleneck and platform boots. Natural subway lighting creates an authentic urban scene with a relaxed, unposed feel.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-1/krea\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 Krea [dev]" - modelId: "bfl/flux-1/krea" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-1/krea" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-07-30T13:15:37.175Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-1/krea/image-to-image.md b/model-api-reference/image-generation/bfl/flux-1/krea/image-to-image.md deleted file mode 100644 index 5e406ec2..00000000 --- a/model-api-reference/image-generation/bfl/flux-1/krea/image-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 Krea [dev] API Reference — BFL 1 / Krea / Image To Image" -description: "FLUX.1 Krea [dev] API reference for SandBase. Use model bfl/flux-1/krea/image-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-1/krea/image-to-image" -apiReferenceJson: "{\"title\":\"FLUX.1 Krea [dev]\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 1 Krea by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-1/krea/image-to-image.\",\"default\":\"bfl/flux-1/krea/image-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to generate an image from.\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the initial image. Higher strength values are better for this model.\",\"default\":\"0.95\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"40\",\"constraints\":\"Range: 10 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"4.5\",\"constraints\":\"Range: 1 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-1/krea/image-to-image\\\",\\n \\\"prompt\\\": \\\"A cat dressed as a wizard with a background of a mystic forest.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/krea/image-to-image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-1/krea/image-to-image\\\",\\n \\\"prompt\\\": \\\"A cat dressed as a wizard with a background of a mystic forest.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/krea/image-to-image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-1/krea/image-to-image\\\",\\n \\\"prompt\\\": \\\"A cat dressed as a wizard with a background of a mystic forest.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/krea/image-to-image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-1/krea/image-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 Krea [dev]" - modelId: "bfl/flux-1/krea/image-to-image" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-1/krea/image-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-07-30T13:49:39.47Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-1/krea/redux.md b/model-api-reference/image-generation/bfl/flux-1/krea/redux.md deleted file mode 100644 index 3b0467bd..00000000 --- a/model-api-reference/image-generation/bfl/flux-1/krea/redux.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 Krea [dev] Redux API Reference" -description: "FLUX.1 Krea [dev] Redux API reference for SandBase. Use model bfl/flux-1/krea/redux with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-1/krea/redux" -apiReferenceJson: "{\"title\":\"FLUX.1 Krea [dev] Redux\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 1 Krea Redux is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-1/krea/redux.\",\"default\":\"bfl/flux-1/krea/redux\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to generate an image from.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"4.5\",\"constraints\":\"Range: 1 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-1/krea/redux\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/krea/redux/output_url_0.jpg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-1/krea/redux\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/krea/redux/output_url_0.jpg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-1/krea/redux\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/krea/redux/output_url_0.jpg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-1/krea/redux\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 Krea [dev] Redux" - modelId: "bfl/flux-1/krea/redux" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-1/krea/redux" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-07-30T13:43:13.554Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-1/lora.md b/model-api-reference/image-generation/bfl/flux-1/lora.md deleted file mode 100644 index 5edc8c69..00000000 --- a/model-api-reference/image-generation/bfl/flux-1/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 1 Lora API Reference" -description: "Flux 1 Lora API reference for SandBase. Use model bfl/flux-1/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-1/lora" -apiReferenceJson: "{\"title\":\"Flux 1 Lora\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 1 Lora is BFL's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-1/lora.\",\"default\":\"bfl/flux-1/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation. You can use any number of LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 0 to 35\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-1/lora\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-1/lora\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-1/lora\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-1/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 1 Lora" - modelId: "bfl/flux-1/lora" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-1/lora" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-08-01T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-1/pulid.md b/model-api-reference/image-generation/bfl/flux-1/pulid.md deleted file mode 100644 index eeabea1d..00000000 --- a/model-api-reference/image-generation/bfl/flux-1/pulid.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 1 Pulid API Reference" -description: "Flux 1 Pulid API reference for SandBase. Use model bfl/flux-1/pulid with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-1/pulid" -apiReferenceJson: "{\"title\":\"Flux 1 Pulid\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 1 Pulid by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-1/pulid.\",\"default\":\"bfl/flux-1/pulid\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of image to use for inpainting.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-1/pulid\\\",\\n \\\"prompt\\\": \\\"a woman holding sign with glowing green text 'PuLID for FLUX'\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/pulid/input_reference_image_url_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-1/pulid\\\",\\n \\\"prompt\\\": \\\"a woman holding sign with glowing green text 'PuLID for FLUX'\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/pulid/input_reference_image_url_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-1/pulid\\\",\\n \\\"prompt\\\": \\\"a woman holding sign with glowing green text 'PuLID for FLUX'\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/pulid/input_reference_image_url_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-1/pulid\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 1 Pulid" - modelId: "bfl/flux-1/pulid" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-1/pulid" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-10-29T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-1/schnell/redux.md b/model-api-reference/image-generation/bfl/flux-1/schnell/redux.md deleted file mode 100644 index d7fcf90a..00000000 --- a/model-api-reference/image-generation/bfl/flux-1/schnell/redux.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 [schnell] Redux API Reference" -description: "FLUX.1 [schnell] Redux API reference for SandBase. Use model bfl/flux-1/schnell/redux with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-1/schnell/redux" -apiReferenceJson: "{\"title\":\"FLUX.1 [schnell] Redux\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 1 Schnell Redux by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-1/schnell/redux.\",\"default\":\"bfl/flux-1/schnell/redux\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to generate an image from.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"4\",\"constraints\":\"Range: 1 to 12\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-1/schnell/redux\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/schnell/redux/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-1/schnell/redux\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/schnell/redux/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-1/schnell/redux\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/schnell/redux/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-1/schnell/redux\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 [schnell] Redux" - modelId: "bfl/flux-1/schnell/redux" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-1/schnell/redux" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-02T18:30:38.654Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-1/srpo.md b/model-api-reference/image-generation/bfl/flux-1/srpo.md deleted file mode 100644 index 17b61c30..00000000 --- a/model-api-reference/image-generation/bfl/flux-1/srpo.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 SRPO [dev] API Reference — BFL Flux 1 / Srpo API" -description: "FLUX.1 SRPO [dev] API reference for SandBase. Use model bfl/flux-1/srpo with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-1/srpo" -apiReferenceJson: "{\"title\":\"FLUX.1 SRPO [dev]\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 1 Srpo is BFL's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-1/srpo.\",\"default\":\"bfl/flux-1/srpo\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"4.5\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-1/srpo\\\",\\n \\\"prompt\\\": \\\"Mountain guide, sturdy build, wilderness wisdom, alert gaze, technical outdoor gear with rope coils, snow-capped peaks background, crisp mountain lighting, leading pose, wind-swept hair with full beard, weather-worn face with quiet confidence, alpine expert presence\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-1/srpo\\\",\\n \\\"prompt\\\": \\\"Mountain guide, sturdy build, wilderness wisdom, alert gaze, technical outdoor gear with rope coils, snow-capped peaks background, crisp mountain lighting, leading pose, wind-swept hair with full beard, weather-worn face with quiet confidence, alpine expert presence\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-1/srpo\\\",\\n \\\"prompt\\\": \\\"Mountain guide, sturdy build, wilderness wisdom, alert gaze, technical outdoor gear with rope coils, snow-capped peaks background, crisp mountain lighting, leading pose, wind-swept hair with full beard, weather-worn face with quiet confidence, alpine expert presence\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-1/srpo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 SRPO [dev]" - modelId: "bfl/flux-1/srpo" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-1/srpo" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-15T22:03:08.956Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-1/srpo/image-to-image.md b/model-api-reference/image-generation/bfl/flux-1/srpo/image-to-image.md deleted file mode 100644 index 037ffded..00000000 --- a/model-api-reference/image-generation/bfl/flux-1/srpo/image-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 SRPO [dev] API Reference — BFL 1 / Srpo / Image To Image" -description: "FLUX.1 SRPO [dev] API reference for SandBase. Use model bfl/flux-1/srpo/image-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-1/srpo/image-to-image" -apiReferenceJson: "{\"title\":\"FLUX.1 SRPO [dev]\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 1 Srpo by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-1/srpo/image-to-image.\",\"default\":\"bfl/flux-1/srpo/image-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to generate an image from.\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the initial image. Higher strength values are better for this model.\",\"default\":\"0.95\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"40\",\"constraints\":\"Range: 10 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"4.5\",\"constraints\":\"Range: 1 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-1/srpo/image-to-image\\\",\\n \\\"prompt\\\": \\\"A cat dressed as a wizard with a background of a mystic forest.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/srpo/image-to-image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-1/srpo/image-to-image\\\",\\n \\\"prompt\\\": \\\"A cat dressed as a wizard with a background of a mystic forest.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/srpo/image-to-image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-1/srpo/image-to-image\\\",\\n \\\"prompt\\\": \\\"A cat dressed as a wizard with a background of a mystic forest.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-1/srpo/image-to-image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-1/srpo/image-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 SRPO [dev]" - modelId: "bfl/flux-1/srpo/image-to-image" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-1/srpo/image-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-15T22:05:45.744Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2-lora-gallery/apartment-staging.md b/model-api-reference/image-generation/bfl/flux-2-lora-gallery/apartment-staging.md deleted file mode 100644 index b770eefb..00000000 --- a/model-api-reference/image-generation/bfl/flux-2-lora-gallery/apartment-staging.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 2 Lora Gallery API Reference — BFL / Apartment Staging" -description: "Flux 2 Lora Gallery API reference for SandBase. Use model bfl/flux-2-lora-gallery/apartment-staging with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2-lora-gallery/apartment-staging" -apiReferenceJson: "{\"title\":\"Flux 2 Lora Gallery\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Lora Gallery Apartment Staging is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2-lora-gallery/apartment-staging.\",\"default\":\"bfl/flux-2-lora-gallery/apartment-staging\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate a furnished room. Use 'furnish this room' for best results.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URL of the empty room image to furnish.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale. Controls how closely the model follows the prompt.\",\"default\":\"2.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"40\",\"constraints\":\"Range: 4 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the apartment staging effect.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. Same seed with same prompt will produce same result.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2-lora-gallery/apartment-staging\\\",\\n \\\"prompt\\\": \\\"Furnish this room with modern furniture and decor\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2-lora-gallery/apartment-staging\\\",\\n \\\"prompt\\\": \\\"Furnish this room with modern furniture and decor\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2-lora-gallery/apartment-staging\\\",\\n \\\"prompt\\\": \\\"Furnish this room with modern furniture and decor\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2-lora-gallery/apartment-staging\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 2 Lora Gallery" - modelId: "bfl/flux-2-lora-gallery/apartment-staging" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2-lora-gallery/apartment-staging" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-25T19:29:04.658Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2-lora-gallery/face-to-full-portrait.md b/model-api-reference/image-generation/bfl/flux-2-lora-gallery/face-to-full-portrait.md deleted file mode 100644 index 09ad0a30..00000000 --- a/model-api-reference/image-generation/bfl/flux-2-lora-gallery/face-to-full-portrait.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 2 Lora Gallery API Reference — BFL / Face To Full Portrait" -description: "Flux 2 Lora Gallery API reference for SandBase. Use model bfl/flux-2-lora-gallery/face-to-full-portrait with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2-lora-gallery/face-to-full-portrait" -apiReferenceJson: "{\"title\":\"Flux 2 Lora Gallery\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Lora Gallery Face To Full Portrait is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2-lora-gallery/face-to-full-portrait.\",\"default\":\"bfl/flux-2-lora-gallery/face-to-full-portrait\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt describing the full portrait to generate from the face.\",\"default\":\"Face to full portrait\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URL of the cropped face image.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale. Controls how closely the model follows the prompt.\",\"default\":\"2.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"40\",\"constraints\":\"Range: 4 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the face to full portrait effect.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. Same seed with same prompt will produce same result.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2-lora-gallery/face-to-full-portrait\\\",\\n \\\"prompt\\\": \\\"Face to full portrait\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2-lora-gallery/face-to-full-portrait\\\",\\n \\\"prompt\\\": \\\"Face to full portrait\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2-lora-gallery/face-to-full-portrait\\\",\\n \\\"prompt\\\": \\\"Face to full portrait\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2-lora-gallery/face-to-full-portrait\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 2 Lora Gallery" - modelId: "bfl/flux-2-lora-gallery/face-to-full-portrait" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2-lora-gallery/face-to-full-portrait" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-25T19:37:05.64Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2-lora-gallery/multiple-angles.md b/model-api-reference/image-generation/bfl/flux-2-lora-gallery/multiple-angles.md deleted file mode 100644 index d2b5ed07..00000000 --- a/model-api-reference/image-generation/bfl/flux-2-lora-gallery/multiple-angles.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 2 Lora Gallery API Reference — BFL Gallery / Multiple Angles" -description: "Flux 2 Lora Gallery API reference for SandBase. Use model bfl/flux-2-lora-gallery/multiple-angles with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2-lora-gallery/multiple-angles" -apiReferenceJson: "{\"title\":\"Flux 2 Lora Gallery\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Lora Gallery Multiple Angles is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2-lora-gallery/multiple-angles.\",\"default\":\"bfl/flux-2-lora-gallery/multiple-angles\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URL of the image to adjust camera angle for.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale.\",\"default\":\"2.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"40\",\"constraints\":\"Range: 4 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image.\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"vertical_angle\",\"type\":\"number\",\"required\":false,\"description\":\"Vertical camera angle in degrees. 0°=eye-level shot, 30°=elevated shot, 60°=high-angle shot (looking down from above).\",\"default\":\"0\",\"constraints\":\"Range: 0 to 60\"},{\"name\":\"lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the multiple angles effect.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"horizontal_angle\",\"type\":\"number\",\"required\":false,\"description\":\"Horizontal rotation angle around the object in degrees. 0°=front view, 90°=right side, 180°=back view, 270°=left side, 360°=front view again.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 360\"},{\"name\":\"zoom\",\"type\":\"number\",\"required\":false,\"description\":\"Camera zoom/distance. 0=wide shot (far away), 5=medium shot (normal), 10=close-up (very close).\",\"default\":\"5\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2-lora-gallery/multiple-angles\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2-lora-gallery/multiple-angles\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2-lora-gallery/multiple-angles\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2-lora-gallery/multiple-angles\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 2 Lora Gallery" - modelId: "bfl/flux-2-lora-gallery/multiple-angles" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2-lora-gallery/multiple-angles" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-25T19:41:48.103Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2-lora-gallery/realism.md b/model-api-reference/image-generation/bfl/flux-2-lora-gallery/realism.md deleted file mode 100644 index 1440b43e..00000000 --- a/model-api-reference/image-generation/bfl/flux-2-lora-gallery/realism.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 2 Lora Gallery API Reference — BFL 2 Lora Gallery / Realism" -description: "Flux 2 Lora Gallery API reference for SandBase. Use model bfl/flux-2-lora-gallery/realism with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2-lora-gallery/realism" -apiReferenceJson: "{\"title\":\"Flux 2 Lora Gallery\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Lora Gallery Realism is BFL's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2-lora-gallery/realism.\",\"default\":\"bfl/flux-2-lora-gallery/realism\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate a realistic image with natural lighting and authentic details.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale. Controls how closely the model follows the prompt.\",\"default\":\"2.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"40\",\"constraints\":\"Range: 4 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. Same seed with same prompt will produce same result.\"},{\"name\":\"lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the realism effect.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2-lora-gallery/realism\\\",\\n \\\"prompt\\\": \\\"A portrait of a woman with natural lighting\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2-lora-gallery/realism\\\",\\n \\\"prompt\\\": \\\"A portrait of a woman with natural lighting\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2-lora-gallery/realism\\\",\\n \\\"prompt\\\": \\\"A portrait of a woman with natural lighting\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2-lora-gallery/realism\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 2 Lora Gallery" - modelId: "bfl/flux-2-lora-gallery/realism" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2-lora-gallery/realism" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-25T19:45:02.91Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2-pro/outpaint.md b/model-api-reference/image-generation/bfl/flux-2-pro/outpaint.md deleted file mode 100644 index acd83bd2..00000000 --- a/model-api-reference/image-generation/bfl/flux-2-pro/outpaint.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 2 Pro API Reference — BFL Flux 2 Pro / Outpaint API" -description: "Flux 2 Pro API reference for SandBase. Use model bfl/flux-2-pro/outpaint with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2-pro/outpaint" -apiReferenceJson: "{\"title\":\"Flux 2 Pro\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Pro Outpaint is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2-pro/outpaint.\",\"default\":\"bfl/flux-2-pro/outpaint\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The image URL to expand using outpainting.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"auto_crop\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to automatically crop the reference image when the expanded canvas does not fully contain it.\",\"default\":\"false\"},{\"name\":\"expand_bottom\",\"type\":\"integer\",\"required\":false,\"description\":\"Pixels to expand at the bottom of the image.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 2048\"},{\"name\":\"expand_right\",\"type\":\"integer\",\"required\":false,\"description\":\"Pixels to expand on the right of the image.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 2048\"},{\"name\":\"expand_left\",\"type\":\"integer\",\"required\":false,\"description\":\"Pixels to expand on the left of the image.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 2048\"},{\"name\":\"expand_top\",\"type\":\"integer\",\"required\":false,\"description\":\"Pixels to expand at the top of the image.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 2048\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2-pro/outpaint\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-2-pro/outpaint/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2-pro/outpaint\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-2-pro/outpaint/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2-pro/outpaint\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-2-pro/outpaint/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2-pro/outpaint\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 2 Pro" - modelId: "bfl/flux-2-pro/outpaint" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2-pro/outpaint" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-05-14T23:54:45.441Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2/dev.md b/model-api-reference/image-generation/bfl/flux-2/dev.md index 2f90d2a2..e36a0c39 100644 --- a/model-api-reference/image-generation/bfl/flux-2/dev.md +++ b/model-api-reference/image-generation/bfl/flux-2/dev.md @@ -1,12 +1,12 @@ --- -title: "Flux 2 Dev API Reference" -description: "Flux 2 Dev API reference for SandBase. Use model bfl/flux-2/dev with /v1/run; see request and response examples." +title: "Flux 2 Dev Text to Image API Reference" +description: "Flux 2 Dev Text to Image API reference for SandBase. Use model bfl/flux-2/dev with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/bfl/flux-2/dev" -apiReferenceJson: "{\"title\":\"Flux 2 Dev\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Dev by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/dev.\",\"default\":\"bfl/flux-2/dev\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance Scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"2.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 4 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/dev\\\",\\n \\\"prompt\\\": \\\"Dutch angle close-up of a survivor in post-apocalyptic setting, dust-covered face, dramatic harsh sunlight creating deep shadows, happy expression, desaturated dystopian color palette, gritty realism\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/dev\\\",\\n \\\"prompt\\\": \\\"Dutch angle close-up of a survivor in post-apocalyptic setting, dust-covered face, dramatic harsh sunlight creating deep shadows, happy expression, desaturated dystopian color palette, gritty realism\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/dev\\\",\\n \\\"prompt\\\": \\\"Dutch angle close-up of a survivor in post-apocalyptic setting, dust-covered face, dramatic harsh sunlight creating deep shadows, happy expression, desaturated dystopian color palette, gritty realism\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/dev\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Flux 2 Dev Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Dev by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/dev.\",\"default\":\"bfl/flux-2/dev\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance Scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"2.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 4 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/dev\\\",\\n \\\"prompt\\\": \\\"Dutch angle close-up of a survivor in post-apocalyptic setting, dust-covered face, dramatic harsh sunlight creating deep shadows, happy expression, desaturated dystopian color palette, gritty realism\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/dev\\\",\\n \\\"prompt\\\": \\\"Dutch angle close-up of a survivor in post-apocalyptic setting, dust-covered face, dramatic harsh sunlight creating deep shadows, happy expression, desaturated dystopian color palette, gritty realism\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/dev\\\",\\n \\\"prompt\\\": \\\"Dutch angle close-up of a survivor in post-apocalyptic setting, dust-covered face, dramatic harsh sunlight creating deep shadows, happy expression, desaturated dystopian color palette, gritty realism\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/dev\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Flux 2 Dev" + modelName: "Flux 2 Dev Text to Image" modelId: "bfl/flux-2/dev" vendor: "BFL" vendorSlug: "bfl" diff --git a/model-api-reference/image-generation/bfl/flux-2/flash.md b/model-api-reference/image-generation/bfl/flux-2/flash.md index 8891846d..d2283b60 100644 --- a/model-api-reference/image-generation/bfl/flux-2/flash.md +++ b/model-api-reference/image-generation/bfl/flux-2/flash.md @@ -1,12 +1,12 @@ --- -title: "Flux 2 Flash API Reference" -description: "Flux 2 Flash API reference for SandBase. Use model bfl/flux-2/flash with /v1/run; see request and response examples." +title: "Flux 2 Flash Text to Image API Reference" +description: "Flux 2 Flash Text to Image API reference for SandBase. Use model bfl/flux-2/flash with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/bfl/flux-2/flash" -apiReferenceJson: "{\"title\":\"Flux 2 Flash\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Flash by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/flash.\",\"default\":\"bfl/flux-2/flash\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance Scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"2.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/flash\\\",\\n \\\"prompt\\\": \\\"An army of ants battles for a sugar cube in a giant sandbox, with tiny plastic soldier toys caught in the melee. Ant bodies shine against gritty beige sand and the glossy, crystalline cube. Fiery sunrise spills golden highlights, throwing dramatic shadows, amplifying the excitement. Shot macro (100mm), aperture f/2.8 for soft background, centered composition with ground-level POV, mixing organic and manufactured textures.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/flash\\\",\\n \\\"prompt\\\": \\\"An army of ants battles for a sugar cube in a giant sandbox, with tiny plastic soldier toys caught in the melee. Ant bodies shine against gritty beige sand and the glossy, crystalline cube. Fiery sunrise spills golden highlights, throwing dramatic shadows, amplifying the excitement. Shot macro (100mm), aperture f/2.8 for soft background, centered composition with ground-level POV, mixing organic and manufactured textures.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/flash\\\",\\n \\\"prompt\\\": \\\"An army of ants battles for a sugar cube in a giant sandbox, with tiny plastic soldier toys caught in the melee. Ant bodies shine against gritty beige sand and the glossy, crystalline cube. Fiery sunrise spills golden highlights, throwing dramatic shadows, amplifying the excitement. Shot macro (100mm), aperture f/2.8 for soft background, centered composition with ground-level POV, mixing organic and manufactured textures.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/flash\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Flux 2 Flash Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Flash by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/flash.\",\"default\":\"bfl/flux-2/flash\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance Scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"2.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/flash\\\",\\n \\\"prompt\\\": \\\"An army of ants battles for a sugar cube in a giant sandbox, with tiny plastic soldier toys caught in the melee. Ant bodies shine against gritty beige sand and the glossy, crystalline cube. Fiery sunrise spills golden highlights, throwing dramatic shadows, amplifying the excitement. Shot macro (100mm), aperture f/2.8 for soft background, centered composition with ground-level POV, mixing organic and manufactured textures.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/flash\\\",\\n \\\"prompt\\\": \\\"An army of ants battles for a sugar cube in a giant sandbox, with tiny plastic soldier toys caught in the melee. Ant bodies shine against gritty beige sand and the glossy, crystalline cube. Fiery sunrise spills golden highlights, throwing dramatic shadows, amplifying the excitement. Shot macro (100mm), aperture f/2.8 for soft background, centered composition with ground-level POV, mixing organic and manufactured textures.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/flash\\\",\\n \\\"prompt\\\": \\\"An army of ants battles for a sugar cube in a giant sandbox, with tiny plastic soldier toys caught in the melee. Ant bodies shine against gritty beige sand and the glossy, crystalline cube. Fiery sunrise spills golden highlights, throwing dramatic shadows, amplifying the excitement. Shot macro (100mm), aperture f/2.8 for soft background, centered composition with ground-level POV, mixing organic and manufactured textures.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/flash\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Flux 2 Flash" + modelName: "Flux 2 Flash Text to Image" modelId: "bfl/flux-2/flash" vendor: "BFL" vendorSlug: "bfl" diff --git a/model-api-reference/image-generation/bfl/flux-2/flex.md b/model-api-reference/image-generation/bfl/flux-2/flex.md index e4abf535..e48ee4eb 100644 --- a/model-api-reference/image-generation/bfl/flux-2/flex.md +++ b/model-api-reference/image-generation/bfl/flux-2/flex.md @@ -1,12 +1,12 @@ --- -title: "Flux 2 Flex API Reference" -description: "Flux 2 Flex API reference for SandBase. Use model bfl/flux-2/flex with /v1/run; see request and response examples." +title: "Flux 2 Flex Text to Image API Reference" +description: "Flux 2 Flex Text to Image API reference for SandBase. Use model bfl/flux-2/flex with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/bfl/flux-2/flex" -apiReferenceJson: "{\"title\":\"Flux 2 Flex\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Flex is BFL's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/flex.\",\"default\":\"bfl/flux-2/flex\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The guidance scale to use for the generation.\",\"default\":\"3.5\",\"constraints\":\"Range: 1.5 to 10\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 2 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/flex\\\",\\n \\\"prompt\\\": \\\"A high-quality 3D render of a cute fluffy monster eating a giant donut; the fur simulation is incredibly detailed, the donut glaze is sticky and reflective, bright daylight lighting, shallow depth of field.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/flex\\\",\\n \\\"prompt\\\": \\\"A high-quality 3D render of a cute fluffy monster eating a giant donut; the fur simulation is incredibly detailed, the donut glaze is sticky and reflective, bright daylight lighting, shallow depth of field.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/flex\\\",\\n \\\"prompt\\\": \\\"A high-quality 3D render of a cute fluffy monster eating a giant donut; the fur simulation is incredibly detailed, the donut glaze is sticky and reflective, bright daylight lighting, shallow depth of field.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/flex\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Flux 2 Flex Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Flex is BFL's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/flex.\",\"default\":\"bfl/flux-2/flex\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The guidance scale to use for the generation.\",\"default\":\"3.5\",\"constraints\":\"Range: 1.5 to 10\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 2 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/flex\\\",\\n \\\"prompt\\\": \\\"A high-quality 3D render of a cute fluffy monster eating a giant donut; the fur simulation is incredibly detailed, the donut glaze is sticky and reflective, bright daylight lighting, shallow depth of field.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/flex\\\",\\n \\\"prompt\\\": \\\"A high-quality 3D render of a cute fluffy monster eating a giant donut; the fur simulation is incredibly detailed, the donut glaze is sticky and reflective, bright daylight lighting, shallow depth of field.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/flex\\\",\\n \\\"prompt\\\": \\\"A high-quality 3D render of a cute fluffy monster eating a giant donut; the fur simulation is incredibly detailed, the donut glaze is sticky and reflective, bright daylight lighting, shallow depth of field.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/flex\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Flux 2 Flex" + modelName: "Flux 2 Flex Text to Image" modelId: "bfl/flux-2/flex" vendor: "BFL" vendorSlug: "bfl" diff --git a/model-api-reference/image-generation/bfl/flux-2/klein/4b.md b/model-api-reference/image-generation/bfl/flux-2/klein/4b.md index edb04244..a03b1d38 100644 --- a/model-api-reference/image-generation/bfl/flux-2/klein/4b.md +++ b/model-api-reference/image-generation/bfl/flux-2/klein/4b.md @@ -1,12 +1,12 @@ --- -title: "Flux 2 Klein 4b API Reference — BFL Flux 2 / Klein / 4b API" -description: "Flux 2 Klein 4b API reference for SandBase. Use model bfl/flux-2/klein/4b with /v1/run; see request and response examples." +title: "Flux 2 Klein 4B Text to Image API Reference" +description: "Flux 2 Klein 4B Text to Image API reference for SandBase. Use model bfl/flux-2/klein/4b with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/bfl/flux-2/klein/4b" -apiReferenceJson: "{\"title\":\"Flux 2 Klein 4b\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Klein 4b is BFL's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/klein/4b.\",\"default\":\"bfl/flux-2/klein/4b\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"4\",\"constraints\":\"Range: 4 to 8\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b\\\",\\n \\\"prompt\\\": \\\"Cheetah in pre-sprint crouch, muscles tensed, gazelle visible in distance, African savanna golden grass, dust particles in air, National Geographic wildlife photography\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b\\\",\\n \\\"prompt\\\": \\\"Cheetah in pre-sprint crouch, muscles tensed, gazelle visible in distance, African savanna golden grass, dust particles in air, National Geographic wildlife photography\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b\\\",\\n \\\"prompt\\\": \\\"Cheetah in pre-sprint crouch, muscles tensed, gazelle visible in distance, African savanna golden grass, dust particles in air, National Geographic wildlife photography\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Flux 2 Klein 4B Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Klein 4b is BFL's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/klein/4b.\",\"default\":\"bfl/flux-2/klein/4b\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"4\",\"constraints\":\"Range: 4 to 8\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b\\\",\\n \\\"prompt\\\": \\\"Cheetah in pre-sprint crouch, muscles tensed, gazelle visible in distance, African savanna golden grass, dust particles in air, National Geographic wildlife photography\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b\\\",\\n \\\"prompt\\\": \\\"Cheetah in pre-sprint crouch, muscles tensed, gazelle visible in distance, African savanna golden grass, dust particles in air, National Geographic wildlife photography\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b\\\",\\n \\\"prompt\\\": \\\"Cheetah in pre-sprint crouch, muscles tensed, gazelle visible in distance, African savanna golden grass, dust particles in air, National Geographic wildlife photography\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Flux 2 Klein 4b" + modelName: "Flux 2 Klein 4B Text to Image" modelId: "bfl/flux-2/klein/4b" vendor: "BFL" vendorSlug: "bfl" diff --git a/model-api-reference/image-generation/bfl/flux-2/klein/4b/base.md b/model-api-reference/image-generation/bfl/flux-2/klein/4b/base.md deleted file mode 100644 index bf6b4091..00000000 --- a/model-api-reference/image-generation/bfl/flux-2/klein/4b/base.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 2 Klein 4b API Reference — BFL Flux 2 / Klein / 4b / Base" -description: "Flux 2 Klein 4b API reference for SandBase. Use model bfl/flux-2/klein/4b/base with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2/klein/4b/base" -apiReferenceJson: "{\"title\":\"Flux 2 Klein 4b\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Klein 4b by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/klein/4b/base.\",\"default\":\"bfl/flux-2/klein/4b/base\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance scale for classifier-free guidance.\",\"default\":\"5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 4 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/base\\\",\\n \\\"prompt\\\": \\\"Japanese zen garden at first light, perfect rake lines in gravel, koi pond with morning mist, temple bell in background, meditation ready\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/base\\\",\\n \\\"prompt\\\": \\\"Japanese zen garden at first light, perfect rake lines in gravel, koi pond with morning mist, temple bell in background, meditation ready\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/base\\\",\\n \\\"prompt\\\": \\\"Japanese zen garden at first light, perfect rake lines in gravel, koi pond with morning mist, temple bell in background, meditation ready\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/base\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 2 Klein 4b" - modelId: "bfl/flux-2/klein/4b/base" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2/klein/4b/base" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-15T18:57:56.846Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2/klein/4b/base/edit.md b/model-api-reference/image-generation/bfl/flux-2/klein/4b/base/edit.md deleted file mode 100644 index bea24b54..00000000 --- a/model-api-reference/image-generation/bfl/flux-2/klein/4b/base/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 2 Klein 4b API Reference — BFL 2 / Klein / 4b / Base / Edit" -description: "Flux 2 Klein 4b API reference for SandBase. Use model bfl/flux-2/klein/4b/base/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2/klein/4b/base/edit" -apiReferenceJson: "{\"title\":\"Flux 2 Klein 4b\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Klein 4b is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/klein/4b/base/edit.\",\"default\":\"bfl/flux-2/klein/4b/base/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to edit the image.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images for editing. A maximum of 4 images are allowed.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance scale for classifier-free guidance.\",\"default\":\"5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 4 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/base/edit\\\",\\n \\\"prompt\\\": \\\"Imagine view of Fuji mount. Use style of reference image.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/base/edit\\\",\\n \\\"prompt\\\": \\\"Imagine view of Fuji mount. Use style of reference image.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/base/edit\\\",\\n \\\"prompt\\\": \\\"Imagine view of Fuji mount. Use style of reference image.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/base/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 2 Klein 4b" - modelId: "bfl/flux-2/klein/4b/base/edit" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2/klein/4b/base/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-15T20:55:54.156Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2/klein/4b/base/edit/lora.md b/model-api-reference/image-generation/bfl/flux-2/klein/4b/base/edit/lora.md deleted file mode 100644 index 5a4eaa6d..00000000 --- a/model-api-reference/image-generation/bfl/flux-2/klein/4b/base/edit/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.2 [klein] 4B Base LoRA API Reference — BFL / Edit / Lora" -description: "FLUX.2 [klein] 4B Base LoRA API reference for SandBase. Use model bfl/flux-2/klein/4b/base/edit/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2/klein/4b/base/edit/lora" -apiReferenceJson: "{\"title\":\"FLUX.2 [klein] 4B Base LoRA\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Klein 4b by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/klein/4b/base/edit/lora.\",\"default\":\"bfl/flux-2/klein/4b/base/edit/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to edit the image.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images for editing. A maximum of 4 images are allowed.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance scale for classifier-free guidance.\",\"default\":\"5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 4 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"List of LoRA weights to apply (maximum 3).\",\"default\":\"\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/base/edit/lora\\\",\\n \\\"prompt\\\": \\\"Change his clothes to casual suit and tie\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/base/edit/lora\\\",\\n \\\"prompt\\\": \\\"Change his clothes to casual suit and tie\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/base/edit/lora\\\",\\n \\\"prompt\\\": \\\"Change his clothes to casual suit and tie\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/base/edit/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.2 [klein] 4B Base LoRA" - modelId: "bfl/flux-2/klein/4b/base/edit/lora" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2/klein/4b/base/edit/lora" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-19T16:30:59.857Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2/klein/4b/base/lora.md b/model-api-reference/image-generation/bfl/flux-2/klein/4b/base/lora.md deleted file mode 100644 index 2cd33159..00000000 --- a/model-api-reference/image-generation/bfl/flux-2/klein/4b/base/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.2 [klein] 4B Base LoRA API Reference — BFL 4b / Base / Lora" -description: "FLUX.2 [klein] 4B Base LoRA API reference for SandBase. Use model bfl/flux-2/klein/4b/base/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2/klein/4b/base/lora" -apiReferenceJson: "{\"title\":\"FLUX.2 [klein] 4B Base LoRA\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Klein 4b is BFL's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/klein/4b/base/lora.\",\"default\":\"bfl/flux-2/klein/4b/base/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance scale for classifier-free guidance.\",\"default\":\"5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 4 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"List of LoRA weights to apply (maximum 3).\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/base/lora\\\",\\n \\\"prompt\\\": \\\"A serene Japanese garden with cherry blossoms, koi pond, and traditional wooden bridge at golden hour\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/base/lora\\\",\\n \\\"prompt\\\": \\\"A serene Japanese garden with cherry blossoms, koi pond, and traditional wooden bridge at golden hour\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/base/lora\\\",\\n \\\"prompt\\\": \\\"A serene Japanese garden with cherry blossoms, koi pond, and traditional wooden bridge at golden hour\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/base/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.2 [klein] 4B Base LoRA" - modelId: "bfl/flux-2/klein/4b/base/lora" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2/klein/4b/base/lora" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-19T16:24:56.142Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2/klein/4b/edit.md b/model-api-reference/image-generation/bfl/flux-2/klein/4b/edit.md index 40b4daae..0f19a5da 100644 --- a/model-api-reference/image-generation/bfl/flux-2/klein/4b/edit.md +++ b/model-api-reference/image-generation/bfl/flux-2/klein/4b/edit.md @@ -1,12 +1,12 @@ --- -title: "Flux 2 Klein 4b API Reference — BFL Flux 2 / Klein / 4b / Edit" -description: "Flux 2 Klein 4b API reference for SandBase. Use model bfl/flux-2/klein/4b/edit with /v1/run; see request and response examples." +title: "Flux 2 Klein 4B Edit API Reference" +description: "Flux 2 Klein 4B Edit API reference for SandBase. Use model bfl/flux-2/klein/4b/edit with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/bfl/flux-2/klein/4b/edit" -apiReferenceJson: "{\"title\":\"Flux 2 Klein 4b\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Klein 4b by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/klein/4b/edit.\",\"default\":\"bfl/flux-2/klein/4b/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to edit the image.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images for editing. A maximum of 4 images are allowed.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"4\",\"constraints\":\"Range: 4 to 8\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/edit\\\",\\n \\\"prompt\\\": \\\"Turn this into a realistic image\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/edit\\\",\\n \\\"prompt\\\": \\\"Turn this into a realistic image\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/edit\\\",\\n \\\"prompt\\\": \\\"Turn this into a realistic image\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Flux 2 Klein 4B Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Klein 4b by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/klein/4b/edit.\",\"default\":\"bfl/flux-2/klein/4b/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to edit the image.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images for editing. A maximum of 4 images are allowed.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"4\",\"constraints\":\"Range: 4 to 8\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/edit\\\",\\n \\\"prompt\\\": \\\"Turn this into a realistic image\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/edit\\\",\\n \\\"prompt\\\": \\\"Turn this into a realistic image\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/edit\\\",\\n \\\"prompt\\\": \\\"Turn this into a realistic image\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Flux 2 Klein 4b" + modelName: "Flux 2 Klein 4B Edit" modelId: "bfl/flux-2/klein/4b/edit" vendor: "BFL" vendorSlug: "bfl" diff --git a/model-api-reference/image-generation/bfl/flux-2/klein/4b/edit/lora.md b/model-api-reference/image-generation/bfl/flux-2/klein/4b/edit/lora.md deleted file mode 100644 index f85eaa4e..00000000 --- a/model-api-reference/image-generation/bfl/flux-2/klein/4b/edit/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.2 [klein] 4B LoRA API Reference — BFL / 4b / Edit / Lora" -description: "FLUX.2 [klein] 4B LoRA API reference for SandBase. Use model bfl/flux-2/klein/4b/edit/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2/klein/4b/edit/lora" -apiReferenceJson: "{\"title\":\"FLUX.2 [klein] 4B LoRA\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Klein 4b is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/klein/4b/edit/lora.\",\"default\":\"bfl/flux-2/klein/4b/edit/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to edit the image.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images for editing. A maximum of 4 images are allowed.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"4\",\"constraints\":\"Range: 4 to 8\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/edit/lora\\\",\\n \\\"prompt\\\": \\\"Turn this into a realistic image\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/edit/lora\\\",\\n \\\"prompt\\\": \\\"Turn this into a realistic image\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/edit/lora\\\",\\n \\\"prompt\\\": \\\"Turn this into a realistic image\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/edit/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.2 [klein] 4B LoRA" - modelId: "bfl/flux-2/klein/4b/edit/lora" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2/klein/4b/edit/lora" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-17T17:08:43.804Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2/klein/4b/lora.md b/model-api-reference/image-generation/bfl/flux-2/klein/4b/lora.md deleted file mode 100644 index 8d8ff3ce..00000000 --- a/model-api-reference/image-generation/bfl/flux-2/klein/4b/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.2 [klein] 4B LoRA API Reference — BFL 2 / Klein / 4b / Lora" -description: "FLUX.2 [klein] 4B LoRA API reference for SandBase. Use model bfl/flux-2/klein/4b/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2/klein/4b/lora" -apiReferenceJson: "{\"title\":\"FLUX.2 [klein] 4B LoRA\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Klein 4b by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/klein/4b/lora.\",\"default\":\"bfl/flux-2/klein/4b/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"4\",\"constraints\":\"Range: 4 to 8\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"List of LoRA weights to apply (maximum 3).\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/lora\\\",\\n \\\"prompt\\\": \\\"Cheetah in pre-sprint crouch, muscles tensed, gazelle visible in distance, African savanna golden grass, dust particles in air, National Geographic wildlife photography\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/lora\\\",\\n \\\"prompt\\\": \\\"Cheetah in pre-sprint crouch, muscles tensed, gazelle visible in distance, African savanna golden grass, dust particles in air, National Geographic wildlife photography\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/lora\\\",\\n \\\"prompt\\\": \\\"Cheetah in pre-sprint crouch, muscles tensed, gazelle visible in distance, African savanna golden grass, dust particles in air, National Geographic wildlife photography\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/klein/4b/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.2 [klein] 4B LoRA" - modelId: "bfl/flux-2/klein/4b/lora" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2/klein/4b/lora" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-17T17:01:51.649Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2/klein/9b.md b/model-api-reference/image-generation/bfl/flux-2/klein/9b.md index 7fff4c80..9cebaa2e 100644 --- a/model-api-reference/image-generation/bfl/flux-2/klein/9b.md +++ b/model-api-reference/image-generation/bfl/flux-2/klein/9b.md @@ -1,12 +1,12 @@ --- -title: "Flux 2 Klein 9b API Reference — BFL Flux 2 / Klein / 9b API" -description: "Flux 2 Klein 9b API reference for SandBase. Use model bfl/flux-2/klein/9b with /v1/run; see request and response examples." +title: "Flux 2 Klein 9B Text to Image API Reference" +description: "Flux 2 Klein 9B Text to Image API reference for SandBase. Use model bfl/flux-2/klein/9b with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/bfl/flux-2/klein/9b" -apiReferenceJson: "{\"title\":\"Flux 2 Klein 9b\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Klein 9b is BFL's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/klein/9b.\",\"default\":\"bfl/flux-2/klein/9b\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"4\",\"constraints\":\"Range: 4 to 8\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b\\\",\\n \\\"prompt\\\": \\\"A bright, surreal scene on a vast white salt flat under a clear blue sky, featuring two fluffy white alpacas standing in the foreground. Behind them sits a sleek white supercar with its scissor doors open, creating a dramatic futuristic silhouette. The sunlight is strong and crisp, casting sharp shadows on the ground and giving the image a clean, high-contrast cinematic look. Minimalist composition, playful luxury vibe, ultra sharp detail, wide-angle perspective, high resolution.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b\\\",\\n \\\"prompt\\\": \\\"A bright, surreal scene on a vast white salt flat under a clear blue sky, featuring two fluffy white alpacas standing in the foreground. Behind them sits a sleek white supercar with its scissor doors open, creating a dramatic futuristic silhouette. The sunlight is strong and crisp, casting sharp shadows on the ground and giving the image a clean, high-contrast cinematic look. Minimalist composition, playful luxury vibe, ultra sharp detail, wide-angle perspective, high resolution.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b\\\",\\n \\\"prompt\\\": \\\"A bright, surreal scene on a vast white salt flat under a clear blue sky, featuring two fluffy white alpacas standing in the foreground. Behind them sits a sleek white supercar with its scissor doors open, creating a dramatic futuristic silhouette. The sunlight is strong and crisp, casting sharp shadows on the ground and giving the image a clean, high-contrast cinematic look. Minimalist composition, playful luxury vibe, ultra sharp detail, wide-angle perspective, high resolution.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Flux 2 Klein 9B Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Klein 9b is BFL's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/klein/9b.\",\"default\":\"bfl/flux-2/klein/9b\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"4\",\"constraints\":\"Range: 4 to 8\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b\\\",\\n \\\"prompt\\\": \\\"A bright, surreal scene on a vast white salt flat under a clear blue sky, featuring two fluffy white alpacas standing in the foreground. Behind them sits a sleek white supercar with its scissor doors open, creating a dramatic futuristic silhouette. The sunlight is strong and crisp, casting sharp shadows on the ground and giving the image a clean, high-contrast cinematic look. Minimalist composition, playful luxury vibe, ultra sharp detail, wide-angle perspective, high resolution.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b\\\",\\n \\\"prompt\\\": \\\"A bright, surreal scene on a vast white salt flat under a clear blue sky, featuring two fluffy white alpacas standing in the foreground. Behind them sits a sleek white supercar with its scissor doors open, creating a dramatic futuristic silhouette. The sunlight is strong and crisp, casting sharp shadows on the ground and giving the image a clean, high-contrast cinematic look. Minimalist composition, playful luxury vibe, ultra sharp detail, wide-angle perspective, high resolution.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b\\\",\\n \\\"prompt\\\": \\\"A bright, surreal scene on a vast white salt flat under a clear blue sky, featuring two fluffy white alpacas standing in the foreground. Behind them sits a sleek white supercar with its scissor doors open, creating a dramatic futuristic silhouette. The sunlight is strong and crisp, casting sharp shadows on the ground and giving the image a clean, high-contrast cinematic look. Minimalist composition, playful luxury vibe, ultra sharp detail, wide-angle perspective, high resolution.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Flux 2 Klein 9b" + modelName: "Flux 2 Klein 9B Text to Image" modelId: "bfl/flux-2/klein/9b" vendor: "BFL" vendorSlug: "bfl" diff --git a/model-api-reference/image-generation/bfl/flux-2/klein/9b/base.md b/model-api-reference/image-generation/bfl/flux-2/klein/9b/base.md deleted file mode 100644 index 0b9ec3e5..00000000 --- a/model-api-reference/image-generation/bfl/flux-2/klein/9b/base.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 2 Klein 9b API Reference — BFL Flux 2 / Klein / 9b / Base" -description: "Flux 2 Klein 9b API reference for SandBase. Use model bfl/flux-2/klein/9b/base with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2/klein/9b/base" -apiReferenceJson: "{\"title\":\"Flux 2 Klein 9b\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Klein 9b by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/klein/9b/base.\",\"default\":\"bfl/flux-2/klein/9b/base\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance scale for classifier-free guidance.\",\"default\":\"5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 4 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/base\\\",\\n \\\"prompt\\\": \\\"A cyberpunk samurai standing in neon-lit Tokyo street at night, rain-soaked pavement reflecting holographic advertisements in pink and blue, steam rising from street vents, wearing futuristic armor with glowing accents, cinematic composition, Unreal Engine 5 quality, ray-traced reflections, shallow depth of field, hyper-detailed\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/base\\\",\\n \\\"prompt\\\": \\\"A cyberpunk samurai standing in neon-lit Tokyo street at night, rain-soaked pavement reflecting holographic advertisements in pink and blue, steam rising from street vents, wearing futuristic armor with glowing accents, cinematic composition, Unreal Engine 5 quality, ray-traced reflections, shallow depth of field, hyper-detailed\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/base\\\",\\n \\\"prompt\\\": \\\"A cyberpunk samurai standing in neon-lit Tokyo street at night, rain-soaked pavement reflecting holographic advertisements in pink and blue, steam rising from street vents, wearing futuristic armor with glowing accents, cinematic composition, Unreal Engine 5 quality, ray-traced reflections, shallow depth of field, hyper-detailed\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/base\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 2 Klein 9b" - modelId: "bfl/flux-2/klein/9b/base" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2/klein/9b/base" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-15T20:51:04.479Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2/klein/9b/base/edit.md b/model-api-reference/image-generation/bfl/flux-2/klein/9b/base/edit.md deleted file mode 100644 index 09dd8526..00000000 --- a/model-api-reference/image-generation/bfl/flux-2/klein/9b/base/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 2 Klein 9b API Reference — BFL 2 / Klein / 9b / Base / Edit" -description: "Flux 2 Klein 9b API reference for SandBase. Use model bfl/flux-2/klein/9b/base/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2/klein/9b/base/edit" -apiReferenceJson: "{\"title\":\"Flux 2 Klein 9b\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Klein 9b is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/klein/9b/base/edit.\",\"default\":\"bfl/flux-2/klein/9b/base/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to edit the image.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images for editing. A maximum of 4 images are allowed.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance scale for classifier-free guidance.\",\"default\":\"5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 4 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/base/edit\\\",\\n \\\"prompt\\\": \\\"Imagine a young woman. Use the Style from the Reference Image.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/base/edit\\\",\\n \\\"prompt\\\": \\\"Imagine a young woman. Use the Style from the Reference Image.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/base/edit\\\",\\n \\\"prompt\\\": \\\"Imagine a young woman. Use the Style from the Reference Image.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/base/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 2 Klein 9b" - modelId: "bfl/flux-2/klein/9b/base/edit" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2/klein/9b/base/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-15T20:47:31.793Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2/klein/9b/base/edit/lora.md b/model-api-reference/image-generation/bfl/flux-2/klein/9b/base/edit/lora.md deleted file mode 100644 index 30403c58..00000000 --- a/model-api-reference/image-generation/bfl/flux-2/klein/9b/base/edit/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.2 [klein] 9B Base LoRA API Reference — BFL / Edit / Lora" -description: "FLUX.2 [klein] 9B Base LoRA API reference for SandBase. Use model bfl/flux-2/klein/9b/base/edit/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2/klein/9b/base/edit/lora" -apiReferenceJson: "{\"title\":\"FLUX.2 [klein] 9B Base LoRA\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Klein 9b by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/klein/9b/base/edit/lora.\",\"default\":\"bfl/flux-2/klein/9b/base/edit/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to edit the image.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images for editing. A maximum of 4 images are allowed.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance scale for classifier-free guidance.\",\"default\":\"5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 4 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"List of LoRA weights to apply (maximum 3).\",\"default\":\"\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/base/edit/lora\\\",\\n \\\"prompt\\\": \\\"Change his clothes to casual suit and tie\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/base/edit/lora\\\",\\n \\\"prompt\\\": \\\"Change his clothes to casual suit and tie\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/base/edit/lora\\\",\\n \\\"prompt\\\": \\\"Change his clothes to casual suit and tie\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/base/edit/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.2 [klein] 9B Base LoRA" - modelId: "bfl/flux-2/klein/9b/base/edit/lora" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2/klein/9b/base/edit/lora" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-19T16:36:11.015Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2/klein/9b/base/lora.md b/model-api-reference/image-generation/bfl/flux-2/klein/9b/base/lora.md deleted file mode 100644 index c344569e..00000000 --- a/model-api-reference/image-generation/bfl/flux-2/klein/9b/base/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.2 [klein] 9B Base LoRA API Reference — BFL 9b / Base / Lora" -description: "FLUX.2 [klein] 9B Base LoRA API reference for SandBase. Use model bfl/flux-2/klein/9b/base/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2/klein/9b/base/lora" -apiReferenceJson: "{\"title\":\"FLUX.2 [klein] 9B Base LoRA\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Klein 9b is BFL's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/klein/9b/base/lora.\",\"default\":\"bfl/flux-2/klein/9b/base/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance scale for classifier-free guidance.\",\"default\":\"5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 4 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"List of LoRA weights to apply (maximum 3).\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/base/lora\\\",\\n \\\"prompt\\\": \\\"A serene Japanese garden with cherry blossoms, koi pond, and traditional wooden bridge at golden hour\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/base/lora\\\",\\n \\\"prompt\\\": \\\"A serene Japanese garden with cherry blossoms, koi pond, and traditional wooden bridge at golden hour\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/base/lora\\\",\\n \\\"prompt\\\": \\\"A serene Japanese garden with cherry blossoms, koi pond, and traditional wooden bridge at golden hour\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/base/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.2 [klein] 9B Base LoRA" - modelId: "bfl/flux-2/klein/9b/base/lora" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2/klein/9b/base/lora" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-19T16:34:00.337Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2/klein/9b/edit.md b/model-api-reference/image-generation/bfl/flux-2/klein/9b/edit.md index c8c4cba1..63c5d2f5 100644 --- a/model-api-reference/image-generation/bfl/flux-2/klein/9b/edit.md +++ b/model-api-reference/image-generation/bfl/flux-2/klein/9b/edit.md @@ -1,12 +1,12 @@ --- -title: "Flux 2 Klein 9b API Reference — BFL Flux 2 / Klein / 9b / Edit" -description: "Flux 2 Klein 9b API reference for SandBase. Use model bfl/flux-2/klein/9b/edit with /v1/run; see request and response examples." +title: "Flux 2 Klein 9B Edit API Reference" +description: "Flux 2 Klein 9B Edit API reference for SandBase. Use model bfl/flux-2/klein/9b/edit with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/bfl/flux-2/klein/9b/edit" -apiReferenceJson: "{\"title\":\"Flux 2 Klein 9b\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Klein 9b by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/klein/9b/edit.\",\"default\":\"bfl/flux-2/klein/9b/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to edit the image.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images for editing. A maximum of 4 images are allowed.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"4\",\"constraints\":\"Range: 4 to 8\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/edit\\\",\\n \\\"prompt\\\": \\\"Turn this into a realistic image\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/edit\\\",\\n \\\"prompt\\\": \\\"Turn this into a realistic image\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/edit\\\",\\n \\\"prompt\\\": \\\"Turn this into a realistic image\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Flux 2 Klein 9B Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Klein 9b by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/klein/9b/edit.\",\"default\":\"bfl/flux-2/klein/9b/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to edit the image.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images for editing. A maximum of 4 images are allowed.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"4\",\"constraints\":\"Range: 4 to 8\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/edit\\\",\\n \\\"prompt\\\": \\\"Turn this into a realistic image\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/edit\\\",\\n \\\"prompt\\\": \\\"Turn this into a realistic image\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/edit\\\",\\n \\\"prompt\\\": \\\"Turn this into a realistic image\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Flux 2 Klein 9b" + modelName: "Flux 2 Klein 9B Edit" modelId: "bfl/flux-2/klein/9b/edit" vendor: "BFL" vendorSlug: "bfl" diff --git a/model-api-reference/image-generation/bfl/flux-2/klein/9b/edit/lora.md b/model-api-reference/image-generation/bfl/flux-2/klein/9b/edit/lora.md deleted file mode 100644 index ec516d04..00000000 --- a/model-api-reference/image-generation/bfl/flux-2/klein/9b/edit/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.2 [klein] 9B LoRA API Reference — BFL / 9b / Edit / Lora" -description: "FLUX.2 [klein] 9B LoRA API reference for SandBase. Use model bfl/flux-2/klein/9b/edit/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2/klein/9b/edit/lora" -apiReferenceJson: "{\"title\":\"FLUX.2 [klein] 9B LoRA\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Klein 9b is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/klein/9b/edit/lora.\",\"default\":\"bfl/flux-2/klein/9b/edit/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to edit the image.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images for editing. A maximum of 4 images are allowed.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"4\",\"constraints\":\"Range: 4 to 8\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"List of LoRA weights to apply (maximum 3).\",\"default\":\"\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/edit/lora\\\",\\n \\\"prompt\\\": \\\"Turn this into a realistic image\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/edit/lora\\\",\\n \\\"prompt\\\": \\\"Turn this into a realistic image\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/edit/lora\\\",\\n \\\"prompt\\\": \\\"Turn this into a realistic image\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/edit/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.2 [klein] 9B LoRA" - modelId: "bfl/flux-2/klein/9b/edit/lora" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2/klein/9b/edit/lora" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-17T17:25:59.132Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2/klein/9b/lora.md b/model-api-reference/image-generation/bfl/flux-2/klein/9b/lora.md deleted file mode 100644 index 0efb7b63..00000000 --- a/model-api-reference/image-generation/bfl/flux-2/klein/9b/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.2 [klein] 9B LoRA API Reference — BFL 2 / Klein / 9b / Lora" -description: "FLUX.2 [klein] 9B LoRA API reference for SandBase. Use model bfl/flux-2/klein/9b/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2/klein/9b/lora" -apiReferenceJson: "{\"title\":\"FLUX.2 [klein] 9B LoRA\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Klein 9b by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/klein/9b/lora.\",\"default\":\"bfl/flux-2/klein/9b/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"4\",\"constraints\":\"Range: 4 to 8\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"List of LoRA weights to apply (maximum 3).\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/lora\\\",\\n \\\"prompt\\\": \\\"A bright, surreal scene on a vast white salt flat under a clear blue sky, featuring two fluffy white alpacas standing in the foreground. Behind them sits a sleek white supercar with its scissor doors open, creating a dramatic futuristic silhouette. The sunlight is strong and crisp, casting sharp shadows on the ground and giving the image a clean, high-contrast cinematic look. Minimalist composition, playful luxury vibe, ultra sharp detail, wide-angle perspective, high resolution.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/lora\\\",\\n \\\"prompt\\\": \\\"A bright, surreal scene on a vast white salt flat under a clear blue sky, featuring two fluffy white alpacas standing in the foreground. Behind them sits a sleek white supercar with its scissor doors open, creating a dramatic futuristic silhouette. The sunlight is strong and crisp, casting sharp shadows on the ground and giving the image a clean, high-contrast cinematic look. Minimalist composition, playful luxury vibe, ultra sharp detail, wide-angle perspective, high resolution.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/lora\\\",\\n \\\"prompt\\\": \\\"A bright, surreal scene on a vast white salt flat under a clear blue sky, featuring two fluffy white alpacas standing in the foreground. Behind them sits a sleek white supercar with its scissor doors open, creating a dramatic futuristic silhouette. The sunlight is strong and crisp, casting sharp shadows on the ground and giving the image a clean, high-contrast cinematic look. Minimalist composition, playful luxury vibe, ultra sharp detail, wide-angle perspective, high resolution.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/klein/9b/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.2 [klein] 9B LoRA" - modelId: "bfl/flux-2/klein/9b/lora" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2/klein/9b/lora" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-17T17:22:48.946Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2/klein/realtime.md b/model-api-reference/image-generation/bfl/flux-2/klein/realtime.md deleted file mode 100644 index ae87a720..00000000 --- a/model-api-reference/image-generation/bfl/flux-2/klein/realtime.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 2 [klein] Realtime API Reference" -description: "Flux 2 [klein] Realtime API reference for SandBase. Use model bfl/flux-2/klein/realtime with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2/klein/realtime" -apiReferenceJson: "{\"title\":\"Flux 2 [klein] Realtime\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Klein Realtime is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/klein/realtime.\",\"default\":\"bfl/flux-2/klein/realtime\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to guide image editing.\",\"default\":\"Turn this into \\\"Living oil painting, melting gold and sapphire\\\"\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Base64-encoded image data URI for editing. CDN URLs are not supported for realtime. For optimal performance, use 704x704 JPEG images with 50% quality. Other sizes will be resized automatically.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"3\",\"constraints\":\"Range: 1 to 8\"},{\"name\":\"schedule_mu\",\"type\":\"number\",\"required\":false,\"description\":\"Schedule mu for time shift. 2.3=default, lower=more even denoising, 0.3=nearly linear.\",\"default\":\"2.3\",\"constraints\":\"Range: 0.3 to 2.5\"},{\"name\":\"output_feedback_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Output feedback loop. 1.0 = pure noise (no feedback), 0.9 = 90% noise + 10% previous output latent.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"enable_interpolation\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable RIFE frame interpolation between consecutive frames (doubles output frames).\",\"default\":\"false\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility.\",\"default\":\"35\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/klein/realtime\\\",\\n \\\"prompt\\\": \\\"Turn this into \\\\\\\"Living oil painting, melting gold and sapphire\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/realtime\\\",\\n \\\"prompt\\\": \\\"Turn this into \\\\\\\"Living oil painting, melting gold and sapphire\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/klein/realtime\\\",\\n \\\"prompt\\\": \\\"Turn this into \\\\\\\"Living oil painting, melting gold and sapphire\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/klein/realtime\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 2 [klein] Realtime" - modelId: "bfl/flux-2/klein/realtime" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2/klein/realtime" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-02-05T23:20:48.413Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2/kontext/max/multi.md b/model-api-reference/image-generation/bfl/flux-2/kontext/max/multi.md deleted file mode 100644 index e3463a78..00000000 --- a/model-api-reference/image-generation/bfl/flux-2/kontext/max/multi.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 Kontext [max] API Reference — BFL / Kontext / Max / Multi" -description: "FLUX.1 Kontext [max] API reference for SandBase. Use model bfl/flux-2/kontext/max/multi with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2/kontext/max/multi" -apiReferenceJson: "{\"title\":\"FLUX.1 Kontext [max]\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Kontext Max by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/kontext/max/multi.\",\"default\":\"bfl/flux-2/kontext/max/multi\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Image prompt for the omni model.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/kontext/max/multi\\\",\\n \\\"prompt\\\": \\\"Put the little duckling on top of the woman's t-shirt.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/kontext/max/multi\\\",\\n \\\"prompt\\\": \\\"Put the little duckling on top of the woman's t-shirt.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/kontext/max/multi\\\",\\n \\\"prompt\\\": \\\"Put the little duckling on top of the woman's t-shirt.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/kontext/max/multi\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 Kontext [max]" - modelId: "bfl/flux-2/kontext/max/multi" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2/kontext/max/multi" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-29T19:13:44.033Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2/kontext/max/text-to-image.md b/model-api-reference/image-generation/bfl/flux-2/kontext/max/text-to-image.md deleted file mode 100644 index 1d94b3f4..00000000 --- a/model-api-reference/image-generation/bfl/flux-2/kontext/max/text-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 Kontext [max] API Reference — BFL / Max / Text To Image" -description: "FLUX.1 Kontext [max] API reference for SandBase. Use model bfl/flux-2/kontext/max/text-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2/kontext/max/text-to-image" -apiReferenceJson: "{\"title\":\"FLUX.1 Kontext [max]\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Kontext Max by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/kontext/max/text-to-image.\",\"default\":\"bfl/flux-2/kontext/max/text-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/kontext/max/text-to-image\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/kontext/max/text-to-image\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/kontext/max/text-to-image\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/kontext/max/text-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 Kontext [max]" - modelId: "bfl/flux-2/kontext/max/text-to-image" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2/kontext/max/text-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-29T04:52:29.523Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2/kontext/pro/multi.md b/model-api-reference/image-generation/bfl/flux-2/kontext/pro/multi.md deleted file mode 100644 index 8d25faae..00000000 --- a/model-api-reference/image-generation/bfl/flux-2/kontext/pro/multi.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 Kontext [pro] API Reference — BFL / Kontext / Pro / Multi" -description: "FLUX.1 Kontext [pro] API reference for SandBase. Use model bfl/flux-2/kontext/pro/multi with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2/kontext/pro/multi" -apiReferenceJson: "{\"title\":\"FLUX.1 Kontext [pro]\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Kontext Pro by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/kontext/pro/multi.\",\"default\":\"bfl/flux-2/kontext/pro/multi\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Image prompt for the omni model.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/kontext/pro/multi\\\",\\n \\\"prompt\\\": \\\"Put the little duckling on top of the woman's t-shirt.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/kontext/pro/multi\\\",\\n \\\"prompt\\\": \\\"Put the little duckling on top of the woman's t-shirt.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/kontext/pro/multi\\\",\\n \\\"prompt\\\": \\\"Put the little duckling on top of the woman's t-shirt.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/kontext/pro/multi\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 Kontext [pro]" - modelId: "bfl/flux-2/kontext/pro/multi" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2/kontext/pro/multi" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-29T19:10:26.719Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2/kontext/pro/text-to-image.md b/model-api-reference/image-generation/bfl/flux-2/kontext/pro/text-to-image.md deleted file mode 100644 index b9098b97..00000000 --- a/model-api-reference/image-generation/bfl/flux-2/kontext/pro/text-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 Kontext [pro] API Reference — BFL / Pro / Text To Image" -description: "FLUX.1 Kontext [pro] API reference for SandBase. Use model bfl/flux-2/kontext/pro/text-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2/kontext/pro/text-to-image" -apiReferenceJson: "{\"title\":\"FLUX.1 Kontext [pro]\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Kontext Pro by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/kontext/pro/text-to-image.\",\"default\":\"bfl/flux-2/kontext/pro/text-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/kontext/pro/text-to-image\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/kontext/pro/text-to-image\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/kontext/pro/text-to-image\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/kontext/pro/text-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 Kontext [pro]" - modelId: "bfl/flux-2/kontext/pro/text-to-image" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2/kontext/pro/text-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-28T19:25:39.115Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2/lora-gallery/add-background.md b/model-api-reference/image-generation/bfl/flux-2/lora-gallery/add-background.md deleted file mode 100644 index 5ecb9a15..00000000 --- a/model-api-reference/image-generation/bfl/flux-2/lora-gallery/add-background.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 2 Lora Gallery API Reference — BFL Gallery / Add Background" -description: "Flux 2 Lora Gallery API reference for SandBase. Use model bfl/flux-2/lora-gallery/add-background with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2/lora-gallery/add-background" -apiReferenceJson: "{\"title\":\"Flux 2 Lora Gallery\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Lora Gallery Add Background by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/lora-gallery/add-background.\",\"default\":\"bfl/flux-2/lora-gallery/add-background\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt describing the background to add. Must start with 'Add Background' followed by your description.\",\"default\":\"Add Background forest\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images. Provide an image with a white or clean background.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the add background effect.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. Same seed with same prompt will produce same result.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"40\",\"constraints\":\"Range: 4 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"2.5\",\"constraints\":\"Range: 0 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/lora-gallery/add-background\\\",\\n \\\"prompt\\\": \\\"Add Background forest\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/lora-gallery/add-background\\\",\\n \\\"prompt\\\": \\\"Add Background forest\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/lora-gallery/add-background\\\",\\n \\\"prompt\\\": \\\"Add Background forest\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/lora-gallery/add-background\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 2 Lora Gallery" - modelId: "bfl/flux-2/lora-gallery/add-background" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2/lora-gallery/add-background" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-25T19:25:11.715Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2/lora-gallery/hdr-style.md b/model-api-reference/image-generation/bfl/flux-2/lora-gallery/hdr-style.md deleted file mode 100644 index 90b9a118..00000000 --- a/model-api-reference/image-generation/bfl/flux-2/lora-gallery/hdr-style.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 2 Lora Gallery API Reference — BFL Lora Gallery / Hdr Style" -description: "Flux 2 Lora Gallery API reference for SandBase. Use model bfl/flux-2/lora-gallery/hdr-style with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2/lora-gallery/hdr-style" -apiReferenceJson: "{\"title\":\"Flux 2 Lora Gallery\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Lora Gallery Hdr Style is BFL's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/lora-gallery/hdr-style.\",\"default\":\"bfl/flux-2/lora-gallery/hdr-style\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an HDR style image. The trigger word 'Hyp3rRe4list1c' will be automatically prepended.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. Same seed with same prompt will produce same result.\"},{\"name\":\"lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the HDR style effect.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"40\",\"constraints\":\"Range: 4 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"2.5\",\"constraints\":\"Range: 0 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/lora-gallery/hdr-style\\\",\\n \\\"prompt\\\": \\\"A wonderful tropical landscape\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/lora-gallery/hdr-style\\\",\\n \\\"prompt\\\": \\\"A wonderful tropical landscape\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/lora-gallery/hdr-style\\\",\\n \\\"prompt\\\": \\\"A wonderful tropical landscape\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/lora-gallery/hdr-style\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 2 Lora Gallery" - modelId: "bfl/flux-2/lora-gallery/hdr-style" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2/lora-gallery/hdr-style" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-25T19:38:44.387Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2/lora-gallery/satellite-view-style.md b/model-api-reference/image-generation/bfl/flux-2/lora-gallery/satellite-view-style.md deleted file mode 100644 index 7704c388..00000000 --- a/model-api-reference/image-generation/bfl/flux-2/lora-gallery/satellite-view-style.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 2 Lora Gallery API Reference — BFL / Satellite View Style" -description: "Flux 2 Lora Gallery API reference for SandBase. Use model bfl/flux-2/lora-gallery/satellite-view-style with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2/lora-gallery/satellite-view-style" -apiReferenceJson: "{\"title\":\"Flux 2 Lora Gallery\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Lora Gallery Satellite View Style by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/lora-gallery/satellite-view-style.\",\"default\":\"bfl/flux-2/lora-gallery/satellite-view-style\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate a satellite/aerial view style image.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. Same seed with same prompt will produce same result.\"},{\"name\":\"lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the satellite view style effect.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"40\",\"constraints\":\"Range: 4 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"2.5\",\"constraints\":\"Range: 0 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/lora-gallery/satellite-view-style\\\",\\n \\\"prompt\\\": \\\"Aerial view of a city from above, satellite style\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/lora-gallery/satellite-view-style\\\",\\n \\\"prompt\\\": \\\"Aerial view of a city from above, satellite style\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/lora-gallery/satellite-view-style\\\",\\n \\\"prompt\\\": \\\"Aerial view of a city from above, satellite style\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/lora-gallery/satellite-view-style\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 2 Lora Gallery" - modelId: "bfl/flux-2/lora-gallery/satellite-view-style" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2/lora-gallery/satellite-view-style" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-25T19:47:02.458Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2/lora-gallery/sepia-vintage.md b/model-api-reference/image-generation/bfl/flux-2/lora-gallery/sepia-vintage.md deleted file mode 100644 index 7d9aa6da..00000000 --- a/model-api-reference/image-generation/bfl/flux-2/lora-gallery/sepia-vintage.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 2 Lora Gallery API Reference — BFL Gallery / Sepia Vintage" -description: "Flux 2 Lora Gallery API reference for SandBase. Use model bfl/flux-2/lora-gallery/sepia-vintage with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2/lora-gallery/sepia-vintage" -apiReferenceJson: "{\"title\":\"Flux 2 Lora Gallery\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Lora Gallery Sepia Vintage is BFL's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/lora-gallery/sepia-vintage.\",\"default\":\"bfl/flux-2/lora-gallery/sepia-vintage\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate a sepia vintage photography style image.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. Same seed with same prompt will produce same result.\"},{\"name\":\"lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the sepia vintage photography effect.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"40\",\"constraints\":\"Range: 4 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"2.5\",\"constraints\":\"Range: 0 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/lora-gallery/sepia-vintage\\\",\\n \\\"prompt\\\": \\\"A portrait of a Victorian lady in sepia tones\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/lora-gallery/sepia-vintage\\\",\\n \\\"prompt\\\": \\\"A portrait of a Victorian lady in sepia tones\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/lora-gallery/sepia-vintage\\\",\\n \\\"prompt\\\": \\\"A portrait of a Victorian lady in sepia tones\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/lora-gallery/sepia-vintage\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 2 Lora Gallery" - modelId: "bfl/flux-2/lora-gallery/sepia-vintage" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2/lora-gallery/sepia-vintage" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-25T19:58:53.285Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2/lora.md b/model-api-reference/image-generation/bfl/flux-2/lora.md deleted file mode 100644 index 8bb4df75..00000000 --- a/model-api-reference/image-generation/bfl/flux-2/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 2 API Reference — BFL Flux 2 / Lora API" -description: "Flux 2 API reference for SandBase. Use model bfl/flux-2/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2/lora" -apiReferenceJson: "{\"title\":\"Flux 2\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Lora is BFL's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/lora.\",\"default\":\"bfl/flux-2/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance Scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"2.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 4 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"List of LoRA weights to apply (maximum 3). Each LoRA can be a URL, HuggingFace repo ID, or local path.\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/lora\\\",\\n \\\"prompt\\\": \\\"Close shot a pianist plays in a luxurious room with tall windows overlooking a rainy metropolis. Shot with a 50mm lens at a side profile angle, soft tungsten light highlighting hands moving over keys. Capture detailed reflections in polished black piano surfaces, raindrops sliding down glass, and atmospheric warm/cool lighting contrast.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/lora\\\",\\n \\\"prompt\\\": \\\"Close shot a pianist plays in a luxurious room with tall windows overlooking a rainy metropolis. Shot with a 50mm lens at a side profile angle, soft tungsten light highlighting hands moving over keys. Capture detailed reflections in polished black piano surfaces, raindrops sliding down glass, and atmospheric warm/cool lighting contrast.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/lora\\\",\\n \\\"prompt\\\": \\\"Close shot a pianist plays in a luxurious room with tall windows overlooking a rainy metropolis. Shot with a 50mm lens at a side profile angle, soft tungsten light highlighting hands moving over keys. Capture detailed reflections in polished black piano surfaces, raindrops sliding down glass, and atmospheric warm/cool lighting contrast.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 2" - modelId: "bfl/flux-2/lora" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2/lora" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-23T00:16:11.639Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2/lora/edit.md b/model-api-reference/image-generation/bfl/flux-2/lora/edit.md deleted file mode 100644 index c60c5128..00000000 --- a/model-api-reference/image-generation/bfl/flux-2/lora/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 2 API Reference — BFL Flux 2 / Lora / Edit API" -description: "Flux 2 API reference for SandBase. Use model bfl/flux-2/lora/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2/lora/edit" -apiReferenceJson: "{\"title\":\"Flux 2\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Lora Edit by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/lora/edit.\",\"default\":\"bfl/flux-2/lora/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URsL of the images for editing. A maximum of 3 images are allowed, if more are provided, only the first 3 will be used.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance Scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"2.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 4 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"List of LoRA weights to apply (maximum 3). Each LoRA can be a URL, HuggingFace repo ID, or local path.\",\"default\":\"\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/lora/edit\\\",\\n \\\"prompt\\\": \\\"Make this donut realistic\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/lora/edit\\\",\\n \\\"prompt\\\": \\\"Make this donut realistic\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/lora/edit\\\",\\n \\\"prompt\\\": \\\"Make this donut realistic\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/lora/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 2" - modelId: "bfl/flux-2/lora/edit" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2/lora/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-23T00:16:39.018Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-2/max.md b/model-api-reference/image-generation/bfl/flux-2/max.md index 26e97b71..b847a513 100644 --- a/model-api-reference/image-generation/bfl/flux-2/max.md +++ b/model-api-reference/image-generation/bfl/flux-2/max.md @@ -1,12 +1,12 @@ --- -title: "Flux 2 Max API Reference" -description: "Flux 2 Max API reference for SandBase. Use model bfl/flux-2/max with /v1/run; see request and response examples." +title: "Flux 2 Max Text to Image API Reference" +description: "Flux 2 Max Text to Image API reference for SandBase. Use model bfl/flux-2/max with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/bfl/flux-2/max" -apiReferenceJson: "{\"title\":\"Flux 2 Max\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Max by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/max.\",\"default\":\"bfl/flux-2/max\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/max\\\",\\n \\\"prompt\\\": \\\"A lavish, baroque-style image of a powerful sorceress in her arcane study. She is dressed in robes of deep emerald velvet embroidered with gold thread and shimmering beetle wings, holding a staff topped with a glowing, swirling galaxy trapped in a crystal orb.She stands before a massive oak desk covered in open grimoires with illuminated pages showing alchemical diagrams, bubbling potions in glass alembics, and a sleeping pseudodragon curled around a stack of scrolls. The room is filled with curiosities: shelves of leather-bound books, celestial globes, and dried magical herbs hanging from the ceiling. The lighting is chiaroscuro, from a large fireplace with green flames and a magical candelabra floating in mid-air. The brushwork is visible and textured, with rich, deep colors. The style is reminiscent of Rembrandt meets classic fantasy art. The words 'Flux 2 Max is available on fal' are written in elegant cursive font on the top of the image.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/max\\\",\\n \\\"prompt\\\": \\\"A lavish, baroque-style image of a powerful sorceress in her arcane study. She is dressed in robes of deep emerald velvet embroidered with gold thread and shimmering beetle wings, holding a staff topped with a glowing, swirling galaxy trapped in a crystal orb.She stands before a massive oak desk covered in open grimoires with illuminated pages showing alchemical diagrams, bubbling potions in glass alembics, and a sleeping pseudodragon curled around a stack of scrolls. The room is filled with curiosities: shelves of leather-bound books, celestial globes, and dried magical herbs hanging from the ceiling. The lighting is chiaroscuro, from a large fireplace with green flames and a magical candelabra floating in mid-air. The brushwork is visible and textured, with rich, deep colors. The style is reminiscent of Rembrandt meets classic fantasy art. The words 'Flux 2 Max is available on fal' are written in elegant cursive font on the top of the image.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/max\\\",\\n \\\"prompt\\\": \\\"A lavish, baroque-style image of a powerful sorceress in her arcane study. She is dressed in robes of deep emerald velvet embroidered with gold thread and shimmering beetle wings, holding a staff topped with a glowing, swirling galaxy trapped in a crystal orb.She stands before a massive oak desk covered in open grimoires with illuminated pages showing alchemical diagrams, bubbling potions in glass alembics, and a sleeping pseudodragon curled around a stack of scrolls. The room is filled with curiosities: shelves of leather-bound books, celestial globes, and dried magical herbs hanging from the ceiling. The lighting is chiaroscuro, from a large fireplace with green flames and a magical candelabra floating in mid-air. The brushwork is visible and textured, with rich, deep colors. The style is reminiscent of Rembrandt meets classic fantasy art. The words 'Flux 2 Max is available on fal' are written in elegant cursive font on the top of the image.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/max\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Flux 2 Max Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Max by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/max.\",\"default\":\"bfl/flux-2/max\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/max\\\",\\n \\\"prompt\\\": \\\"A lavish, baroque-style image of a powerful sorceress in her arcane study. She is dressed in robes of deep emerald velvet embroidered with gold thread and shimmering beetle wings, holding a staff topped with a glowing, swirling galaxy trapped in a crystal orb.She stands before a massive oak desk covered in open grimoires with illuminated pages showing alchemical diagrams, bubbling potions in glass alembics, and a sleeping pseudodragon curled around a stack of scrolls. The room is filled with curiosities: shelves of leather-bound books, celestial globes, and dried magical herbs hanging from the ceiling. The lighting is chiaroscuro, from a large fireplace with green flames and a magical candelabra floating in mid-air. The brushwork is visible and textured, with rich, deep colors. The style is reminiscent of Rembrandt meets classic fantasy art. The words 'Flux 2 Max is available on fal' are written in elegant cursive font on the top of the image.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/max\\\",\\n \\\"prompt\\\": \\\"A lavish, baroque-style image of a powerful sorceress in her arcane study. She is dressed in robes of deep emerald velvet embroidered with gold thread and shimmering beetle wings, holding a staff topped with a glowing, swirling galaxy trapped in a crystal orb.She stands before a massive oak desk covered in open grimoires with illuminated pages showing alchemical diagrams, bubbling potions in glass alembics, and a sleeping pseudodragon curled around a stack of scrolls. The room is filled with curiosities: shelves of leather-bound books, celestial globes, and dried magical herbs hanging from the ceiling. The lighting is chiaroscuro, from a large fireplace with green flames and a magical candelabra floating in mid-air. The brushwork is visible and textured, with rich, deep colors. The style is reminiscent of Rembrandt meets classic fantasy art. The words 'Flux 2 Max is available on fal' are written in elegant cursive font on the top of the image.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/max\\\",\\n \\\"prompt\\\": \\\"A lavish, baroque-style image of a powerful sorceress in her arcane study. She is dressed in robes of deep emerald velvet embroidered with gold thread and shimmering beetle wings, holding a staff topped with a glowing, swirling galaxy trapped in a crystal orb.She stands before a massive oak desk covered in open grimoires with illuminated pages showing alchemical diagrams, bubbling potions in glass alembics, and a sleeping pseudodragon curled around a stack of scrolls. The room is filled with curiosities: shelves of leather-bound books, celestial globes, and dried magical herbs hanging from the ceiling. The lighting is chiaroscuro, from a large fireplace with green flames and a magical candelabra floating in mid-air. The brushwork is visible and textured, with rich, deep colors. The style is reminiscent of Rembrandt meets classic fantasy art. The words 'Flux 2 Max is available on fal' are written in elegant cursive font on the top of the image.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/max\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Flux 2 Max" + modelName: "Flux 2 Max Text to Image" modelId: "bfl/flux-2/max" vendor: "BFL" vendorSlug: "bfl" diff --git a/model-api-reference/image-generation/bfl/flux-2/pro.md b/model-api-reference/image-generation/bfl/flux-2/pro.md index 380e813e..56c00166 100644 --- a/model-api-reference/image-generation/bfl/flux-2/pro.md +++ b/model-api-reference/image-generation/bfl/flux-2/pro.md @@ -1,12 +1,12 @@ --- -title: "Flux 2 Pro API Reference — BFL Flux 2 / Pro API" -description: "Flux 2 Pro API reference for SandBase. Use model bfl/flux-2/pro with /v1/run; see request and response examples." +title: "Flux 2 Pro Text to Image API Reference" +description: "Flux 2 Pro Text to Image API reference for SandBase. Use model bfl/flux-2/pro with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/bfl/flux-2/pro" -apiReferenceJson: "{\"title\":\"Flux 2 Pro\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Pro by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/pro.\",\"default\":\"bfl/flux-2/pro\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/pro\\\",\\n \\\"prompt\\\": \\\"An intense close-up of knight's visor reflecting battle, sword raised, flames in background, chiaroscuro helmet shadows, hyper-detailed armor, square medieval, cinematic lighting\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/pro\\\",\\n \\\"prompt\\\": \\\"An intense close-up of knight's visor reflecting battle, sword raised, flames in background, chiaroscuro helmet shadows, hyper-detailed armor, square medieval, cinematic lighting\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/pro\\\",\\n \\\"prompt\\\": \\\"An intense close-up of knight's visor reflecting battle, sword raised, flames in background, chiaroscuro helmet shadows, hyper-detailed armor, square medieval, cinematic lighting\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/pro\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Flux 2 Pro Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Pro by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/pro.\",\"default\":\"bfl/flux-2/pro\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/pro\\\",\\n \\\"prompt\\\": \\\"An intense close-up of knight's visor reflecting battle, sword raised, flames in background, chiaroscuro helmet shadows, hyper-detailed armor, square medieval, cinematic lighting\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/pro\\\",\\n \\\"prompt\\\": \\\"An intense close-up of knight's visor reflecting battle, sword raised, flames in background, chiaroscuro helmet shadows, hyper-detailed armor, square medieval, cinematic lighting\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/pro\\\",\\n \\\"prompt\\\": \\\"An intense close-up of knight's visor reflecting battle, sword raised, flames in background, chiaroscuro helmet shadows, hyper-detailed armor, square medieval, cinematic lighting\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/pro\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Flux 2 Pro" + modelName: "Flux 2 Pro Text to Image" modelId: "bfl/flux-2/pro" vendor: "BFL" vendorSlug: "bfl" diff --git a/model-api-reference/image-generation/bfl/flux-2/turbo.md b/model-api-reference/image-generation/bfl/flux-2/turbo.md index 4a6e2db9..1b42c1ce 100644 --- a/model-api-reference/image-generation/bfl/flux-2/turbo.md +++ b/model-api-reference/image-generation/bfl/flux-2/turbo.md @@ -1,12 +1,12 @@ --- -title: "Flux 2 Turbo API Reference" -description: "Flux 2 Turbo API reference for SandBase. Use model bfl/flux-2/turbo with /v1/run; see request and response examples." +title: "Flux 2 Turbo Text to Image API Reference" +description: "Flux 2 Turbo Text to Image API reference for SandBase. Use model bfl/flux-2/turbo with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/bfl/flux-2/turbo" -apiReferenceJson: "{\"title\":\"Flux 2 Turbo\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Turbo by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/turbo.\",\"default\":\"bfl/flux-2/turbo\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance Scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"2.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/turbo\\\",\\n \\\"prompt\\\": \\\"A realistic photograph of a vintage typewriter with a sheet of paper inserted that says 'Chapter One: The Journey Begins,' sunlight falling across the desk.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/turbo\\\",\\n \\\"prompt\\\": \\\"A realistic photograph of a vintage typewriter with a sheet of paper inserted that says 'Chapter One: The Journey Begins,' sunlight falling across the desk.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/turbo\\\",\\n \\\"prompt\\\": \\\"A realistic photograph of a vintage typewriter with a sheet of paper inserted that says 'Chapter One: The Journey Begins,' sunlight falling across the desk.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/turbo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Flux 2 Turbo Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Turbo by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/turbo.\",\"default\":\"bfl/flux-2/turbo\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance Scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"2.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the generation. If not provided, a random seed will be used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/turbo\\\",\\n \\\"prompt\\\": \\\"A realistic photograph of a vintage typewriter with a sheet of paper inserted that says 'Chapter One: The Journey Begins,' sunlight falling across the desk.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/turbo\\\",\\n \\\"prompt\\\": \\\"A realistic photograph of a vintage typewriter with a sheet of paper inserted that says 'Chapter One: The Journey Begins,' sunlight falling across the desk.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/turbo\\\",\\n \\\"prompt\\\": \\\"A realistic photograph of a vintage typewriter with a sheet of paper inserted that says 'Chapter One: The Journey Begins,' sunlight falling across the desk.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/turbo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Flux 2 Turbo" + modelName: "Flux 2 Turbo Text to Image" modelId: "bfl/flux-2/turbo" vendor: "BFL" vendorSlug: "bfl" diff --git a/model-api-reference/image-generation/bfl/flux-2/virtual-tryon.md b/model-api-reference/image-generation/bfl/flux-2/virtual-tryon.md deleted file mode 100644 index b5b09358..00000000 --- a/model-api-reference/image-generation/bfl/flux-2/virtual-tryon.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux 2 Lora Gallery API Reference — BFL Flux 2 / Virtual Tryon" -description: "Flux 2 Lora Gallery API reference for SandBase. Use model bfl/flux-2/virtual-tryon with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-2/virtual-tryon" -apiReferenceJson: "{\"title\":\"Flux 2 Lora Gallery\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 2 Virtual Tryon by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-2/virtual-tryon.\",\"default\":\"bfl/flux-2/virtual-tryon\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate a virtual try-on image.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images for virtual try-on. Provide person image and clothing image.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale. Controls how closely the model follows the prompt.\",\"default\":\"2.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"40\",\"constraints\":\"Range: 4 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the virtual try-on effect.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. Same seed with same prompt will produce same result.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-2/virtual-tryon\\\",\\n \\\"prompt\\\": \\\"A person wearing a stylish jacket, virtual try-on\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-2/virtual-tryon\\\",\\n \\\"prompt\\\": \\\"A person wearing a stylish jacket, virtual try-on\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-2/virtual-tryon\\\",\\n \\\"prompt\\\": \\\"A person wearing a stylish jacket, virtual try-on\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-2/virtual-tryon\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux 2 Lora Gallery" - modelId: "bfl/flux-2/virtual-tryon" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-2/virtual-tryon" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-25T19:50:48.195Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-3/edit.md b/model-api-reference/image-generation/bfl/flux-3/edit.md new file mode 100644 index 00000000..d92eb3cc --- /dev/null +++ b/model-api-reference/image-generation/bfl/flux-3/edit.md @@ -0,0 +1,21 @@ +--- +title: "Flux 3 Edit API Reference" +description: "Flux 3 Edit API reference for SandBase. Use model bfl/flux-3/edit with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/bfl/flux-3/edit" +apiReferenceJson: "{\"title\":\"Flux 3 Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"FLUX 3 by Black Forest Labs edits up to 10 reference images from a text instruction, with strong prompt adherence and typography at 512px to 4K resolution tiers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-3/edit.\",\"default\":\"bfl/flux-3/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"Reference image URLs or data URIs, in image 1 through image 10 order. Each must be at least 256 pixels per dimension and at most 4 megapixels. The first controls auto aspect ratio.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution tier. 4k can take several minutes.\",\"default\":\"1k\",\"constraints\":\"Allowed values: 512sq, 768sq, 1k, 2k, 4k\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-3/edit\\\",\\n \\\"prompt\\\": \\\"A red fox leaping over a stream in a pine forest, low-angle wildlife photograph.\\\",\\n \\\"images\\\": [\\n \\\"https://storage.googleapis.com/falserverless/example_inputs/flux2_pro_edit_input.png\\\"\\n ],\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-3/edit\\\",\\n \\\"prompt\\\": \\\"A red fox leaping over a stream in a pine forest, low-angle wildlife photograph.\\\",\\n \\\"images\\\": [\\n \\\"https://storage.googleapis.com/Falserverless/example_inputs/flux2_pro_edit_input.png\\\"\\n ],\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-3/edit\\\",\\n \\\"prompt\\\": \\\"A red fox leaping over a stream in a pine forest, low-angle wildlife photograph.\\\",\\n \\\"images\\\": [\\n \\\"https://storage.googleapis.com/falserverless/example_inputs/flux2_pro_edit_input.png\\\"\\n ],\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-3/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Flux 3 Edit" + modelId: "bfl/flux-3/edit" + vendor: "BFL" + vendorSlug: "bfl" + modelSlug: "flux-3/edit" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-10-01T19:10:40.535Z" + capabilities: ["image-to-image"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/bfl/flux-3/text-to-image.md b/model-api-reference/image-generation/bfl/flux-3/text-to-image.md new file mode 100644 index 00000000..bf3efcd3 --- /dev/null +++ b/model-api-reference/image-generation/bfl/flux-3/text-to-image.md @@ -0,0 +1,21 @@ +--- +title: "Flux 3 Text to Image API Reference" +description: "Flux 3 Text to Image API reference for SandBase. Use model bfl/flux-3/text-to-image with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/bfl/flux-3/text-to-image" +apiReferenceJson: "{\"title\":\"Flux 3 Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"FLUX 3 by Black Forest Labs generates images from a text prompt, with strong prompt adherence and typography at 512px to 4K resolution tiers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-3/text-to-image.\",\"default\":\"bfl/flux-3/text-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution tier. 4k can take several minutes.\",\"default\":\"1k\",\"constraints\":\"Allowed values: 512sq, 768sq, 1k, 2k, 4k\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-3/text-to-image\\\",\\n \\\"prompt\\\": \\\"A red fox leaping over a stream in a pine forest, low-angle wildlife photograph.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-3/text-to-image\\\",\\n \\\"prompt\\\": \\\"A red fox leaping over a stream in a pine forest, low-angle wildlife photograph.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-3/text-to-image\\\",\\n \\\"prompt\\\": \\\"A red fox leaping over a stream in a pine forest, low-angle wildlife photograph.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-3/text-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Flux 3 Text to Image" + modelId: "bfl/flux-3/text-to-image" + vendor: "BFL" + vendorSlug: "bfl" + modelSlug: "flux-3/text-to-image" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-10-01T19:12:23.466Z" + capabilities: ["text-to-image"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/bfl/flux-control-lora-canny.md b/model-api-reference/image-generation/bfl/flux-control-lora-canny.md deleted file mode 100644 index 40627361..00000000 --- a/model-api-reference/image-generation/bfl/flux-control-lora-canny.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 [dev] Control LoRA Canny API Reference — BFL Lora Canny" -description: "FLUX.1 [dev] Control LoRA Canny API reference for SandBase. Use model bfl/flux-control-lora-canny with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-control-lora-canny" -apiReferenceJson: "{\"title\":\"FLUX.1 [dev] Control LoRA Canny\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux Control Lora Canny is BFL's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-control-lora-canny.\",\"default\":\"bfl/flux-control-lora-canny\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of image to use for image-to-image generation.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 0 to 35\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation. You can use any number of LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"},{\"name\":\"preprocess_depth\",\"type\":\"boolean\",\"required\":false,\"description\":\"If set to true, the input image will be preprocessed to extract depth information. This is useful for generating depth maps from images.\",\"default\":\"true\"},{\"name\":\"control_lora_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The image to use for control lora. This is used to control the style of the generated image.\"},{\"name\":\"control_lora_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the control lora.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-control-lora-canny\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-control-lora-canny\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-control-lora-canny\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-control-lora-canny\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 [dev] Control LoRA Canny" - modelId: "bfl/flux-control-lora-canny" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-control-lora-canny" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-02-11T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-control-lora-canny/image-to-image.md b/model-api-reference/image-generation/bfl/flux-control-lora-canny/image-to-image.md deleted file mode 100644 index b1640c7f..00000000 --- a/model-api-reference/image-generation/bfl/flux-control-lora-canny/image-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 [dev] Control LoRA Canny API Reference — BFL To Image" -description: "FLUX.1 [dev] Control LoRA Canny API reference for SandBase. Use model bfl/flux-control-lora-canny/image-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-control-lora-canny/image-to-image" -apiReferenceJson: "{\"title\":\"FLUX.1 [dev] Control LoRA Canny\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux Control Lora Canny by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-control-lora-canny/image-to-image.\",\"default\":\"bfl/flux-control-lora-canny/image-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of image to use for inpainting. or img2img\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength to use for inpainting/image-to-image. Only used if the image_url is provided. 1.0 is completely remakes the image while 0.0 preserves the original.\",\"default\":\"0.85\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"control_lora_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the control lora.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"control_lora_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The image to use for control lora. This is used to control the style of the generated image.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"3.5\",\"constraints\":\"Range: 0 to 35\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-control-lora-canny/image-to-image\\\",\\n \\\"prompt\\\": \\\"A photo of a lion sitting on a stone bench\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/CompVis/latent-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-control-lora-canny/image-to-image\\\",\\n \\\"prompt\\\": \\\"A photo of a lion sitting on a stone bench\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/CompVis/latent-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-control-lora-canny/image-to-image\\\",\\n \\\"prompt\\\": \\\"A photo of a lion sitting on a stone bench\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/CompVis/latent-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-control-lora-canny/image-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 [dev] Control LoRA Canny" - modelId: "bfl/flux-control-lora-canny/image-to-image" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-control-lora-canny/image-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-02-11T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-control-lora-depth.md b/model-api-reference/image-generation/bfl/flux-control-lora-depth.md deleted file mode 100644 index 4af724bf..00000000 --- a/model-api-reference/image-generation/bfl/flux-control-lora-depth.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 [dev] Control LoRA Depth API Reference — BFL Lora Depth" -description: "FLUX.1 [dev] Control LoRA Depth API reference for SandBase. Use model bfl/flux-control-lora-depth with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-control-lora-depth" -apiReferenceJson: "{\"title\":\"FLUX.1 [dev] Control LoRA Depth\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux Control Lora Depth is BFL's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-control-lora-depth.\",\"default\":\"bfl/flux-control-lora-depth\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of image to use for image-to-image generation.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 0 to 35\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"preprocess_depth\",\"type\":\"boolean\",\"required\":false,\"description\":\"If set to true, the input image will be preprocessed to extract depth information. This is useful for generating depth maps from images.\",\"default\":\"true\"},{\"name\":\"control_lora_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The image to use for control lora. This is used to control the style of the generated image.\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation. You can use any number of LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"},{\"name\":\"control_lora_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the control lora.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-control-lora-depth\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-control-lora-depth\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-control-lora-depth\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-control-lora-depth\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 [dev] Control LoRA Depth" - modelId: "bfl/flux-control-lora-depth" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-control-lora-depth" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-02-11T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-control-lora-depth/image-to-image.md b/model-api-reference/image-generation/bfl/flux-control-lora-depth/image-to-image.md deleted file mode 100644 index 4851d422..00000000 --- a/model-api-reference/image-generation/bfl/flux-control-lora-depth/image-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 [dev] Control LoRA Depth API Reference — BFL To Image" -description: "FLUX.1 [dev] Control LoRA Depth API reference for SandBase. Use model bfl/flux-control-lora-depth/image-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-control-lora-depth/image-to-image" -apiReferenceJson: "{\"title\":\"FLUX.1 [dev] Control LoRA Depth\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux Control Lora Depth by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-control-lora-depth/image-to-image.\",\"default\":\"bfl/flux-control-lora-depth/image-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of image to use for inpainting. or img2img\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 0 to 35\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength to use for inpainting/image-to-image. Only used if the image_url is provided. 1.0 is completely remakes the image while 0.0 preserves the original.\",\"default\":\"0.85\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"control_lora_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the control lora.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation. You can use any number of LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"},{\"name\":\"control_lora_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The image to use for control lora. This is used to control the style of the generated image.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-control-lora-depth/image-to-image\\\",\\n \\\"prompt\\\": \\\"A photo of a lion sitting on a stone bench\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/CompVis/latent-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-control-lora-depth/image-to-image\\\",\\n \\\"prompt\\\": \\\"A photo of a lion sitting on a stone bench\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/CompVis/latent-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-control-lora-depth/image-to-image\\\",\\n \\\"prompt\\\": \\\"A photo of a lion sitting on a stone bench\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/CompVis/latent-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-control-lora-depth/image-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 [dev] Control LoRA Depth" - modelId: "bfl/flux-control-lora-depth/image-to-image" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-control-lora-depth/image-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-02-11T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-differential-diffusion.md b/model-api-reference/image-generation/bfl/flux-differential-diffusion.md deleted file mode 100644 index bfd830cd..00000000 --- a/model-api-reference/image-generation/bfl/flux-differential-diffusion.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 [dev] Differential Diffusion API Reference" -description: "FLUX.1 [dev] Differential Diffusion API reference for SandBase. Use model bfl/flux-differential-diffusion with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-differential-diffusion" -apiReferenceJson: "{\"title\":\"FLUX.1 [dev] Differential Diffusion\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux Differential Diffusion is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-differential-diffusion.\",\"default\":\"bfl/flux-differential-diffusion\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of image to use as initial image.\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength to use for image-to-image. 1.0 is completely remakes the image while 0.0 preserves the original.\",\"default\":\"0.85\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"change_map_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of change map.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"3.5\",\"constraints\":\"Range: 0 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-differential-diffusion\\\",\\n \\\"prompt\\\": \\\"Tree of life under the sea, ethereal, glittering, lens flares, cinematic lighting, artwork by Anna Dittmann & Carne Griffiths, 8k, unreal engine 5, hightly detailed, intricate detailed.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-differential-diffusion/input_image_1.jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-differential-diffusion\\\",\\n \\\"prompt\\\": \\\"Tree of life under the sea, ethereal, glittering, lens flares, cinematic lighting, artwork by Anna Dittmann & Carne Griffiths, 8k, unreal engine 5, hightly detailed, intricate detailed.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-differential-diffusion/input_image_1.jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-differential-diffusion\\\",\\n \\\"prompt\\\": \\\"Tree of life under the sea, ethereal, glittering, lens flares, cinematic lighting, artwork by Anna Dittmann & Carne Griffiths, 8k, unreal engine 5, hightly detailed, intricate detailed.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-differential-diffusion/input_image_1.jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-differential-diffusion\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 [dev] Differential Diffusion" - modelId: "bfl/flux-differential-diffusion" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-differential-diffusion" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-11-06T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-general.md b/model-api-reference/image-generation/bfl/flux-general.md deleted file mode 100644 index 968b708e..00000000 --- a/model-api-reference/image-generation/bfl/flux-general.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 [dev] with Controlnets and Loras — zeim8b API" -description: "FLUX.1 [dev] with Controlnets and Loras API reference for SandBase. Use model bfl/flux-general with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-general" -apiReferenceJson: "{\"title\":\"FLUX.1 [dev] with Controlnets and Loras\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux General by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-general.\",\"default\":\"bfl/flux-general\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"},{\"name\":\"nag_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale for NAG. Higher values will result in a image that is more distant to the negative prompt.\",\"default\":\"3\",\"constraints\":\"Maximum: 10\"},{\"name\":\"real_cfg_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 0 to 5\"},{\"name\":\"reference_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Strength of reference_only generation. Only used if a reference image is provided.\",\"default\":\"0.65\",\"constraints\":\"Range: -3 to 3\"},{\"name\":\"control_loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation which use a control image. You can use any number of LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"},{\"name\":\"easycontrols\",\"type\":\"array\",\"required\":false,\"description\":\"EasyControl Inputs to use for image generation.\",\"default\":\"\"},{\"name\":\"nag_tau\",\"type\":\"number\",\"required\":false,\"description\":\"The tau for NAG. Controls the normalization of the hidden state. Higher values will result in a less aggressive normalization, but may also lead to unexpected changes with respect to the original image. Not recommended to change this value.\",\"default\":\"2.5\"},{\"name\":\"base_shift\",\"type\":\"number\",\"required\":false,\"description\":\"Base shift for the scheduled timesteps\",\"default\":\"0.5\",\"constraints\":\"Range: 0.01 to 5\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation. You can use any number of LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"},{\"name\":\"reference_end\",\"type\":\"number\",\"required\":false,\"description\":\"The percentage of the total timesteps when the reference guidance is to be ended.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"nag_end\",\"type\":\"number\",\"required\":false,\"description\":\"The proportion of steps to apply NAG. After the specified proportion of steps has been iterated, the remaining steps will use original attention processors in FLUX.\",\"default\":\"0.25\",\"constraints\":\"Maximum: 1\"},{\"name\":\"reference_start\",\"type\":\"number\",\"required\":false,\"description\":\"The percentage of the total timesteps when the reference guidance is to bestarted.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"controlnets\",\"type\":\"array\",\"required\":false,\"description\":\"The controlnets to use for the image generation. Only one controlnet is supported at the moment.\",\"default\":\"\"},{\"name\":\"use_cfg_zero\",\"type\":\"boolean\",\"required\":false,\"description\":\"Uses CFG-zero init sampling as in https://arxiv.org/abs/2503.18886.\",\"default\":\"false\"},{\"name\":\"use_real_cfg\",\"type\":\"boolean\",\"required\":false,\"description\":\"Uses classical CFG as in SD1.5, SDXL, etc. Increases generation times and price when set to be true. If using XLabs IP-Adapter v1, this will be turned on!.\",\"default\":\"false\"},{\"name\":\"ip_adapters\",\"type\":\"array\",\"required\":false,\"description\":\"IP-Adapter to use for image generation.\",\"default\":\"\"},{\"name\":\"scheduler\",\"type\":\"string\",\"required\":false,\"description\":\"Scheduler for the denoising process.\",\"default\":\"euler\",\"constraints\":\"Allowed values: euler, dpmpp_2m\"},{\"name\":\"controlnet_unions\",\"type\":\"array\",\"required\":false,\"description\":\"The controlnet unions to use for the image generation. Only one controlnet is supported at the moment.\",\"default\":\"\"},{\"name\":\"reference_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of Image for Reference-Only\"},{\"name\":\"sigma_schedule\",\"type\":\"string\",\"required\":false,\"description\":\"Sigmas schedule for the denoising process.\"},{\"name\":\"nag_alpha\",\"type\":\"number\",\"required\":false,\"description\":\"The alpha value for NAG. This value is used as a final weighting factor for steering the normalized guidance (positive and negative prompts) in the direction of the positive prompt. Higher values will result in less steering on the normalized guidance where lower values will result in considering the positive prompt guidance more.\",\"default\":\"0.25\",\"constraints\":\"Maximum: 1\"},{\"name\":\"max_shift\",\"type\":\"number\",\"required\":false,\"description\":\"Max shift for the scheduled timesteps\",\"default\":\"1.15\",\"constraints\":\"Range: 0.01 to 5\"},{\"name\":\"fill_image\",\"type\":\"string\",\"required\":false,\"description\":\"Use an image input to influence the generation. Can be used to fill images in masked areas.\"},{\"name\":\"use_beta_schedule\",\"type\":\"boolean\",\"required\":false,\"description\":\"Specifies whether beta sigmas ought to be used.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-general\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-general\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-general\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-general\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 [dev] with Controlnets and Loras" - modelId: "bfl/flux-general" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-general" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-08-21T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-general/differential-diffusion.md b/model-api-reference/image-generation/bfl/flux-general/differential-diffusion.md deleted file mode 100644 index 784a5b31..00000000 --- a/model-api-reference/image-generation/bfl/flux-general/differential-diffusion.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 [dev] with Controlnets and Loras — bmv6h5 API" -description: "FLUX.1 [dev] with Controlnets and Loras API reference for SandBase. Use model bfl/flux-general/differential-diffusion with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-general/differential-diffusion" -apiReferenceJson: "{\"title\":\"FLUX.1 [dev] with Controlnets and Loras\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux General Differential Diffusion is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-general/differential-diffusion.\",\"default\":\"bfl/flux-general/differential-diffusion\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of image to use as initial image.\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength to use for differential diffusion. 1.0 is completely remakes the image while 0.0 preserves the original.\",\"default\":\"0.85\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"real_cfg_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 0 to 5\"},{\"name\":\"nag_end\",\"type\":\"number\",\"required\":false,\"description\":\"The proportion of steps to apply NAG. After the specified proportion of steps has been iterated, the remaining steps will use original attention processors in FLUX.\",\"default\":\"0.25\",\"constraints\":\"Maximum: 1\"},{\"name\":\"change_map_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of change map.\"},{\"name\":\"use_beta_schedule\",\"type\":\"boolean\",\"required\":false,\"description\":\"Specifies whether beta sigmas ought to be used.\",\"default\":\"false\"},{\"name\":\"reference_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Strength of reference_only generation. Only used if a reference image is provided.\",\"default\":\"0.65\",\"constraints\":\"Range: -3 to 3\"},{\"name\":\"nag_tau\",\"type\":\"number\",\"required\":false,\"description\":\"The tau for NAG. Controls the normalization of the hidden state. Higher values will result in a less aggressive normalization, but may also lead to unexpected changes with respect to the original image. Not recommended to change this value.\",\"default\":\"2.5\"},{\"name\":\"max_shift\",\"type\":\"number\",\"required\":false,\"description\":\"Max shift for the scheduled timesteps\",\"default\":\"1.15\",\"constraints\":\"Range: 0.01 to 5\"},{\"name\":\"nag_alpha\",\"type\":\"number\",\"required\":false,\"description\":\"The alpha value for NAG. This value is used as a final weighting factor for steering the normalized guidance (positive and negative prompts) in the direction of the positive prompt. Higher values will result in less steering on the normalized guidance where lower values will result in considering the positive prompt guidance more.\",\"default\":\"0.25\",\"constraints\":\"Maximum: 1\"},{\"name\":\"base_shift\",\"type\":\"number\",\"required\":false,\"description\":\"Base shift for the scheduled timesteps\",\"default\":\"0.5\",\"constraints\":\"Range: 0.01 to 5\"},{\"name\":\"nag_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale for NAG. Higher values will result in a image that is more distant to the negative prompt.\",\"default\":\"3\",\"constraints\":\"Maximum: 10\"},{\"name\":\"reference_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of Image for Reference-Only\"},{\"name\":\"control_loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation which use a control image. You can use any number of LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"},{\"name\":\"use_real_cfg\",\"type\":\"boolean\",\"required\":false,\"description\":\"Uses classical CFG as in SD1.5, SDXL, etc. Increases generation times and price when set to be true. If using XLabs IP-Adapter v1, this will be turned on!.\",\"default\":\"false\"},{\"name\":\"fill_image\",\"type\":\"string\",\"required\":false,\"description\":\"Use an image input to influence the generation. Can be used to fill images in masked areas.\"},{\"name\":\"sigma_schedule\",\"type\":\"string\",\"required\":false,\"description\":\"Sigmas schedule for the denoising process.\"},{\"name\":\"reference_end\",\"type\":\"number\",\"required\":false,\"description\":\"The percentage of the total timesteps when the reference guidance is to be ended.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"ip_adapters\",\"type\":\"array\",\"required\":false,\"description\":\"IP-Adapter to use for image generation.\",\"default\":\"\"},{\"name\":\"easycontrols\",\"type\":\"array\",\"required\":false,\"description\":\"EasyControl Inputs to use for image generation.\",\"default\":\"\"},{\"name\":\"reference_start\",\"type\":\"number\",\"required\":false,\"description\":\"The percentage of the total timesteps when the reference guidance is to bestarted.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"3.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-general/differential-diffusion\\\",\\n \\\"prompt\\\": \\\"Tree of life under the sea, ethereal, glittering, lens flares, cinematic lighting, artwork by Anna Dittmann & Carne Griffiths, 8k, unreal engine 5, hightly detailed, intricate detailed.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-general/differential-diffusion/input_image_1.jpeg\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-general/differential-diffusion\\\",\\n \\\"prompt\\\": \\\"Tree of life under the sea, ethereal, glittering, lens flares, cinematic lighting, artwork by Anna Dittmann & Carne Griffiths, 8k, unreal engine 5, hightly detailed, intricate detailed.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-general/differential-diffusion/input_image_1.jpeg\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-general/differential-diffusion\\\",\\n \\\"prompt\\\": \\\"Tree of life under the sea, ethereal, glittering, lens flares, cinematic lighting, artwork by Anna Dittmann & Carne Griffiths, 8k, unreal engine 5, hightly detailed, intricate detailed.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-general/differential-diffusion/input_image_1.jpeg\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-general/differential-diffusion\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 [dev] with Controlnets and Loras" - modelId: "bfl/flux-general/differential-diffusion" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-general/differential-diffusion" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-08-13T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-general/image-to-image.md b/model-api-reference/image-generation/bfl/flux-general/image-to-image.md deleted file mode 100644 index 2257cbc1..00000000 --- a/model-api-reference/image-generation/bfl/flux-general/image-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 [dev] with Controlnets and Loras API Reference — BFL Image" -description: "FLUX.1 [dev] with Controlnets and Loras API reference for SandBase. Use model bfl/flux-general/image-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-general/image-to-image" -apiReferenceJson: "{\"title\":\"FLUX.1 [dev] with Controlnets and Loras\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux General is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-general/image-to-image.\",\"default\":\"bfl/flux-general/image-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of image to use for inpainting. or img2img\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength to use for inpainting/image-to-image. Only used if the image_url is provided. 1.0 is completely remakes the image while 0.0 preserves the original.\",\"default\":\"0.85\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"base_shift\",\"type\":\"number\",\"required\":false,\"description\":\"Base shift for the scheduled timesteps\",\"default\":\"0.5\",\"constraints\":\"Range: 0.01 to 5\"},{\"name\":\"use_cfg_zero\",\"type\":\"boolean\",\"required\":false,\"description\":\"Uses CFG-zero init sampling as in https://arxiv.org/abs/2503.18886.\",\"default\":\"false\"},{\"name\":\"sigma_schedule\",\"type\":\"string\",\"required\":false,\"description\":\"Sigmas schedule for the denoising process.\"},{\"name\":\"nag_tau\",\"type\":\"number\",\"required\":false,\"description\":\"The tau for NAG. Controls the normalization of the hidden state. Higher values will result in a less aggressive normalization, but may also lead to unexpected changes with respect to the original image. Not recommended to change this value.\",\"default\":\"2.5\"},{\"name\":\"control_loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation which use a control image. You can use any number of LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"},{\"name\":\"reference_end\",\"type\":\"number\",\"required\":false,\"description\":\"The percentage of the total timesteps when the reference guidance is to be ended.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"real_cfg_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 0 to 5\"},{\"name\":\"controlnet_unions\",\"type\":\"array\",\"required\":false,\"description\":\"The controlnet unions to use for the image generation. Only one controlnet is supported at the moment.\",\"default\":\"\"},{\"name\":\"fill_image\",\"type\":\"string\",\"required\":false,\"description\":\"Use an image input to influence the generation. Can be used to fill images in masked areas.\"},{\"name\":\"nag_alpha\",\"type\":\"number\",\"required\":false,\"description\":\"The alpha value for NAG. This value is used as a final weighting factor for steering the normalized guidance (positive and negative prompts) in the direction of the positive prompt. Higher values will result in less steering on the normalized guidance where lower values will result in considering the positive prompt guidance more.\",\"default\":\"0.25\",\"constraints\":\"Maximum: 1\"},{\"name\":\"use_beta_schedule\",\"type\":\"boolean\",\"required\":false,\"description\":\"Specifies whether beta sigmas ought to be used.\",\"default\":\"false\"},{\"name\":\"scheduler\",\"type\":\"string\",\"required\":false,\"description\":\"Scheduler for the denoising process.\",\"default\":\"euler\",\"constraints\":\"Allowed values: euler, dpmpp_2m\"},{\"name\":\"reference_start\",\"type\":\"number\",\"required\":false,\"description\":\"The percentage of the total timesteps when the reference guidance is to bestarted.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"reference_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of Image for Reference-Only\"},{\"name\":\"max_shift\",\"type\":\"number\",\"required\":false,\"description\":\"Max shift for the scheduled timesteps\",\"default\":\"1.15\",\"constraints\":\"Range: 0.01 to 5\"},{\"name\":\"ip_adapters\",\"type\":\"array\",\"required\":false,\"description\":\"IP-Adapter to use for image generation.\",\"default\":\"\"},{\"name\":\"nag_end\",\"type\":\"number\",\"required\":false,\"description\":\"The proportion of steps to apply NAG. After the specified proportion of steps has been iterated, the remaining steps will use original attention processors in FLUX.\",\"default\":\"0.25\",\"constraints\":\"Maximum: 1\"},{\"name\":\"easycontrols\",\"type\":\"array\",\"required\":false,\"description\":\"EasyControl Inputs to use for image generation.\",\"default\":\"\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation. You can use any number of LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"},{\"name\":\"nag_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale for NAG. Higher values will result in a image that is more distant to the negative prompt.\",\"default\":\"3\",\"constraints\":\"Maximum: 10\"},{\"name\":\"controlnets\",\"type\":\"array\",\"required\":false,\"description\":\"The controlnets to use for the image generation. Only one controlnet is supported at the moment.\",\"default\":\"\"},{\"name\":\"use_real_cfg\",\"type\":\"boolean\",\"required\":false,\"description\":\"Uses classical CFG as in SD1.5, SDXL, etc. Increases generation times and price when set to be true. If using XLabs IP-Adapter v1, this will be turned on!.\",\"default\":\"false\"},{\"name\":\"reference_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Strength of reference_only generation. Only used if a reference image is provided.\",\"default\":\"0.65\",\"constraints\":\"Range: -3 to 3\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-general/image-to-image\\\",\\n \\\"prompt\\\": \\\"A photo of a lion sitting on a stone bench\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/CompVis/latent-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-general/image-to-image\\\",\\n \\\"prompt\\\": \\\"A photo of a lion sitting on a stone bench\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/CompVis/latent-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-general/image-to-image\\\",\\n \\\"prompt\\\": \\\"A photo of a lion sitting on a stone bench\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/CompVis/latent-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-general/image-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 [dev] with Controlnets and Loras" - modelId: "bfl/flux-general/image-to-image" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-general/image-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-08-14T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-general/inpainting.md b/model-api-reference/image-generation/bfl/flux-general/inpainting.md deleted file mode 100644 index 0a4f749e..00000000 --- a/model-api-reference/image-generation/bfl/flux-general/inpainting.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 [dev] with Controlnets and Loras — wipk6l API" -description: "FLUX.1 [dev] with Controlnets and Loras API reference for SandBase. Use model bfl/flux-general/inpainting with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-general/inpainting" -apiReferenceJson: "{\"title\":\"FLUX.1 [dev] with Controlnets and Loras\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux General Inpainting is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-general/inpainting.\",\"default\":\"bfl/flux-general/inpainting\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of image to use for inpainting. or img2img\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"The mask to area to Inpaint in.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength to use for inpainting/image-to-image. Only used if the image_url is provided. 1.0 is completely remakes the image while 0.0 preserves the original.\",\"default\":\"0.85\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"easycontrols\",\"type\":\"array\",\"required\":false,\"description\":\"EasyControl Inputs to use for image generation.\",\"default\":\"\"},{\"name\":\"sigma_schedule\",\"type\":\"string\",\"required\":false,\"description\":\"Sigmas schedule for the denoising process.\"},{\"name\":\"nag_tau\",\"type\":\"number\",\"required\":false,\"description\":\"The tau for NAG. Controls the normalization of the hidden state. Higher values will result in a less aggressive normalization, but may also lead to unexpected changes with respect to the original image. Not recommended to change this value.\",\"default\":\"2.5\"},{\"name\":\"nag_alpha\",\"type\":\"number\",\"required\":false,\"description\":\"The alpha value for NAG. This value is used as a final weighting factor for steering the normalized guidance (positive and negative prompts) in the direction of the positive prompt. Higher values will result in less steering on the normalized guidance where lower values will result in considering the positive prompt guidance more.\",\"default\":\"0.25\",\"constraints\":\"Maximum: 1\"},{\"name\":\"ip_adapters\",\"type\":\"array\",\"required\":false,\"description\":\"IP-Adapter to use for image generation.\",\"default\":\"\"},{\"name\":\"use_beta_schedule\",\"type\":\"boolean\",\"required\":false,\"description\":\"Specifies whether beta sigmas ought to be used.\",\"default\":\"false\"},{\"name\":\"reference_end\",\"type\":\"number\",\"required\":false,\"description\":\"The percentage of the total timesteps when the reference guidance is to be ended.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"control_loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation which use a control image. You can use any number of LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"},{\"name\":\"controlnet_unions\",\"type\":\"array\",\"required\":false,\"description\":\"The controlnet unions to use for the image generation. Only one controlnet is supported at the moment.\",\"default\":\"\"},{\"name\":\"controlnets\",\"type\":\"array\",\"required\":false,\"description\":\"The controlnets to use for the image generation. Only one controlnet is supported at the moment.\",\"default\":\"\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation. You can use any number of LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"},{\"name\":\"reference_start\",\"type\":\"number\",\"required\":false,\"description\":\"The percentage of the total timesteps when the reference guidance is to bestarted.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"reference_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Strength of reference_only generation. Only used if a reference image is provided.\",\"default\":\"0.65\",\"constraints\":\"Range: -3 to 3\"},{\"name\":\"base_shift\",\"type\":\"number\",\"required\":false,\"description\":\"Base shift for the scheduled timesteps\",\"default\":\"0.5\",\"constraints\":\"Range: 0.01 to 5\"},{\"name\":\"reference_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of Image for Reference-Only\"},{\"name\":\"nag_end\",\"type\":\"number\",\"required\":false,\"description\":\"The proportion of steps to apply NAG. After the specified proportion of steps has been iterated, the remaining steps will use original attention processors in FLUX.\",\"default\":\"0.25\",\"constraints\":\"Maximum: 1\"},{\"name\":\"real_cfg_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 0 to 5\"},{\"name\":\"max_shift\",\"type\":\"number\",\"required\":false,\"description\":\"Max shift for the scheduled timesteps\",\"default\":\"1.15\",\"constraints\":\"Range: 0.01 to 5\"},{\"name\":\"nag_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale for NAG. Higher values will result in a image that is more distant to the negative prompt.\",\"default\":\"3\",\"constraints\":\"Maximum: 10\"},{\"name\":\"use_cfg_zero\",\"type\":\"boolean\",\"required\":false,\"description\":\"Uses CFG-zero init sampling as in https://arxiv.org/abs/2503.18886.\",\"default\":\"false\"},{\"name\":\"fill_image\",\"type\":\"string\",\"required\":false,\"description\":\"Use an image input to influence the generation. Can be used to fill images in masked areas.\"},{\"name\":\"scheduler\",\"type\":\"string\",\"required\":false,\"description\":\"Scheduler for the denoising process.\",\"default\":\"euler\",\"constraints\":\"Allowed values: euler, dpmpp_2m\"},{\"name\":\"use_real_cfg\",\"type\":\"boolean\",\"required\":false,\"description\":\"Uses classical CFG as in SD1.5, SDXL, etc. Increases generation times and price when set to be true. If using XLabs IP-Adapter v1, this will be turned on!.\",\"default\":\"false\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-general/inpainting\\\",\\n \\\"prompt\\\": \\\"A photo of a lion sitting on a stone bench\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/CompVis/latent-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-general/inpainting\\\",\\n \\\"prompt\\\": \\\"A photo of a lion sitting on a stone bench\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/CompVis/latent-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-general/inpainting\\\",\\n \\\"prompt\\\": \\\"A photo of a lion sitting on a stone bench\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/CompVis/latent-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-general/inpainting\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 [dev] with Controlnets and Loras" - modelId: "bfl/flux-general/inpainting" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-general/inpainting" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-08-14T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-general/rf-inversion.md b/model-api-reference/image-generation/bfl/flux-general/rf-inversion.md deleted file mode 100644 index 4b3b475d..00000000 --- a/model-api-reference/image-generation/bfl/flux-general/rf-inversion.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 [dev] with Controlnets and Loras — 97ryrm API" -description: "FLUX.1 [dev] with Controlnets and Loras API reference for SandBase. Use model bfl/flux-general/rf-inversion with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-general/rf-inversion" -apiReferenceJson: "{\"title\":\"FLUX.1 [dev] with Controlnets and Loras\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux General Rf Inversion is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-general/rf-inversion.\",\"default\":\"bfl/flux-general/rf-inversion\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to edit the image with\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of image to be edited\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"sigma_schedule\",\"type\":\"string\",\"required\":false,\"description\":\"Sigmas schedule for the denoising process.\"},{\"name\":\"control_loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation which use a control image. You can use any number of LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"},{\"name\":\"use_beta_schedule\",\"type\":\"boolean\",\"required\":false,\"description\":\"Specifies whether beta sigmas ought to be used.\",\"default\":\"false\"},{\"name\":\"reference_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of Image for Reference-Only\"},{\"name\":\"reverse_guidance_end\",\"type\":\"integer\",\"required\":false,\"description\":\"Timestep to stop guidance during reverse process.\",\"default\":\"8\"},{\"name\":\"nag_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale for NAG. Higher values will result in a image that is more distant to the negative prompt.\",\"default\":\"3\",\"constraints\":\"Maximum: 10\"},{\"name\":\"controller_guidance_forward\",\"type\":\"number\",\"required\":false,\"description\":\"The controller guidance (gamma) used in the creation of structured noise.\",\"default\":\"0.6\",\"constraints\":\"Range: 0.01 to 3\"},{\"name\":\"nag_end\",\"type\":\"number\",\"required\":false,\"description\":\"The proportion of steps to apply NAG. After the specified proportion of steps has been iterated, the remaining steps will use original attention processors in FLUX.\",\"default\":\"0.25\",\"constraints\":\"Maximum: 1\"},{\"name\":\"reference_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Strength of reference_only generation. Only used if a reference image is provided.\",\"default\":\"0.65\",\"constraints\":\"Range: -3 to 3\"},{\"name\":\"nag_tau\",\"type\":\"number\",\"required\":false,\"description\":\"The tau for NAG. Controls the normalization of the hidden state. Higher values will result in a less aggressive normalization, but may also lead to unexpected changes with respect to the original image. Not recommended to change this value.\",\"default\":\"2.5\"},{\"name\":\"reference_start\",\"type\":\"number\",\"required\":false,\"description\":\"The percentage of the total timesteps when the reference guidance is to bestarted.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"reverse_guidance_start\",\"type\":\"integer\",\"required\":false,\"description\":\"Timestep to start guidance during reverse process.\",\"default\":\"0\"},{\"name\":\"reference_end\",\"type\":\"number\",\"required\":false,\"description\":\"The percentage of the total timesteps when the reference guidance is to be ended.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"max_shift\",\"type\":\"number\",\"required\":false,\"description\":\"Max shift for the scheduled timesteps\",\"default\":\"1.15\",\"constraints\":\"Range: 0.01 to 5\"},{\"name\":\"reverse_guidance_schedule\",\"type\":\"string\",\"required\":false,\"description\":\"Scheduler for applying reverse guidance.\",\"default\":\"constant\",\"constraints\":\"Allowed values: constant, linear_increase, linear_decrease\"},{\"name\":\"base_shift\",\"type\":\"number\",\"required\":false,\"description\":\"Base shift for the scheduled timesteps\",\"default\":\"0.5\",\"constraints\":\"Range: 0.01 to 5\"},{\"name\":\"nag_alpha\",\"type\":\"number\",\"required\":false,\"description\":\"The alpha value for NAG. This value is used as a final weighting factor for steering the normalized guidance (positive and negative prompts) in the direction of the positive prompt. Higher values will result in less steering on the normalized guidance where lower values will result in considering the positive prompt guidance more.\",\"default\":\"0.25\",\"constraints\":\"Maximum: 1\"},{\"name\":\"fill_image\",\"type\":\"string\",\"required\":false,\"description\":\"Use an image input to influence the generation. Can be used to fill images in masked areas.\"},{\"name\":\"easycontrols\",\"type\":\"array\",\"required\":false,\"description\":\"EasyControl Inputs to use for image generation.\",\"default\":\"\"},{\"name\":\"controller_guidance_reverse\",\"type\":\"number\",\"required\":false,\"description\":\"The controller guidance (eta) used in the denoising process.Using values closer to 1 will result in an image closer to input.\",\"default\":\"0.75\",\"constraints\":\"Range: 0.01 to 3\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"3.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-general/rf-inversion\\\",\\n \\\"prompt\\\": \\\"Wearing glasses\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-general/rf-inversion/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-general/rf-inversion\\\",\\n \\\"prompt\\\": \\\"Wearing glasses\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-general/rf-inversion/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-general/rf-inversion\\\",\\n \\\"prompt\\\": \\\"Wearing glasses\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-general/rf-inversion/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-general/rf-inversion\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 [dev] with Controlnets and Loras" - modelId: "bfl/flux-general/rf-inversion" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-general/rf-inversion" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-09-17T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-kontext-lora.md b/model-api-reference/image-generation/bfl/flux-kontext-lora.md deleted file mode 100644 index df929724..00000000 --- a/model-api-reference/image-generation/bfl/flux-kontext-lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux Kontext Lora API Reference — BFL Flux Kontext Lora API" -description: "Flux Kontext Lora API reference for SandBase. Use model bfl/flux-kontext-lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-kontext-lora" -apiReferenceJson: "{\"title\":\"Flux Kontext Lora\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux Kontext Lora is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-kontext-lora.\",\"default\":\"bfl/flux-kontext-lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to edit the image.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to edit. Max width: 14142px, Max height: 14142px, Timeout: 20s\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"2.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"30\",\"constraints\":\"Range: 10 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"resolution_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Determines how the output resolution is set for image editing. - `auto`: The model selects an optimal resolution from a predefined set that best matches the input image's aspect ratio. This is the recommended setting for most use cases as it's what the model was trained on. - `match_input`: The model will attempt to use the same resolution as the input image. The resolution will be adjusted to be compatible with the model's requirements (e.g. dimensions must be multiples of 16 and within supported limits). Apart from these, a few aspect ratios are also supported.\",\"default\":\"match_input\",\"constraints\":\"Allowed values: auto, match_input, 1:1, 16:9, 21:9, 3:2, 2:3, 4:5, 5:4, 3:4, 4:3, 9:16, 9:21\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation. You can use any number of LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-kontext-lora\\\",\\n \\\"prompt\\\": \\\"change the setting to a day time, add a lot of people walking the sidewalk while maintaining the same style of the painting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-kontext-lora/input_image_0.webp\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-kontext-lora\\\",\\n \\\"prompt\\\": \\\"change the setting to a day time, add a lot of people walking the sidewalk while maintaining the same style of the painting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-kontext-lora/input_image_0.webp\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-kontext-lora\\\",\\n \\\"prompt\\\": \\\"change the setting to a day time, add a lot of people walking the sidewalk while maintaining the same style of the painting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-kontext-lora/input_image_0.webp\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-kontext-lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux Kontext Lora" - modelId: "bfl/flux-kontext-lora" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-kontext-lora" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-25T21:13:19.794Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-kontext-lora/inpaint.md b/model-api-reference/image-generation/bfl/flux-kontext-lora/inpaint.md deleted file mode 100644 index d048d42c..00000000 --- a/model-api-reference/image-generation/bfl/flux-kontext-lora/inpaint.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux Kontext Lora API Reference — BFL Flux Kontext Lora / Inpaint" -description: "Flux Kontext Lora API reference for SandBase. Use model bfl/flux-kontext-lora/inpaint with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-kontext-lora/inpaint" -apiReferenceJson: "{\"title\":\"Flux Kontext Lora\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux Kontext Lora Inpaint is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-kontext-lora/inpaint.\",\"default\":\"bfl/flux-kontext-lora/inpaint\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt for the image to image task.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to be inpainted.\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the mask for inpainting.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"2.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"30\",\"constraints\":\"Range: 10 to 50\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the initial image. Higher strength values are better for this model.\",\"default\":\"0.88\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"reference_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the reference image for inpainting.\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation. You can use any number of LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-kontext-lora/inpaint\\\",\\n \\\"prompt\\\": \\\"A football lying on a field.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-kontext-lora/inpaint/input_image_1.jpeg\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-kontext-lora/inpaint\\\",\\n \\\"prompt\\\": \\\"A football lying on a field.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-kontext-lora/inpaint/input_image_1.jpeg\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-kontext-lora/inpaint\\\",\\n \\\"prompt\\\": \\\"A football lying on a field.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-kontext-lora/inpaint/input_image_1.jpeg\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-kontext-lora/inpaint\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux Kontext Lora" - modelId: "bfl/flux-kontext-lora/inpaint" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-kontext-lora/inpaint" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-07-29T16:56:50.213Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-kontext-lora/text-to-image.md b/model-api-reference/image-generation/bfl/flux-kontext-lora/text-to-image.md deleted file mode 100644 index d4751e63..00000000 --- a/model-api-reference/image-generation/bfl/flux-kontext-lora/text-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux Kontext Lora API Reference — BFL Lora / Text To Image" -description: "Flux Kontext Lora API reference for SandBase. Use model bfl/flux-kontext-lora/text-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-kontext-lora/text-to-image" -apiReferenceJson: "{\"title\":\"Flux Kontext Lora\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux Kontext Lora is BFL's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-kontext-lora/text-to-image.\",\"default\":\"bfl/flux-kontext-lora/text-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the image with\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"2.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"30\",\"constraints\":\"Range: 10 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation. You can use any number of LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-kontext-lora/text-to-image\\\",\\n \\\"prompt\\\": \\\"Mount Fuji with cherry blossoms in the foreground, clear sky, peaceful spring day, soft natural light, realistic landscape.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-kontext-lora/text-to-image\\\",\\n \\\"prompt\\\": \\\"Mount Fuji with cherry blossoms in the foreground, clear sky, peaceful spring day, soft natural light, realistic landscape.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-kontext-lora/text-to-image\\\",\\n \\\"prompt\\\": \\\"Mount Fuji with cherry blossoms in the foreground, clear sky, peaceful spring day, soft natural light, realistic landscape.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-kontext-lora/text-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux Kontext Lora" - modelId: "bfl/flux-kontext-lora/text-to-image" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-kontext-lora/text-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-25T21:15:54.503Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-krea-lora.md b/model-api-reference/image-generation/bfl/flux-krea-lora.md deleted file mode 100644 index 0db594e3..00000000 --- a/model-api-reference/image-generation/bfl/flux-krea-lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 Krea [dev] with LoRAs API Reference — BFL Flux Krea Lora" -description: "FLUX.1 Krea [dev] with LoRAs API reference for SandBase. Use model bfl/flux-krea-lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-krea-lora" -apiReferenceJson: "{\"title\":\"FLUX.1 Krea [dev] with LoRAs\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux Krea Lora by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-krea-lora.\",\"default\":\"bfl/flux-krea-lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 0 to 35\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation. You can use any number of LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-krea-lora\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-krea-lora\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-krea-lora\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-krea-lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 Krea [dev] with LoRAs" - modelId: "bfl/flux-krea-lora" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-krea-lora" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-01T23:35:24.369Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-krea-lora/image-to-image.md b/model-api-reference/image-generation/bfl/flux-krea-lora/image-to-image.md deleted file mode 100644 index da5e7409..00000000 --- a/model-api-reference/image-generation/bfl/flux-krea-lora/image-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 Krea [dev] with LoRAs API Reference — BFL / Image To Image" -description: "FLUX.1 Krea [dev] with LoRAs API reference for SandBase. Use model bfl/flux-krea-lora/image-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-krea-lora/image-to-image" -apiReferenceJson: "{\"title\":\"FLUX.1 Krea [dev] with LoRAs\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux Krea Lora is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-krea-lora/image-to-image.\",\"default\":\"bfl/flux-krea-lora/image-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of image to use for inpainting. or img2img\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 0 to 35\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength to use for inpainting/image-to-image. Only used if the image_url is provided. 1.0 is completely remakes the image while 0.0 preserves the original.\",\"default\":\"0.85\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation. You can use any number of LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-krea-lora/image-to-image\\\",\\n \\\"prompt\\\": \\\"A photo of a lion sitting on a stone bench\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-krea-lora/image-to-image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-krea-lora/image-to-image\\\",\\n \\\"prompt\\\": \\\"A photo of a lion sitting on a stone bench\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-krea-lora/image-to-image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-krea-lora/image-to-image\\\",\\n \\\"prompt\\\": \\\"A photo of a lion sitting on a stone bench\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-krea-lora/image-to-image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-krea-lora/image-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 Krea [dev] with LoRAs" - modelId: "bfl/flux-krea-lora/image-to-image" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-krea-lora/image-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-01T23:32:55.146Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-krea-lora/inpainting.md b/model-api-reference/image-generation/bfl/flux-krea-lora/inpainting.md deleted file mode 100644 index 04f5bbfd..00000000 --- a/model-api-reference/image-generation/bfl/flux-krea-lora/inpainting.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 Krea [dev] Inpainting with LoRAs API Reference" -description: "FLUX.1 Krea [dev] Inpainting with LoRAs API reference for SandBase. Use model bfl/flux-krea-lora/inpainting with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-krea-lora/inpainting" -apiReferenceJson: "{\"title\":\"FLUX.1 Krea [dev] Inpainting with LoRAs\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux Krea Lora Inpainting is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-krea-lora/inpainting.\",\"default\":\"bfl/flux-krea-lora/inpainting\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of image to use for inpainting. or img2img\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"The mask to area to Inpaint in.\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength to use for inpainting/image-to-image. Only used if the image_url is provided. 1.0 is completely remakes the image while 0.0 preserves the original.\",\"default\":\"0.85\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"3.5\",\"constraints\":\"Range: 0 to 35\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-krea-lora/inpainting\\\",\\n \\\"prompt\\\": \\\"A photo of a lion sitting on a stone bench\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-krea-lora/inpainting/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-krea-lora/inpainting\\\",\\n \\\"prompt\\\": \\\"A photo of a lion sitting on a stone bench\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-krea-lora/inpainting/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-krea-lora/inpainting\\\",\\n \\\"prompt\\\": \\\"A photo of a lion sitting on a stone bench\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-krea-lora/inpainting/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-krea-lora/inpainting\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 Krea [dev] Inpainting with LoRAs" - modelId: "bfl/flux-krea-lora/inpainting" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-krea-lora/inpainting" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-01T23:38:18.12Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-lora-canny.md b/model-api-reference/image-generation/bfl/flux-lora-canny.md deleted file mode 100644 index 7649c75b..00000000 --- a/model-api-reference/image-generation/bfl/flux-lora-canny.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 [dev] Canny with LoRAs API Reference" -description: "FLUX.1 [dev] Canny with LoRAs API reference for SandBase. Use model bfl/flux-lora-canny with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-lora-canny" -apiReferenceJson: "{\"title\":\"FLUX.1 [dev] Canny with LoRAs\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux Lora Canny is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-lora-canny.\",\"default\":\"bfl/flux-lora-canny\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of image to use for canny input\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 0 to 35\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation. You can use any number of LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-lora-canny\\\",\\n \\\"prompt\\\": \\\"A blue owl.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-lora-canny/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-lora-canny\\\",\\n \\\"prompt\\\": \\\"A blue owl.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-lora-canny/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-lora-canny\\\",\\n \\\"prompt\\\": \\\"A blue owl.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-lora-canny/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-lora-canny\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 [dev] Canny with LoRAs" - modelId: "bfl/flux-lora-canny" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-lora-canny" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-01-16T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-lora-depth.md b/model-api-reference/image-generation/bfl/flux-lora-depth.md deleted file mode 100644 index 6d2b15b6..00000000 --- a/model-api-reference/image-generation/bfl/flux-lora-depth.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 [dev] Depth with LoRAs API Reference" -description: "FLUX.1 [dev] Depth with LoRAs API reference for SandBase. Use model bfl/flux-lora-depth with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-lora-depth" -apiReferenceJson: "{\"title\":\"FLUX.1 [dev] Depth with LoRAs\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux Lora Depth is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-lora-depth.\",\"default\":\"bfl/flux-lora-depth\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of image to use for depth input\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 0 to 35\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation. You can use any number of LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-lora-depth\\\",\\n \\\"prompt\\\": \\\"Black hole in space, orange accretion disc\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-lora-depth/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-lora-depth\\\",\\n \\\"prompt\\\": \\\"Black hole in space, orange accretion disc\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-lora-depth/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-lora-depth\\\",\\n \\\"prompt\\\": \\\"Black hole in space, orange accretion disc\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-lora-depth/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-lora-depth\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 [dev] Depth with LoRAs" - modelId: "bfl/flux-lora-depth" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-lora-depth" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-11-21T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-lora-fill.md b/model-api-reference/image-generation/bfl/flux-lora-fill.md deleted file mode 100644 index df757d7e..00000000 --- a/model-api-reference/image-generation/bfl/flux-lora-fill.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 [dev] Fill with LoRAs API Reference" -description: "FLUX.1 [dev] Fill with LoRAs API reference for SandBase. Use model bfl/flux-lora-fill with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-lora-fill" -apiReferenceJson: "{\"title\":\"FLUX.1 [dev] Fill with LoRAs\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux Lora Fill by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-lora-fill.\",\"default\":\"bfl/flux-lora-fill\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\",\"default\":\"\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of image to use for fill operation\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"The mask to area to Inpaint in.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"30\",\"constraints\":\"Range: 28 to 35\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"resize_to_original\",\"type\":\"boolean\",\"required\":false,\"description\":\"Resizes the image back to the original size. Use when you wish to preserve the exact image size as the originally provided image.\",\"default\":\"false\"},{\"name\":\"fill_image\",\"type\":\"string\",\"required\":false,\"description\":\"Use an image fill input to fill in particular images into the masked area.\"},{\"name\":\"paste_back\",\"type\":\"boolean\",\"required\":false,\"description\":\"Specifies whether to paste-back the original image onto to the non-inpainted areas of the output\",\"default\":\"true\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation. You can use any number of LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-lora-fill\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-lora-fill/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-lora-fill\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-lora-fill/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-lora-fill\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-lora-fill/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-lora-fill\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 [dev] Fill with LoRAs" - modelId: "bfl/flux-lora-fill" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-lora-fill" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-12-19T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-lora/image-to-image.md b/model-api-reference/image-generation/bfl/flux-lora/image-to-image.md deleted file mode 100644 index 9a0e5133..00000000 --- a/model-api-reference/image-generation/bfl/flux-lora/image-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 [dev] with LoRAs API Reference" -description: "FLUX.1 [dev] with LoRAs API reference for SandBase. Use model bfl/flux-lora/image-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-lora/image-to-image" -apiReferenceJson: "{\"title\":\"FLUX.1 [dev] with LoRAs\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux Lora by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-lora/image-to-image.\",\"default\":\"bfl/flux-lora/image-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of image to use for inpainting. or img2img\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 0 to 35\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength to use for inpainting/image-to-image. Only used if the image_url is provided. 1.0 is completely remakes the image while 0.0 preserves the original.\",\"default\":\"0.85\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation. You can use any number of LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-lora/image-to-image\\\",\\n \\\"prompt\\\": \\\"A photo of a lion sitting on a stone bench\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-lora/image-to-image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-lora/image-to-image\\\",\\n \\\"prompt\\\": \\\"A photo of a lion sitting on a stone bench\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-lora/image-to-image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-lora/image-to-image\\\",\\n \\\"prompt\\\": \\\"A photo of a lion sitting on a stone bench\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-lora/image-to-image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-lora/image-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 [dev] with LoRAs" - modelId: "bfl/flux-lora/image-to-image" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-lora/image-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-08-13T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-lora/inpainting.md b/model-api-reference/image-generation/bfl/flux-lora/inpainting.md deleted file mode 100644 index 5d311c7a..00000000 --- a/model-api-reference/image-generation/bfl/flux-lora/inpainting.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 [dev] Inpainting with LoRAs API Reference" -description: "FLUX.1 [dev] Inpainting with LoRAs API reference for SandBase. Use model bfl/flux-lora/inpainting with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-lora/inpainting" -apiReferenceJson: "{\"title\":\"FLUX.1 [dev] Inpainting with LoRAs\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux Lora Inpainting by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-lora/inpainting.\",\"default\":\"bfl/flux-lora/inpainting\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of image to use for inpainting. or img2img\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"The mask to area to Inpaint in.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 0 to 35\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength to use for inpainting/image-to-image. Only used if the image_url is provided. 1.0 is completely remakes the image while 0.0 preserves the original.\",\"default\":\"0.85\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation. You can use any number of LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-lora/inpainting\\\",\\n \\\"prompt\\\": \\\"A photo of a lion sitting on a stone bench\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-lora/inpainting/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-lora/inpainting\\\",\\n \\\"prompt\\\": \\\"A photo of a lion sitting on a stone bench\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-lora/inpainting/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-lora/inpainting\\\",\\n \\\"prompt\\\": \\\"A photo of a lion sitting on a stone bench\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-lora/inpainting/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-lora/inpainting\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 [dev] Inpainting with LoRAs" - modelId: "bfl/flux-lora/inpainting" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-lora/inpainting" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-09-18T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-pro/1.0/erase.md b/model-api-reference/image-generation/bfl/flux-pro/1.0/erase.md deleted file mode 100644 index 55d34403..00000000 --- a/model-api-reference/image-generation/bfl/flux-pro/1.0/erase.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux Pro Erase API Reference" -description: "Flux Pro Erase API reference for SandBase. Use model bfl/flux-pro/1.0/erase with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-pro/1.0/erase" -apiReferenceJson: "{\"title\":\"Flux Pro Erase\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux Pro 1.0 Erase by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-pro/1.0/erase.\",\"default\":\"bfl/flux-pro/1.0/erase\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the input image to erase content from.\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of a black/white mask image where white (255) marks pixels to erase and black (0) marks pixels to keep. Needs to match the dimensions of the input image.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"dilate_pixels\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of pixels to expand the mask edges by. Higher values produce cleaner erase results around the masked region.\",\"default\":\"10\",\"constraints\":\"Range: 0 to 100\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-pro/1.0/erase\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-pro/1.0/erase/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-pro/1.0/erase\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-pro/1.0/erase/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-pro/1.0/erase\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-pro/1.0/erase/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-pro/1.0/erase\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux Pro Erase" - modelId: "bfl/flux-pro/1.0/erase" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-pro/1.0/erase" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-05-21T20:04:52.011Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-pro/1.0/vto.md b/model-api-reference/image-generation/bfl/flux-pro/1.0/vto.md deleted file mode 100644 index 74b820d3..00000000 --- a/model-api-reference/image-generation/bfl/flux-pro/1.0/vto.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX Virtual Try-On API Reference" -description: "FLUX Virtual Try-On API reference for SandBase. Use model bfl/flux-pro/1.0/vto with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-pro/1.0/vto" -apiReferenceJson: "{\"title\":\"FLUX Virtual Try-On\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux Pro 1.0 Vto by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-pro/1.0/vto.\",\"default\":\"bfl/flux-pro/1.0/vto\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Natural-language styling instructions describing how the garment should be worn on the person (e.g. tucked in, layered, sleeves rolled up).\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of denoising steps to perform.\",\"default\":\"4\",\"constraints\":\"Range: 1 to 4\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same input will output the same image every time. If not provided, a random seed is used.\"},{\"name\":\"garment_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the garment reference image. Maximum 1 megapixel; recommended around 0.5 MP. Multiple garments must be merged into a single composite image before submission.\"},{\"name\":\"human_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the person image that the garment will be applied onto. The output keeps this image's aspect ratio. Maximum 2 megapixels; recommended under 1 MP.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-pro/1.0/vto\\\",\\n \\\"prompt\\\": \\\"A natural front-facing studio shot. The t-shirt is worn tucked in.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-pro/1.0/vto\\\",\\n \\\"prompt\\\": \\\"A natural front-facing studio shot. The t-shirt is worn tucked in.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-pro/1.0/vto\\\",\\n \\\"prompt\\\": \\\"A natural front-facing studio shot. The t-shirt is worn tucked in.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-pro/1.0/vto\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX Virtual Try-On" - modelId: "bfl/flux-pro/1.0/vto" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-pro/1.0/vto" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-05-28T16:46:06.236Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-pro/v1.1-ultra-finetuned.md b/model-api-reference/image-generation/bfl/flux-pro/v1.1-ultra-finetuned.md deleted file mode 100644 index a569415a..00000000 --- a/model-api-reference/image-generation/bfl/flux-pro/v1.1-ultra-finetuned.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX1.1 [pro] ultra Fine-tuned API Reference" -description: "FLUX1.1 [pro] ultra Fine-tuned API reference for SandBase. Use model bfl/flux-pro/v1.1-ultra-finetuned with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-pro/v1.1-ultra-finetuned" -apiReferenceJson: "{\"title\":\"FLUX1.1 [pro] ultra Fine-tuned\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux Pro V1.1 Ultra Finetuned is BFL's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-pro/v1.1-ultra-finetuned.\",\"default\":\"bfl/flux-pro/v1.1-ultra-finetuned\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The image URL to generate an image from.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate less processed, more natural-looking images.\",\"default\":\"false\"},{\"name\":\"image_prompt_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the image prompt, between 0 and 1.\",\"default\":\"0.1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"finetune_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Controls finetune influence. Increase this value if your target concept isn't showing up strongly enough. The optimal setting depends on your finetune and prompt\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"finetune_id\",\"type\":\"string\",\"required\":false,\"description\":\"References your specific model\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-pro/v1.1-ultra-finetuned\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-pro/v1.1-ultra-finetuned\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-pro/v1.1-ultra-finetuned\\\",\\n \\\"prompt\\\": \\\"Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \\\\\\\"FLUX\\\\\\\" is painted over it in big, white brush strokes with visible texture.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-pro/v1.1-ultra-finetuned\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX1.1 [pro] ultra Fine-tuned" - modelId: "bfl/flux-pro/v1.1-ultra-finetuned" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-pro/v1.1-ultra-finetuned" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-01-16T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-pro/v1.1/redux.md b/model-api-reference/image-generation/bfl/flux-pro/v1.1/redux.md deleted file mode 100644 index f3e6c2da..00000000 --- a/model-api-reference/image-generation/bfl/flux-pro/v1.1/redux.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX1.1 [pro] Redux API Reference" -description: "FLUX1.1 [pro] Redux API reference for SandBase. Use model bfl/flux-pro/v1.1/redux with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-pro/v1.1/redux" -apiReferenceJson: "{\"title\":\"FLUX1.1 [pro] Redux\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux Pro V1.1 Redux is BFL's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-pro/v1.1/redux.\",\"default\":\"bfl/flux-pro/v1.1/redux\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\",\"default\":\"\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The image URL to generate an image from. Needs to match the dimensions of the mask.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-pro/v1.1/redux\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-pro/v1.1/redux/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-pro/v1.1/redux\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-pro/v1.1/redux/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-pro/v1.1/redux\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-pro/v1.1/redux/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-pro/v1.1/redux\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX1.1 [pro] Redux" - modelId: "bfl/flux-pro/v1.1/redux" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-pro/v1.1/redux" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-11-21T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-subject.md b/model-api-reference/image-generation/bfl/flux-subject.md deleted file mode 100644 index 0b2da7ce..00000000 --- a/model-api-reference/image-generation/bfl/flux-subject.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FLUX.1 Subject API Reference" -description: "FLUX.1 Subject API reference for SandBase. Use model bfl/flux-subject with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-subject" -apiReferenceJson: "{\"title\":\"FLUX.1 Subject\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux Subject by BFL - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-subject.\",\"default\":\"bfl/flux-subject\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of image of the subject\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"3.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"8\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-subject\\\",\\n \\\"prompt\\\": \\\"On the beach, a lady sits under a beach umbrella with 'Omini' written on it. She's wearing this shirt and has a big smile on her face, with her surfboard hehind her. The sun is setting in the background. The sky is a beautiful shade of orange and purple.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-subject/input_image_0.jpg\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-subject\\\",\\n \\\"prompt\\\": \\\"On the beach, a lady sits under a beach umbrella with 'Omini' written on it. She's wearing this shirt and has a big smile on her face, with her surfboard hehind her. The sun is setting in the background. The sky is a beautiful shade of orange and purple.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-subject/input_image_0.jpg\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-subject\\\",\\n \\\"prompt\\\": \\\"On the beach, a lady sits under a beach umbrella with 'Omini' written on it. She's wearing this shirt and has a big smile on her face, with her surfboard hehind her. The sun is setting in the background. The sky is a beautiful shade of orange and purple.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-subject/input_image_0.jpg\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-subject\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FLUX.1 Subject" - modelId: "bfl/flux-subject" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-subject" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-08-01T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bfl/flux-vision-upscaler.md b/model-api-reference/image-generation/bfl/flux-vision-upscaler.md deleted file mode 100644 index 005f7917..00000000 --- a/model-api-reference/image-generation/bfl/flux-vision-upscaler.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Flux Vision Upscaler API Reference" -description: "Flux Vision Upscaler API reference for SandBase. Use model bfl/flux-vision-upscaler with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bfl/flux-vision-upscaler" -apiReferenceJson: "{\"title\":\"Flux Vision Upscaler\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux Vision Upscaler by BFL - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-vision-upscaler.\",\"default\":\"bfl/flux-vision-upscaler\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to upscale.\"},{\"name\":\"upscale_factor\",\"type\":\"number\",\"required\":false,\"description\":\"The upscale factor (1-4x).\",\"default\":\"2\",\"constraints\":\"Range: 1 to 4\"},{\"name\":\"steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of inference steps (4-50).\",\"default\":\"20\",\"constraints\":\"Range: 4 to 50\"},{\"name\":\"creativity\",\"type\":\"number\",\"required\":false,\"description\":\"The creativity of the model. The higher the creativity, the more the model will deviate from the original. Refers to the denoise strength of the sampling.\",\"default\":\"0.3\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"guidance\",\"type\":\"number\",\"required\":false,\"description\":\"CFG/guidance scale (1-4). Controls how closely the model follows the prompt.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 4\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for the upscale. If not provided, a random seed will be used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-vision-upscaler\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-vision-upscaler/input_image_0.jpg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-vision-upscaler\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-vision-upscaler/input_image_0.jpg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-vision-upscaler\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-vision-upscaler/input_image_0.jpg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-vision-upscaler\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Flux Vision Upscaler" - modelId: "bfl/flux-vision-upscaler" - vendor: "BFL" - vendorSlug: "bfl" - modelSlug: "flux-vision-upscaler" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-02T21:17:39.501Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bria/background/remove.md b/model-api-reference/image-generation/bria/background/remove.md deleted file mode 100644 index e7fd721b..00000000 --- a/model-api-reference/image-generation/bria/background/remove.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "BRIA RMBG 2.0 API Reference" -description: "BRIA RMBG 2.0 API reference for SandBase. Use model bria/background/remove with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bria/background/remove" -apiReferenceJson: "{\"title\":\"BRIA RMBG 2.0\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Background Remove is Bria's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bria/background/remove.\",\"default\":\"bria/background/remove\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image to remove background from.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bria/background/remove\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bria/background/remove/input_image_0.jpg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bria/background/remove\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bria/background/remove/input_image_0.jpg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bria/background/remove\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bria/background/remove/input_image_0.jpg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bria/background/remove\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "BRIA RMBG 2.0" - modelId: "bria/background/remove" - vendor: "Bria" - vendorSlug: "bria" - modelSlug: "background/remove" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-12-19T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bria/background/replace.md b/model-api-reference/image-generation/bria/background/replace.md deleted file mode 100644 index ad7fad53..00000000 --- a/model-api-reference/image-generation/bria/background/replace.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Bria Background Replace API Reference" -description: "Bria Background Replace API reference for SandBase. Use model bria/background/replace with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bria/background/replace" -apiReferenceJson: "{\"title\":\"Bria Background Replace\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Background Replace by Bria - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bria/background/replace.\",\"default\":\"bria/background/replace\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt you would like to use to generate images.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input Image to erase from\"},{\"name\":\"fast\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the fast model\",\"default\":\"true\"},{\"name\":\"ref_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the reference image to be used for generating the new background. Use \\\"\\\" to leave empty. Either ref_image_url or bg_prompt has to be provided but not both. If both ref_image_url and ref_image_file are provided, ref_image_url will be used. Accepted formats are jpeg, jpg, png, webp.\",\"default\":\"\"},{\"name\":\"refine_prompt\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to refine prompt\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\",\"constraints\":\"Range: 0 to 2147483647\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bria/background/replace\\\",\\n \\\"prompt\\\": \\\"Man leaning against a wall\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bria/background/replace/input_image_1.jpg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bria/background/replace\\\",\\n \\\"prompt\\\": \\\"Man leaning against a wall\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bria/background/replace/input_image_1.jpg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bria/background/replace\\\",\\n \\\"prompt\\\": \\\"Man leaning against a wall\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bria/background/replace/input_image_1.jpg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bria/background/replace\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Bria Background Replace" - modelId: "bria/background/replace" - vendor: "Bria" - vendorSlug: "bria" - modelSlug: "background/replace" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-12-19T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bria/embed-product.md b/model-api-reference/image-generation/bria/embed-product.md deleted file mode 100644 index 9233469b..00000000 --- a/model-api-reference/image-generation/bria/embed-product.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Bria Embed Product API Reference" -description: "Bria Embed Product API reference for SandBase. Use model bria/embed-product with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bria/embed-product" -apiReferenceJson: "{\"title\":\"Bria Embed Product\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Embed Product is Bria's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bria/embed-product.\",\"default\":\"bria/embed-product\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bria/embed-product\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bria/embed-product\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bria/embed-product\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bria/embed-product\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Bria Embed Product" - modelId: "bria/embed-product" - vendor: "Bria" - vendorSlug: "bria" - modelSlug: "embed-product" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-02-25T09:19:44.473Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bria/eraser.md b/model-api-reference/image-generation/bria/eraser.md deleted file mode 100644 index 737e5020..00000000 --- a/model-api-reference/image-generation/bria/eraser.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Bria Eraser API Reference" -description: "Bria Eraser API reference for SandBase. Use model bria/eraser with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bria/eraser" -apiReferenceJson: "{\"title\":\"Bria Eraser\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Eraser by Bria - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bria/eraser.\",\"default\":\"bria/eraser\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input Image to erase from\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the binary mask image that represents the area that will be cleaned.\"},{\"name\":\"preserve_alpha\",\"type\":\"boolean\",\"required\":false,\"description\":\"If set to true, attempts to preserve the alpha channel of the input image.\",\"default\":\"false\"},{\"name\":\"mask_type\",\"type\":\"string\",\"required\":false,\"description\":\"You can use this parameter to specify the type of the input mask from the list. 'manual' opttion should be used in cases in which the mask had been generated by a user (e.g. with a brush tool), and 'automatic' mask type should be used when mask had been generated by an algorithm like 'SAM'.\",\"default\":\"manual\",\"constraints\":\"Allowed values: manual, automatic\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bria/eraser\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bria/eraser/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bria/eraser\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bria/eraser/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bria/eraser\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bria/eraser/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bria/eraser\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Bria Eraser" - modelId: "bria/eraser" - vendor: "Bria" - vendorSlug: "bria" - modelSlug: "eraser" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-12-19T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bria/expand.md b/model-api-reference/image-generation/bria/expand.md deleted file mode 100644 index 1ad0f1b6..00000000 --- a/model-api-reference/image-generation/bria/expand.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Bria Expand Image API Reference" -description: "Bria Expand Image API reference for SandBase. Use model bria/expand with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bria/expand" -apiReferenceJson: "{\"title\":\"Bria Expand Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Expand by Bria - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bria/expand.\",\"default\":\"bria/expand\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text on which you wish to base the image expansion. This parameter is optional. Bria currently supports prompts in English only, excluding special characters.\",\"default\":\"\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the input image.\"},{\"name\":\"canvas_size\",\"type\":\"array\",\"required\":false,\"description\":\"The desired size of the final image, after the expansion. should have an area of less than 5000x5000 pixels.\"},{\"name\":\"original_image_location\",\"type\":\"array\",\"required\":false,\"description\":\"The desired location of the original image, inside the full canvas. Provide the location of the upper left corner of the original image. The location can also be outside the canvas (the original image will be cropped). Will be ignored if aspect_ratio is provided.\"},{\"name\":\"original_image_size\",\"type\":\"array\",\"required\":false,\"description\":\"The desired size of the original image, inside the full canvas. Ensure that the ratio of input image foreground or main subject to the canvas area is greater than 15% to achieve optimal results. Will be ignored if aspect_ratio is provided.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"You can choose whether you want your generated expension to be random or predictable. You can recreate the same result in the future by using the seed value of a result from the response. You can exclude this parameter if you are not interested in recreating your results. This parameter is optional.\",\"constraints\":\"Range: 0 to 2147483647\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bria/expand\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bria/expand/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bria/expand\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bria/expand/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bria/expand\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bria/expand/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bria/expand\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Bria Expand Image" - modelId: "bria/expand" - vendor: "Bria" - vendorSlug: "bria" - modelSlug: "expand" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-12-19T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bria/extract-object.md b/model-api-reference/image-generation/bria/extract-object.md deleted file mode 100644 index 67fe73d1..00000000 --- a/model-api-reference/image-generation/bria/extract-object.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Extract Object API Reference" -description: "Extract Object API reference for SandBase. Use model bria/extract-object with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bria/extract-object" -apiReferenceJson: "{\"title\":\"Extract Object\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Extract Object by Bria - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bria/extract-object.\",\"default\":\"bria/extract-object\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Natural-language description of the object to act on, e.g. 'the red car'.\",\"default\":\"yellow hammer\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Source image as a public URL or raw base64-encoded image bytes (no data-URI prefix).\",\"default\":\"https://bria-datasets.s3.amazonaws.com/object-extraction/tools_construction_flatlay.jpg\"},{\"name\":\"remove_background\",\"type\":\"boolean\",\"required\":false,\"description\":\"When True, refine the cutout alpha with background removal (RMBG). When False (default), use the SAM segmentation mask as the cutout's alpha -- faster, with no salient-object matting (helpful when RMBG over-trims text, logos, or graphics).\",\"default\":\"false\"},{\"name\":\"autocrop\",\"type\":\"boolean\",\"required\":false,\"description\":\"Tighten the output canvas to the extracted object.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bria/extract-object\\\",\\n \\\"prompt\\\": \\\"yellow hammer\\\",\\n \\\"image\\\": \\\"https://bria-datasets.s3.amazonaws.com/object-extraction/tools_construction_flatlay.jpg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bria/extract-object\\\",\\n \\\"prompt\\\": \\\"yellow hammer\\\",\\n \\\"image\\\": \\\"https://bria-datasets.s3.amazonaws.com/object-extraction/tools_construction_flatlay.jpg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bria/extract-object\\\",\\n \\\"prompt\\\": \\\"yellow hammer\\\",\\n \\\"image\\\": \\\"https://bria-datasets.s3.amazonaws.com/object-extraction/tools_construction_flatlay.jpg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bria/extract-object\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Extract Object" - modelId: "bria/extract-object" - vendor: "Bria" - vendorSlug: "bria" - modelSlug: "extract-object" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-29T16:24:20.718Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bria/fibo-lite.md b/model-api-reference/image-generation/bria/fibo-lite.md deleted file mode 100644 index e1ce9fc4..00000000 --- a/model-api-reference/image-generation/bria/fibo-lite.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Bria Fibo Lite API Reference" -description: "Bria Fibo Lite API reference for SandBase. Use model bria/fibo-lite with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bria/fibo-lite" -apiReferenceJson: "{\"title\":\"Bria Fibo Lite\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Fibo Lite is Bria's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bria/fibo-lite.\",\"default\":\"bria/fibo-lite\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image URL\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bria/fibo-lite\\\",\\n \\\"prompt\\\": \\\"Oil painting of a fluffy, wide-eyed cat sitting upright, holding a small wooden sign reading \\\\\\\"Feed Me.\\\\\\\" Rich textures, dramatic brushstrokes, warm tones, and vintage charm.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bria/fibo-lite\\\",\\n \\\"prompt\\\": \\\"Oil painting of a fluffy, wide-eyed cat sitting upright, holding a small wooden sign reading \\\\\\\"Feed Me.\\\\\\\" Rich textures, dramatic brushstrokes, warm tones, and vintage charm.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bria/fibo-lite\\\",\\n \\\"prompt\\\": \\\"Oil painting of a fluffy, wide-eyed cat sitting upright, holding a small wooden sign reading \\\\\\\"Feed Me.\\\\\\\" Rich textures, dramatic brushstrokes, warm tones, and vintage charm.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bria/fibo-lite\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Bria Fibo Lite" - modelId: "bria/fibo-lite" - vendor: "Bria" - vendorSlug: "bria" - modelSlug: "fibo-lite" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-16T14:07:05.087Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bria/fibo.md b/model-api-reference/image-generation/bria/fibo.md deleted file mode 100644 index 176d24a7..00000000 --- a/model-api-reference/image-generation/bria/fibo.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Bria Fibo API Reference" -description: "Bria Fibo API reference for SandBase. Use model bria/fibo with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bria/fibo" -apiReferenceJson: "{\"title\":\"Bria Fibo\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Fibo by Bria - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bria/fibo.\",\"default\":\"bria/fibo\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Prompt for image generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Reference image (file or URL).\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output image resolution\",\"default\":\"1MP\",\"constraints\":\"Allowed values: 1MP, 4MP\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bria/fibo\\\",\\n \\\"prompt\\\": \\\"A hyper-detailed, ultra-fluffy owl sitting in the trees at night, looking directly at the camera with wide, adorable, expressive eyes. Its feathers are soft and voluminous, catching the cool moonlight with subtle silver highlights. The owl’s gaze is curious and full of charm, giving it a whimsical, storybook-like personality.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bria/fibo\\\",\\n \\\"prompt\\\": \\\"A hyper-detailed, ultra-fluffy owl sitting in the trees at night, looking directly at the camera with wide, adorable, expressive eyes. Its feathers are soft and voluminous, catching the cool moonlight with subtle silver highlights. The owl’s gaze is curious and full of charm, giving it a whimsical, storybook-like personality.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bria/fibo\\\",\\n \\\"prompt\\\": \\\"A hyper-detailed, ultra-fluffy owl sitting in the trees at night, looking directly at the camera with wide, adorable, expressive eyes. Its feathers are soft and voluminous, catching the cool moonlight with subtle silver highlights. The owl’s gaze is curious and full of charm, giving it a whimsical, storybook-like personality.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bria/fibo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Bria Fibo" - modelId: "bria/fibo" - vendor: "Bria" - vendorSlug: "bria" - modelSlug: "fibo" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-29T10:12:55.756Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bria/fibo/edit.md b/model-api-reference/image-generation/bria/fibo/edit.md deleted file mode 100644 index 86979ff2..00000000 --- a/model-api-reference/image-generation/bria/fibo/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Bria Fibo Edit API Reference" -description: "Bria Fibo Edit API reference for SandBase. Use model bria/fibo/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bria/fibo/edit" -apiReferenceJson: "{\"title\":\"Bria Fibo Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Fibo Edit is Bria's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bria/fibo/edit.\",\"default\":\"bria/fibo/edit\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Reference image (file or URL).\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bria/fibo/edit\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bria/fibo/edit/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bria/fibo/edit\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bria/fibo/edit/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bria/fibo/edit\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bria/fibo/edit/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bria/fibo/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Bria Fibo Edit" - modelId: "bria/fibo/edit" - vendor: "Bria" - vendorSlug: "bria" - modelSlug: "fibo/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-20T11:15:43.27Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bria/genfill.md b/model-api-reference/image-generation/bria/genfill.md deleted file mode 100644 index d9177688..00000000 --- a/model-api-reference/image-generation/bria/genfill.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Bria GenFill API Reference" -description: "Bria GenFill API reference for SandBase. Use model bria/genfill with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bria/genfill" -apiReferenceJson: "{\"title\":\"Bria GenFill\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Genfill is Bria's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bria/genfill.\",\"default\":\"bria/genfill\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt you would like to use to generate images.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input Image to erase from\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the binary mask image that represents the area that will be cleaned.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\",\"constraints\":\"Range: 0 to 2147483647\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bria/genfill\\\",\\n \\\"prompt\\\": \\\"A red delicious cherry\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bria/genfill/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bria/genfill\\\",\\n \\\"prompt\\\": \\\"A red delicious cherry\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bria/genfill/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bria/genfill\\\",\\n \\\"prompt\\\": \\\"A red delicious cherry\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bria/genfill/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bria/genfill\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Bria GenFill" - modelId: "bria/genfill" - vendor: "Bria" - vendorSlug: "bria" - modelSlug: "genfill" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-12-19T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bria/product-shot.md b/model-api-reference/image-generation/bria/product-shot.md deleted file mode 100644 index eeaa0431..00000000 --- a/model-api-reference/image-generation/bria/product-shot.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Bria Product Shot API Reference" -description: "Bria Product Shot API reference for SandBase. Use model bria/product-shot with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bria/product-shot" -apiReferenceJson: "{\"title\":\"Bria Product Shot\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Product Shot by Bria - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bria/product-shot.\",\"default\":\"bria/product-shot\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the product shot to be placed in a lifestyle shot. If both image_url and image_file are provided, image_url will be used. Accepted formats are jpeg, jpg, png, webp. Maximum file size 12MB.\"},{\"name\":\"fast\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the fast model\",\"default\":\"true\"},{\"name\":\"num_results\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of lifestyle product shots you would like to generate. You will get num_results x 10 results when placement_type=automatic and according to the number of required placements x num_results if placement_type=manual_placement.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 4\"},{\"name\":\"manual_placement_selection\",\"type\":\"string\",\"required\":false,\"description\":\"If you've selected placement_type=manual_placement, you should use this parameter to specify which placements/positions you would like to use from the list. You can select more than one placement in one request.\",\"default\":\"bottom_center\",\"constraints\":\"Allowed values: upper_left, upper_right, bottom_left, bottom_right, right_center, left_center, upper_center, bottom_center, center_vertical, center_horizontal\"},{\"name\":\"shot_size\",\"type\":\"array\",\"required\":false,\"description\":\"The desired size of the final product shot. For optimal results, the total number of pixels should be around 1,000,000. This parameter is only relevant when placement_type=automatic or placement_type=manual_placement.\",\"default\":\"1000,1000\"},{\"name\":\"ref_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the reference image to be used for generating the new scene or background for the product shot. Use \\\"\\\" to leave empty.Either ref_image_url or scene_description has to be provided but not both. If both ref_image_url and ref_image_file are provided, ref_image_url will be used. Accepted formats are jpeg, jpg, png, webp.\",\"default\":\"\"},{\"name\":\"padding_values\",\"type\":\"array\",\"required\":false,\"description\":\"The desired padding in pixels around the product, when using placement_type=manual_padding. The order of the values is [left, right, top, bottom]. For optimal results, the total number of pixels, including padding, should be around 1,000,000. It is recommended to first use the product cutout API, get the cutout and understand the size of the result, and then define the required padding and use the cutout as an input for this API.\"},{\"name\":\"scene_description\",\"type\":\"string\",\"required\":false,\"description\":\"Text description of the new scene or background for the provided product shot. Bria currently supports prompts in English only, excluding special characters.\"},{\"name\":\"original_quality\",\"type\":\"boolean\",\"required\":false,\"description\":\"This flag is only relevant when placement_type=original. If true, the output image retains the original input image's size; otherwise, the image is scaled to 1 megapixel (1MP) while preserving its aspect ratio.\",\"default\":\"false\"},{\"name\":\"optimize_description\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to optimize the scene description\",\"default\":\"true\"},{\"name\":\"placement_type\",\"type\":\"string\",\"required\":false,\"description\":\"This parameter allows you to control the positioning of the product in the image. Choosing 'original' will preserve the original position of the product in the image. Choosing 'automatic' will generate results with the 10 recommended positions for the product. Choosing 'manual_placement' will allow you to select predefined positions (using the parameter 'manual_placement_selection'). Selecting 'manual_padding' will allow you to control the position and size of the image by defining the desired padding in pixels around the product.\",\"default\":\"manual_placement\",\"constraints\":\"Allowed values: original, automatic, manual_placement, manual_padding\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bria/product-shot\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bria/product-shot/input_image_1.jpg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bria/product-shot\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bria/product-shot/input_image_1.jpg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bria/product-shot\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bria/product-shot/input_image_1.jpg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bria/product-shot\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Bria Product Shot" - modelId: "bria/product-shot" - vendor: "Bria" - vendorSlug: "bria" - modelSlug: "product-shot" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-12-19T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bria/reimagine.md b/model-api-reference/image-generation/bria/reimagine.md deleted file mode 100644 index 10a870f7..00000000 --- a/model-api-reference/image-generation/bria/reimagine.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Bria Reimagine API Reference" -description: "Bria Reimagine API reference for SandBase. Use model bria/reimagine with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bria/reimagine" -apiReferenceJson: "{\"title\":\"Bria Reimagine\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Reimagine is Bria's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bria/reimagine.\",\"default\":\"bria/reimagine\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt you would like to use to generate images.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\",\"constraints\":\"Range: 0 to 2147483647\"},{\"name\":\"num_results\",\"type\":\"integer\",\"required\":false,\"description\":\"How many images you would like to generate. When using any Guidance Method, Value is set to 1.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 4\"},{\"name\":\"structure_ref_influence\",\"type\":\"number\",\"required\":false,\"description\":\"The influence of the structure reference on the generated image.\",\"default\":\"0.75\"},{\"name\":\"structure_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the structure reference image. Use \\\"\\\" to leave empty. Accepted formats are jpeg, jpg, png, webp.\",\"default\":\"\"},{\"name\":\"fast\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the fast model\",\"default\":\"true\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"30\",\"constraints\":\"Range: 20 to 50\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bria/reimagine\\\",\\n \\\"prompt\\\": \\\"A 2d illustration of a dog in a vibrant park\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bria/reimagine\\\",\\n \\\"prompt\\\": \\\"A 2d illustration of a dog in a vibrant park\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bria/reimagine\\\",\\n \\\"prompt\\\": \\\"A 2d illustration of a dog in a vibrant park\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bria/reimagine\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Bria Reimagine" - modelId: "bria/reimagine" - vendor: "Bria" - vendorSlug: "bria" - modelSlug: "reimagine" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-07-08T06:49:49.7Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bria/reimagine/3.2.md b/model-api-reference/image-generation/bria/reimagine/3.2.md deleted file mode 100644 index 0944bc7c..00000000 --- a/model-api-reference/image-generation/bria/reimagine/3.2.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Bria Reimagine 3.2 API Reference" -description: "Bria Reimagine 3.2 API reference for SandBase. Use model bria/reimagine/3.2 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bria/reimagine/3.2" -apiReferenceJson: "{\"title\":\"Bria Reimagine 3.2\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Reimagine 3.2 is Bria's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bria/reimagine/3.2.\",\"default\":\"bria/reimagine/3.2\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Prompt for image generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bria/reimagine/3.2\\\",\\n \\\"prompt\\\": \\\"Delicate, watercolor-style letters infused with shades of blue and green, accompanied by artistic, blooming flowers that blend harmoniously into a light background, giving a serene and artistic touch.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bria/reimagine/3.2\\\",\\n \\\"prompt\\\": \\\"Delicate, watercolor-style letters infused with shades of blue and green, accompanied by artistic, blooming flowers that blend harmoniously into a light background, giving a serene and artistic touch.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bria/reimagine/3.2\\\",\\n \\\"prompt\\\": \\\"Delicate, watercolor-style letters infused with shades of blue and green, accompanied by artistic, blooming flowers that blend harmoniously into a light background, giving a serene and artistic touch.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bria/reimagine/3.2\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Bria Reimagine 3.2" - modelId: "bria/reimagine/3.2" - vendor: "Bria" - vendorSlug: "bria" - modelSlug: "reimagine/3.2" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-20T06:58:56.995Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bria/replace-background.md b/model-api-reference/image-generation/bria/replace-background.md deleted file mode 100644 index 73b440ad..00000000 --- a/model-api-reference/image-generation/bria/replace-background.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Bria Replace Background API Reference" -description: "Bria Replace Background API reference for SandBase. Use model bria/replace-background with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bria/replace-background" -apiReferenceJson: "{\"title\":\"Bria Replace Background\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Replace Background by Bria - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bria/replace-background.\",\"default\":\"bria/replace-background\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Prompt for background replacement.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Reference image (file or URL).\",\"default\":\"https://static.sandbase.ai/examples/mirrored/22f2efc419e5-Mztgx0NG3HPdby-4iPqwH_a_coffee_machine_standing_in_the_kitchen.png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bria/replace-background\\\",\\n \\\"prompt\\\": \\\"On a smooth kitchen counter in front of a blue and white patterned ceramic tile wall. A yellow ceramic mug sits to the right. Shot from a straight-on front angle.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/22f2efc419e5-Mztgx0NG3HPdby-4iPqwH_a_coffee_machine_standing_in_the_kitchen.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bria/replace-background\\\",\\n \\\"prompt\\\": \\\"On a smooth kitchen counter in front of a blue and white patterned ceramic tile wall. A yellow ceramic mug sits to the right. Shot from a straight-on front angle.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/22f2efc419e5-Mztgx0NG3HPdby-4iPqwH_a_coffee_machine_standing_in_the_kitchen.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bria/replace-background\\\",\\n \\\"prompt\\\": \\\"On a smooth kitchen counter in front of a blue and white patterned ceramic tile wall. A yellow ceramic mug sits to the right. Shot from a straight-on front angle.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/22f2efc419e5-Mztgx0NG3HPdby-4iPqwH_a_coffee_machine_standing_in_the_kitchen.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bria/replace-background\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Bria Replace Background" - modelId: "bria/replace-background" - vendor: "Bria" - vendorSlug: "bria" - modelSlug: "replace-background" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-27T11:10:25.377Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bria/text-to-image/base.md b/model-api-reference/image-generation/bria/text-to-image/base.md deleted file mode 100644 index 92243b93..00000000 --- a/model-api-reference/image-generation/bria/text-to-image/base.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Bria Text-to-Image Base API Reference" -description: "Bria Text-to-Image Base API reference for SandBase. Use model bria/text-to-image/base with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bria/text-to-image/base" -apiReferenceJson: "{\"title\":\"Bria Text-to-Image Base\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Base by Bria - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bria/text-to-image/base.\",\"default\":\"bria/text-to-image/base\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt you would like to use to generate images.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\",\"constraints\":\"Range: 0 to 2147483647\"},{\"name\":\"guidance\",\"type\":\"array\",\"required\":false,\"description\":\"Guidance images to use for the generation. Up to 4 guidance methods can be combined during a single inference.\",\"default\":\"\"},{\"name\":\"medium\",\"type\":\"string\",\"required\":false,\"description\":\"Which medium should be included in your generated images. This parameter is optional.\",\"constraints\":\"Allowed values: photography, art\"},{\"name\":\"prompt_enhancement\",\"type\":\"boolean\",\"required\":false,\"description\":\"When set to true, enhances the provided prompt by generating additional, more descriptive variations, resulting in more diverse and creative output images.\",\"default\":\"false\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"30\",\"constraints\":\"Range: 20 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"5\",\"constraints\":\"Range: 0 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bria/text-to-image/base\\\",\\n \\\"prompt\\\": \\\"A lone figure stands on the edge of a serene cliff at sunset, gazing out over a vast, mystical valley. The figure is clad in flowing robes that ripple in the gentle breeze, silhouetted against the golden and lavender hues of the sky. Below, a cascading waterfall pours into a sparkling river winding through a forest of bioluminescent trees. The scene blends the awe of nature with a touch of otherworldly wonder, inviting reflection and imagination.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bria/text-to-image/base\\\",\\n \\\"prompt\\\": \\\"A lone figure stands on the edge of a serene cliff at sunset, gazing out over a vast, mystical valley. The figure is clad in flowing robes that ripple in the gentle breeze, silhouetted against the golden and lavender hues of the sky. Below, a cascading waterfall pours into a sparkling river winding through a forest of bioluminescent trees. The scene blends the awe of nature with a touch of otherworldly wonder, inviting reflection and imagination.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bria/text-to-image/base\\\",\\n \\\"prompt\\\": \\\"A lone figure stands on the edge of a serene cliff at sunset, gazing out over a vast, mystical valley. The figure is clad in flowing robes that ripple in the gentle breeze, silhouetted against the golden and lavender hues of the sky. Below, a cascading waterfall pours into a sparkling river winding through a forest of bioluminescent trees. The scene blends the awe of nature with a touch of otherworldly wonder, inviting reflection and imagination.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bria/text-to-image/base\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Bria Text-to-Image Base" - modelId: "bria/text-to-image/base" - vendor: "Bria" - vendorSlug: "bria" - modelSlug: "text-to-image/base" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-12-19T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bria/text-to-image/fast.md b/model-api-reference/image-generation/bria/text-to-image/fast.md deleted file mode 100644 index b0a0d7d9..00000000 --- a/model-api-reference/image-generation/bria/text-to-image/fast.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Bria Text-to-Image Fast API Reference" -description: "Bria Text-to-Image Fast API reference for SandBase. Use model bria/text-to-image/fast with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bria/text-to-image/fast" -apiReferenceJson: "{\"title\":\"Bria Text-to-Image Fast\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Fast by Bria - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bria/text-to-image/fast.\",\"default\":\"bria/text-to-image/fast\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt you would like to use to generate images.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\",\"constraints\":\"Range: 0 to 2147483647\"},{\"name\":\"guidance\",\"type\":\"array\",\"required\":false,\"description\":\"Guidance images to use for the generation. Up to 4 guidance methods can be combined during a single inference.\",\"default\":\"\"},{\"name\":\"prompt_enhancement\",\"type\":\"boolean\",\"required\":false,\"description\":\"When set to true, enhances the provided prompt by generating additional, more descriptive variations, resulting in more diverse and creative output images.\",\"default\":\"false\"},{\"name\":\"medium\",\"type\":\"string\",\"required\":false,\"description\":\"Which medium should be included in your generated images. This parameter is optional.\",\"constraints\":\"Allowed values: photography, art\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"8\",\"constraints\":\"Range: 4 to 10\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"5\",\"constraints\":\"Range: 0 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bria/text-to-image/fast\\\",\\n \\\"prompt\\\": \\\"A lone figure stands on the edge of a serene cliff at sunset, gazing out over a vast, mystical valley. The figure is clad in flowing robes that ripple in the gentle breeze, silhouetted against the golden and lavender hues of the sky. Below, a cascading waterfall pours into a sparkling river winding through a forest of bioluminescent trees. The scene blends the awe of nature with a touch of otherworldly wonder, inviting reflection and imagination.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bria/text-to-image/fast\\\",\\n \\\"prompt\\\": \\\"A lone figure stands on the edge of a serene cliff at sunset, gazing out over a vast, mystical valley. The figure is clad in flowing robes that ripple in the gentle breeze, silhouetted against the golden and lavender hues of the sky. Below, a cascading waterfall pours into a sparkling river winding through a forest of bioluminescent trees. The scene blends the awe of nature with a touch of otherworldly wonder, inviting reflection and imagination.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bria/text-to-image/fast\\\",\\n \\\"prompt\\\": \\\"A lone figure stands on the edge of a serene cliff at sunset, gazing out over a vast, mystical valley. The figure is clad in flowing robes that ripple in the gentle breeze, silhouetted against the golden and lavender hues of the sky. Below, a cascading waterfall pours into a sparkling river winding through a forest of bioluminescent trees. The scene blends the awe of nature with a touch of otherworldly wonder, inviting reflection and imagination.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bria/text-to-image/fast\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Bria Text-to-Image Fast" - modelId: "bria/text-to-image/fast" - vendor: "Bria" - vendorSlug: "bria" - modelSlug: "text-to-image/fast" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-12-19T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bria/text-to-image/hd.md b/model-api-reference/image-generation/bria/text-to-image/hd.md deleted file mode 100644 index 91742014..00000000 --- a/model-api-reference/image-generation/bria/text-to-image/hd.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Bria Text to Image HD API Reference" -description: "Bria Text to Image HD API reference for SandBase. Use model bria/text-to-image/hd with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bria/text-to-image/hd" -apiReferenceJson: "{\"title\":\"Bria Text to Image HD\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hd by Bria - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bria/text-to-image/hd.\",\"default\":\"bria/text-to-image/hd\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt you would like to use to generate images.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bria/text-to-image/hd\\\",\\n \\\"prompt\\\": \\\"A lone figure stands on the edge of a serene cliff at sunset, gazing out over a vast, mystical valley. The figure is clad in flowing robes that ripple in the gentle breeze, silhouetted against the golden and lavender hues of the sky. Below, a cascading waterfall pours into a sparkling river winding through a forest of bioluminescent trees. The scene blends the awe of nature with a touch of otherworldly wonder, inviting reflection and imagination.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bria/text-to-image/hd\\\",\\n \\\"prompt\\\": \\\"A lone figure stands on the edge of a serene cliff at sunset, gazing out over a vast, mystical valley. The figure is clad in flowing robes that ripple in the gentle breeze, silhouetted against the golden and lavender hues of the sky. Below, a cascading waterfall pours into a sparkling river winding through a forest of bioluminescent trees. The scene blends the awe of nature with a touch of otherworldly wonder, inviting reflection and imagination.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bria/text-to-image/hd\\\",\\n \\\"prompt\\\": \\\"A lone figure stands on the edge of a serene cliff at sunset, gazing out over a vast, mystical valley. The figure is clad in flowing robes that ripple in the gentle breeze, silhouetted against the golden and lavender hues of the sky. Below, a cascading waterfall pours into a sparkling river winding through a forest of bioluminescent trees. The scene blends the awe of nature with a touch of otherworldly wonder, inviting reflection and imagination.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bria/text-to-image/hd\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Bria Text to Image HD" - modelId: "bria/text-to-image/hd" - vendor: "Bria" - vendorSlug: "bria" - modelSlug: "text-to-image/hd" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-12-19T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bria/upscale/creative.md b/model-api-reference/image-generation/bria/upscale/creative.md deleted file mode 100644 index 4db6ff4c..00000000 --- a/model-api-reference/image-generation/bria/upscale/creative.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Bria Upscale Creative API Reference" -description: "Bria Upscale Creative API reference for SandBase. Use model bria/upscale/creative with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bria/upscale/creative" -apiReferenceJson: "{\"title\":\"Bria Upscale Creative\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Upscale Creative by Bria - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bria/upscale/creative.\",\"default\":\"bria/upscale/creative\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image URL or image data used by this model.\",\"default\":\"https://bria-datasets.s3.us-east-1.amazonaws.com/upscale/wild-west.png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bria/upscale/creative\\\",\\n \\\"image\\\": \\\"https://bria-datasets.s3.us-east-1.amazonaws.com/upscale/wild-west.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bria/upscale/creative\\\",\\n \\\"image\\\": \\\"https://bria-datasets.s3.us-east-1.amazonaws.com/upscale/wild-west.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bria/upscale/creative\\\",\\n \\\"image\\\": \\\"https://bria-datasets.s3.us-east-1.amazonaws.com/upscale/wild-west.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bria/upscale/creative\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Bria Upscale Creative" - modelId: "bria/upscale/creative" - vendor: "Bria" - vendorSlug: "bria" - modelSlug: "upscale/creative" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-02-23T11:28:54.474Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bytedance/dreamina/3.1.md b/model-api-reference/image-generation/bytedance/dreamina/3.1.md deleted file mode 100644 index b4c900d3..00000000 --- a/model-api-reference/image-generation/bytedance/dreamina/3.1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Dreamina 3.1 API Reference" -description: "Dreamina 3.1 API reference for SandBase. Use model bytedance/dreamina/3.1 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bytedance/dreamina/3.1" -apiReferenceJson: "{\"title\":\"Dreamina 3.1\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Dreamina 3.1 by ByteDance - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/dreamina/3.1.\",\"default\":\"bytedance/dreamina/3.1\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt used to generate the image\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed to control the stochasticity of image generation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/dreamina/3.1\\\",\\n \\\"prompt\\\": \\\"A 25-year-old korean woman selfie, front facing camera, lighting is soft and natural. If background is visible, it's a clean, modern apartment interior. The clothing color is clearly visible and distinct, adding a hint of color contrast\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/dreamina/3.1\\\",\\n \\\"prompt\\\": \\\"A 25-year-old korean woman selfie, front facing camera, lighting is soft and natural. If background is visible, it's a clean, modern apartment interior. The clothing color is clearly visible and distinct, adding a hint of color contrast\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/dreamina/3.1\\\",\\n \\\"prompt\\\": \\\"A 25-year-old korean woman selfie, front facing camera, lighting is soft and natural. If background is visible, it's a clean, modern apartment interior. The clothing color is clearly visible and distinct, adding a hint of color contrast\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/dreamina/3.1\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Dreamina 3.1" - modelId: "bytedance/dreamina/3.1" - vendor: "ByteDance" - vendorSlug: "bytedance" - modelSlug: "dreamina/3.1" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-06T16:21:39.741Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bytedance/seed/v2/mini.md b/model-api-reference/image-generation/bytedance/seed/v2/mini.md deleted file mode 100644 index 1ce64ad9..00000000 --- a/model-api-reference/image-generation/bytedance/seed/v2/mini.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "ByteDance Seed 2.0 Mini API Reference" -description: "ByteDance Seed 2.0 Mini API reference for SandBase. Use model bytedance/seed/v2/mini with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bytedance/seed/v2/mini" -apiReferenceJson: "{\"title\":\"ByteDance Seed 2.0 Mini\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seed V2 Mini by ByteDance - advanced AI model for llm. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seed/v2/mini.\",\"default\":\"bytedance/seed/v2/mini\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt or question for the model.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"URLs of images for visual understanding. Supported formats: JPEG, PNG, WebP. A maximum of 6 images is supported. Any additional images will be ignored.\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"URLs of videos for video understanding. Supported formats: MP4, MOV. Audio comprehension is not supported. A maximum of 3 videos is supported. Any additional videos will be ignored.\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Controls randomness in the response. Lower values make output more focused and deterministic, higher values make it more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"max_completion_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Controls the maximum length of the model's output, including both the model's response and its chain-of-thought content, measured in tokens.\",\"default\":\"4096\",\"constraints\":\"Range: 1 to 65536\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":false,\"description\":\"Optional prior conversation history for multi-turn conversations. Pass back the `messages` field from a previous response to provide context. The current `prompt`, `image_urls`, `video_urls`, and `system_prompt` are always appended as the latest user turn.\"},{\"name\":\"thinking\",\"type\":\"string\",\"required\":false,\"description\":\"Controls the model's chain-of-thought reasoning. `enabled` always includes reasoning, `disabled` never includes reasoning, `auto` lets the model decide based on the query.\",\"default\":\"enabled\",\"constraints\":\"Allowed values: enabled, disabled, auto\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling parameter. The model considers tokens with top_p cumulative probability mass. Lower values narrow the token selection.\",\"default\":\"0.7\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"system_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Optional system prompt to guide the model's behavior.\"},{\"name\":\"reasoning_effort\",\"type\":\"string\",\"required\":false,\"description\":\"Controls the depth of reasoning before the model responds. Only applicable when `thinking` is `enabled` or `auto`. `minimal` for immediate response, `low` for faster response with light reasoning, `medium` for balanced speed and depth, `high` for deep analysis of complex issues.\",\"constraints\":\"Allowed values: minimal, low, medium, high\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"llm\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seed/v2/mini\\\",\\n \\\"prompt\\\": \\\"What can you do?\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seed/v2/mini\\\",\\n \\\"prompt\\\": \\\"What can you do?\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seed/v2/mini\\\",\\n \\\"prompt\\\": \\\"What can you do?\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seed/v2/mini\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "ByteDance Seed 2.0 Mini" - modelId: "bytedance/seed/v2/mini" - vendor: "ByteDance" - vendorSlug: "bytedance" - modelSlug: "seed/v2/mini" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-17T10:53:52.704Z" - capabilities: ["llm"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bytedance/seedream/4.0.md b/model-api-reference/image-generation/bytedance/seedream/4.0.md deleted file mode 100644 index 1f842452..00000000 --- a/model-api-reference/image-generation/bytedance/seedream/4.0.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "ByteDance Seedream v4 API Reference" -description: "ByteDance Seedream v4 API reference for SandBase. Use model bytedance/seedream/4.0 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bytedance/seedream/4.0" -apiReferenceJson: "{\"title\":\"ByteDance Seedream v4\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedream 4.0 by ByteDance - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedream/4.0.\",\"default\":\"bytedance/seedream/4.0\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt used to generate the image\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed to control the stochasticity of image generation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedream/4.0\\\",\\n \\\"prompt\\\": \\\"A trendy restaurant with a digital menu board displaying \\\\\\\"Seedream 4.0 is available on fal\\\\\\\" in elegant script, with diners enjoying their meals.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedream/4.0\\\",\\n \\\"prompt\\\": \\\"A trendy restaurant with a digital menu board displaying \\\\\\\"Seedream 4.0 is available on fal\\\\\\\" in elegant script, with diners enjoying their meals.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedream/4.0\\\",\\n \\\"prompt\\\": \\\"A trendy restaurant with a digital menu board displaying \\\\\\\"Seedream 4.0 is available on fal\\\\\\\" in elegant script, with diners enjoying their meals.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedream/4.0\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "ByteDance Seedream v4" - modelId: "bytedance/seedream/4.0" - vendor: "ByteDance" - vendorSlug: "bytedance" - modelSlug: "seedream/4.0" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-09T08:27:00.849Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bytedance/seedream/4.0/edit.md b/model-api-reference/image-generation/bytedance/seedream/4.0/edit.md deleted file mode 100644 index adc9ac34..00000000 --- a/model-api-reference/image-generation/bytedance/seedream/4.0/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "ByteDance Seedream v4 Edit API Reference" -description: "ByteDance Seedream v4 Edit API reference for SandBase. Use model bytedance/seedream/4.0/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bytedance/seedream/4.0/edit" -apiReferenceJson: "{\"title\":\"ByteDance Seedream v4 Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedream 4.0 Edit is ByteDance's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedream/4.0/edit.\",\"default\":\"bytedance/seedream/4.0/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt used to edit the image\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"List of URLs of input images for editing. Presently, up to 10 image inputs are allowed. If over 10 images are sent, only the last 10 will be used.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed to control the stochasticity of image generation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedream/4.0/edit\\\",\\n \\\"prompt\\\": \\\"Dress the model in the clothes and hat. Add a cat to the scene and change the background to a Victorian era building.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedream/4.0/edit\\\",\\n \\\"prompt\\\": \\\"Dress the model in the clothes and hat. Add a cat to the scene and change the background to a Victorian era building.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedream/4.0/edit\\\",\\n \\\"prompt\\\": \\\"Dress the model in the clothes and hat. Add a cat to the scene and change the background to a Victorian era building.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedream/4.0/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "ByteDance Seedream v4 Edit" - modelId: "bytedance/seedream/4.0/edit" - vendor: "ByteDance" - vendorSlug: "bytedance" - modelSlug: "seedream/4.0/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-09T08:30:47.714Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/bytedance/seedream/4.5.md b/model-api-reference/image-generation/bytedance/seedream/4.5.md index 7dc0f54a..a684ad27 100644 --- a/model-api-reference/image-generation/bytedance/seedream/4.5.md +++ b/model-api-reference/image-generation/bytedance/seedream/4.5.md @@ -1,14 +1,14 @@ --- -title: "Seedream v4.5 API Reference" -description: "Seedream v4.5 API reference for SandBase. Use model bytedance/seedream/4.5 with /v1/run; see request and response examples." +title: "Seedream 4.5 Text to Image API Reference" +description: "Seedream 4.5 Text to Image API reference for SandBase. Use model bytedance/seedream/4.5 with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/bytedance/seedream/4.5" -apiReferenceJson: "{\"title\":\"Seedream v4.5\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"A new-generation image creation model from ByteDance, Seedream 4.5 integrates text-to-image generation and image editing into a single unified architecture, delivering high-fidelity visuals, precise prompt control, and seamless creative workflows for professional AIGC applications.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedream/4.5.\",\"default\":\"bytedance/seedream/4.5\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Vibrant close-up editorial portrait, model with piercing gaze, wearing a sculptural hat, rich color blocking, sharp focus on eyes, shallow depth of field, Vogue magazine cover aesthetic, shot on medium format, dramatic studio lighting.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"1:1\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"image_size\",\"type\":\"object\",\"required\":false,\"description\":\"Request parameter supported by this model.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedream/4.5\\\",\\n \\\"prompt\\\": \\\"Vibrant close-up editorial portrait, model with piercing gaze, wearing a sculptural hat, rich color blocking, sharp focus on eyes, shallow depth of field, Vogue magazine cover aesthetic, shot on medium format, dramatic studio lighting.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedream/4.5\\\",\\n \\\"prompt\\\": \\\"Vibrant close-up editorial portrait, model with piercing gaze, wearing a sculptural hat, rich color blocking, sharp focus on eyes, shallow depth of field, Vogue magazine cover aesthetic, shot on medium format, dramatic studio lighting.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedream/4.5\\\",\\n \\\"prompt\\\": \\\"Vibrant close-up editorial portrait, model with piercing gaze, wearing a sculptural hat, rich color blocking, sharp focus on eyes, shallow depth of field, Vogue magazine cover aesthetic, shot on medium format, dramatic studio lighting.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedream/4.5\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Seedream 4.5 Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"A new-generation image creation model from ByteDance, Seedream 4.5 integrates text-to-image generation and image editing into a single unified architecture, delivering high-fidelity visuals, precise prompt control, and seamless creative workflows for professional AIGC applications.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedream/4.5.\",\"default\":\"bytedance/seedream/4.5\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Vibrant close-up editorial portrait, model with piercing gaze, wearing a sculptural hat, rich color blocking, sharp focus on eyes, shallow depth of field, Vogue magazine cover aesthetic, shot on medium format, dramatic studio lighting.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"1:1\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"image_size\",\"type\":\"object\",\"required\":false,\"description\":\"Request parameter supported by this model.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedream/4.5\\\",\\n \\\"prompt\\\": \\\"Vibrant close-up editorial portrait, model with piercing gaze, wearing a sculptural hat, rich color blocking, sharp focus on eyes, shallow depth of field, Vogue magazine cover aesthetic, shot on medium format, dramatic studio lighting.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedream/4.5\\\",\\n \\\"prompt\\\": \\\"Vibrant close-up editorial portrait, model with piercing gaze, wearing a sculptural hat, rich color blocking, sharp focus on eyes, shallow depth of field, Vogue magazine cover aesthetic, shot on medium format, dramatic studio lighting.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedream/4.5\\\",\\n \\\"prompt\\\": \\\"Vibrant close-up editorial portrait, model with piercing gaze, wearing a sculptural hat, rich color blocking, sharp focus on eyes, shallow depth of field, Vogue magazine cover aesthetic, shot on medium format, dramatic studio lighting.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedream/4.5\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Seedream v4.5" + modelName: "Seedream 4.5 Text to Image" modelId: "bytedance/seedream/4.5" - vendor: "ByteDance" + vendor: "Bytedance" vendorSlug: "bytedance" modelSlug: "seedream/4.5" protocol: "Image Generation Reference" diff --git a/model-api-reference/image-generation/bytedance/seedream/4.5/edit.md b/model-api-reference/image-generation/bytedance/seedream/4.5/edit.md index 26eb8fee..ee01bba2 100644 --- a/model-api-reference/image-generation/bytedance/seedream/4.5/edit.md +++ b/model-api-reference/image-generation/bytedance/seedream/4.5/edit.md @@ -1,14 +1,14 @@ --- -title: "Seedream v4.5 Image Editing API Reference" -description: "Seedream v4.5 Image Editing API reference for SandBase. Use model bytedance/seedream/4.5/edit with /v1/run; see request and response examples." +title: "Seedream 4.5 Edit API Reference" +description: "Seedream 4.5 Edit API reference for SandBase. Use model bytedance/seedream/4.5/edit with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/bytedance/seedream/4.5/edit" -apiReferenceJson: "{\"title\":\"Seedream v4.5 Image Editing\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"A new-generation image creation model from ByteDance, Seedream 4.5 integrates text-to-image generation and image editing into a single unified architecture, delivering high-fidelity visuals, precise prompt control, and seamless creative workflows for professional AIGC applications.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedream/4.5/edit.\",\"default\":\"bytedance/seedream/4.5/edit\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"The URLs of the images to use for image-to-image generation or image editing.\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Replace the clothing in image 1 with the outfit from image 2.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 1:1, 3:4, 2:3, 9:16\"},{\"name\":\"image_size\",\"type\":\"object\",\"required\":false,\"description\":\"Request parameter supported by this model.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedream/4.5/edit\\\",\\n \\\"images\\\": [\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/4b4464161cf3463db6f9463b10939178~tplv-goo7wpa0wc-image.image\\\",\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/c23d1b0528a14cb08b684307eabdcc9b~tplv-goo7wpa0wc-image.image\\\"\\n ],\\n \\\"prompt\\\": \\\"Replace the clothing in image 1 with the outfit from image 2.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedream/4.5/edit\\\",\\n \\\"images\\\": [\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/4b4464161cf3463db6f9463b10939178~tplv-goo7wpa0wc-image.image\\\",\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/c23d1b0528a14cb08b684307eabdcc9b~tplv-goo7wpa0wc-image.image\\\"\\n ],\\n \\\"prompt\\\": \\\"Replace the clothing in image 1 with the outfit from image 2.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedream/4.5/edit\\\",\\n \\\"images\\\": [\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/4b4464161cf3463db6f9463b10939178~tplv-goo7wpa0wc-image.image\\\",\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/c23d1b0528a14cb08b684307eabdcc9b~tplv-goo7wpa0wc-image.image\\\"\\n ],\\n \\\"prompt\\\": \\\"Replace the clothing in image 1 with the outfit from image 2.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedream/4.5/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Seedream 4.5 Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"A new-generation image creation model from ByteDance, Seedream 4.5 integrates text-to-image generation and image editing into a single unified architecture, delivering high-fidelity visuals, precise prompt control, and seamless creative workflows for professional AIGC applications.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedream/4.5/edit.\",\"default\":\"bytedance/seedream/4.5/edit\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"The URLs of the images to use for image-to-image generation or image editing.\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Replace the clothing in image 1 with the outfit from image 2.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 1:1, 3:4, 2:3, 9:16\"},{\"name\":\"image_size\",\"type\":\"object\",\"required\":false,\"description\":\"Request parameter supported by this model.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedream/4.5/edit\\\",\\n \\\"images\\\": [\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/4b4464161cf3463db6f9463b10939178~tplv-goo7wpa0wc-image.image\\\",\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/c23d1b0528a14cb08b684307eabdcc9b~tplv-goo7wpa0wc-image.image\\\"\\n ],\\n \\\"prompt\\\": \\\"Replace the clothing in image 1 with the outfit from image 2.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedream/4.5/edit\\\",\\n \\\"images\\\": [\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/4b4464161cf3463db6f9463b10939178~tplv-goo7wpa0wc-image.image\\\",\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/c23d1b0528a14cb08b684307eabdcc9b~tplv-goo7wpa0wc-image.image\\\"\\n ],\\n \\\"prompt\\\": \\\"Replace the clothing in image 1 with the outfit from image 2.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedream/4.5/edit\\\",\\n \\\"images\\\": [\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/4b4464161cf3463db6f9463b10939178~tplv-goo7wpa0wc-image.image\\\",\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/c23d1b0528a14cb08b684307eabdcc9b~tplv-goo7wpa0wc-image.image\\\"\\n ],\\n \\\"prompt\\\": \\\"Replace the clothing in image 1 with the outfit from image 2.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedream/4.5/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Seedream v4.5 Image Editing" + modelName: "Seedream 4.5 Edit" modelId: "bytedance/seedream/4.5/edit" - vendor: "ByteDance" + vendor: "Bytedance" vendorSlug: "bytedance" modelSlug: "seedream/4.5/edit" protocol: "Image Generation Reference" diff --git a/model-api-reference/image-generation/bytedance/seedream/5.0/flash.md b/model-api-reference/image-generation/bytedance/seedream/5.0/flash.md new file mode 100644 index 00000000..032321a1 --- /dev/null +++ b/model-api-reference/image-generation/bytedance/seedream/5.0/flash.md @@ -0,0 +1,21 @@ +--- +title: "Seedream 5.0 Flash Text to Image API Reference" +description: "Seedream 5.0 Flash Text to Image API reference for SandBase. Use model bytedance/seedream/5.0/flash with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/bytedance/seedream/5.0/flash" +apiReferenceJson: "{\"title\":\"Seedream 5.0 Flash Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedream 5.0 Flash is ByteDance's fast, low-cost Seedream 5.0 tier for high-volume text-to-image generation, with roughly 15–20 second turnaround and one flat price per image.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedream/5.0/flash.\",\"default\":\"bytedance/seedream/5.0/flash\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Search for the popular elegant penguin meme, the penguin dons an all-black tactical techwear suit and narrow-frame futuristic sunglasses, riding a matte silver-black checkered manta ray flying vehicle; metal braided ropes, polar snowstorm backdrop, surreal futuristic techwear style, commercial fashion blockbuster aesthetic, high-definition with strong dynamic tension.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"1:1\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedream/5.0/flash\\\",\\n \\\"prompt\\\": \\\"Search for the popular elegant penguin meme, the penguin dons an all-black tactical techwear suit and narrow-frame futuristic sunglasses, riding a matte silver-black checkered manta ray flying vehicle; metal braided ropes, polar snowstorm backdrop, surreal futuristic techwear style, commercial fashion blockbuster aesthetic, high-definition with strong dynamic tension.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedream/5.0/flash\\\",\\n \\\"prompt\\\": \\\"Search for the popular elegant penguin meme, the penguin dons an all-black tactical techwear suit and narrow-frame futuristic sunglasses, riding a matte silver-black checkered manta ray flying vehicle; metal braided ropes, polar snowstorm backdrop, surreal futuristic techwear style, commercial fashion blockbuster aesthetic, high-definition with strong dynamic tension.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedream/5.0/flash\\\",\\n \\\"prompt\\\": \\\"Search for the popular elegant penguin meme, the penguin dons an all-black tactical techwear suit and narrow-frame futuristic sunglasses, riding a matte silver-black checkered manta ray flying vehicle; metal braided ropes, polar snowstorm backdrop, surreal futuristic techwear style, commercial fashion blockbuster aesthetic, high-definition with strong dynamic tension.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedream/5.0/flash\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Seedream 5.0 Flash Text to Image" + modelId: "bytedance/seedream/5.0/flash" + vendor: "Bytedance" + vendorSlug: "bytedance" + modelSlug: "seedream/5.0/flash" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-09-15T00:00:00Z" + capabilities: ["text-to-image","commercial"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/bytedance/seedream/5.0/flash/edit.md b/model-api-reference/image-generation/bytedance/seedream/5.0/flash/edit.md new file mode 100644 index 00000000..eeead531 --- /dev/null +++ b/model-api-reference/image-generation/bytedance/seedream/5.0/flash/edit.md @@ -0,0 +1,21 @@ +--- +title: "Seedream 5.0 Flash Edit API Reference" +description: "Seedream 5.0 Flash Edit API reference for SandBase. Use model bytedance/seedream/5.0/flash/edit with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/bytedance/seedream/5.0/flash/edit" +apiReferenceJson: "{\"title\":\"Seedream 5.0 Flash Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedream 5.0 Flash Editing edits and fuses up to 10 reference images from a text instruction at one flat price per image, with fast 15–20 second turnaround.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedream/5.0/flash/edit.\",\"default\":\"bytedance/seedream/5.0/flash/edit\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"Reference images to edit or fuse (1–10). Refer to them in the prompt as image 1, image 2, ...\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Generate 3 images of a girl and a cow plushie happily riding a roller coaster in an amusement park, depicting morning, noon, and night.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 1:1, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedream/5.0/flash/edit\\\",\\n \\\"images\\\": [\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/77024d8e03f24862b066bfc385301120~tplv-goo7wpa0wc-image.image\\\",\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/2cbc5cf5a68d44899fc52f177fb9cf51~tplv-goo7wpa0wc-image.image\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate 3 images of a girl and a cow plushie happily riding a roller coaster in an amusement park, depicting morning, noon, and night.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedream/5.0/flash/edit\\\",\\n \\\"images\\\": [\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/77024d8e03f24862b066bfc385301120~tplv-goo7wpa0wc-image.image\\\",\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/2cbc5cf5a68d44899fc52f177fb9cf51~tplv-goo7wpa0wc-image.image\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate 3 images of a girl and a cow plushie happily riding a roller coaster in an amusement park, depicting morning, noon, and night.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedream/5.0/flash/edit\\\",\\n \\\"images\\\": [\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/77024d8e03f24862b066bfc385301120~tplv-goo7wpa0wc-image.image\\\",\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/2cbc5cf5a68d44899fc52f177fb9cf51~tplv-goo7wpa0wc-image.image\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate 3 images of a girl and a cow plushie happily riding a roller coaster in an amusement park, depicting morning, noon, and night.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedream/5.0/flash/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Seedream 5.0 Flash Edit" + modelId: "bytedance/seedream/5.0/flash/edit" + vendor: "Bytedance" + vendorSlug: "bytedance" + modelSlug: "seedream/5.0/flash/edit" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-09-15T00:00:00Z" + capabilities: ["image-to-image","commercial"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/bytedance/seedream/5.0/lite.md b/model-api-reference/image-generation/bytedance/seedream/5.0/lite.md index d6ad64e6..be1b63c3 100644 --- a/model-api-reference/image-generation/bytedance/seedream/5.0/lite.md +++ b/model-api-reference/image-generation/bytedance/seedream/5.0/lite.md @@ -1,14 +1,14 @@ --- -title: "Seedream v5.0 Lite API Reference" -description: "Seedream v5.0 Lite API reference for SandBase. Use model bytedance/seedream/5.0/lite with /v1/run; see request and response examples." +title: "Seedream 5.0 Lite Text to Image API Reference" +description: "Seedream 5.0 Lite Text to Image API reference for SandBase. Use model bytedance/seedream/5.0/lite with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/bytedance/seedream/5.0/lite" -apiReferenceJson: "{\"title\":\"Seedream v5.0 Lite\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedream 5.0 Lite — Fast Text-to-Image API The lightweight version of Seedream 5.0, delivering high-quality, low-latency AI image generation from text prompts. Ideal for real-time creative tools, e-commerce visuals, and high-volume AIGC pipelines.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedream/5.0/lite.\",\"default\":\"bytedance/seedream/5.0/lite\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Search for the popular elegant penguin meme, the penguin dons an all-black tactical techwear suit and narrow-frame futuristic sunglasses, riding a matte silver-black checkered manta ray flying vehicle; metal braided ropes, polar snowstorm backdrop, surreal futuristic techwear style, commercial fashion blockbuster aesthetic, high-definition with strong dynamic tension.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"1:1\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedream/5.0/lite\\\",\\n \\\"prompt\\\": \\\"Search for the popular elegant penguin meme, the penguin dons an all-black tactical techwear suit and narrow-frame futuristic sunglasses, riding a matte silver-black checkered manta ray flying vehicle; metal braided ropes, polar snowstorm backdrop, surreal futuristic techwear style, commercial fashion blockbuster aesthetic, high-definition with strong dynamic tension.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedream/5.0/lite\\\",\\n \\\"prompt\\\": \\\"Search for the popular elegant penguin meme, the penguin dons an all-black tactical techwear suit and narrow-frame futuristic sunglasses, riding a matte silver-black checkered manta ray flying vehicle; metal braided ropes, polar snowstorm backdrop, surreal futuristic techwear style, commercial fashion blockbuster aesthetic, high-definition with strong dynamic tension.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedream/5.0/lite\\\",\\n \\\"prompt\\\": \\\"Search for the popular elegant penguin meme, the penguin dons an all-black tactical techwear suit and narrow-frame futuristic sunglasses, riding a matte silver-black checkered manta ray flying vehicle; metal braided ropes, polar snowstorm backdrop, surreal futuristic techwear style, commercial fashion blockbuster aesthetic, high-definition with strong dynamic tension.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedream/5.0/lite\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Seedream 5.0 Lite Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedream 5.0 Lite — Fast Text-to-Image API The lightweight version of Seedream 5.0, delivering high-quality, low-latency AI image generation from text prompts. Ideal for real-time creative tools, e-commerce visuals, and high-volume AIGC pipelines.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedream/5.0/lite.\",\"default\":\"bytedance/seedream/5.0/lite\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Search for the popular elegant penguin meme, the penguin dons an all-black tactical techwear suit and narrow-frame futuristic sunglasses, riding a matte silver-black checkered manta ray flying vehicle; metal braided ropes, polar snowstorm backdrop, surreal futuristic techwear style, commercial fashion blockbuster aesthetic, high-definition with strong dynamic tension.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"1:1\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedream/5.0/lite\\\",\\n \\\"prompt\\\": \\\"Search for the popular elegant penguin meme, the penguin dons an all-black tactical techwear suit and narrow-frame futuristic sunglasses, riding a matte silver-black checkered manta ray flying vehicle; metal braided ropes, polar snowstorm backdrop, surreal futuristic techwear style, commercial fashion blockbuster aesthetic, high-definition with strong dynamic tension.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedream/5.0/lite\\\",\\n \\\"prompt\\\": \\\"Search for the popular elegant penguin meme, the penguin dons an all-black tactical techwear suit and narrow-frame futuristic sunglasses, riding a matte silver-black checkered manta ray flying vehicle; metal braided ropes, polar snowstorm backdrop, surreal futuristic techwear style, commercial fashion blockbuster aesthetic, high-definition with strong dynamic tension.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedream/5.0/lite\\\",\\n \\\"prompt\\\": \\\"Search for the popular elegant penguin meme, the penguin dons an all-black tactical techwear suit and narrow-frame futuristic sunglasses, riding a matte silver-black checkered manta ray flying vehicle; metal braided ropes, polar snowstorm backdrop, surreal futuristic techwear style, commercial fashion blockbuster aesthetic, high-definition with strong dynamic tension.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedream/5.0/lite\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Seedream v5.0 Lite" + modelName: "Seedream 5.0 Lite Text to Image" modelId: "bytedance/seedream/5.0/lite" - vendor: "ByteDance" + vendor: "Bytedance" vendorSlug: "bytedance" modelSlug: "seedream/5.0/lite" protocol: "Image Generation Reference" diff --git a/model-api-reference/image-generation/bytedance/seedream/5.0/lite/edit.md b/model-api-reference/image-generation/bytedance/seedream/5.0/lite/edit.md index dbd0ec2b..840c2192 100644 --- a/model-api-reference/image-generation/bytedance/seedream/5.0/lite/edit.md +++ b/model-api-reference/image-generation/bytedance/seedream/5.0/lite/edit.md @@ -1,14 +1,14 @@ --- -title: "Seedream v5.0 Lite Editing API Reference" -description: "Seedream v5.0 Lite Editing API reference for SandBase. Use model bytedance/seedream/5.0/lite/edit with /v1/run; see request and response examples." +title: "Seedream 5.0 Lite Edit API Reference" +description: "Seedream 5.0 Lite Edit API reference for SandBase. Use model bytedance/seedream/5.0/lite/edit with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/bytedance/seedream/5.0/lite/edit" -apiReferenceJson: "{\"title\":\"Seedream v5.0 Lite Editing\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedream 5.0 Lite — Fast Text-to-Image API The lightweight version of Seedream 5.0, delivering high-quality, low-latency AI image generation from text prompts. Ideal for real-time creative tools, e-commerce visuals, and high-volume AIGC pipelines.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedream/5.0/lite/edit.\",\"default\":\"bytedance/seedream/5.0/lite/edit\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"The URLs of the images to use for image-to-image generation or image editing.\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Generate 3 images of a girl and a cow plushie happily riding a roller coaster in an amusement park, depicting morning, noon, and night.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 1:1, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedream/5.0/lite/edit\\\",\\n \\\"images\\\": [\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/77024d8e03f24862b066bfc385301120~tplv-goo7wpa0wc-image.image\\\",\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/2cbc5cf5a68d44899fc52f177fb9cf51~tplv-goo7wpa0wc-image.image\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate 3 images of a girl and a cow plushie happily riding a roller coaster in an amusement park, depicting morning, noon, and night.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedream/5.0/lite/edit\\\",\\n \\\"images\\\": [\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/77024d8e03f24862b066bfc385301120~tplv-goo7wpa0wc-image.image\\\",\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/2cbc5cf5a68d44899fc52f177fb9cf51~tplv-goo7wpa0wc-image.image\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate 3 images of a girl and a cow plushie happily riding a roller coaster in an amusement park, depicting morning, noon, and night.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedream/5.0/lite/edit\\\",\\n \\\"images\\\": [\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/77024d8e03f24862b066bfc385301120~tplv-goo7wpa0wc-image.image\\\",\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/2cbc5cf5a68d44899fc52f177fb9cf51~tplv-goo7wpa0wc-image.image\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate 3 images of a girl and a cow plushie happily riding a roller coaster in an amusement park, depicting morning, noon, and night.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedream/5.0/lite/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Seedream 5.0 Lite Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedream 5.0 Lite — Fast Text-to-Image API The lightweight version of Seedream 5.0, delivering high-quality, low-latency AI image generation from text prompts. Ideal for real-time creative tools, e-commerce visuals, and high-volume AIGC pipelines.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedream/5.0/lite/edit.\",\"default\":\"bytedance/seedream/5.0/lite/edit\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"The URLs of the images to use for image-to-image generation or image editing.\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Generate 3 images of a girl and a cow plushie happily riding a roller coaster in an amusement park, depicting morning, noon, and night.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 1:1, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedream/5.0/lite/edit\\\",\\n \\\"images\\\": [\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/77024d8e03f24862b066bfc385301120~tplv-goo7wpa0wc-image.image\\\",\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/2cbc5cf5a68d44899fc52f177fb9cf51~tplv-goo7wpa0wc-image.image\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate 3 images of a girl and a cow plushie happily riding a roller coaster in an amusement park, depicting morning, noon, and night.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedream/5.0/lite/edit\\\",\\n \\\"images\\\": [\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/77024d8e03f24862b066bfc385301120~tplv-goo7wpa0wc-image.image\\\",\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/2cbc5cf5a68d44899fc52f177fb9cf51~tplv-goo7wpa0wc-image.image\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate 3 images of a girl and a cow plushie happily riding a roller coaster in an amusement park, depicting morning, noon, and night.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedream/5.0/lite/edit\\\",\\n \\\"images\\\": [\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/77024d8e03f24862b066bfc385301120~tplv-goo7wpa0wc-image.image\\\",\\n \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/2cbc5cf5a68d44899fc52f177fb9cf51~tplv-goo7wpa0wc-image.image\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate 3 images of a girl and a cow plushie happily riding a roller coaster in an amusement park, depicting morning, noon, and night.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedream/5.0/lite/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Seedream v5.0 Lite Editing" + modelName: "Seedream 5.0 Lite Edit" modelId: "bytedance/seedream/5.0/lite/edit" - vendor: "ByteDance" + vendor: "Bytedance" vendorSlug: "bytedance" modelSlug: "seedream/5.0/lite/edit" protocol: "Image Generation Reference" diff --git a/model-api-reference/image-generation/bytedance/seedream/5.0/pro.md b/model-api-reference/image-generation/bytedance/seedream/5.0/pro.md index fa52379b..a34b0613 100644 --- a/model-api-reference/image-generation/bytedance/seedream/5.0/pro.md +++ b/model-api-reference/image-generation/bytedance/seedream/5.0/pro.md @@ -4,11 +4,11 @@ description: "Seedream 5.0 Pro Text to Image API reference for SandBase. Use mod aside: false outline: false apiReferenceKey: "image/bytedance/seedream/5.0/pro" -apiReferenceJson: "{\"title\":\"Seedream 5.0 Pro Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedream 5.0 Pro by ByteDance - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedream/5.0/pro.\",\"default\":\"bytedance/seedream/5.0/pro\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt used to generate the image.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The file format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedream/5.0/pro\\\",\\n \\\"prompt\\\": \\\"Vibrant editorial of a model in contemporary fashion fused with West African textile patterns and beadwork, Campbell Addy bold aesthetic, saturated palette, dramatic studio lighting, celebratory cultural richness, striking contemporary portraiture\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedream/5.0/pro\\\",\\n \\\"prompt\\\": \\\"Vibrant editorial of a model in contemporary fashion fused with West African textile patterns and beadwork, Campbell Addy bold aesthetic, saturated palette, dramatic studio lighting, celebratory cultural richness, striking contemporary portraiture\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedream/5.0/pro\\\",\\n \\\"prompt\\\": \\\"Vibrant editorial of a model in contemporary fashion fused with West African textile patterns and beadwork, Campbell Addy bold aesthetic, saturated palette, dramatic studio lighting, celebratory cultural richness, striking contemporary portraiture\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedream/5.0/pro\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Seedream 5.0 Pro Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedream 5.0 Pro by ByteDance - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedream/5.0/pro.\",\"default\":\"bytedance/seedream/5.0/pro\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt used to generate the image.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated 2K image. Defaults to 1:1.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"num_images\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of images to generate. Currently limited to 1.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The file format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedream/5.0/pro\\\",\\n \\\"prompt\\\": \\\"Vibrant editorial of a model in contemporary fashion fused with West African textile patterns and beadwork, Campbell Addy bold aesthetic, saturated palette, dramatic studio lighting, celebratory cultural richness, striking contemporary portraiture\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedream/5.0/pro\\\",\\n \\\"prompt\\\": \\\"Vibrant editorial of a model in contemporary fashion fused with West African textile patterns and beadwork, Campbell Addy bold aesthetic, saturated palette, dramatic studio lighting, celebratory cultural richness, striking contemporary portraiture\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedream/5.0/pro\\\",\\n \\\"prompt\\\": \\\"Vibrant editorial of a model in contemporary fashion fused with West African textile patterns and beadwork, Campbell Addy bold aesthetic, saturated palette, dramatic studio lighting, celebratory cultural richness, striking contemporary portraiture\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedream/5.0/pro\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Seedream 5.0 Pro Text to Image" modelId: "bytedance/seedream/5.0/pro" - vendor: "ByteDance" + vendor: "Bytedance" vendorSlug: "bytedance" modelSlug: "seedream/5.0/pro" protocol: "Image Generation Reference" diff --git a/model-api-reference/image-generation/bytedance/seedream/5.0/pro/edit.md b/model-api-reference/image-generation/bytedance/seedream/5.0/pro/edit.md index 76e2f881..9cfff494 100644 --- a/model-api-reference/image-generation/bytedance/seedream/5.0/pro/edit.md +++ b/model-api-reference/image-generation/bytedance/seedream/5.0/pro/edit.md @@ -1,14 +1,14 @@ --- -title: "Seedream 5.0 Pro Image Editing API Reference" -description: "Seedream 5.0 Pro Image Editing API reference for SandBase. Use model bytedance/seedream/5.0/pro/edit with /v1/run; see request and response examples." +title: "Seedream 5.0 Pro Edit API Reference" +description: "Seedream 5.0 Pro Edit API reference for SandBase. Use model bytedance/seedream/5.0/pro/edit with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/bytedance/seedream/5.0/pro/edit" -apiReferenceJson: "{\"title\":\"Seedream 5.0 Pro Image Editing\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedream 5.0 Pro is ByteDance's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedream/5.0/pro/edit.\",\"default\":\"bytedance/seedream/5.0/pro/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt used to edit the image.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"List of URLs of input reference images. Up to 10 images are supported; if more are sent, only the last 10 are used.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The file format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedream/5.0/pro/edit\\\",\\n \\\"prompt\\\": \\\"Replace the product in Figure 1 with that in Figure 2. Seamlessly render the logo in Figure 3 into the product design, in a frosted glass texture.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedream/5.0/pro/edit\\\",\\n \\\"prompt\\\": \\\"Replace the product in Figure 1 with that in Figure 2. Seamlessly render the logo in Figure 3 into the product design, in a frosted glass texture.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedream/5.0/pro/edit\\\",\\n \\\"prompt\\\": \\\"Replace the product in Figure 1 with that in Figure 2. Seamlessly render the logo in Figure 3 into the product design, in a frosted glass texture.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedream/5.0/pro/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Seedream 5.0 Pro Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedream 5.0 Pro is ByteDance's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedream/5.0/pro/edit.\",\"default\":\"bytedance/seedream/5.0/pro/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt used to edit the image.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"List of URLs of input reference images. Up to 10 images are supported; if more are sent, only the last 10 are used.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the edited 2K image. Leave unset to follow the reference image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"num_images\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of edited images to generate. Currently limited to 1.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The file format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedream/5.0/pro/edit\\\",\\n \\\"prompt\\\": \\\"Replace the product in Figure 1 with that in Figure 2. Seamlessly render the logo in Figure 3 into the product design, in a frosted glass texture.\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/bytedance/seedream/5.0/pro/edit/input_images_0.png\\\",\\n \\\"https://static.sandbase.ai/examples/bytedance/seedream/5.0/pro/edit/input_images_1.png\\\",\\n \\\"https://static.sandbase.ai/examples/bytedance/seedream/5.0/pro/edit/input_images_2.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedream/5.0/pro/edit\\\",\\n \\\"prompt\\\": \\\"Replace the product in Figure 1 with that in Figure 2. Seamlessly render the logo in Figure 3 into the product design, in a frosted glass texture.\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/bytedance/seedream/5.0/pro/edit/input_images_0.png\\\",\\n \\\"https://static.sandbase.ai/examples/bytedance/seedream/5.0/pro/edit/input_images_1.png\\\",\\n \\\"https://static.sandbase.ai/examples/bytedance/seedream/5.0/pro/edit/input_images_2.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedream/5.0/pro/edit\\\",\\n \\\"prompt\\\": \\\"Replace the product in Figure 1 with that in Figure 2. Seamlessly render the logo in Figure 3 into the product design, in a frosted glass texture.\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/bytedance/seedream/5.0/pro/edit/input_images_0.png\\\",\\n \\\"https://static.sandbase.ai/examples/bytedance/seedream/5.0/pro/edit/input_images_1.png\\\",\\n \\\"https://static.sandbase.ai/examples/bytedance/seedream/5.0/pro/edit/input_images_2.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedream/5.0/pro/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Seedream 5.0 Pro Image Editing" + modelName: "Seedream 5.0 Pro Edit" modelId: "bytedance/seedream/5.0/pro/edit" - vendor: "ByteDance" + vendor: "Bytedance" vendorSlug: "bytedance" modelSlug: "seedream/5.0/pro/edit" protocol: "Image Generation Reference" diff --git a/model-api-reference/image-generation/bytedance/seedvr/upscale/image.md b/model-api-reference/image-generation/bytedance/seedvr/upscale/image.md index 6eb8ba8d..c99c0800 100644 --- a/model-api-reference/image-generation/bytedance/seedvr/upscale/image.md +++ b/model-api-reference/image-generation/bytedance/seedvr/upscale/image.md @@ -1,14 +1,14 @@ --- -title: "SeedVR2 API Reference — ByteDance Seedvr / Upscale / Image API" -description: "SeedVR2 API reference for SandBase. Use model bytedance/seedvr/upscale/image with /v1/run; see request and response examples." +title: "SeedVR2 Image Upscale API Reference" +description: "SeedVR2 Image Upscale API reference for SandBase. Use model bytedance/seedvr/upscale/image with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/bytedance/seedvr/upscale/image" -apiReferenceJson: "{\"title\":\"SeedVR2\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedvr Upscale Image by ByteDance - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedvr/upscale/image.\",\"default\":\"bytedance/seedvr/upscale/image\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The input image to be processed\"},{\"name\":\"target_resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The target resolution to upscale to.\",\"default\":\"4k\",\"constraints\":\"Allowed values: 2k, 4k\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image.\",\"default\":\"jpg\",\"constraints\":\"Allowed values: png, jpg\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedvr/upscale/image\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/seedvr/upscale/image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedvr/upscale/image\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/seedvr/upscale/image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedvr/upscale/image\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/seedvr/upscale/image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedvr/upscale/image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"SeedVR2 Image Upscale\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedvr Upscale Image by ByteDance - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedvr/upscale/image.\",\"default\":\"bytedance/seedvr/upscale/image\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The input image to be processed\"},{\"name\":\"target_resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The target resolution to upscale to.\",\"default\":\"4k\",\"constraints\":\"Allowed values: 2k, 4k\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image.\",\"default\":\"jpg\",\"constraints\":\"Allowed values: png, jpg\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedvr/upscale/image\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/seedvr/upscale/image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedvr/upscale/image\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/seedvr/upscale/image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedvr/upscale/image\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/seedvr/upscale/image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedvr/upscale/image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "SeedVR2" + modelName: "SeedVR2 Image Upscale" modelId: "bytedance/seedvr/upscale/image" - vendor: "ByteDance" + vendor: "Bytedance" vendorSlug: "bytedance" modelSlug: "seedvr/upscale/image" protocol: "Image Generation Reference" diff --git a/model-api-reference/image-generation/bytedance/seedvr/upscale/image/seamless.md b/model-api-reference/image-generation/bytedance/seedvr/upscale/image/seamless.md deleted file mode 100644 index 6ce27353..00000000 --- a/model-api-reference/image-generation/bytedance/seedvr/upscale/image/seamless.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "SeedVR2 API Reference — ByteDance / Upscale / Image / Seamless" -description: "SeedVR2 API reference for SandBase. Use model bytedance/seedvr/upscale/image/seamless with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/bytedance/seedvr/upscale/image/seamless" -apiReferenceJson: "{\"title\":\"SeedVR2\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedvr Upscale Image is ByteDance's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedvr/upscale/image/seamless.\",\"default\":\"bytedance/seedvr/upscale/image/seamless\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The input image to be processed\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output image.\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"noise_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The noise scale to use for the generation process.\",\"default\":\"0.1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"target_resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The target resolution to upscale to when `upscale_mode` is `target`.\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 720p, 1080p, 1440p, 2160p\"},{\"name\":\"upscale_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The mode to use for the upscale. If 'target', the upscale factor will be calculated based on the target resolution. If 'factor', the upscale factor will be used directly.\",\"default\":\"factor\",\"constraints\":\"Allowed values: target, factor\"},{\"name\":\"upscale_factor\",\"type\":\"number\",\"required\":false,\"description\":\"Upscaling factor to be used. Will multiply the dimensions with this factor when `upscale_mode` is `factor`.\",\"default\":\"2\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The random seed used for the generation process.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedvr/upscale/image/seamless\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/seedvr/upscale/image/seamless/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedvr/upscale/image/seamless\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/seedvr/upscale/image/seamless/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedvr/upscale/image/seamless\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/seedvr/upscale/image/seamless/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedvr/upscale/image/seamless\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "SeedVR2" - modelId: "bytedance/seedvr/upscale/image/seamless" - vendor: "ByteDance" - vendorSlug: "bytedance" - modelSlug: "seedvr/upscale/image/seamless" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-23T01:56:07.964Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/elevenlabs/speech-to-text.md b/model-api-reference/image-generation/elevenlabs/speech-to-text.md deleted file mode 100644 index 3eb67f93..00000000 --- a/model-api-reference/image-generation/elevenlabs/speech-to-text.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "ElevenLabs Speech to Text API Reference" -description: "ElevenLabs Speech to Text API reference for SandBase. Use model elevenlabs/speech-to-text with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/elevenlabs/speech-to-text" -apiReferenceJson: "{\"title\":\"ElevenLabs Speech to Text\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Speech To Text by ElevenLabs - accurate speech-to-text transcription with AI. Convert audio and video to text with high accuracy, multilingual support, and speaker identification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to elevenlabs/speech-to-text.\",\"default\":\"elevenlabs/speech-to-text\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the audio file to transcribe\"},{\"name\":\"diarize\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to annotate who is speaking\",\"default\":\"true\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"Language code of the audio\"},{\"name\":\"tag_audio_events\",\"type\":\"boolean\",\"required\":false,\"description\":\"Tag audio events like laughter, applause, etc.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"speech-to-text\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"elevenlabs/speech-to-text\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/elevenlabs/speech-to-text/output_url_0.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"elevenlabs/speech-to-text\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/elevenlabs/speech-to-text/output_url_0.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"elevenlabs/speech-to-text\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/elevenlabs/speech-to-text/output_url_0.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"elevenlabs/speech-to-text\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "ElevenLabs Speech to Text" - modelId: "elevenlabs/speech-to-text" - vendor: "ElevenLabs" - vendorSlug: "elevenlabs" - modelSlug: "speech-to-text" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-02-27T00:00:00Z" - capabilities: ["speech-to-text"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/fashn/tryon/v1.5.md b/model-api-reference/image-generation/fashn/tryon/v1.5.md deleted file mode 100644 index 092a680d..00000000 --- a/model-api-reference/image-generation/fashn/tryon/v1.5.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FASHN Virtual Try-On V1.5 API Reference" -description: "FASHN Virtual Try-On V1.5 API reference for SandBase. Use model fashn/tryon/v1.5 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/fashn/tryon/v1.5" -apiReferenceJson: "{\"title\":\"FASHN Virtual Try-On V1.5\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Tryon V1.5 by FASHN - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to fashn/tryon/v1.5.\",\"default\":\"fashn/tryon/v1.5\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format of the generated images. 'png' is highest quality, while 'jpeg' is faster\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Sets random operations to a fixed state. Use the same seed to reproduce results with the same inputs, or different seed to force different results.\"},{\"name\":\"category\",\"type\":\"string\",\"required\":false,\"description\":\"Category of the garment to try-on. 'auto' will attempt to automatically detect the category of the garment.\",\"default\":\"auto\",\"constraints\":\"Allowed values: tops, bottoms, one-pieces, auto\"},{\"name\":\"garment_photo_type\",\"type\":\"string\",\"required\":false,\"description\":\"Specifies the type of garment photo to optimize internal parameters for better performance. 'model' is for photos of garments on a model, 'flat-lay' is for flat-lay or ghost mannequin images, and 'auto' attempts to automatically detect the photo type.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, model, flat-lay\"},{\"name\":\"num_samples\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of images to generate in a single run. Image generation has a random element in it, so trying multiple images at once increases the chances of getting a good result.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 4\"},{\"name\":\"garment_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL or base64 of the garment image\"},{\"name\":\"model_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL or base64 of the model image\"},{\"name\":\"segmentation_free\",\"type\":\"boolean\",\"required\":false,\"description\":\"Disables human parsing on the model image.\",\"default\":\"true\"},{\"name\":\"moderation_level\",\"type\":\"string\",\"required\":false,\"description\":\"Content moderation level for garment images. 'none' disables moderation, 'permissive' blocks only explicit content, 'conservative' also blocks underwear and swimwear.\",\"default\":\"permissive\",\"constraints\":\"Allowed values: none, permissive, conservative\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"fashn/tryon/v1.5\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"fashn/tryon/v1.5\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"fashn/tryon/v1.5\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"fashn/tryon/v1.5\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FASHN Virtual Try-On V1.5" - modelId: "fashn/tryon/v1.5" - vendor: "FASHN" - vendorSlug: "fashn" - modelSlug: "tryon/v1.5" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-04-21T12:52:40.889Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/fashn/tryon/v1.6.md b/model-api-reference/image-generation/fashn/tryon/v1.6.md deleted file mode 100644 index 5653c113..00000000 --- a/model-api-reference/image-generation/fashn/tryon/v1.6.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "FASHN Virtual Try-On V1.6 API Reference" -description: "FASHN Virtual Try-On V1.6 API reference for SandBase. Use model fashn/tryon/v1.6 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/fashn/tryon/v1.6" -apiReferenceJson: "{\"title\":\"FASHN Virtual Try-On V1.6\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Tryon V1.6 by FASHN - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to fashn/tryon/v1.6.\",\"default\":\"fashn/tryon/v1.6\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format of the generated images. 'png' is highest quality, while 'jpeg' is faster\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Sets random operations to a fixed state. Use the same seed to reproduce results with the same inputs, or different seed to force different results.\"},{\"name\":\"model_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL or base64 of the model image\"},{\"name\":\"garment_photo_type\",\"type\":\"string\",\"required\":false,\"description\":\"Specifies the type of garment photo to optimize internal parameters for better performance. 'model' is for photos of garments on a model, 'flat-lay' is for flat-lay or ghost mannequin images, and 'auto' attempts to automatically detect the photo type.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, model, flat-lay\"},{\"name\":\"segmentation_free\",\"type\":\"boolean\",\"required\":false,\"description\":\"Disables human parsing on the model image.\",\"default\":\"true\"},{\"name\":\"garment_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL or base64 of the garment image\"},{\"name\":\"category\",\"type\":\"string\",\"required\":false,\"description\":\"Category of the garment to try-on. 'auto' will attempt to automatically detect the category of the garment.\",\"default\":\"auto\",\"constraints\":\"Allowed values: tops, bottoms, one-pieces, auto\"},{\"name\":\"moderation_level\",\"type\":\"string\",\"required\":false,\"description\":\"Content moderation level for garment images. 'none' disables moderation, 'permissive' blocks only explicit content, 'conservative' also blocks underwear and swimwear.\",\"default\":\"permissive\",\"constraints\":\"Allowed values: none, permissive, conservative\"},{\"name\":\"num_samples\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of images to generate in a single run. Image generation has a random element in it, so trying multiple images at once increases the chances of getting a good result.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 4\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"fashn/tryon/v1.6\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"fashn/tryon/v1.6\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"fashn/tryon/v1.6\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"fashn/tryon/v1.6\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "FASHN Virtual Try-On V1.6" - modelId: "fashn/tryon/v1.6" - vendor: "FASHN" - vendorSlug: "fashn" - modelSlug: "tryon/v1.6" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-24T20:58:43.252Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/google/gemini-2.5-flash-image/edit.md b/model-api-reference/image-generation/google/gemini-2.5-flash-image/edit.md deleted file mode 100644 index e42faf7f..00000000 --- a/model-api-reference/image-generation/google/gemini-2.5-flash-image/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Gemini 2.5 Flash Image Edit API Reference" -description: "Gemini 2.5 Flash Image Edit API reference for SandBase. Use model google/gemini-2.5-flash-image/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/google/gemini-2.5-flash-image/edit" -apiReferenceJson: "{\"title\":\"Gemini 2.5 Flash Image Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gemini 2.5 Flash Image Edit is Google's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-2.5-flash-image/edit.\",\"default\":\"google/gemini-2.5-flash-image/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt for image editing.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images to use for image-to-image generation or image editing.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-2.5-flash-image/edit\\\",\\n \\\"prompt\\\": \\\"make a photo of the man driving the car down the california coastline\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/gemini-2.5-flash-image/edit\\\",\\n \\\"prompt\\\": \\\"make a photo of the man driving the car down the california coastline\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/gemini-2.5-flash-image/edit\\\",\\n \\\"prompt\\\": \\\"make a photo of the man driving the car down the california coastline\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/gemini-2.5-flash-image/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Gemini 2.5 Flash Image Edit" - modelId: "google/gemini-2.5-flash-image/edit" - vendor: "Google" - vendorSlug: "google" - modelSlug: "gemini-2.5-flash-image/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-26T01:22:27.733Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/google/gemini-3.1-flash-image-preview/edit.md b/model-api-reference/image-generation/google/gemini-3.1-flash-image-preview/edit.md deleted file mode 100644 index e0c7094e..00000000 --- a/model-api-reference/image-generation/google/gemini-3.1-flash-image-preview/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Gemini 3.1 Flash Image Preview API Reference" -description: "Gemini 3.1 Flash Image Preview API reference for SandBase. Use model google/gemini-3.1-flash-image-preview/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/google/gemini-3.1-flash-image-preview/edit" -apiReferenceJson: "{\"title\":\"Gemini 3.1 Flash Image Preview\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gemini 3.1 Flash Image Preview Edit is Google's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3.1-flash-image-preview/edit.\",\"default\":\"google/gemini-3.1-flash-image-preview/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt for image editing.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images to use for image-to-image generation or image editing.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the image to generate.\",\"default\":\"1K\",\"constraints\":\"Allowed values: 0.5K, 1K, 2K, 4K\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"system_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Optional system instruction that steers the model's persona and output style across the request. Leave blank to omit; when provided, it is sent as the system instruction to Gemini (or as a system message on OpenAI-compatible providers).\",\"default\":\"\"},{\"name\":\"thinking_level\",\"type\":\"string\",\"required\":false,\"description\":\"When set, enables model thinking with the given level ('minimal' or 'high') and includes thoughts in the generation. Omit to disable.\",\"constraints\":\"Allowed values: minimal, high\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3.1-flash-image-preview/edit\\\",\\n \\\"prompt\\\": \\\"make a photo of the man driving the car down the california coastline\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/gemini-3.1-flash-image-preview/edit\\\",\\n \\\"prompt\\\": \\\"make a photo of the man driving the car down the california coastline\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/gemini-3.1-flash-image-preview/edit\\\",\\n \\\"prompt\\\": \\\"make a photo of the man driving the car down the california coastline\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/gemini-3.1-flash-image-preview/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Gemini 3.1 Flash Image Preview" - modelId: "google/gemini-3.1-flash-image-preview/edit" - vendor: "Google" - vendorSlug: "google" - modelSlug: "gemini-3.1-flash-image-preview/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-02-26T04:34:19.168Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/google/imagen-3.md b/model-api-reference/image-generation/google/imagen-3.md deleted file mode 100644 index dc466b19..00000000 --- a/model-api-reference/image-generation/google/imagen-3.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Imagen3 API Reference" -description: "Imagen3 API reference for SandBase. Use model google/imagen-3 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/google/imagen-3" -apiReferenceJson: "{\"title\":\"Imagen3\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Imagen 3 by Google - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/imagen-3.\",\"default\":\"google/imagen-3\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing what you want to see\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible generation\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/imagen-3\\\",\\n \\\"prompt\\\": \\\"A serene landscape with mountains reflected in a crystal clear lake at sunset\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/imagen-3\\\",\\n \\\"prompt\\\": \\\"A serene landscape with mountains reflected in a crystal clear lake at sunset\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/imagen-3\\\",\\n \\\"prompt\\\": \\\"A serene landscape with mountains reflected in a crystal clear lake at sunset\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/imagen-3\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Imagen3" - modelId: "google/imagen-3" - vendor: "Google" - vendorSlug: "google" - modelSlug: "imagen-3" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-02-10T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/google/imagen-3/fast.md b/model-api-reference/image-generation/google/imagen-3/fast.md deleted file mode 100644 index 38425fde..00000000 --- a/model-api-reference/image-generation/google/imagen-3/fast.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Imagen3 Fast API Reference" -description: "Imagen3 Fast API reference for SandBase. Use model google/imagen-3/fast with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/google/imagen-3/fast" -apiReferenceJson: "{\"title\":\"Imagen3 Fast\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Imagen 3 Fast is Google's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/imagen-3/fast.\",\"default\":\"google/imagen-3/fast\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing what you want to see\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible generation\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/imagen-3/fast\\\",\\n \\\"prompt\\\": \\\"A serene landscape with mountains reflected in a crystal clear lake at sunset\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/imagen-3/fast\\\",\\n \\\"prompt\\\": \\\"A serene landscape with mountains reflected in a crystal clear lake at sunset\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/imagen-3/fast\\\",\\n \\\"prompt\\\": \\\"A serene landscape with mountains reflected in a crystal clear lake at sunset\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/imagen-3/fast\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Imagen3 Fast" - modelId: "google/imagen-3/fast" - vendor: "Google" - vendorSlug: "google" - modelSlug: "imagen-3/fast" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-02-10T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/google/imagen-4/preview.md b/model-api-reference/image-generation/google/imagen-4/preview.md deleted file mode 100644 index 7cbabcac..00000000 --- a/model-api-reference/image-generation/google/imagen-4/preview.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Imagen 4 API Reference — Google Imagen 4 / Preview API" -description: "Imagen 4 API reference for SandBase. Use model google/imagen-4/preview with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/google/imagen-4/preview" -apiReferenceJson: "{\"title\":\"Imagen 4\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Imagen 4 Preview by Google - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/imagen-4/preview.\",\"default\":\"google/imagen-4/preview\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated image.\",\"default\":\"1K\",\"constraints\":\"Allowed values: 1K, 2K\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/imagen-4/preview\\\",\\n \\\"prompt\\\": \\\"Capture an intimate close-up bathed in warm, soft, late-afternoon sunlight filtering into a quintessential 1960s kitchen. The focal point is a charmingly designed vintage package of all-purpose flour, resting invitingly on a speckled Formica countertop. The packaging itself evokes pure nostalgia: perhaps thick, slightly textured paper in a warm cream tone, adorned with simple, bold typography (a friendly serif or script) in classic red and blue \\\\\\\"ALL-PURPOSE FLOUR\\\\\\\", featuring a delightful illustration like a stylized sheaf of wheat or a cheerful baker character. In smaller bold print at the bottom of the package: \\\\\\\"NET WT 5 LBS (80 OZ) 2.27kg\\\\\\\". Focus sharply on the package details – the slightly soft edges of the paper bag, the texture of the vintage printing, the inviting \\\\\\\"All-Purpose Flour\\\\\\\" text. Subtle hints of the 1960s kitchen frame the shot – the chrome edge of the counter gleaming softly, a blurred glimpse of a pastel yellow ceramic tile backsplash, or the corner of a vintage metal canister set just out of focus. The shallow depth of field keeps attention locked on the beautifully designed package, creating an aesthetic rich in warmth, authenticity, and nostalgic appeal.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/imagen-4/preview\\\",\\n \\\"prompt\\\": \\\"Capture an intimate close-up bathed in warm, soft, late-afternoon sunlight filtering into a quintessential 1960s kitchen. The focal point is a charmingly designed vintage package of all-purpose flour, resting invitingly on a speckled Formica countertop. The packaging itself evokes pure nostalgia: perhaps thick, slightly textured paper in a warm cream tone, adorned with simple, bold typography (a friendly serif or script) in classic red and blue \\\\\\\"ALL-PURPOSE FLOUR\\\\\\\", featuring a delightful illustration like a stylized sheaf of wheat or a cheerful baker character. In smaller bold print at the bottom of the package: \\\\\\\"NET WT 5 LBS (80 OZ) 2.27kg\\\\\\\". Focus sharply on the package details – the slightly soft edges of the paper bag, the texture of the vintage printing, the inviting \\\\\\\"All-Purpose Flour\\\\\\\" text. Subtle hints of the 1960s kitchen frame the shot – the chrome edge of the counter gleaming softly, a blurred glimpse of a pastel yellow ceramic tile backsplash, or the corner of a vintage metal canister set just out of focus. The shallow depth of field keeps attention locked on the beautifully designed package, creating an aesthetic rich in warmth, authenticity, and nostalgic appeal.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/imagen-4/preview\\\",\\n \\\"prompt\\\": \\\"Capture an intimate close-up bathed in warm, soft, late-afternoon sunlight filtering into a quintessential 1960s kitchen. The focal point is a charmingly designed vintage package of all-purpose flour, resting invitingly on a speckled Formica countertop. The packaging itself evokes pure nostalgia: perhaps thick, slightly textured paper in a warm cream tone, adorned with simple, bold typography (a friendly serif or script) in classic red and blue \\\\\\\"ALL-PURPOSE FLOUR\\\\\\\", featuring a delightful illustration like a stylized sheaf of wheat or a cheerful baker character. In smaller bold print at the bottom of the package: \\\\\\\"NET WT 5 LBS (80 OZ) 2.27kg\\\\\\\". Focus sharply on the package details – the slightly soft edges of the paper bag, the texture of the vintage printing, the inviting \\\\\\\"All-Purpose Flour\\\\\\\" text. Subtle hints of the 1960s kitchen frame the shot – the chrome edge of the counter gleaming softly, a blurred glimpse of a pastel yellow ceramic tile backsplash, or the corner of a vintage metal canister set just out of focus. The shallow depth of field keeps attention locked on the beautifully designed package, creating an aesthetic rich in warmth, authenticity, and nostalgic appeal.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/imagen-4/preview\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Imagen 4" - modelId: "google/imagen-4/preview" - vendor: "Google" - vendorSlug: "google" - modelSlug: "imagen-4/preview" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-20T18:53:57.862Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/google/imagen-4/preview/fast.md b/model-api-reference/image-generation/google/imagen-4/preview/fast.md deleted file mode 100644 index 464b6e2f..00000000 --- a/model-api-reference/image-generation/google/imagen-4/preview/fast.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Imagen 4 API Reference — Google Imagen 4 / Preview / Fast API" -description: "Imagen 4 API reference for SandBase. Use model google/imagen-4/preview/fast with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/google/imagen-4/preview/fast" -apiReferenceJson: "{\"title\":\"Imagen 4\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Imagen 4 Preview Fast is Google's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/imagen-4/preview/fast.\",\"default\":\"google/imagen-4/preview/fast\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/imagen-4/preview/fast\\\",\\n \\\"prompt\\\": \\\"Atmospheric narrative illustration depicting a young woman with dark hair styled with a single star clip, eating dumplings at a small round table in a bustling, late-night eatery reminiscent of a vintage Hong Kong diner. The style blends clean linework with textured color fields, evoking a sense of place and story. The mood is intimate contentment amidst vibrant surroundings. Soft, warm overhead lighting from unseen hanging lamps casts gentle highlights on her face and the porcelain plate of dumplings, creating soft-edged shadows on the tiled tabletop and floor. The background features detailed elements like wall menus with stylized illustrations, a retro wall clock, steam rising from a soup bowl, and glimpses of other patrons blurred slightly for depth. The woman, viewed from a slightly high angle, crouches slightly on her chair, intensely focused on her food, rendered with expressive linework defining her pose and features. The color palette mixes muted teal wall tiles and green chairs with pops of warm yellow in her top, pink trousers, red chili oil dish, and ambient light, creating a cozy yet lively feel. Subtle paper texture or digital grain is visible throughout. Focus is sharp on the character and her immediate table setting\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/imagen-4/preview/fast\\\",\\n \\\"prompt\\\": \\\"Atmospheric narrative illustration depicting a young woman with dark hair styled with a single star clip, eating dumplings at a small round table in a bustling, late-night eatery reminiscent of a vintage Hong Kong diner. The style blends clean linework with textured color fields, evoking a sense of place and story. The mood is intimate contentment amidst vibrant surroundings. Soft, warm overhead lighting from unseen hanging lamps casts gentle highlights on her face and the porcelain plate of dumplings, creating soft-edged shadows on the tiled tabletop and floor. The background features detailed elements like wall menus with stylized illustrations, a retro wall clock, steam rising from a soup bowl, and glimpses of other patrons blurred slightly for depth. The woman, viewed from a slightly high angle, crouches slightly on her chair, intensely focused on her food, rendered with expressive linework defining her pose and features. The color palette mixes muted teal wall tiles and green chairs with pops of warm yellow in her top, pink trousers, red chili oil dish, and ambient light, creating a cozy yet lively feel. Subtle paper texture or digital grain is visible throughout. Focus is sharp on the character and her immediate table setting\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/imagen-4/preview/fast\\\",\\n \\\"prompt\\\": \\\"Atmospheric narrative illustration depicting a young woman with dark hair styled with a single star clip, eating dumplings at a small round table in a bustling, late-night eatery reminiscent of a vintage Hong Kong diner. The style blends clean linework with textured color fields, evoking a sense of place and story. The mood is intimate contentment amidst vibrant surroundings. Soft, warm overhead lighting from unseen hanging lamps casts gentle highlights on her face and the porcelain plate of dumplings, creating soft-edged shadows on the tiled tabletop and floor. The background features detailed elements like wall menus with stylized illustrations, a retro wall clock, steam rising from a soup bowl, and glimpses of other patrons blurred slightly for depth. The woman, viewed from a slightly high angle, crouches slightly on her chair, intensely focused on her food, rendered with expressive linework defining her pose and features. The color palette mixes muted teal wall tiles and green chairs with pops of warm yellow in her top, pink trousers, red chili oil dish, and ambient light, creating a cozy yet lively feel. Subtle paper texture or digital grain is visible throughout. Focus is sharp on the character and her immediate table setting\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/imagen-4/preview/fast\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Imagen 4" - modelId: "google/imagen-4/preview/fast" - vendor: "Google" - vendorSlug: "google" - modelSlug: "imagen-4/preview/fast" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-12T01:46:22.503Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/google/imagen-4/preview/ultra.md b/model-api-reference/image-generation/google/imagen-4/preview/ultra.md deleted file mode 100644 index 82a0dcb6..00000000 --- a/model-api-reference/image-generation/google/imagen-4/preview/ultra.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Imagen 4 Ultra API Reference" -description: "Imagen 4 Ultra API reference for SandBase. Use model google/imagen-4/preview/ultra with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/google/imagen-4/preview/ultra" -apiReferenceJson: "{\"title\":\"Imagen 4 Ultra\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Imagen 4 Preview Ultra by Google - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/imagen-4/preview/ultra.\",\"default\":\"google/imagen-4/preview/ultra\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated image.\",\"default\":\"1K\",\"constraints\":\"Allowed values: 1K, 2K\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/imagen-4/preview/ultra\\\",\\n \\\"prompt\\\": \\\"This four-panel comic strip uses a charming, deliberately pixelated art style reminiscent of classic 8-bit video games, featuring simple shapes and a limited, bright color palette dominated by greens, blues, browns, and the dinosaur's iconic grey/black. The setting is a stylized pixel beach. Panel one shows the familiar Google Chrome T-Rex dinosaur, complete with its characteristic pixelated form, wearing tiny pixel sunglasses and lounging on a pixelated beach towel under a blocky yellow sun. Pixelated palm trees sway gently in the background against a blue pixel sky. A caption box with pixelated font reads, \\\\\\\"Even error messages need a vacation.\\\\\\\" Panel two is a close-up of the T-Rex attempting to build a pixel sandcastle. It awkwardly pats a mound of brown pixels with its tiny pixel arms, looking focused. Small pixelated shells dot the sand around it. Panel three depicts the T-Rex joyfully hopping over a series of pixelated cacti planted near the beach, mimicking its game obstacle avoidance. Small \\\\\\\"Boing! Boing!\\\\\\\" sound effect text appears in a blocky font above each jump. A pixelated crab watches from the side, waving its pixel claw. The final panel shows the T-Rex floating peacefully on its back in the blocky blue pixel water, sunglasses still on, with a contented expression. A small thought bubble above it contains pixelated \\\\\\\"Zzz...\\\\\\\" indicating relaxation.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/imagen-4/preview/ultra\\\",\\n \\\"prompt\\\": \\\"This four-panel comic strip uses a charming, deliberately pixelated art style reminiscent of classic 8-bit video games, featuring simple shapes and a limited, bright color palette dominated by greens, blues, browns, and the dinosaur's iconic grey/black. The setting is a stylized pixel beach. Panel one shows the familiar Google Chrome T-Rex dinosaur, complete with its characteristic pixelated form, wearing tiny pixel sunglasses and lounging on a pixelated beach towel under a blocky yellow sun. Pixelated palm trees sway gently in the background against a blue pixel sky. A caption box with pixelated font reads, \\\\\\\"Even error messages need a vacation.\\\\\\\" Panel two is a close-up of the T-Rex attempting to build a pixel sandcastle. It awkwardly pats a mound of brown pixels with its tiny pixel arms, looking focused. Small pixelated shells dot the sand around it. Panel three depicts the T-Rex joyfully hopping over a series of pixelated cacti planted near the beach, mimicking its game obstacle avoidance. Small \\\\\\\"Boing! Boing!\\\\\\\" sound effect text appears in a blocky font above each jump. A pixelated crab watches from the side, waving its pixel claw. The final panel shows the T-Rex floating peacefully on its back in the blocky blue pixel water, sunglasses still on, with a contented expression. A small thought bubble above it contains pixelated \\\\\\\"Zzz...\\\\\\\" indicating relaxation.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/imagen-4/preview/ultra\\\",\\n \\\"prompt\\\": \\\"This four-panel comic strip uses a charming, deliberately pixelated art style reminiscent of classic 8-bit video games, featuring simple shapes and a limited, bright color palette dominated by greens, blues, browns, and the dinosaur's iconic grey/black. The setting is a stylized pixel beach. Panel one shows the familiar Google Chrome T-Rex dinosaur, complete with its characteristic pixelated form, wearing tiny pixel sunglasses and lounging on a pixelated beach towel under a blocky yellow sun. Pixelated palm trees sway gently in the background against a blue pixel sky. A caption box with pixelated font reads, \\\\\\\"Even error messages need a vacation.\\\\\\\" Panel two is a close-up of the T-Rex attempting to build a pixel sandcastle. It awkwardly pats a mound of brown pixels with its tiny pixel arms, looking focused. Small pixelated shells dot the sand around it. Panel three depicts the T-Rex joyfully hopping over a series of pixelated cacti planted near the beach, mimicking its game obstacle avoidance. Small \\\\\\\"Boing! Boing!\\\\\\\" sound effect text appears in a blocky font above each jump. A pixelated crab watches from the side, waving its pixel claw. The final panel shows the T-Rex floating peacefully on its back in the blocky blue pixel water, sunglasses still on, with a contented expression. A small thought bubble above it contains pixelated \\\\\\\"Zzz...\\\\\\\" indicating relaxation.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/imagen-4/preview/ultra\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Imagen 4 Ultra" - modelId: "google/imagen-4/preview/ultra" - vendor: "Google" - vendorSlug: "google" - modelSlug: "imagen-4/preview/ultra" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-20T19:11:16.424Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/google/nano-banana-2-lite.md b/model-api-reference/image-generation/google/nano-banana-2-lite.md index 86c61d99..607d12c5 100644 --- a/model-api-reference/image-generation/google/nano-banana-2-lite.md +++ b/model-api-reference/image-generation/google/nano-banana-2-lite.md @@ -1,12 +1,12 @@ --- -title: "Nano Banana 2 Lite API Reference" -description: "Nano Banana 2 Lite API reference for SandBase. Use model google/nano-banana-2-lite with /v1/run; see request and response examples." +title: "Nano Banana 2 Lite Text to Image API Reference" +description: "Nano Banana 2 Lite Text to Image API reference for SandBase. Use model google/nano-banana-2-lite with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/google/nano-banana-2-lite" -apiReferenceJson: "{\"title\":\"Nano Banana 2 Lite\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Nano Banana 2 Lite by Google - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/nano-banana-2-lite.\",\"default\":\"google/nano-banana-2-lite\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"thinking_level\",\"type\":\"string\",\"required\":false,\"description\":\"When set, enables model thinking with the given level ('minimal' or 'high') and includes thoughts in the generation. Omit to disable.\",\"constraints\":\"Allowed values: minimal, high\"},{\"name\":\"system_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Optional system instruction that steers the model's persona and output style across the request. Leave blank to omit; when provided, it is sent as the system instruction to Gemini (or as a system message on OpenAI-compatible providers).\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/nano-banana-2-lite\\\",\\n \\\"prompt\\\": \\\"An action shot of a black lab swimming in an inground suburban swimming pool. The camera is placed meticulously on the water line, dividing the image in half, revealing both the dogs head above water holding a tennis ball in it's mouth, and it's paws paddling underwater.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/nano-banana-2-lite\\\",\\n \\\"prompt\\\": \\\"An action shot of a black lab swimming in an inground suburban swimming pool. The camera is placed meticulously on the water line, dividing the image in half, revealing both the dogs head above water holding a tennis ball in it's mouth, and it's paws paddling underwater.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/nano-banana-2-lite\\\",\\n \\\"prompt\\\": \\\"An action shot of a black lab swimming in an inground suburban swimming pool. The camera is placed meticulously on the water line, dividing the image in half, revealing both the dogs head above water holding a tennis ball in it's mouth, and it's paws paddling underwater.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/nano-banana-2-lite\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Nano Banana 2 Lite Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Nano Banana 2 Lite by Google - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/nano-banana-2-lite.\",\"default\":\"google/nano-banana-2-lite\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"thinking_level\",\"type\":\"string\",\"required\":false,\"description\":\"When set, enables model thinking with the given level ('minimal' or 'high') and includes thoughts in the generation. Omit to disable.\",\"constraints\":\"Allowed values: minimal, high\"},{\"name\":\"system_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Optional system instruction that steers the model's persona and output style across the request. Leave blank to omit; when provided, it is sent as the system instruction to Gemini (or as a system message on OpenAI-compatible providers).\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/nano-banana-2-lite\\\",\\n \\\"prompt\\\": \\\"An action shot of a black lab swimming in an inground suburban swimming pool. The camera is placed meticulously on the water line, dividing the image in half, revealing both the dogs head above water holding a tennis ball in it's mouth, and it's paws paddling underwater.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/nano-banana-2-lite\\\",\\n \\\"prompt\\\": \\\"An action shot of a black lab swimming in an inground suburban swimming pool. The camera is placed meticulously on the water line, dividing the image in half, revealing both the dogs head above water holding a tennis ball in it's mouth, and it's paws paddling underwater.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/nano-banana-2-lite\\\",\\n \\\"prompt\\\": \\\"An action shot of a black lab swimming in an inground suburban swimming pool. The camera is placed meticulously on the water line, dividing the image in half, revealing both the dogs head above water holding a tennis ball in it's mouth, and it's paws paddling underwater.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/nano-banana-2-lite\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Nano Banana 2 Lite" + modelName: "Nano Banana 2 Lite Text to Image" modelId: "google/nano-banana-2-lite" vendor: "Google" vendorSlug: "google" diff --git a/model-api-reference/image-generation/google/nano-banana-2-lite/edit.md b/model-api-reference/image-generation/google/nano-banana-2-lite/edit.md new file mode 100644 index 00000000..bc8579d6 --- /dev/null +++ b/model-api-reference/image-generation/google/nano-banana-2-lite/edit.md @@ -0,0 +1,21 @@ +--- +title: "Nano Banana 2 Lite Edit API Reference" +description: "Nano Banana 2 Lite Edit API reference for SandBase. Use model google/nano-banana-2-lite/edit with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/google/nano-banana-2-lite/edit" +apiReferenceJson: "{\"title\":\"Nano Banana 2 Lite Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Nano Banana 2 Lite Edit is Google's low-latency, cost-efficient image editing model (Gemini 3.1 Flash Lite Image). Edit and combine supplied images with a text prompt; output is a 1K image.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/nano-banana-2-lite/edit.\",\"default\":\"google/nano-banana-2-lite/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt for image editing.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"The URLs of the images to use for image-to-image generation or image editing.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"system_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Optional system instruction that steers the model's persona and output style across the request. Leave blank to omit; when provided, it is sent as the system instruction to Gemini (or as a system message on OpenAI-compatible providers).\",\"default\":\"\"},{\"name\":\"thinking_level\",\"type\":\"string\",\"required\":false,\"description\":\"When set, enables model thinking with the given level ('minimal' or 'high') and includes thoughts in the generation. Omit to disable.\",\"constraints\":\"Allowed values: minimal, high\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image. Leave empty to keep the aspect ratio of the input image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/nano-banana-2-lite/edit\\\",\\n \\\"prompt\\\": \\\"make a photo of the man driving the car down the california coastline\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/google/nano-banana-2-lite/edit/input_images_0.png\\\",\\n \\\"https://static.sandbase.ai/examples/google/nano-banana-2-lite/edit/input_images_1.png\\\"\\n ],\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/nano-banana-2-lite/edit\\\",\\n \\\"prompt\\\": \\\"make a photo of the man driving the car down the california coastline\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/google/nano-banana-2-lite/edit/input_images_0.png\\\",\\n \\\"https://static.sandbase.ai/examples/google/nano-banana-2-lite/edit/input_images_1.png\\\"\\n ],\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/nano-banana-2-lite/edit\\\",\\n \\\"prompt\\\": \\\"make a photo of the man driving the car down the california coastline\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/google/nano-banana-2-lite/edit/input_images_0.png\\\",\\n \\\"https://static.sandbase.ai/examples/google/nano-banana-2-lite/edit/input_images_1.png\\\"\\n ],\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/nano-banana-2-lite/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Nano Banana 2 Lite Edit" + modelId: "google/nano-banana-2-lite/edit" + vendor: "Google" + vendorSlug: "google" + modelSlug: "nano-banana-2-lite/edit" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-06-30T17:49:04.027Z" + capabilities: ["image-to-image"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/google/nano-banana-2.1.md b/model-api-reference/image-generation/google/nano-banana-2.1.md new file mode 100644 index 00000000..e4fb9f41 --- /dev/null +++ b/model-api-reference/image-generation/google/nano-banana-2.1.md @@ -0,0 +1,21 @@ +--- +title: "Nano Banana 2.1 Text to Image API Reference" +description: "Nano Banana 2.1 Text to Image API reference for SandBase. Use model google/nano-banana-2.1 with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/google/nano-banana-2.1" +apiReferenceJson: "{\"title\":\"Nano Banana 2.1 Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Nano Banana 2.1 is Google's available fast image generation model, with better prompt adherence, cleaner text rendering, extreme aspect ratios and 1K to 4K output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/nano-banana-2.1.\",\"default\":\"google/nano-banana-2.1\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"A photo of a close-up portrait of an elderly Japanese ceramicist with deep, sun-etched wrinkles and a warm, knowing smile. He is carefully inspecting a freshly glazed tea bowl. The setting is his rustic, sun-drenched workshop. The scene is illuminated by soft, golden hour light streaming through a window, highlighting the fine texture of the clay. Captured with an 85mm portrait lens, resulting in a soft, blurred background (bokeh). The overall mood is serene and masterful. Vertical portrait orientation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"1:1\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16, 4:1, 1:4, 8:1, 1:8\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the image to generate.\",\"default\":\"1K\",\"constraints\":\"Allowed values: 1K, 2K, 4K\"},{\"name\":\"enable_web_search\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable Google web search grounding to provide background context for image generation.\",\"default\":\"false\"},{\"name\":\"enable_image_search\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable Google image search to retrieve web images as visual background reference for generation.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/nano-banana-2.1\\\",\\n \\\"prompt\\\": \\\"A photo of a close-up portrait of an elderly Japanese ceramicist with deep, sun-etched wrinkles and a warm, knowing smile. He is carefully inspecting a freshly glazed tea bowl. The setting is his rustic, sun-drenched workshop. The scene is illuminated by soft, golden hour light streaming through a window, highlighting the fine texture of the clay. Captured with an 85mm portrait lens, resulting in a soft, blurred background (bokeh). The overall mood is serene and masterful. Vertical portrait orientation.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/nano-banana-2.1\\\",\\n \\\"prompt\\\": \\\"A photo of a close-up portrait of an elderly Japanese ceramicist with deep, sun-etched wrinkles and a warm, knowing smile. He is carefully inspecting a freshly glazed tea bowl. The setting is his rustic, sun-drenched workshop. The scene is illuminated by soft, golden hour light streaming through a window, highlighting the fine texture of the clay. Captured with an 85mm portrait lens, resulting in a soft, blurred background (bokeh). The overall mood is serene and masterful. Vertical portrait orientation.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/nano-banana-2.1\\\",\\n \\\"prompt\\\": \\\"A photo of a close-up portrait of an elderly Japanese ceramicist with deep, sun-etched wrinkles and a warm, knowing smile. He is carefully inspecting a freshly glazed tea bowl. The setting is his rustic, sun-drenched workshop. The scene is illuminated by soft, golden hour light streaming through a window, highlighting the fine texture of the clay. Captured with an 85mm portrait lens, resulting in a soft, blurred background (bokeh). The overall mood is serene and masterful. Vertical portrait orientation.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/nano-banana-2.1\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Nano Banana 2.1 Text to Image" + modelId: "google/nano-banana-2.1" + vendor: "Google" + vendorSlug: "google" + modelSlug: "nano-banana-2.1" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-10-06T16:02:31.852Z" + capabilities: ["text-to-image","commercial"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/google/nano-banana-2.1/edit.md b/model-api-reference/image-generation/google/nano-banana-2.1/edit.md new file mode 100644 index 00000000..6f3d76b1 --- /dev/null +++ b/model-api-reference/image-generation/google/nano-banana-2.1/edit.md @@ -0,0 +1,21 @@ +--- +title: "Nano Banana 2.1 Edit API Reference" +description: "Nano Banana 2.1 Edit API reference for SandBase. Use model google/nano-banana-2.1/edit with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/google/nano-banana-2.1/edit" +apiReferenceJson: "{\"title\":\"Nano Banana 2.1 Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Nano Banana 2.1 Edit is Google's available fast image editing model, fusing up to 14 reference images with stronger subject consistency and 1K to 4K output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/nano-banana-2.1/edit.\",\"default\":\"google/nano-banana-2.1/edit\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"The URLs of the images to use for image-to-image generation or image editing.\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Make a 3 panel comic in a gritty, noir art style with high-contrast black and white inks. Put the character in a humurous scene.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image. Leave empty to keep the aspect ratio of the input image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16, 4:1, 1:4, 8:1, 1:8\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the image to generate.\",\"default\":\"1K\",\"constraints\":\"Allowed values: 1K, 2K, 4K\"},{\"name\":\"enable_web_search\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable Google web search grounding to provide background context for image generation.\",\"default\":\"false\"},{\"name\":\"enable_image_search\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable Google image search to retrieve web images as visual background reference for generation.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/nano-banana-2.1/edit\\\",\\n \\\"images\\\": [\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/man_in_white_glasses.jpg\\\"\\n ],\\n \\\"prompt\\\": \\\"Make a 3 panel comic in a gritty, noir art style with high-contrast black and white inks. Put the character in a humurous scene.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/nano-banana-2.1/edit\\\",\\n \\\"images\\\": [\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/man_in_white_glasses.jpg\\\"\\n ],\\n \\\"prompt\\\": \\\"Make a 3 panel comic in a gritty, noir art style with high-contrast black and white inks. Put the character in a humurous scene.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/nano-banana-2.1/edit\\\",\\n \\\"images\\\": [\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/man_in_white_glasses.jpg\\\"\\n ],\\n \\\"prompt\\\": \\\"Make a 3 panel comic in a gritty, noir art style with high-contrast black and white inks. Put the character in a humurous scene.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/nano-banana-2.1/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Nano Banana 2.1 Edit" + modelId: "google/nano-banana-2.1/edit" + vendor: "Google" + vendorSlug: "google" + modelSlug: "nano-banana-2.1/edit" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-10-06T16:02:29.662Z" + capabilities: ["image-to-image","commercial"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/google/nano-banana-2.md b/model-api-reference/image-generation/google/nano-banana-2.md index cd9fe4ee..4247c2c7 100644 --- a/model-api-reference/image-generation/google/nano-banana-2.md +++ b/model-api-reference/image-generation/google/nano-banana-2.md @@ -1,12 +1,12 @@ --- -title: "Nano Banana 2 API Reference" -description: "Nano Banana 2 API reference for SandBase. Use model google/nano-banana-2 with /v1/run; see request and response examples." +title: "Nano Banana 2 Text to Image API Reference" +description: "Nano Banana 2 Text to Image API reference for SandBase. Use model google/nano-banana-2 with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/google/nano-banana-2" -apiReferenceJson: "{\"title\":\"Nano Banana 2\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Nano Banana 2 is Google's new state-of-the-art fast image generation and editing model\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/nano-banana-2.\",\"default\":\"google/nano-banana-2\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"A photo of a close-up portrait of an elderly Japanese ceramicist with deep, sun-etched wrinkles and a warm, knowing smile. He is carefully inspecting a freshly glazed tea bowl. The setting is his rustic, sun-drenched workshop. The scene is illuminated by soft, golden hour light streaming through a window, highlighting the fine texture of the clay. Captured with an 85mm portrait lens, resulting in a soft, blurred background (bokeh). The overall mood is serene and masterful. Vertical portrait orientation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"1:1\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16, 4:1, 1:4, 8:1, 1:8\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the image to generate.\",\"default\":\"1K\",\"constraints\":\"Allowed values: 0.5K, 1K, 2K, 4K\"},{\"name\":\"enable_web_search\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable Google web search grounding to provide background context for image generation.\",\"default\":\"false\"},{\"name\":\"enable_image_search\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable Google image search to retrieve web images as visual background reference for generation.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/nano-banana-2\\\",\\n \\\"prompt\\\": \\\"A photo of a close-up portrait of an elderly Japanese ceramicist with deep, sun-etched wrinkles and a warm, knowing smile. He is carefully inspecting a freshly glazed tea bowl. The setting is his rustic, sun-drenched workshop. The scene is illuminated by soft, golden hour light streaming through a window, highlighting the fine texture of the clay. Captured with an 85mm portrait lens, resulting in a soft, blurred background (bokeh). The overall mood is serene and masterful. Vertical portrait orientation.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/nano-banana-2\\\",\\n \\\"prompt\\\": \\\"A photo of a close-up portrait of an elderly Japanese ceramicist with deep, sun-etched wrinkles and a warm, knowing smile. He is carefully inspecting a freshly glazed tea bowl. The setting is his rustic, sun-drenched workshop. The scene is illuminated by soft, golden hour light streaming through a window, highlighting the fine texture of the clay. Captured with an 85mm portrait lens, resulting in a soft, blurred background (bokeh). The overall mood is serene and masterful. Vertical portrait orientation.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/nano-banana-2\\\",\\n \\\"prompt\\\": \\\"A photo of a close-up portrait of an elderly Japanese ceramicist with deep, sun-etched wrinkles and a warm, knowing smile. He is carefully inspecting a freshly glazed tea bowl. The setting is his rustic, sun-drenched workshop. The scene is illuminated by soft, golden hour light streaming through a window, highlighting the fine texture of the clay. Captured with an 85mm portrait lens, resulting in a soft, blurred background (bokeh). The overall mood is serene and masterful. Vertical portrait orientation.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/nano-banana-2\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Nano Banana 2 Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Nano Banana 2 is Google's new state-of-the-art fast image generation and editing model\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/nano-banana-2.\",\"default\":\"google/nano-banana-2\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"A photo of a close-up portrait of an elderly Japanese ceramicist with deep, sun-etched wrinkles and a warm, knowing smile. He is carefully inspecting a freshly glazed tea bowl. The setting is his rustic, sun-drenched workshop. The scene is illuminated by soft, golden hour light streaming through a window, highlighting the fine texture of the clay. Captured with an 85mm portrait lens, resulting in a soft, blurred background (bokeh). The overall mood is serene and masterful. Vertical portrait orientation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"1:1\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16, 4:1, 1:4, 8:1, 1:8\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the image to generate.\",\"default\":\"1K\",\"constraints\":\"Allowed values: 0.5K, 1K, 2K, 4K\"},{\"name\":\"enable_web_search\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable Google web search grounding to provide background context for image generation.\",\"default\":\"false\"},{\"name\":\"enable_image_search\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable Google image search to retrieve web images as visual background reference for generation.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/nano-banana-2\\\",\\n \\\"prompt\\\": \\\"A photo of a close-up portrait of an elderly Japanese ceramicist with deep, sun-etched wrinkles and a warm, knowing smile. He is carefully inspecting a freshly glazed tea bowl. The setting is his rustic, sun-drenched workshop. The scene is illuminated by soft, golden hour light streaming through a window, highlighting the fine texture of the clay. Captured with an 85mm portrait lens, resulting in a soft, blurred background (bokeh). The overall mood is serene and masterful. Vertical portrait orientation.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/nano-banana-2\\\",\\n \\\"prompt\\\": \\\"A photo of a close-up portrait of an elderly Japanese ceramicist with deep, sun-etched wrinkles and a warm, knowing smile. He is carefully inspecting a freshly glazed tea bowl. The setting is his rustic, sun-drenched workshop. The scene is illuminated by soft, golden hour light streaming through a window, highlighting the fine texture of the clay. Captured with an 85mm portrait lens, resulting in a soft, blurred background (bokeh). The overall mood is serene and masterful. Vertical portrait orientation.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/nano-banana-2\\\",\\n \\\"prompt\\\": \\\"A photo of a close-up portrait of an elderly Japanese ceramicist with deep, sun-etched wrinkles and a warm, knowing smile. He is carefully inspecting a freshly glazed tea bowl. The setting is his rustic, sun-drenched workshop. The scene is illuminated by soft, golden hour light streaming through a window, highlighting the fine texture of the clay. Captured with an 85mm portrait lens, resulting in a soft, blurred background (bokeh). The overall mood is serene and masterful. Vertical portrait orientation.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/nano-banana-2\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Nano Banana 2" + modelName: "Nano Banana 2 Text to Image" modelId: "google/nano-banana-2" vendor: "Google" vendorSlug: "google" diff --git a/model-api-reference/image-generation/google/nano-banana-2/edit.md b/model-api-reference/image-generation/google/nano-banana-2/edit.md index 4e7168a1..67730a7a 100644 --- a/model-api-reference/image-generation/google/nano-banana-2/edit.md +++ b/model-api-reference/image-generation/google/nano-banana-2/edit.md @@ -1,12 +1,12 @@ --- -title: "Nano Banana 2 Image Editing API Reference" -description: "Nano Banana 2 Image Editing API reference for SandBase. Use model google/nano-banana-2/edit with /v1/run; see request and response examples." +title: "Nano Banana 2 Edit API Reference" +description: "Nano Banana 2 Edit API reference for SandBase. Use model google/nano-banana-2/edit with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/google/nano-banana-2/edit" -apiReferenceJson: "{\"title\":\"Nano Banana 2 Image Editing\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Nano Banana 2 is Google's new state-of-the-art image generation and editing model\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/nano-banana-2/edit.\",\"default\":\"google/nano-banana-2/edit\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"The URLs of the images to use for image-to-image generation or image editing.\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Make a 3 panel comic in a gritty, noir art style with high-contrast black and white inks. Put the character in a humurous scene.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16, 4:1, 1:4, 8:1, 1:8\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the image to generate.\",\"default\":\"1K\",\"constraints\":\"Allowed values: 0.5K, 1K, 2K, 4K\"},{\"name\":\"enable_web_search\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable Google web search grounding to provide background context for image generation.\",\"default\":\"false\"},{\"name\":\"enable_image_search\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable Google image search to retrieve web images as visual background reference for generation.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/nano-banana-2/edit\\\",\\n \\\"images\\\": [\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/man_in_white_glasses.jpg\\\"\\n ],\\n \\\"prompt\\\": \\\"Make a 3 panel comic in a gritty, noir art style with high-contrast black and white inks. Put the character in a humurous scene.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/nano-banana-2/edit\\\",\\n \\\"images\\\": [\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/man_in_white_glasses.jpg\\\"\\n ],\\n \\\"prompt\\\": \\\"Make a 3 panel comic in a gritty, noir art style with high-contrast black and white inks. Put the character in a humurous scene.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/nano-banana-2/edit\\\",\\n \\\"images\\\": [\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/man_in_white_glasses.jpg\\\"\\n ],\\n \\\"prompt\\\": \\\"Make a 3 panel comic in a gritty, noir art style with high-contrast black and white inks. Put the character in a humurous scene.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/nano-banana-2/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Nano Banana 2 Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Nano Banana 2 is Google's new state-of-the-art image generation and editing model\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/nano-banana-2/edit.\",\"default\":\"google/nano-banana-2/edit\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"The URLs of the images to use for image-to-image generation or image editing.\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Make a 3 panel comic in a gritty, noir art style with high-contrast black and white inks. Put the character in a humurous scene.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image. Leave empty to keep the aspect ratio of the input image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16, 4:1, 1:4, 8:1, 1:8\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the image to generate.\",\"default\":\"1K\",\"constraints\":\"Allowed values: 0.5K, 1K, 2K, 4K\"},{\"name\":\"enable_web_search\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable Google web search grounding to provide background context for image generation.\",\"default\":\"false\"},{\"name\":\"enable_image_search\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable Google image search to retrieve web images as visual background reference for generation.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/nano-banana-2/edit\\\",\\n \\\"images\\\": [\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/man_in_white_glasses.jpg\\\"\\n ],\\n \\\"prompt\\\": \\\"Make a 3 panel comic in a gritty, noir art style with high-contrast black and white inks. Put the character in a humurous scene.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/nano-banana-2/edit\\\",\\n \\\"images\\\": [\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/man_in_white_glasses.jpg\\\"\\n ],\\n \\\"prompt\\\": \\\"Make a 3 panel comic in a gritty, noir art style with high-contrast black and white inks. Put the character in a humurous scene.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/nano-banana-2/edit\\\",\\n \\\"images\\\": [\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/man_in_white_glasses.jpg\\\"\\n ],\\n \\\"prompt\\\": \\\"Make a 3 panel comic in a gritty, noir art style with high-contrast black and white inks. Put the character in a humurous scene.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/nano-banana-2/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Nano Banana 2 Image Editing" + modelName: "Nano Banana 2 Edit" modelId: "google/nano-banana-2/edit" vendor: "Google" vendorSlug: "google" diff --git a/model-api-reference/image-generation/google/nano-banana-lite.md b/model-api-reference/image-generation/google/nano-banana-lite.md deleted file mode 100644 index fa5ea767..00000000 --- a/model-api-reference/image-generation/google/nano-banana-lite.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Nano Banana Lite API Reference" -description: "Nano Banana Lite API reference for SandBase. Use model google/nano-banana-lite with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/google/nano-banana-lite" -apiReferenceJson: "{\"title\":\"Nano Banana Lite\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Nano Banana Lite by Google - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/nano-banana-lite.\",\"default\":\"google/nano-banana-lite\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"thinking_level\",\"type\":\"string\",\"required\":false,\"description\":\"When set, enables model thinking with the given level ('minimal' or 'high') and includes thoughts in the generation. Omit to disable.\",\"constraints\":\"Allowed values: minimal, high\"},{\"name\":\"system_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Optional system instruction that steers the model's persona and output style across the request. Leave blank to omit; when provided, it is sent as the system instruction to Gemini (or as a system message on OpenAI-compatible providers).\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/nano-banana-lite\\\",\\n \\\"prompt\\\": \\\"An action shot of a black lab swimming in an inground suburban swimming pool. The camera is placed meticulously on the water line, dividing the image in half, revealing both the dogs head above water holding a tennis ball in it's mouth, and it's paws paddling underwater.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/nano-banana-lite\\\",\\n \\\"prompt\\\": \\\"An action shot of a black lab swimming in an inground suburban swimming pool. The camera is placed meticulously on the water line, dividing the image in half, revealing both the dogs head above water holding a tennis ball in it's mouth, and it's paws paddling underwater.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/nano-banana-lite\\\",\\n \\\"prompt\\\": \\\"An action shot of a black lab swimming in an inground suburban swimming pool. The camera is placed meticulously on the water line, dividing the image in half, revealing both the dogs head above water holding a tennis ball in it's mouth, and it's paws paddling underwater.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/nano-banana-lite\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Nano Banana Lite" - modelId: "google/nano-banana-lite" - vendor: "Google" - vendorSlug: "google" - modelSlug: "nano-banana-lite" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-30T17:49:15.712Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/google/nano-banana-lite/edit.md b/model-api-reference/image-generation/google/nano-banana-lite/edit.md deleted file mode 100644 index 873f592d..00000000 --- a/model-api-reference/image-generation/google/nano-banana-lite/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Nano Banana Lite Edit API Reference" -description: "Nano Banana Lite Edit API reference for SandBase. Use model google/nano-banana-lite/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/google/nano-banana-lite/edit" -apiReferenceJson: "{\"title\":\"Nano Banana Lite Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Nano Banana Lite Edit is Google's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/nano-banana-lite/edit.\",\"default\":\"google/nano-banana-lite/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt for image editing.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images to use for image-to-image generation or image editing.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"system_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Optional system instruction that steers the model's persona and output style across the request. Leave blank to omit; when provided, it is sent as the system instruction to Gemini (or as a system message on OpenAI-compatible providers).\",\"default\":\"\"},{\"name\":\"thinking_level\",\"type\":\"string\",\"required\":false,\"description\":\"When set, enables model thinking with the given level ('minimal' or 'high') and includes thoughts in the generation. Omit to disable.\",\"constraints\":\"Allowed values: minimal, high\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/nano-banana-lite/edit\\\",\\n \\\"prompt\\\": \\\"make a photo of the man driving the car down the california coastline\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/nano-banana-lite/edit\\\",\\n \\\"prompt\\\": \\\"make a photo of the man driving the car down the california coastline\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/nano-banana-lite/edit\\\",\\n \\\"prompt\\\": \\\"make a photo of the man driving the car down the california coastline\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/nano-banana-lite/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Nano Banana Lite Edit" - modelId: "google/nano-banana-lite/edit" - vendor: "Google" - vendorSlug: "google" - modelSlug: "nano-banana-lite/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-30T17:49:04.027Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/google/nano-banana-pro.md b/model-api-reference/image-generation/google/nano-banana-pro.md index 68ef22a3..0850f2fd 100644 --- a/model-api-reference/image-generation/google/nano-banana-pro.md +++ b/model-api-reference/image-generation/google/nano-banana-pro.md @@ -1,12 +1,12 @@ --- -title: "Nano Banana Pro API Reference" -description: "Nano Banana Pro API reference for SandBase. Use model google/nano-banana-pro with /v1/run; see request and response examples." +title: "Nano Banana Pro Text to Image API Reference" +description: "Nano Banana Pro Text to Image API reference for SandBase. Use model google/nano-banana-pro with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/google/nano-banana-pro" -apiReferenceJson: "{\"title\":\"Nano Banana Pro\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Nano Banana Pro is Google's new state-of-the-art image generation and editing model\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/nano-banana-pro.\",\"default\":\"google/nano-banana-pro\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"a cat sitting on a windowsill, golden hour lighting, photorealistic\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"1:1\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the image to generate.\",\"default\":\"1K\",\"constraints\":\"Allowed values: 1K, 2K, 4K\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/nano-banana-pro\\\",\\n \\\"prompt\\\": \\\"a cat sitting on a windowsill, golden hour lighting, photorealistic\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/nano-banana-pro\\\",\\n \\\"prompt\\\": \\\"a cat sitting on a windowsill, golden hour lighting, photorealistic\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/nano-banana-pro\\\",\\n \\\"prompt\\\": \\\"a cat sitting on a windowsill, golden hour lighting, photorealistic\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/nano-banana-pro\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Nano Banana Pro Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Nano Banana Pro is Google's new state-of-the-art image generation and editing model\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/nano-banana-pro.\",\"default\":\"google/nano-banana-pro\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"a cat sitting on a windowsill, golden hour lighting, photorealistic\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"1:1\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the image to generate.\",\"default\":\"1K\",\"constraints\":\"Allowed values: 1K, 2K, 4K\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/nano-banana-pro\\\",\\n \\\"prompt\\\": \\\"a cat sitting on a windowsill, golden hour lighting, photorealistic\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/nano-banana-pro\\\",\\n \\\"prompt\\\": \\\"a cat sitting on a windowsill, golden hour lighting, photorealistic\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/nano-banana-pro\\\",\\n \\\"prompt\\\": \\\"a cat sitting on a windowsill, golden hour lighting, photorealistic\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/nano-banana-pro\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Nano Banana Pro" + modelName: "Nano Banana Pro Text to Image" modelId: "google/nano-banana-pro" vendor: "Google" vendorSlug: "google" diff --git a/model-api-reference/image-generation/google/nano-banana-pro/edit.md b/model-api-reference/image-generation/google/nano-banana-pro/edit.md index f02be276..02ba9bf9 100644 --- a/model-api-reference/image-generation/google/nano-banana-pro/edit.md +++ b/model-api-reference/image-generation/google/nano-banana-pro/edit.md @@ -1,12 +1,12 @@ --- -title: "Nano Banana Pro Image Editing API Reference" -description: "Nano Banana Pro Image Editing API reference for SandBase. Use model google/nano-banana-pro/edit with /v1/run; see request and response examples." +title: "Nano Banana Pro Edit API Reference" +description: "Nano Banana Pro Edit API reference for SandBase. Use model google/nano-banana-pro/edit with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/google/nano-banana-pro/edit" -apiReferenceJson: "{\"title\":\"Nano Banana Pro Image Editing\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Nano Banana Pro is Google's new state-of-the-art image generation and editing model\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/nano-banana-pro/edit.\",\"default\":\"google/nano-banana-pro/edit\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"The URLs of the images to use for image-to-image generation or image editing.\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Create a professional e-commerce fashion photo. Take the blue floral dress from the first image and let the woman from the second image wear it. Generate a realistic, full-body shot of the woman wearing the dress, with the lighting and shadows adjusted to match the outdoor environment.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the image to generate.\",\"default\":\"1K\",\"constraints\":\"Allowed values: 1K, 2K, 4K\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/nano-banana-pro/edit\\\",\\n \\\"images\\\": [\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/dress.png\\\",\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/model.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Create a professional e-commerce fashion photo. Take the blue floral dress from the first image and let the woman from the second image wear it. Generate a realistic, full-body shot of the woman wearing the dress, with the lighting and shadows adjusted to match the outdoor environment.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/nano-banana-pro/edit\\\",\\n \\\"images\\\": [\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/dress.png\\\",\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/model.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Create a professional e-commerce fashion photo. Take the blue floral dress from the first image and let the woman from the second image wear it. Generate a realistic, full-body shot of the woman wearing the dress, with the lighting and shadows adjusted to match the outdoor environment.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/nano-banana-pro/edit\\\",\\n \\\"images\\\": [\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/dress.png\\\",\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/model.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Create a professional e-commerce fashion photo. Take the blue floral dress from the first image and let the woman from the second image wear it. Generate a realistic, full-body shot of the woman wearing the dress, with the lighting and shadows adjusted to match the outdoor environment.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/nano-banana-pro/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Nano Banana Pro Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Nano Banana Pro is Google's new state-of-the-art image generation and editing model\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/nano-banana-pro/edit.\",\"default\":\"google/nano-banana-pro/edit\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"The URLs of the images to use for image-to-image generation or image editing.\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Create a professional e-commerce fashion photo. Take the blue floral dress from the first image and let the woman from the second image wear it. Generate a realistic, full-body shot of the woman wearing the dress, with the lighting and shadows adjusted to match the outdoor environment.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image. Leave empty to keep the aspect ratio of the input image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the image to generate.\",\"default\":\"1K\",\"constraints\":\"Allowed values: 1K, 2K, 4K\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/nano-banana-pro/edit\\\",\\n \\\"images\\\": [\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/dress.png\\\",\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/model.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Create a professional e-commerce fashion photo. Take the blue floral dress from the first image and let the woman from the second image wear it. Generate a realistic, full-body shot of the woman wearing the dress, with the lighting and shadows adjusted to match the outdoor environment.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/nano-banana-pro/edit\\\",\\n \\\"images\\\": [\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/dress.png\\\",\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/model.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Create a professional e-commerce fashion photo. Take the blue floral dress from the first image and let the woman from the second image wear it. Generate a realistic, full-body shot of the woman wearing the dress, with the lighting and shadows adjusted to match the outdoor environment.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/nano-banana-pro/edit\\\",\\n \\\"images\\\": [\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/dress.png\\\",\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/model.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Create a professional e-commerce fashion photo. Take the blue floral dress from the first image and let the woman from the second image wear it. Generate a realistic, full-body shot of the woman wearing the dress, with the lighting and shadows adjusted to match the outdoor environment.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/nano-banana-pro/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Nano Banana Pro Image Editing" + modelName: "Nano Banana Pro Edit" modelId: "google/nano-banana-pro/edit" vendor: "Google" vendorSlug: "google" diff --git a/model-api-reference/image-generation/google/nano-banana.md b/model-api-reference/image-generation/google/nano-banana.md deleted file mode 100644 index d05a6233..00000000 --- a/model-api-reference/image-generation/google/nano-banana.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Nano Banana API Reference" -description: "Nano Banana API reference for SandBase. Use model google/nano-banana with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/google/nano-banana" -apiReferenceJson: "{\"title\":\"Nano Banana\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Google's famous original image generation and editing model.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/nano-banana.\",\"default\":\"google/nano-banana\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"A high-resolution, studio-lit product photograph of a minimalist ceramic coffee mug in matte black, presented on a polished concrete surface. The lighting is a three-point softbox setup designed to create soft, diffused highlights and eliminate harsh shadows. The camera angle is a slightly elevated 45-degree shot to showcase its clean lines. Ultra-realistic, with sharp focus on the steam rising from the coffee. Square image.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"1:1\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the image to generate.\",\"default\":\"1K\",\"constraints\":\"Allowed values: 1K, 2K, 4K\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/nano-banana\\\",\\n \\\"prompt\\\": \\\"A high-resolution, studio-lit product photograph of a minimalist ceramic coffee mug in matte black, presented on a polished concrete surface. The lighting is a three-point softbox setup designed to create soft, diffused highlights and eliminate harsh shadows. The camera angle is a slightly elevated 45-degree shot to showcase its clean lines. Ultra-realistic, with sharp focus on the steam rising from the coffee. Square image.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/nano-banana\\\",\\n \\\"prompt\\\": \\\"A high-resolution, studio-lit product photograph of a minimalist ceramic coffee mug in matte black, presented on a polished concrete surface. The lighting is a three-point softbox setup designed to create soft, diffused highlights and eliminate harsh shadows. The camera angle is a slightly elevated 45-degree shot to showcase its clean lines. Ultra-realistic, with sharp focus on the steam rising from the coffee. Square image.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/nano-banana\\\",\\n \\\"prompt\\\": \\\"A high-resolution, studio-lit product photograph of a minimalist ceramic coffee mug in matte black, presented on a polished concrete surface. The lighting is a three-point softbox setup designed to create soft, diffused highlights and eliminate harsh shadows. The camera angle is a slightly elevated 45-degree shot to showcase its clean lines. Ultra-realistic, with sharp focus on the steam rising from the coffee. Square image.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/nano-banana\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Nano Banana" - modelId: "google/nano-banana" - vendor: "Google" - vendorSlug: "google" - modelSlug: "nano-banana" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-19T22:11:04.357Z" - capabilities: ["text-to-image","commercial"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/google/nano-banana/edit.md b/model-api-reference/image-generation/google/nano-banana/edit.md deleted file mode 100644 index c9f2e5a5..00000000 --- a/model-api-reference/image-generation/google/nano-banana/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Nano Banana Image Editing API Reference" -description: "Nano Banana Image Editing API reference for SandBase. Use model google/nano-banana/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/google/nano-banana/edit" -apiReferenceJson: "{\"title\":\"Nano Banana Image Editing\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Nano Banana Pro is Google's new state-of-the-art image generation and editing model\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/nano-banana/edit.\",\"default\":\"google/nano-banana/edit\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"The URLs of the images to use for image-to-image generation or image editing.\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Create a professional e-commerce fashion photo. Take the blue floral dress from the first image and let the woman from the second image wear it. Generate a realistic, full-body shot of the woman wearing the dress, with the lighting and shadows adjusted to match the outdoor environment.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the image to generate.\",\"default\":\"1K\",\"constraints\":\"Allowed values: 1K, 2K, 4K\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/nano-banana/edit\\\",\\n \\\"images\\\": [\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/dress.png\\\",\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/model.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Create a professional e-commerce fashion photo. Take the blue floral dress from the first image and let the woman from the second image wear it. Generate a realistic, full-body shot of the woman wearing the dress, with the lighting and shadows adjusted to match the outdoor environment.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/nano-banana/edit\\\",\\n \\\"images\\\": [\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/dress.png\\\",\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/model.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Create a professional e-commerce fashion photo. Take the blue floral dress from the first image and let the woman from the second image wear it. Generate a realistic, full-body shot of the woman wearing the dress, with the lighting and shadows adjusted to match the outdoor environment.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/nano-banana/edit\\\",\\n \\\"images\\\": [\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/dress.png\\\",\\n \\\"https://ai.google.dev/static/gemini-api/docs/images/model.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Create a professional e-commerce fashion photo. Take the blue floral dress from the first image and let the woman from the second image wear it. Generate a realistic, full-body shot of the woman wearing the dress, with the lighting and shadows adjusted to match the outdoor environment.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/nano-banana/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Nano Banana Image Editing" - modelId: "google/nano-banana/edit" - vendor: "Google" - vendorSlug: "google" - modelSlug: "nano-banana/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-19T22:16:18.949Z" - capabilities: ["image-to-image","commercial"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/hidream-ai/hidream-e1/1.md b/model-api-reference/image-generation/hidream-ai/hidream-e1/1.md deleted file mode 100644 index ca8ea848..00000000 --- a/model-api-reference/image-generation/hidream-ai/hidream-e1/1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "HiDream E1 API Reference" -description: "HiDream E1 API reference for SandBase. Use model hidream-ai/hidream-e1/1 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/hidream-ai/hidream-e1/1" -apiReferenceJson: "{\"title\":\"HiDream E1\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hidream E1 1 by hidream-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to hidream-ai/hidream-e1/1.\",\"default\":\"hidream-ai/hidream-e1/1\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of an input image to edit.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible generation.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"hidream-ai/hidream-e1/1\\\",\\n \\\"prompt\\\": \\\"Convert the image into a 3D animated style.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/hidream-ai/hidream-e1/1/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"hidream-ai/hidream-e1/1\\\",\\n \\\"prompt\\\": \\\"Convert the image into a 3D animated style.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/hidream-ai/hidream-e1/1/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"hidream-ai/hidream-e1/1\\\",\\n \\\"prompt\\\": \\\"Convert the image into a 3D animated style.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/hidream-ai/hidream-e1/1/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"hidream-ai/hidream-e1/1\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "HiDream E1" - modelId: "hidream-ai/hidream-e1/1" - vendor: "HiDream" - vendorSlug: "hidream-ai" - modelSlug: "hidream-e1/1" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/hidream-ai/hidream-e1/full.md b/model-api-reference/image-generation/hidream-ai/hidream-e1/full.md deleted file mode 100644 index efd7df4c..00000000 --- a/model-api-reference/image-generation/hidream-ai/hidream-e1/full.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "HiDream E1 Full API Reference" -description: "HiDream E1 Full API reference for SandBase. Use model hidream-ai/hidream-e1/full with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/hidream-ai/hidream-e1/full" -apiReferenceJson: "{\"title\":\"HiDream E1 Full\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hidream E1 Full is hidream-ai's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to hidream-ai/hidream-e1/full.\",\"default\":\"hidream-ai/hidream-e1/full\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of an input image to edit.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible generation.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"hidream-ai/hidream-e1/full\\\",\\n \\\"prompt\\\": \\\"Convert the image into a 3D animated style.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/hidream-ai/hidream-e1/full/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"hidream-ai/hidream-e1/full\\\",\\n \\\"prompt\\\": \\\"Convert the image into a 3D animated style.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/hidream-ai/hidream-e1/full/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"hidream-ai/hidream-e1/full\\\",\\n \\\"prompt\\\": \\\"Convert the image into a 3D animated style.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/hidream-ai/hidream-e1/full/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"hidream-ai/hidream-e1/full\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "HiDream E1 Full" - modelId: "hidream-ai/hidream-e1/full" - vendor: "HiDream" - vendorSlug: "hidream-ai" - modelSlug: "hidream-e1/full" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/hidream-ai/hidream-i1/dev.md b/model-api-reference/image-generation/hidream-ai/hidream-i1/dev.md deleted file mode 100644 index fffffee8..00000000 --- a/model-api-reference/image-generation/hidream-ai/hidream-i1/dev.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "HiDream I1 Dev API Reference" -description: "HiDream I1 Dev API reference for SandBase. Use model hidream-ai/hidream-i1/dev with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/hidream-ai/hidream-i1/dev" -apiReferenceJson: "{\"title\":\"HiDream I1 Dev\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hidream I1 Dev by hidream-ai - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to hidream-ai/hidream-i1/dev.\",\"default\":\"hidream-ai/hidream-i1/dev\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible generation.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"hidream-ai/hidream-i1/dev\\\",\\n \\\"prompt\\\": \\\"a cat holding a skateboard which has 'fal' written on it in red spray paint\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"hidream-ai/hidream-i1/dev\\\",\\n \\\"prompt\\\": \\\"a cat holding a skateboard which has 'fal' written on it in red spray paint\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"hidream-ai/hidream-i1/dev\\\",\\n \\\"prompt\\\": \\\"a cat holding a skateboard which has 'fal' written on it in red spray paint\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"hidream-ai/hidream-i1/dev\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "HiDream I1 Dev" - modelId: "hidream-ai/hidream-i1/dev" - vendor: "HiDream" - vendorSlug: "hidream-ai" - modelSlug: "hidream-i1/dev" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-04-11T00:44:31.342Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/hidream-ai/hidream-i1/fast.md b/model-api-reference/image-generation/hidream-ai/hidream-i1/fast.md deleted file mode 100644 index a245d455..00000000 --- a/model-api-reference/image-generation/hidream-ai/hidream-i1/fast.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "HiDream I1 Fast API Reference" -description: "HiDream I1 Fast API reference for SandBase. Use model hidream-ai/hidream-i1/fast with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/hidream-ai/hidream-i1/fast" -apiReferenceJson: "{\"title\":\"HiDream I1 Fast\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hidream I1 Fast is hidream-ai's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to hidream-ai/hidream-i1/fast.\",\"default\":\"hidream-ai/hidream-i1/fast\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible generation.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"hidream-ai/hidream-i1/fast\\\",\\n \\\"prompt\\\": \\\"a cat holding a skateboard which has 'fal' written on it in red spray paint\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"hidream-ai/hidream-i1/fast\\\",\\n \\\"prompt\\\": \\\"a cat holding a skateboard which has 'fal' written on it in red spray paint\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"hidream-ai/hidream-i1/fast\\\",\\n \\\"prompt\\\": \\\"a cat holding a skateboard which has 'fal' written on it in red spray paint\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"hidream-ai/hidream-i1/fast\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "HiDream I1 Fast" - modelId: "hidream-ai/hidream-i1/fast" - vendor: "HiDream" - vendorSlug: "hidream-ai" - modelSlug: "hidream-i1/fast" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-04-11T00:43:21.382Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/hidream-ai/hidream-i1/full.md b/model-api-reference/image-generation/hidream-ai/hidream-i1/full.md deleted file mode 100644 index c2b983ea..00000000 --- a/model-api-reference/image-generation/hidream-ai/hidream-i1/full.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "HiDream I1 Full API Reference" -description: "HiDream I1 Full API reference for SandBase. Use model hidream-ai/hidream-i1/full with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/hidream-ai/hidream-i1/full" -apiReferenceJson: "{\"title\":\"HiDream I1 Full\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hidream I1 Full is hidream-ai's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to hidream-ai/hidream-i1/full.\",\"default\":\"hidream-ai/hidream-i1/full\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible generation.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"hidream-ai/hidream-i1/full\\\",\\n \\\"prompt\\\": \\\"a cat holding a skateboard which has 'fal' written on it in red spray paint\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"hidream-ai/hidream-i1/full\\\",\\n \\\"prompt\\\": \\\"a cat holding a skateboard which has 'fal' written on it in red spray paint\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"hidream-ai/hidream-i1/full\\\",\\n \\\"prompt\\\": \\\"a cat holding a skateboard which has 'fal' written on it in red spray paint\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"hidream-ai/hidream-i1/full\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "HiDream I1 Full" - modelId: "hidream-ai/hidream-i1/full" - vendor: "HiDream" - vendorSlug: "hidream-ai" - modelSlug: "hidream-i1/full" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-04-11T00:45:47.743Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/hidream-ai/hidream-i1/full/edit.md b/model-api-reference/image-generation/hidream-ai/hidream-i1/full/edit.md deleted file mode 100644 index 439c4b07..00000000 --- a/model-api-reference/image-generation/hidream-ai/hidream-i1/full/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "HiDream I1 Full Edit API Reference" -description: "HiDream I1 Full Edit API reference for SandBase. Use model hidream-ai/hidream-i1/full/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/hidream-ai/hidream-i1/full/edit" -apiReferenceJson: "{\"title\":\"HiDream I1 Full Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hidream I1 Full Edit by hidream-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to hidream-ai/hidream-i1/full/edit.\",\"default\":\"hidream-ai/hidream-i1/full/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The image URL to generate an image from.\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"Denoising strength for image-to-image generation.\",\"default\":\"0.75\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible generation.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"hidream-ai/hidream-i1/full/edit\\\",\\n \\\"prompt\\\": \\\"An old man\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/hidream-ai/hidream-i1/full/edit/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"hidream-ai/hidream-i1/full/edit\\\",\\n \\\"prompt\\\": \\\"An old man\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/hidream-ai/hidream-i1/full/edit/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"hidream-ai/hidream-i1/full/edit\\\",\\n \\\"prompt\\\": \\\"An old man\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/hidream-ai/hidream-i1/full/edit/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"hidream-ai/hidream-i1/full/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "HiDream I1 Full Edit" - modelId: "hidream-ai/hidream-i1/full/edit" - vendor: "HiDream" - vendorSlug: "hidream-ai" - modelSlug: "hidream-i1/full/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-05T19:06:43.06Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/hidream-ai/hidream-o1.md b/model-api-reference/image-generation/hidream-ai/hidream-o1.md deleted file mode 100644 index be8d3e26..00000000 --- a/model-api-reference/image-generation/hidream-ai/hidream-o1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "HiDream O1 API Reference" -description: "HiDream O1 API reference for SandBase. Use model hidream-ai/hidream-o1 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/hidream-ai/hidream-o1" -apiReferenceJson: "{\"title\":\"HiDream O1\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hidream O1 by hidream-ai - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to hidream-ai/hidream-o1.\",\"default\":\"hidream-ai/hidream-o1\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for image generation, editing, or subject-driven personalization.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Optional reference images. Use none for text-to-image, one for image editing, or multiple for subject-driven personalization.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible generation.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"hidream-ai/hidream-o1\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a ceramic mug on a marble counter with the words \\\\\\\"fal loves HiDream\\\\\\\" printed on the mug.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"hidream-ai/hidream-o1\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a ceramic mug on a marble counter with the words \\\\\\\"fal loves HiDream\\\\\\\" printed on the mug.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"hidream-ai/hidream-o1\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a ceramic mug on a marble counter with the words \\\\\\\"fal loves HiDream\\\\\\\" printed on the mug.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"hidream-ai/hidream-o1\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "HiDream O1" - modelId: "hidream-ai/hidream-o1" - vendor: "HiDream" - vendorSlug: "hidream-ai" - modelSlug: "hidream-o1" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-05-09T22:28:20.111Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/hidream-ai/hidream-o1/dev/edit.md b/model-api-reference/image-generation/hidream-ai/hidream-o1/dev/edit.md deleted file mode 100644 index db7d5537..00000000 --- a/model-api-reference/image-generation/hidream-ai/hidream-o1/dev/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "HiDream O1 Dev Edit API Reference" -description: "HiDream O1 Dev Edit API reference for SandBase. Use model hidream-ai/hidream-o1/dev/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/hidream-ai/hidream-o1/dev/edit" -apiReferenceJson: "{\"title\":\"HiDream O1 Dev Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hidream O1 Dev Edit is hidream-ai's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to hidream-ai/hidream-o1/dev/edit.\",\"default\":\"hidream-ai/hidream-o1/dev/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for image generation, editing, or subject-driven personalization.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for image editing or subject-driven personalization.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible generation.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"hidream-ai/hidream-o1/dev/edit\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a ceramic mug on a marble counter, soft window light, shallow depth of field.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"hidream-ai/hidream-o1/dev/edit\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a ceramic mug on a marble counter, soft window light, shallow depth of field.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"hidream-ai/hidream-o1/dev/edit\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a ceramic mug on a marble counter, soft window light, shallow depth of field.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"hidream-ai/hidream-o1/dev/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "HiDream O1 Dev Edit" - modelId: "hidream-ai/hidream-o1/dev/edit" - vendor: "HiDream" - vendorSlug: "hidream-ai" - modelSlug: "hidream-o1/dev/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-05-09T22:30:26.852Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/hidream-ai/hidream-o1/edit.md b/model-api-reference/image-generation/hidream-ai/hidream-o1/edit.md deleted file mode 100644 index 0a5f5433..00000000 --- a/model-api-reference/image-generation/hidream-ai/hidream-o1/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "HiDream O1 Edit API Reference" -description: "HiDream O1 Edit API reference for SandBase. Use model hidream-ai/hidream-o1/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/hidream-ai/hidream-o1/edit" -apiReferenceJson: "{\"title\":\"HiDream O1 Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hidream O1 Edit is hidream-ai's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to hidream-ai/hidream-o1/edit.\",\"default\":\"hidream-ai/hidream-o1/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for image generation, editing, or subject-driven personalization.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for image editing or subject-driven personalization.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible generation.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"hidream-ai/hidream-o1/edit\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a ceramic mug on a marble counter with the words \\\\\\\"fal loves HiDream\\\\\\\" printed on the mug.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"hidream-ai/hidream-o1/edit\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a ceramic mug on a marble counter with the words \\\\\\\"fal loves HiDream\\\\\\\" printed on the mug.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"hidream-ai/hidream-o1/edit\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a ceramic mug on a marble counter with the words \\\\\\\"fal loves HiDream\\\\\\\" printed on the mug.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"hidream-ai/hidream-o1/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "HiDream O1 Edit" - modelId: "hidream-ai/hidream-o1/edit" - vendor: "HiDream" - vendorSlug: "hidream-ai" - modelSlug: "hidream-o1/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-05-09T22:29:40.245Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/hyper3d/rodin.md b/model-api-reference/image-generation/hyper3d/rodin.md deleted file mode 100644 index 60e99e35..00000000 --- a/model-api-reference/image-generation/hyper3d/rodin.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hyper3D Rodin API Reference" -description: "Hyper3D Rodin API reference for SandBase. Use model hyper3d/rodin with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/hyper3d/rodin" -apiReferenceJson: "{\"title\":\"Hyper3D Rodin\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Rodin is hyper3d's image-to-3D AI model. Transform photographs into production-ready 3D meshes with accurate geometry and texture mapping.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to hyper3d/rodin.\",\"default\":\"hyper3d/rodin\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"A textual prompt to guide model generation. Required for Text-to-3D mode. Optional for Image-to-3D mode.\",\"default\":\"\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed value for randomization, ranging from 0 to 65535. Optional.\",\"constraints\":\"Range: 0 to 65535\"},{\"name\":\"condition_mode\",\"type\":\"string\",\"required\":false,\"description\":\"For fuse mode, One or more images are required.It will generate a model by extracting and fusing features of objects from multiple images.For concat mode, need to upload multiple multi-view images of the same object and generate the model. (You can upload multi-view images in any order, regardless of the order of view.)\",\"default\":\"concat\",\"constraints\":\"Allowed values: fuse, concat\"},{\"name\":\"tier\",\"type\":\"string\",\"required\":false,\"description\":\"Tier of generation. For Rodin Sketch, set to Sketch. For Rodin Regular, set to Regular.\",\"default\":\"Regular\",\"constraints\":\"Allowed values: Regular, Sketch\"},{\"name\":\"use_hyper\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to export the model using hyper mode. Default is false.\",\"default\":\"false\"},{\"name\":\"TAPose\",\"type\":\"boolean\",\"required\":false,\"description\":\"When generating the human-like model, this parameter control the generation result to T/A Pose.\",\"default\":\"false\"},{\"name\":\"geometry_file_format\",\"type\":\"string\",\"required\":false,\"description\":\"Format of the geometry file. Possible values: glb, usdz, fbx, obj, stl. Default is glb.\",\"default\":\"glb\",\"constraints\":\"Allowed values: glb, usdz, fbx, obj, stl\"},{\"name\":\"input_image_urls\",\"type\":\"array\",\"required\":false,\"description\":\"URL of images to use while generating the 3D model. Required for Image-to-3D mode. Optional for Text-to-3D mode.\"},{\"name\":\"bbox_condition\",\"type\":\"array\",\"required\":false,\"description\":\"An array that specifies the dimensions and scaling factor of the bounding box. Typically, this array contains 3 elements, Length(X-axis), Width(Y-axis) and Height(Z-axis).\"},{\"name\":\"addons\",\"type\":\"string\",\"required\":false,\"description\":\"Generation add-on features. Default is []. Possible values are HighPack. The HighPack option will provide 4K resolution textures instead of the default 1K, as well as models with high-poly. It will cost triple the billable units.\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Generation quality. Possible values: high, medium, low, extra-low. Default is medium.\",\"default\":\"medium\",\"constraints\":\"Allowed values: high, medium, low, extra-low\"},{\"name\":\"material\",\"type\":\"string\",\"required\":false,\"description\":\"Material type. Possible values: PBR, Shaded. Default is PBR.\",\"default\":\"PBR\",\"constraints\":\"Allowed values: PBR, Shaded\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"hyper3d/rodin\\\",\\n \\\"prompt\\\": \\\"\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"hyper3d/rodin\\\",\\n \\\"prompt\\\": \\\"\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"hyper3d/rodin\\\",\\n \\\"prompt\\\": \\\"\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"hyper3d/rodin\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hyper3D Rodin" - modelId: "hyper3d/rodin" - vendor: "hyper3d" - vendorSlug: "hyper3d" - modelSlug: "rodin" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-12-16T00:00:00Z" - capabilities: ["image-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/hyper3d/rodin/2.5/fast/image-to-3d.md b/model-api-reference/image-generation/hyper3d/rodin/2.5/fast/image-to-3d.md new file mode 100644 index 00000000..ad478605 --- /dev/null +++ b/model-api-reference/image-generation/hyper3d/rodin/2.5/fast/image-to-3d.md @@ -0,0 +1,21 @@ +--- +title: "Rodin 2.5 Fast Image to 3D API Reference" +description: "Rodin 2.5 Fast Image to 3D API reference for SandBase. Use model hyper3d/rodin/2.5/fast/image-to-3d with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/hyper3d/rodin/2.5/fast/image-to-3d" +apiReferenceJson: "{\"title\":\"Rodin 2.5 Fast Image to 3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Rodin Gen-2.5 by Hyper3D (Deemos) generates game- and production-ready 3D assets from one to five reference images, tuned for speed with the low tiers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to hyper3d/rodin/2.5/fast/image-to-3d.\",\"default\":\"hyper3d/rodin/2.5/fast/image-to-3d\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Optional text prompt to guide generation.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"1 to 5 images of the object.\"},{\"name\":\"material\",\"type\":\"string\",\"required\":false,\"description\":\"PBR, Shaded, All (both) or None.\",\"default\":\"Shaded\",\"constraints\":\"Allowed values: PBR, Shaded, All, None\"},{\"name\":\"TAPose\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate characters in T-pose or A-pose for rigging.\",\"default\":\"false\"},{\"name\":\"hd_texture\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enhanced texture post-processing.\",\"default\":\"false\"},{\"name\":\"tier\",\"type\":\"string\",\"required\":false,\"description\":\"Generation tier (quality / speed).\",\"default\":\"Gen-2.5-Extreme-Low\",\"constraints\":\"Allowed values: Gen-2.5-Minimum, Gen-2.5-Extreme-Low, Gen-2.5-Low\"},{\"name\":\"geometry_file_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output file format.\",\"default\":\"glb\",\"constraints\":\"Allowed values: glb, usdz, fbx, obj, stl\"},{\"name\":\"quality_mesh_option\",\"type\":\"string\",\"required\":false,\"description\":\"Combined quality and mesh type selection. Quad = smooth surfaces, Triangle = detailed geometry. Maps to `mesh_mode` (Quad/Raw) and `quality_override` (face count) on the Hyper3D API. Valid face counts depend on the selected tier. Up to 1M Triangle is supported for tiers Minimum, Extreme-Low, Low. For fast endpoint, this limit is up to 20K, primarily for prototyping and testing. For generating higher quality meshes, use the standard endpoint. Auto option will choose the advised options for each tier: 1. Gen-2.5-Minimum: 20K Triangle 2. Gen-2.5-Extreme-Low: 20K Triangle 3. Gen-2.5-Low: 20K Triangle\",\"default\":\"Auto\",\"constraints\":\"Allowed values: Auto, 1K Quad, 4K Quad, 8K Quad, 18K Quad, 20K Quad, 2K Triangle, 4K Triangle, 8K Triangle, 10K Triangle, 20K Triangle\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed (0–65535).\",\"constraints\":\"Range: 0 to 65535\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"hyper3d/rodin/2.5/fast/image-to-3d\\\",\\n \\\"prompt\\\": \\\"A futuristic robot with sleek metallic design.\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/hyper3d/rodin/2.5/fast/image-to-3d/input_images_0.png\\\",\\n \\\"https://static.sandbase.ai/examples/hyper3d/rodin/2.5/fast/image-to-3d/input_images_1.png\\\",\\n \\\"https://static.sandbase.ai/examples/hyper3d/rodin/2.5/fast/image-to-3d/input_images_2.png\\\"\\n ]\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"hyper3d/rodin/2.5/fast/image-to-3d\\\",\\n \\\"prompt\\\": \\\"A futuristic robot with sleek metallic design.\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/hyper3d/rodin/2.5/fast/image-to-3d/input_images_0.png\\\",\\n \\\"https://static.sandbase.ai/examples/hyper3d/rodin/2.5/fast/image-to-3d/input_images_1.png\\\",\\n \\\"https://static.sandbase.ai/examples/hyper3d/rodin/2.5/fast/image-to-3d/input_images_2.png\\\"\\n ]\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"hyper3d/rodin/2.5/fast/image-to-3d\\\",\\n \\\"prompt\\\": \\\"A futuristic robot with sleek metallic design.\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/hyper3d/rodin/2.5/fast/image-to-3d/input_images_0.png\\\",\\n \\\"https://static.sandbase.ai/examples/hyper3d/rodin/2.5/fast/image-to-3d/input_images_1.png\\\",\\n \\\"https://static.sandbase.ai/examples/hyper3d/rodin/2.5/fast/image-to-3d/input_images_2.png\\\"\\n ]\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"hyper3d/rodin/2.5/fast/image-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Rodin 2.5 Fast Image to 3D" + modelId: "hyper3d/rodin/2.5/fast/image-to-3d" + vendor: "hyper3d" + vendorSlug: "hyper3d" + modelSlug: "rodin/2.5/fast/image-to-3d" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-06-19T18:08:24.07Z" + capabilities: ["image-to-3d"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/hyper3d/rodin/2.5/fast/text-to-3d.md b/model-api-reference/image-generation/hyper3d/rodin/2.5/fast/text-to-3d.md new file mode 100644 index 00000000..b7585f3c --- /dev/null +++ b/model-api-reference/image-generation/hyper3d/rodin/2.5/fast/text-to-3d.md @@ -0,0 +1,21 @@ +--- +title: "Rodin 2.5 Fast Text to 3D API Reference" +description: "Rodin 2.5 Fast Text to 3D API reference for SandBase. Use model hyper3d/rodin/2.5/fast/text-to-3d with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/hyper3d/rodin/2.5/fast/text-to-3d" +apiReferenceJson: "{\"title\":\"Rodin 2.5 Fast Text to 3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Rodin Gen-2.5 by Hyper3D (Deemos) generates game- and production-ready 3D assets from a text prompt, tuned for speed with the low tiers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to hyper3d/rodin/2.5/fast/text-to-3d.\",\"default\":\"hyper3d/rodin/2.5/fast/text-to-3d\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"A textual prompt to guide model generation. Required for Text-to-3D mode.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed (0–65535).\",\"constraints\":\"Range: 0 to 65535\"},{\"name\":\"geometry_file_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output file format.\",\"default\":\"glb\",\"constraints\":\"Allowed values: glb, usdz, fbx, obj, stl\"},{\"name\":\"material\",\"type\":\"string\",\"required\":false,\"description\":\"PBR, Shaded, All (both) or None.\",\"default\":\"Shaded\",\"constraints\":\"Allowed values: PBR, Shaded, All, None\"},{\"name\":\"hd_texture\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enhanced texture post-processing.\",\"default\":\"false\"},{\"name\":\"tier\",\"type\":\"string\",\"required\":false,\"description\":\"Generation tier (quality / speed).\",\"default\":\"Gen-2.5-Extreme-Low\",\"constraints\":\"Allowed values: Gen-2.5-Minimum, Gen-2.5-Extreme-Low, Gen-2.5-Low\"},{\"name\":\"quality_mesh_option\",\"type\":\"string\",\"required\":false,\"description\":\"Combined quality and mesh type selection. Quad = smooth surfaces, Triangle = detailed geometry. Maps to `mesh_mode` (Quad/Raw) and `quality_override` (face count) on the Hyper3D API. Valid face counts depend on the selected tier. Up to 1M Triangle is supported for tiers Minimum, Extreme-Low, Low. For fast endpoint, this limit is up to 20K, primarily for prototyping and testing. For generating higher quality meshes, use the standard endpoint. Auto option will choose the advised options for each tier: 1. Gen-2.5-Minimum: 20K Triangle 2. Gen-2.5-Extreme-Low: 20K Triangle 3. Gen-2.5-Low: 20K Triangle\",\"default\":\"Auto\",\"constraints\":\"Allowed values: Auto, 1K Quad, 4K Quad, 8K Quad, 18K Quad, 20K Quad, 2K Triangle, 4K Triangle, 8K Triangle, 10K Triangle, 20K Triangle\"},{\"name\":\"TAPose\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate characters in T-pose or A-pose for rigging.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"hyper3d/rodin/2.5/fast/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A futuristic robot with sleek metallic design.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"hyper3d/rodin/2.5/fast/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A futuristic robot with sleek metallic design.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"hyper3d/rodin/2.5/fast/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A futuristic robot with sleek metallic design.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"hyper3d/rodin/2.5/fast/text-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Rodin 2.5 Fast Text to 3D" + modelId: "hyper3d/rodin/2.5/fast/text-to-3d" + vendor: "hyper3d" + vendorSlug: "hyper3d" + modelSlug: "rodin/2.5/fast/text-to-3d" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-06-19T20:15:10.273Z" + capabilities: ["text-to-3d"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/hyper3d/rodin/2.5/image-to-3d.md b/model-api-reference/image-generation/hyper3d/rodin/2.5/image-to-3d.md new file mode 100644 index 00000000..a0ae9894 --- /dev/null +++ b/model-api-reference/image-generation/hyper3d/rodin/2.5/image-to-3d.md @@ -0,0 +1,21 @@ +--- +title: "Rodin 2.5 Image to 3D API Reference" +description: "Rodin 2.5 Image to 3D API reference for SandBase. Use model hyper3d/rodin/2.5/image-to-3d with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/hyper3d/rodin/2.5/image-to-3d" +apiReferenceJson: "{\"title\":\"Rodin 2.5 Image to 3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Rodin Gen-2.5 by Hyper3D (Deemos) generates game- and production-ready 3D assets from one to five reference images.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to hyper3d/rodin/2.5/image-to-3d.\",\"default\":\"hyper3d/rodin/2.5/image-to-3d\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Optional text prompt to guide generation.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"1 to 5 images of the object.\"},{\"name\":\"geometry_file_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output file format.\",\"default\":\"glb\",\"constraints\":\"Allowed values: glb, usdz, fbx, obj, stl\"},{\"name\":\"quality_mesh_option\",\"type\":\"string\",\"required\":false,\"description\":\"Combined quality and mesh type selection. Quad = smooth surfaces, Triangle = detailed geometry. Maps to `mesh_mode` (Quad/Raw) and `quality_override` (face count) on the Hyper3D API. Valid face counts depend on the selected tier. Up to 1M Triangle is supported for tiers Extreme-Low, Low, and Medium. Up to 2M Triangle (as low as 20K Triangle) is supported for tiers High and Extreme-High. Auto option will choose the advised options for each tier: 1. Gen-2.5-Minimum: 50K Triangle 2. Gen-2.5-Extreme-Low: 50K Triangle 3. Gen-2.5-Low: 50K Triangle 4. Gen-2.5-Medium: 500K Triangle 5. Gen-2.5-High: 500K Triangle Gen-2.5-Extreme-High: 1M Triangle.\",\"default\":\"Auto\",\"constraints\":\"Allowed values: Auto, 4K Quad, 8K Quad, 18K Quad, 50K Quad, 100K Quad, 200K Quad, 2K Triangle, 20K Triangle, 50K Triangle, 150K Triangle, 500K Triangle, 1M Triangle, 2M Triangle\"},{\"name\":\"addons\",\"type\":\"string\",\"required\":false,\"description\":\"Optional add-on. HighPack (4K textures, high-poly) is billed +$0.80.\",\"constraints\":\"Allowed values: HighPack\"},{\"name\":\"TAPose\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate characters in T-pose or A-pose for rigging.\",\"default\":\"false\"},{\"name\":\"hd_texture\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enhanced texture post-processing.\",\"default\":\"false\"},{\"name\":\"tier\",\"type\":\"string\",\"required\":false,\"description\":\"Generation tier (quality / speed).\",\"default\":\"Gen-2.5-High\",\"constraints\":\"Allowed values: Gen-2.5-Minimum, Gen-2.5-Extreme-Low, Gen-2.5-Low, Gen-2.5-Medium, Gen-2.5-High, Gen-2.5-Extreme-High\"},{\"name\":\"material\",\"type\":\"string\",\"required\":false,\"description\":\"PBR, Shaded, All (both) or None.\",\"default\":\"All\",\"constraints\":\"Allowed values: PBR, Shaded, All, None\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed (0–65535).\",\"constraints\":\"Range: 0 to 65535\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"hyper3d/rodin/2.5/image-to-3d\\\",\\n \\\"prompt\\\": \\\"A futuristic robot with sleek metallic design.\\\",\\n \\\"images\\\": [\\n \\\"https://v3.fal.media/files/panda/l7mQrG8plbB42lBNqVjm0_image.png\\\",\\n \\\"https://v3b.fal.media/files/b/kangaroo/scq50Bf1PB2NZOW8szphV_image.png\\\",\\n \\\"https://v3.fal.media/files/penguin/X21qtlVMazAtljzRCJD2__image.png\\\"\\n ]\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"hyper3d/rodin/2.5/image-to-3d\\\",\\n \\\"prompt\\\": \\\"A futuristic robot with sleek metallic design.\\\",\\n \\\"images\\\": [\\n \\\"https://v3.fal.media/files/panda/l7mQrG8plbB42lBNqVjm0_image.png\\\",\\n \\\"https://v3b.fal.media/files/b/kangaroo/scq50Bf1PB2NZOW8szphV_image.png\\\",\\n \\\"https://v3.fal.media/files/penguin/X21qtlVMazAtljzRCJD2__image.png\\\"\\n ]\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"hyper3d/rodin/2.5/image-to-3d\\\",\\n \\\"prompt\\\": \\\"A futuristic robot with sleek metallic design.\\\",\\n \\\"images\\\": [\\n \\\"https://v3.fal.media/files/panda/l7mQrG8plbB42lBNqVjm0_image.png\\\",\\n \\\"https://v3b.fal.media/files/b/kangaroo/scq50Bf1PB2NZOW8szphV_image.png\\\",\\n \\\"https://v3.fal.media/files/penguin/X21qtlVMazAtljzRCJD2__image.png\\\"\\n ]\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"hyper3d/rodin/2.5/image-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Rodin 2.5 Image to 3D" + modelId: "hyper3d/rodin/2.5/image-to-3d" + vendor: "hyper3d" + vendorSlug: "hyper3d" + modelSlug: "rodin/2.5/image-to-3d" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-05-31T08:00:41.838Z" + capabilities: ["image-to-3d"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/hyper3d/rodin/2.5/text-to-3d.md b/model-api-reference/image-generation/hyper3d/rodin/2.5/text-to-3d.md new file mode 100644 index 00000000..b1fe49cb --- /dev/null +++ b/model-api-reference/image-generation/hyper3d/rodin/2.5/text-to-3d.md @@ -0,0 +1,21 @@ +--- +title: "Rodin 2.5 Text to 3D API Reference" +description: "Rodin 2.5 Text to 3D API reference for SandBase. Use model hyper3d/rodin/2.5/text-to-3d with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/hyper3d/rodin/2.5/text-to-3d" +apiReferenceJson: "{\"title\":\"Rodin 2.5 Text to 3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Rodin Gen-2.5 by Hyper3D (Deemos) generates game- and production-ready 3D assets from a text prompt.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to hyper3d/rodin/2.5/text-to-3d.\",\"default\":\"hyper3d/rodin/2.5/text-to-3d\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"A textual prompt to guide model generation. Required for Text-to-3D mode.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed (0–65535).\",\"constraints\":\"Range: 0 to 65535\"},{\"name\":\"quality_mesh_option\",\"type\":\"string\",\"required\":false,\"description\":\"Combined quality and mesh type selection. Quad = smooth surfaces, Triangle = detailed geometry. Maps to `mesh_mode` (Quad/Raw) and `quality_override` (face count) on the Hyper3D API. Valid face counts depend on the selected tier. Up to 1M Triangle is supported for tiers Extreme-Low, Low, and Medium. Up to 2M Triangle (as low as 20K Triangle) is supported for tiers High and Extreme-High. Auto option will choose the advised options for each tier: 1. Gen-2.5-Minimum: 50K Triangle 2. Gen-2.5-Extreme-Low: 50K Triangle 3. Gen-2.5-Low: 50K Triangle 4. Gen-2.5-Medium: 500K Triangle 5. Gen-2.5-High: 500K Triangle Gen-2.5-Extreme-High: 1M Triangle.\",\"default\":\"Auto\",\"constraints\":\"Allowed values: Auto, 4K Quad, 8K Quad, 18K Quad, 50K Quad, 100K Quad, 200K Quad, 2K Triangle, 20K Triangle, 50K Triangle, 150K Triangle, 500K Triangle, 1M Triangle, 2M Triangle\"},{\"name\":\"material\",\"type\":\"string\",\"required\":false,\"description\":\"PBR, Shaded, All (both) or None.\",\"default\":\"All\",\"constraints\":\"Allowed values: PBR, Shaded, All, None\"},{\"name\":\"hd_texture\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enhanced texture post-processing.\",\"default\":\"false\"},{\"name\":\"geometry_file_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output file format.\",\"default\":\"glb\",\"constraints\":\"Allowed values: glb, usdz, fbx, obj, stl\"},{\"name\":\"TAPose\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate characters in T-pose or A-pose for rigging.\",\"default\":\"false\"},{\"name\":\"addons\",\"type\":\"string\",\"required\":false,\"description\":\"Optional add-on. HighPack (4K textures, high-poly) is billed +$0.80.\",\"constraints\":\"Allowed values: HighPack\"},{\"name\":\"tier\",\"type\":\"string\",\"required\":false,\"description\":\"Generation tier (quality / speed).\",\"default\":\"Gen-2.5-High\",\"constraints\":\"Allowed values: Gen-2.5-Minimum, Gen-2.5-Extreme-Low, Gen-2.5-Low, Gen-2.5-Medium, Gen-2.5-High, Gen-2.5-Extreme-High\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"hyper3d/rodin/2.5/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A futuristic robot with sleek metallic design.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"hyper3d/rodin/2.5/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A futuristic robot with sleek metallic design.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"hyper3d/rodin/2.5/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A futuristic robot with sleek metallic design.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"hyper3d/rodin/2.5/text-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Rodin 2.5 Text to 3D" + modelId: "hyper3d/rodin/2.5/text-to-3d" + vendor: "hyper3d" + vendorSlug: "hyper3d" + modelSlug: "rodin/2.5/text-to-3d" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-05-31T08:01:11.402Z" + capabilities: ["text-to-3d"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/hyper3d/rodin/v2.md b/model-api-reference/image-generation/hyper3d/rodin/v2.md deleted file mode 100644 index 547f4e24..00000000 --- a/model-api-reference/image-generation/hyper3d/rodin/v2.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hyper3d API Reference" -description: "Hyper3d API reference for SandBase. Use model hyper3d/rodin/v2 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/hyper3d/rodin/v2" -apiReferenceJson: "{\"title\":\"Hyper3d\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Rodin V2 by hyper3d - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to hyper3d/rodin/v2.\",\"default\":\"hyper3d/rodin/v2\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"A textual prompt to guide model generation. Optional for Image-to-3D mode - if empty, AI will generate a prompt based on your images.\",\"default\":\"\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed value for randomization, ranging from 0 to 65535. Optional.\",\"constraints\":\"Range: 0 to 65535\"},{\"name\":\"quality_mesh_option\",\"type\":\"string\",\"required\":false,\"description\":\"Combined quality and mesh type selection. Quad = smooth surfaces, Triangle = detailed geometry. These corresponds to `mesh_mode` (if the option contains 'Triangle', mesh_mode is 'Raw', otherwise 'Quad') and `quality_override` (the numeric part of the option) parameters in Hyper3D API.\",\"default\":\"500K Triangle\",\"constraints\":\"Allowed values: 4K Quad, 8K Quad, 18K Quad, 50K Quad, 2K Triangle, 20K Triangle, 150K Triangle, 500K Triangle\"},{\"name\":\"input_image_urls\",\"type\":\"array\",\"required\":false,\"description\":\"URL of images to use while generating the 3D model. Required for Image-to-3D mode. Up to 5 images allowed.\"},{\"name\":\"TAPose\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate characters in T-pose or A-pose format, making them easier to rig and animate in 3D software.\",\"default\":\"false\"},{\"name\":\"addons\",\"type\":\"string\",\"required\":false,\"description\":\"The HighPack option will provide 4K resolution textures instead of the default 1K, as well as models with high-poly. It will cost **triple the billable units**.\"},{\"name\":\"preview_render\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a preview render image of the 3D model along with the model files.\",\"default\":\"false\"},{\"name\":\"geometry_file_format\",\"type\":\"string\",\"required\":false,\"description\":\"Format of the geometry file. Possible values: glb, usdz, fbx, obj, stl. Default is glb.\",\"default\":\"glb\",\"constraints\":\"Allowed values: glb, usdz, fbx, obj, stl\"},{\"name\":\"material\",\"type\":\"string\",\"required\":false,\"description\":\"Material type. PBR: Physically-based materials with realistic lighting. Shaded: Simple materials with baked lighting. All: Both types included.\",\"default\":\"All\",\"constraints\":\"Allowed values: PBR, Shaded, All\"},{\"name\":\"use_original_alpha\",\"type\":\"boolean\",\"required\":false,\"description\":\"When enabled, preserves the transparency channel from input images during 3D generation.\",\"default\":\"false\"},{\"name\":\"bbox_condition\",\"type\":\"array\",\"required\":false,\"description\":\"An array that specifies the bounding box dimensions [width, height, length].\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"hyper3d/rodin/v2\\\",\\n \\\"prompt\\\": \\\"\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"hyper3d/rodin/v2\\\",\\n \\\"prompt\\\": \\\"\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"hyper3d/rodin/v2\\\",\\n \\\"prompt\\\": \\\"\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"hyper3d/rodin/v2\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hyper3d" - modelId: "hyper3d/rodin/v2" - vendor: "hyper3d" - vendorSlug: "hyper3d" - modelSlug: "rodin/v2" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-26T19:59:28.021Z" - capabilities: ["image-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram-ai/ideogram-v2.md b/model-api-reference/image-generation/ideogram-ai/ideogram-v2.md deleted file mode 100644 index 36dcf85d..00000000 --- a/model-api-reference/image-generation/ideogram-ai/ideogram-v2.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ideogram V2 API Reference" -description: "Ideogram V2 API reference for SandBase. Use model ideogram-ai/ideogram-v2 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram-ai/ideogram-v2" -apiReferenceJson: "{\"title\":\"Ideogram V2\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ideogram V2 is ideogram-ai's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram-ai/ideogram-v2.\",\"default\":\"ideogram-ai/ideogram-v2\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2\\\",\\n \\\"prompt\\\": \\\"A comic style illustration of a skeleton sitting on a toilet in a bathroom. The bathroom has a Halloween decoration with a pumpkin jack-o-lantern and bats flying around. There is a text above the skeleton that says \\\\\\\"Just Waiting for Halloween with Ideogram 2.0 at fal.ai\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2\\\",\\n \\\"prompt\\\": \\\"A comic style illustration of a skeleton sitting on a toilet in a bathroom. The bathroom has a Halloween decoration with a pumpkin jack-o-lantern and bats flying around. There is a text above the skeleton that says \\\\\\\"Just Waiting for Halloween with Ideogram 2.0 at fal.ai\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2\\\",\\n \\\"prompt\\\": \\\"A comic style illustration of a skeleton sitting on a toilet in a bathroom. The bathroom has a Halloween decoration with a pumpkin jack-o-lantern and bats flying around. There is a text above the skeleton that says \\\\\\\"Just Waiting for Halloween with Ideogram 2.0 at fal.ai\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ideogram V2" - modelId: "ideogram-ai/ideogram-v2" - vendor: "Ideogram" - vendorSlug: "ideogram-ai" - modelSlug: "ideogram-v2" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-12-04T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram-ai/ideogram-v2/edit.md b/model-api-reference/image-generation/ideogram-ai/ideogram-v2/edit.md deleted file mode 100644 index 5d772e93..00000000 --- a/model-api-reference/image-generation/ideogram-ai/ideogram-v2/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ideogram V2 Edit API Reference" -description: "Ideogram V2 Edit API reference for SandBase. Use model ideogram-ai/ideogram-v2/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram-ai/ideogram-v2/edit" -apiReferenceJson: "{\"title\":\"Ideogram V2 Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ideogram V2 Edit by ideogram-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram-ai/ideogram-v2/edit.\",\"default\":\"ideogram-ai/ideogram-v2/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to fill the masked part of the image.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The image URL to generate an image from. Needs to match the dimensions of the mask.\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"The mask URL to inpaint the image. Needs to match the dimensions of the input image.\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated image\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, general, realistic, design, render_3D, anime\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2/edit\\\",\\n \\\"prompt\\\": \\\"A knight in shining armour holding a greatshield with \\\\\\\"FAL\\\\\\\" on it\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v2/edit/input_image_0.jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2/edit\\\",\\n \\\"prompt\\\": \\\"A knight in shining armour holding a greatshield with \\\\\\\"FAL\\\\\\\" on it\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v2/edit/input_image_0.jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2/edit\\\",\\n \\\"prompt\\\": \\\"A knight in shining armour holding a greatshield with \\\\\\\"FAL\\\\\\\" on it\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v2/edit/input_image_0.jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ideogram V2 Edit" - modelId: "ideogram-ai/ideogram-v2/edit" - vendor: "Ideogram" - vendorSlug: "ideogram-ai" - modelSlug: "ideogram-v2/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-12-14T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram-ai/ideogram-v2/remix.md b/model-api-reference/image-generation/ideogram-ai/ideogram-v2/remix.md deleted file mode 100644 index 0b7eb801..00000000 --- a/model-api-reference/image-generation/ideogram-ai/ideogram-v2/remix.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ideogram V2 Remix API Reference" -description: "Ideogram V2 Remix API reference for SandBase. Use model ideogram-ai/ideogram-v2/remix with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram-ai/ideogram-v2/remix" -apiReferenceJson: "{\"title\":\"Ideogram V2 Remix\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ideogram V2 Remix is ideogram-ai's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram-ai/ideogram-v2/remix.\",\"default\":\"ideogram-ai/ideogram-v2/remix\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to remix the image with\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The image URL to remix\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"Strength of the input image in the remix\",\"default\":\"0.8\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2/remix\\\",\\n \\\"prompt\\\": \\\"An ice field in north atlantic\\\",\\n \\\"image\\\": \\\"https://fal.media/files/lion/FHOx4y4a0ef7Sgmo-sOUR_image.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2/remix\\\",\\n \\\"prompt\\\": \\\"An ice field in north atlantic\\\",\\n \\\"image\\\": \\\"https://fal.media/files/lion/FHOx4y4a0ef7Sgmo-sOUR_image.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2/remix\\\",\\n \\\"prompt\\\": \\\"An ice field in north atlantic\\\",\\n \\\"image\\\": \\\"https://fal.media/files/lion/FHOx4y4a0ef7Sgmo-sOUR_image.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2/remix\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ideogram V2 Remix" - modelId: "ideogram-ai/ideogram-v2/remix" - vendor: "Ideogram" - vendorSlug: "ideogram-ai" - modelSlug: "ideogram-v2/remix" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-12-04T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram-ai/ideogram-v2/turbo.md b/model-api-reference/image-generation/ideogram-ai/ideogram-v2/turbo.md deleted file mode 100644 index ba4dfd0e..00000000 --- a/model-api-reference/image-generation/ideogram-ai/ideogram-v2/turbo.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ideogram V2 Turbo API Reference" -description: "Ideogram V2 Turbo API reference for SandBase. Use model ideogram-ai/ideogram-v2/turbo with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram-ai/ideogram-v2/turbo" -apiReferenceJson: "{\"title\":\"Ideogram V2 Turbo\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ideogram V2 Turbo is ideogram-ai's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram-ai/ideogram-v2/turbo.\",\"default\":\"ideogram-ai/ideogram-v2/turbo\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2/turbo\\\",\\n \\\"prompt\\\": \\\"A comic style illustration of a skeleton sitting on a toilet in a bathroom. The bathroom has a Halloween decoration with a pumpkin jack-o-lantern and bats flying around. There is a text above the skeleton that says \\\\\\\"Just Waiting for Halloween with Ideogram 2.0 at fal.ai\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2/turbo\\\",\\n \\\"prompt\\\": \\\"A comic style illustration of a skeleton sitting on a toilet in a bathroom. The bathroom has a Halloween decoration with a pumpkin jack-o-lantern and bats flying around. There is a text above the skeleton that says \\\\\\\"Just Waiting for Halloween with Ideogram 2.0 at fal.ai\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2/turbo\\\",\\n \\\"prompt\\\": \\\"A comic style illustration of a skeleton sitting on a toilet in a bathroom. The bathroom has a Halloween decoration with a pumpkin jack-o-lantern and bats flying around. There is a text above the skeleton that says \\\\\\\"Just Waiting for Halloween with Ideogram 2.0 at fal.ai\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2/turbo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ideogram V2 Turbo" - modelId: "ideogram-ai/ideogram-v2/turbo" - vendor: "Ideogram" - vendorSlug: "ideogram-ai" - modelSlug: "ideogram-v2/turbo" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-12-04T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram-ai/ideogram-v2/turbo/edit.md b/model-api-reference/image-generation/ideogram-ai/ideogram-v2/turbo/edit.md deleted file mode 100644 index c317e582..00000000 --- a/model-api-reference/image-generation/ideogram-ai/ideogram-v2/turbo/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ideogram V2 Turbo Edit API Reference" -description: "Ideogram V2 Turbo Edit API reference for SandBase. Use model ideogram-ai/ideogram-v2/turbo/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram-ai/ideogram-v2/turbo/edit" -apiReferenceJson: "{\"title\":\"Ideogram V2 Turbo Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ideogram V2 Turbo Edit by ideogram-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram-ai/ideogram-v2/turbo/edit.\",\"default\":\"ideogram-ai/ideogram-v2/turbo/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to fill the masked part of the image.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The image URL to generate an image from. Needs to match the dimensions of the mask.\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"The mask URL to inpaint the image. Needs to match the dimensions of the input image.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2/turbo/edit\\\",\\n \\\"prompt\\\": \\\"A knight in shining armour holding a greatshield with \\\\\\\"FAL\\\\\\\" on it\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v2/turbo/edit/input_image_1.jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2/turbo/edit\\\",\\n \\\"prompt\\\": \\\"A knight in shining armour holding a greatshield with \\\\\\\"FAL\\\\\\\" on it\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v2/turbo/edit/input_image_1.jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2/turbo/edit\\\",\\n \\\"prompt\\\": \\\"A knight in shining armour holding a greatshield with \\\\\\\"FAL\\\\\\\" on it\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v2/turbo/edit/input_image_1.jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2/turbo/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ideogram V2 Turbo Edit" - modelId: "ideogram-ai/ideogram-v2/turbo/edit" - vendor: "Ideogram" - vendorSlug: "ideogram-ai" - modelSlug: "ideogram-v2/turbo/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-12-04T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram-ai/ideogram-v2/turbo/remix.md b/model-api-reference/image-generation/ideogram-ai/ideogram-v2/turbo/remix.md deleted file mode 100644 index 4dddb886..00000000 --- a/model-api-reference/image-generation/ideogram-ai/ideogram-v2/turbo/remix.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ideogram V2 Turbo Remix API Reference" -description: "Ideogram V2 Turbo Remix API reference for SandBase. Use model ideogram-ai/ideogram-v2/turbo/remix with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram-ai/ideogram-v2/turbo/remix" -apiReferenceJson: "{\"title\":\"Ideogram V2 Turbo Remix\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ideogram V2 Turbo Remix is ideogram-ai's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram-ai/ideogram-v2/turbo/remix.\",\"default\":\"ideogram-ai/ideogram-v2/turbo/remix\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to remix the image with\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The image URL to remix\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"Strength of the input image in the remix\",\"default\":\"0.8\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2/turbo/remix\\\",\\n \\\"prompt\\\": \\\"An ice field in north atlantic\\\",\\n \\\"image\\\": \\\"https://fal.media/files/lion/FHOx4y4a0ef7Sgmo-sOUR_image.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2/turbo/remix\\\",\\n \\\"prompt\\\": \\\"An ice field in north atlantic\\\",\\n \\\"image\\\": \\\"https://fal.media/files/lion/FHOx4y4a0ef7Sgmo-sOUR_image.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2/turbo/remix\\\",\\n \\\"prompt\\\": \\\"An ice field in north atlantic\\\",\\n \\\"image\\\": \\\"https://fal.media/files/lion/FHOx4y4a0ef7Sgmo-sOUR_image.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2/turbo/remix\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ideogram V2 Turbo Remix" - modelId: "ideogram-ai/ideogram-v2/turbo/remix" - vendor: "Ideogram" - vendorSlug: "ideogram-ai" - modelSlug: "ideogram-v2/turbo/remix" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-12-04T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram-ai/ideogram-v2a.md b/model-api-reference/image-generation/ideogram-ai/ideogram-v2a.md deleted file mode 100644 index da6aa686..00000000 --- a/model-api-reference/image-generation/ideogram-ai/ideogram-v2a.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ideogram V2A API Reference" -description: "Ideogram V2A API reference for SandBase. Use model ideogram-ai/ideogram-v2a with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram-ai/ideogram-v2a" -apiReferenceJson: "{\"title\":\"Ideogram V2A\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ideogram V2a by ideogram-ai - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram-ai/ideogram-v2a.\",\"default\":\"ideogram-ai/ideogram-v2a\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2a\\\",\\n \\\"prompt\\\": \\\"A comic style illustration of a skeleton sitting on a toilet in a bathroom. The bathroom has a Halloween decoration with a pumpkin jack-o-lantern and bats flying around. There is a text above the skeleton that says \\\\\\\"Just Waiting for Halloween with Ideogram 2.0 at fal.ai\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2a\\\",\\n \\\"prompt\\\": \\\"A comic style illustration of a skeleton sitting on a toilet in a bathroom. The bathroom has a Halloween decoration with a pumpkin jack-o-lantern and bats flying around. There is a text above the skeleton that says \\\\\\\"Just Waiting for Halloween with Ideogram 2.0 at fal.ai\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2a\\\",\\n \\\"prompt\\\": \\\"A comic style illustration of a skeleton sitting on a toilet in a bathroom. The bathroom has a Halloween decoration with a pumpkin jack-o-lantern and bats flying around. There is a text above the skeleton that says \\\\\\\"Just Waiting for Halloween with Ideogram 2.0 at fal.ai\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2a\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ideogram V2A" - modelId: "ideogram-ai/ideogram-v2a" - vendor: "Ideogram" - vendorSlug: "ideogram-ai" - modelSlug: "ideogram-v2a" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-02-27T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram-ai/ideogram-v2a/remix.md b/model-api-reference/image-generation/ideogram-ai/ideogram-v2a/remix.md deleted file mode 100644 index 96840dee..00000000 --- a/model-api-reference/image-generation/ideogram-ai/ideogram-v2a/remix.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ideogram V2A Remix API Reference" -description: "Ideogram V2A Remix API reference for SandBase. Use model ideogram-ai/ideogram-v2a/remix with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram-ai/ideogram-v2a/remix" -apiReferenceJson: "{\"title\":\"Ideogram V2A Remix\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ideogram V2a Remix by ideogram-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram-ai/ideogram-v2a/remix.\",\"default\":\"ideogram-ai/ideogram-v2a/remix\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to remix the image with\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The image URL to remix\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"Strength of the input image in the remix\",\"default\":\"0.8\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2a/remix\\\",\\n \\\"prompt\\\": \\\"An ice field in north atlantic\\\",\\n \\\"image\\\": \\\"https://fal.media/files/lion/FHOx4y4a0ef7Sgmo-sOUR_image.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2a/remix\\\",\\n \\\"prompt\\\": \\\"An ice field in north atlantic\\\",\\n \\\"image\\\": \\\"https://fal.media/files/lion/FHOx4y4a0ef7Sgmo-sOUR_image.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2a/remix\\\",\\n \\\"prompt\\\": \\\"An ice field in north atlantic\\\",\\n \\\"image\\\": \\\"https://fal.media/files/lion/FHOx4y4a0ef7Sgmo-sOUR_image.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2a/remix\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ideogram V2A Remix" - modelId: "ideogram-ai/ideogram-v2a/remix" - vendor: "Ideogram" - vendorSlug: "ideogram-ai" - modelSlug: "ideogram-v2a/remix" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-02-27T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram-ai/ideogram-v2a/turbo.md b/model-api-reference/image-generation/ideogram-ai/ideogram-v2a/turbo.md deleted file mode 100644 index 6bccbd9c..00000000 --- a/model-api-reference/image-generation/ideogram-ai/ideogram-v2a/turbo.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ideogram V2A Turbo API Reference" -description: "Ideogram V2A Turbo API reference for SandBase. Use model ideogram-ai/ideogram-v2a/turbo with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram-ai/ideogram-v2a/turbo" -apiReferenceJson: "{\"title\":\"Ideogram V2A Turbo\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ideogram V2a Turbo by ideogram-ai - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram-ai/ideogram-v2a/turbo.\",\"default\":\"ideogram-ai/ideogram-v2a/turbo\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2a/turbo\\\",\\n \\\"prompt\\\": \\\"A comic style illustration of a skeleton sitting on a toilet in a bathroom. The bathroom has a Halloween decoration with a pumpkin jack-o-lantern and bats flying around. There is a text above the skeleton that says \\\\\\\"Just Waiting for Halloween with Ideogram 2.0 at fal.ai\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2a/turbo\\\",\\n \\\"prompt\\\": \\\"A comic style illustration of a skeleton sitting on a toilet in a bathroom. The bathroom has a Halloween decoration with a pumpkin jack-o-lantern and bats flying around. There is a text above the skeleton that says \\\\\\\"Just Waiting for Halloween with Ideogram 2.0 at fal.ai\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2a/turbo\\\",\\n \\\"prompt\\\": \\\"A comic style illustration of a skeleton sitting on a toilet in a bathroom. The bathroom has a Halloween decoration with a pumpkin jack-o-lantern and bats flying around. There is a text above the skeleton that says \\\\\\\"Just Waiting for Halloween with Ideogram 2.0 at fal.ai\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2a/turbo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ideogram V2A Turbo" - modelId: "ideogram-ai/ideogram-v2a/turbo" - vendor: "Ideogram" - vendorSlug: "ideogram-ai" - modelSlug: "ideogram-v2a/turbo" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-02-27T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram-ai/ideogram-v2a/turbo/remix.md b/model-api-reference/image-generation/ideogram-ai/ideogram-v2a/turbo/remix.md deleted file mode 100644 index 4d921b4b..00000000 --- a/model-api-reference/image-generation/ideogram-ai/ideogram-v2a/turbo/remix.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ideogram V2A Turbo Remix API Reference" -description: "Ideogram V2A Turbo Remix API reference for SandBase. Use model ideogram-ai/ideogram-v2a/turbo/remix with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram-ai/ideogram-v2a/turbo/remix" -apiReferenceJson: "{\"title\":\"Ideogram V2A Turbo Remix\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ideogram V2a Turbo Remix by ideogram-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram-ai/ideogram-v2a/turbo/remix.\",\"default\":\"ideogram-ai/ideogram-v2a/turbo/remix\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to remix the image with\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The image URL to remix\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"Strength of the input image in the remix\",\"default\":\"0.8\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2a/turbo/remix\\\",\\n \\\"prompt\\\": \\\"An ice field in north atlantic\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v2a/turbo/remix/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2a/turbo/remix\\\",\\n \\\"prompt\\\": \\\"An ice field in north atlantic\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v2a/turbo/remix/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2a/turbo/remix\\\",\\n \\\"prompt\\\": \\\"An ice field in north atlantic\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v2a/turbo/remix/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v2a/turbo/remix\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ideogram V2A Turbo Remix" - modelId: "ideogram-ai/ideogram-v2a/turbo/remix" - vendor: "Ideogram" - vendorSlug: "ideogram-ai" - modelSlug: "ideogram-v2a/turbo/remix" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-02-27T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram-ai/ideogram-v3.md b/model-api-reference/image-generation/ideogram-ai/ideogram-v3.md index 3c4b0583..24713a2b 100644 --- a/model-api-reference/image-generation/ideogram-ai/ideogram-v3.md +++ b/model-api-reference/image-generation/ideogram-ai/ideogram-v3.md @@ -1,12 +1,12 @@ --- -title: "Ideogram 3.0 API Reference" -description: "Ideogram 3.0 API reference for SandBase. Use model ideogram-ai/ideogram-v3 with /v1/run; see request and response examples." +title: "Ideogram 3.0 Text to Image API Reference" +description: "Ideogram 3.0 Text to Image API reference for SandBase. Use model ideogram-ai/ideogram-v3 with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/ideogram-ai/ideogram-v3" -apiReferenceJson: "{\"title\":\"Ideogram 3.0\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"3.0 is Ideogram's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram-ai/ideogram-v3.\",\"default\":\"ideogram-ai/ideogram-v3\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"A set of images to use as style references (maximum total size 10MB across all style references). The images should be in JPEG, PNG or WebP format\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator\"},{\"name\":\"rendering_speed\",\"type\":\"string\",\"required\":false,\"description\":\"The rendering speed to use.\",\"default\":\"BALANCED\",\"constraints\":\"Allowed values: TURBO, BALANCED, QUALITY\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3\\\",\\n \\\"prompt\\\": \\\"The Bone Forest stretched across the horizon, its trees fashioned from the ossified remains of ancient leviathans that once swam through the sky. Shamans with antlers growing from their shoulders and eyes that revealed the true nature of any being they beheld conducted rituals to commune with the spirits that still inhabited the calcified grove. In sky writes \\\\\\\"Ideogram V3 in router.ai\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3\\\",\\n \\\"prompt\\\": \\\"The Bone Forest stretched across the horizon, its trees fashioned from the ossified remains of ancient leviathans that once swam through the sky. Shamans with antlers growing from their shoulders and eyes that revealed the True nature of any being they beheld conducted rituals to commune with the spirits that still inhabited the calcified grove. In sky writes \\\\\\\"Ideogram V3 in router.ai\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3\\\",\\n \\\"prompt\\\": \\\"The Bone Forest stretched across the horizon, its trees fashioned from the ossified remains of ancient leviathans that once swam through the sky. Shamans with antlers growing from their shoulders and eyes that revealed the true nature of any being they beheld conducted rituals to commune with the spirits that still inhabited the calcified grove. In sky writes \\\\\\\"Ideogram V3 in router.ai\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Ideogram 3.0 Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"3.0 is Ideogram's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram-ai/ideogram-v3.\",\"default\":\"ideogram-ai/ideogram-v3\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"A set of images to use as style references (maximum total size 10MB across all style references). The images should be in JPEG, PNG or WebP format\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator\"},{\"name\":\"rendering_speed\",\"type\":\"string\",\"required\":false,\"description\":\"The rendering speed to use.\",\"default\":\"BALANCED\",\"constraints\":\"Allowed values: TURBO, BALANCED, QUALITY\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3\\\",\\n \\\"prompt\\\": \\\"The Bone Forest stretched across the horizon, its trees fashioned from the ossified remains of ancient leviathans that once swam through the sky. Shamans with antlers growing from their shoulders and eyes that revealed the true nature of any being they beheld conducted rituals to commune with the spirits that still inhabited the calcified grove. In sky writes \\\\\\\"Ideogram V3 in router.ai\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3\\\",\\n \\\"prompt\\\": \\\"The Bone Forest stretched across the horizon, its trees fashioned from the ossified remains of ancient leviathans that once swam through the sky. Shamans with antlers growing from their shoulders and eyes that revealed the True nature of any being they beheld conducted rituals to commune with the spirits that still inhabited the calcified grove. In sky writes \\\\\\\"Ideogram V3 in router.ai\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3\\\",\\n \\\"prompt\\\": \\\"The Bone Forest stretched across the horizon, its trees fashioned from the ossified remains of ancient leviathans that once swam through the sky. Shamans with antlers growing from their shoulders and eyes that revealed the true nature of any being they beheld conducted rituals to commune with the spirits that still inhabited the calcified grove. In sky writes \\\\\\\"Ideogram V3 in router.ai\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Ideogram 3.0" + modelName: "Ideogram 3.0 Text to Image" modelId: "ideogram-ai/ideogram-v3" vendor: "Ideogram" vendorSlug: "ideogram-ai" diff --git a/model-api-reference/image-generation/ideogram-ai/ideogram-v3/character.md b/model-api-reference/image-generation/ideogram-ai/ideogram-v3/character.md deleted file mode 100644 index d31ed8c0..00000000 --- a/model-api-reference/image-generation/ideogram-ai/ideogram-v3/character.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ideogram V3 Character API Reference" -description: "Ideogram V3 Character API reference for SandBase. Use model ideogram-ai/ideogram-v3/character with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram-ai/ideogram-v3/character" -apiReferenceJson: "{\"title\":\"Ideogram V3 Character\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ideogram V3 Character is ideogram-ai's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram-ai/ideogram-v3/character.\",\"default\":\"ideogram-ai/ideogram-v3/character\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to fill the masked part of the image.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"A set of images to use as style references (maximum total size 10MB across all style references). The images should be in JPEG, PNG or WebP format\"},{\"name\":\"rendering_speed\",\"type\":\"string\",\"required\":false,\"description\":\"The rendering speed to use.\",\"default\":\"BALANCED\",\"constraints\":\"Allowed values: TURBO, BALANCED, QUALITY\"},{\"name\":\"reference_masks\",\"type\":\"array\",\"required\":false,\"description\":\"A set of masks to apply to the character references. Currently only 1 mask is supported, rest will be ignored. (maximum total size 10MB across all character references). The masks should be in JPEG, PNG or WebP format\"},{\"name\":\"reference_images\",\"type\":\"array\",\"required\":false,\"description\":\"A set of images to use as character references. Currently only 1 image is supported, rest will be ignored. (maximum total size 10MB across all character references). The images should be in JPEG, PNG or WebP format\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/character\\\",\\n \\\"prompt\\\": \\\"Place the woman leisurely enjoying a cup of espresso while relaxing at a sunlit café table in Siena, Italy. The café setting showcases vintage wooden furniture with peeling white paint, aged brick flooring, and sun-bleached stone walls decorated with trailing ivy and vibrant potted geraniums that capture Siena's medieval character. Golden late-morning light streams through overhead, creating soft shadows that highlight the weathered architectural details. The composition appears slightly off-center, conveying the unguarded tranquility and personal intimacy of a peaceful moment savoring the Tuscan morning ambiance.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/character\\\",\\n \\\"prompt\\\": \\\"Place the woman leisurely enjoying a cup of espresso while relaxing at a sunlit café table in Siena, Italy. The café setting showcases vintage wooden furniture with peeling white paint, aged brick flooring, and sun-bleached stone walls decorated with trailing ivy and vibrant potted geraniums that capture Siena's medieval character. Golden late-morning light streams through overhead, creating soft shadows that highlight the weathered architectural details. The composition appears slightly off-center, conveying the unguarded tranquility and personal intimacy of a peaceful moment savoring the Tuscan morning ambiance.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/character\\\",\\n \\\"prompt\\\": \\\"Place the woman leisurely enjoying a cup of espresso while relaxing at a sunlit café table in Siena, Italy. The café setting showcases vintage wooden furniture with peeling white paint, aged brick flooring, and sun-bleached stone walls decorated with trailing ivy and vibrant potted geraniums that capture Siena's medieval character. Golden late-morning light streams through overhead, creating soft shadows that highlight the weathered architectural details. The composition appears slightly off-center, conveying the unguarded tranquility and personal intimacy of a peaceful moment savoring the Tuscan morning ambiance.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/character\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ideogram V3 Character" - modelId: "ideogram-ai/ideogram-v3/character" - vendor: "Ideogram" - vendorSlug: "ideogram-ai" - modelSlug: "ideogram-v3/character" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-07T15:57:16.318Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram-ai/ideogram-v3/character/edit.md b/model-api-reference/image-generation/ideogram-ai/ideogram-v3/character/edit.md deleted file mode 100644 index e0c2ec0a..00000000 --- a/model-api-reference/image-generation/ideogram-ai/ideogram-v3/character/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ideogram V3 Character Edit API Reference" -description: "Ideogram V3 Character Edit API reference for SandBase. Use model ideogram-ai/ideogram-v3/character/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram-ai/ideogram-v3/character/edit" -apiReferenceJson: "{\"title\":\"Ideogram V3 Character Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ideogram V3 Character Edit by ideogram-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram-ai/ideogram-v3/character/edit.\",\"default\":\"ideogram-ai/ideogram-v3/character/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to fill the masked part of the image.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The image URL to generate an image from. MUST have the exact same dimensions (width and height) as the mask image.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"A set of images to use as style references (maximum total size 10MB across all style references). The images should be in JPEG, PNG or WebP format\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"The mask URL to inpaint the image. MUST have the exact same dimensions (width and height) as the input image.\"},{\"name\":\"reference_masks\",\"type\":\"array\",\"required\":false,\"description\":\"A set of masks to apply to the character references. Currently only 1 mask is supported, rest will be ignored. (maximum total size 10MB across all character references). The masks should be in JPEG, PNG or WebP format\"},{\"name\":\"reference_images\",\"type\":\"array\",\"required\":false,\"description\":\"A set of images to use as character references. Currently only 1 image is supported, rest will be ignored. (maximum total size 10MB across all character references). The images should be in JPEG, PNG or WebP format\"},{\"name\":\"rendering_speed\",\"type\":\"string\",\"required\":false,\"description\":\"The rendering speed to use.\",\"default\":\"BALANCED\",\"constraints\":\"Allowed values: TURBO, BALANCED, QUALITY\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/character/edit\\\",\\n \\\"prompt\\\": \\\"woman holding bag\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v3/character/edit/output_url_1.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/character/edit\\\",\\n \\\"prompt\\\": \\\"woman holding bag\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v3/character/edit/output_url_1.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/character/edit\\\",\\n \\\"prompt\\\": \\\"woman holding bag\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v3/character/edit/output_url_1.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/character/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ideogram V3 Character Edit" - modelId: "ideogram-ai/ideogram-v3/character/edit" - vendor: "Ideogram" - vendorSlug: "ideogram-ai" - modelSlug: "ideogram-v3/character/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-07T16:01:21.044Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram-ai/ideogram-v3/character/remix.md b/model-api-reference/image-generation/ideogram-ai/ideogram-v3/character/remix.md deleted file mode 100644 index f7d02616..00000000 --- a/model-api-reference/image-generation/ideogram-ai/ideogram-v3/character/remix.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ideogram V3 Character Remix API Reference" -description: "Ideogram V3 Character Remix API reference for SandBase. Use model ideogram-ai/ideogram-v3/character/remix with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram-ai/ideogram-v3/character/remix" -apiReferenceJson: "{\"title\":\"Ideogram V3 Character Remix\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ideogram V3 Character Remix is ideogram-ai's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram-ai/ideogram-v3/character/remix.\",\"default\":\"ideogram-ai/ideogram-v3/character/remix\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to remix the image with\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The image URL to remix\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"A set of images to use as style references (maximum total size 10MB across all style references). The images should be in JPEG, PNG or WebP format\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"Strength of the input image in the remix\",\"default\":\"0.8\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"rendering_speed\",\"type\":\"string\",\"required\":false,\"description\":\"The rendering speed to use.\",\"default\":\"BALANCED\",\"constraints\":\"Allowed values: TURBO, BALANCED, QUALITY\"},{\"name\":\"reference_masks\",\"type\":\"array\",\"required\":false,\"description\":\"A set of masks to apply to the character references. Currently only 1 mask is supported, rest will be ignored. (maximum total size 10MB across all character references). The masks should be in JPEG, PNG or WebP format\"},{\"name\":\"reference_images\",\"type\":\"array\",\"required\":false,\"description\":\"A set of images to use as character references. Currently only 1 image is supported, rest will be ignored. (maximum total size 10MB across all character references). The images should be in JPEG, PNG or WebP format\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/character/remix\\\",\\n \\\"prompt\\\": \\\"A glamorous portrait photograph of a woman in an elegant ballroom setting. The subject wears a champagne-colored ball gown with a fitted bodice, long sleeves, and a full skirt adorned with delicate lace appliques. The dress features a crystal-embellished hair accessory and pearl drop earrings. The grand staircase has ornate gold railings and leads to an elaborate crystal chandelier hanging from an arched ceiling. The walls are decorated with classical paintings featuring floral motifs. The lighting is warm and dramatic, creating a soft glow throughout the space. The composition is shot in a formal portrait style with the subject positioned on the lower landing of the staircase, looking over her shoulder at the camera.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v3/character/remix/input_image_0.avif\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/character/remix\\\",\\n \\\"prompt\\\": \\\"A glamorous portrait photograph of a woman in an elegant ballroom setting. The subject wears a champagne-colored ball gown with a fitted bodice, long sleeves, and a full skirt adorned with delicate lace appliques. The dress features a crystal-embellished hair accessory and pearl drop earrings. The grand staircase has ornate gold railings and leads to an elaborate crystal chandelier hanging from an arched ceiling. The walls are decorated with classical paintings featuring floral motifs. The lighting is warm and dramatic, creating a soft glow throughout the space. The composition is shot in a formal portrait style with the subject positioned on the lower landing of the staircase, looking over her shoulder at the camera.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v3/character/remix/input_image_0.avif\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/character/remix\\\",\\n \\\"prompt\\\": \\\"A glamorous portrait photograph of a woman in an elegant ballroom setting. The subject wears a champagne-colored ball gown with a fitted bodice, long sleeves, and a full skirt adorned with delicate lace appliques. The dress features a crystal-embellished hair accessory and pearl drop earrings. The grand staircase has ornate gold railings and leads to an elaborate crystal chandelier hanging from an arched ceiling. The walls are decorated with classical paintings featuring floral motifs. The lighting is warm and dramatic, creating a soft glow throughout the space. The composition is shot in a formal portrait style with the subject positioned on the lower landing of the staircase, looking over her shoulder at the camera.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v3/character/remix/input_image_0.avif\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/character/remix\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ideogram V3 Character Remix" - modelId: "ideogram-ai/ideogram-v3/character/remix" - vendor: "Ideogram" - vendorSlug: "ideogram-ai" - modelSlug: "ideogram-v3/character/remix" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-07T15:52:27.577Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram-ai/ideogram-v3/edit.md b/model-api-reference/image-generation/ideogram-ai/ideogram-v3/edit.md index 8b6b4c09..5671869f 100644 --- a/model-api-reference/image-generation/ideogram-ai/ideogram-v3/edit.md +++ b/model-api-reference/image-generation/ideogram-ai/ideogram-v3/edit.md @@ -1,12 +1,12 @@ --- -title: "Ideogram V3 Edit API Reference" -description: "Ideogram V3 Edit API reference for SandBase. Use model ideogram-ai/ideogram-v3/edit with /v1/run; see request and response examples." +title: "Ideogram 3.0 Edit API Reference" +description: "Ideogram 3.0 Edit API reference for SandBase. Use model ideogram-ai/ideogram-v3/edit with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/ideogram-ai/ideogram-v3/edit" -apiReferenceJson: "{\"title\":\"Ideogram V3 Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ideogram V3 Edit by ideogram-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram-ai/ideogram-v3/edit.\",\"default\":\"ideogram-ai/ideogram-v3/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to fill the masked part of the image.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The image URL to generate an image from. MUST have the exact same dimensions (width and height) as the mask image.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"A set of images to use as style references (maximum total size 10MB across all style references). The images should be in JPEG, PNG or WebP format\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"The mask URL to inpaint the image. MUST have the exact same dimensions (width and height) as the input image.\"},{\"name\":\"rendering_speed\",\"type\":\"string\",\"required\":false,\"description\":\"The rendering speed to use.\",\"default\":\"BALANCED\",\"constraints\":\"Allowed values: TURBO, BALANCED, QUALITY\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/edit\\\",\\n \\\"prompt\\\": \\\"black bag\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v3/edit/output_url_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/edit\\\",\\n \\\"prompt\\\": \\\"black bag\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v3/edit/output_url_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/edit\\\",\\n \\\"prompt\\\": \\\"black bag\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v3/edit/output_url_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Ideogram 3.0 Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ideogram V3 Edit by ideogram-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram-ai/ideogram-v3/edit.\",\"default\":\"ideogram-ai/ideogram-v3/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to fill the masked part of the image.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The image URL to generate an image from. MUST have the exact same dimensions (width and height) as the mask image.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"A set of images to use as style references (maximum total size 10MB across all style references). The images should be in JPEG, PNG or WebP format\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"The mask URL to inpaint the image. MUST have the exact same dimensions (width and height) as the input image.\"},{\"name\":\"rendering_speed\",\"type\":\"string\",\"required\":false,\"description\":\"The rendering speed to use.\",\"default\":\"BALANCED\",\"constraints\":\"Allowed values: TURBO, BALANCED, QUALITY\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/edit\\\",\\n \\\"prompt\\\": \\\"black bag\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v3/edit/output_url_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/edit\\\",\\n \\\"prompt\\\": \\\"black bag\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v3/edit/output_url_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/edit\\\",\\n \\\"prompt\\\": \\\"black bag\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v3/edit/output_url_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Ideogram V3 Edit" + modelName: "Ideogram 3.0 Edit" modelId: "ideogram-ai/ideogram-v3/edit" vendor: "Ideogram" vendorSlug: "ideogram-ai" diff --git a/model-api-reference/image-generation/ideogram-ai/ideogram-v3/layerize-text.md b/model-api-reference/image-generation/ideogram-ai/ideogram-v3/layerize-text.md deleted file mode 100644 index 38fe2d9f..00000000 --- a/model-api-reference/image-generation/ideogram-ai/ideogram-v3/layerize-text.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ideogram V3 Layerize Text API Reference" -description: "Ideogram V3 Layerize Text API reference for SandBase. Use model ideogram-ai/ideogram-v3/layerize-text with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram-ai/ideogram-v3/layerize-text" -apiReferenceJson: "{\"title\":\"Ideogram V3 Layerize Text\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ideogram V3 Layerize Text is ideogram-ai's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram-ai/ideogram-v3/layerize-text.\",\"default\":\"ideogram-ai/ideogram-v3/layerize-text\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Optional prompt to guide the layerization.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the flat graphic image to layerize. Must be JPEG, PNG, or WebP (max 10MB).\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/layerize-text\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v3/layerize-text/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/layerize-text\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v3/layerize-text/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/layerize-text\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v3/layerize-text/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/layerize-text\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ideogram V3 Layerize Text" - modelId: "ideogram-ai/ideogram-v3/layerize-text" - vendor: "Ideogram" - vendorSlug: "ideogram-ai" - modelSlug: "ideogram-v3/layerize-text" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-07T14:26:20.671Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram-ai/ideogram-v3/reframe.md b/model-api-reference/image-generation/ideogram-ai/ideogram-v3/reframe.md deleted file mode 100644 index c437c92f..00000000 --- a/model-api-reference/image-generation/ideogram-ai/ideogram-v3/reframe.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ideogram V3 Reframe API Reference" -description: "Ideogram V3 Reframe API reference for SandBase. Use model ideogram-ai/ideogram-v3/reframe with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram-ai/ideogram-v3/reframe" -apiReferenceJson: "{\"title\":\"Ideogram V3 Reframe\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ideogram V3 Reframe is ideogram-ai's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram-ai/ideogram-v3/reframe.\",\"default\":\"ideogram-ai/ideogram-v3/reframe\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The image URL to reframe\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"A set of images to use as style references (maximum total size 10MB across all style references). The images should be in JPEG, PNG or WebP format\"},{\"name\":\"rendering_speed\",\"type\":\"string\",\"required\":false,\"description\":\"The rendering speed to use.\",\"default\":\"BALANCED\",\"constraints\":\"Allowed values: TURBO, BALANCED, QUALITY\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":true,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/reframe\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v3/reframe/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"square_hd\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/reframe\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v3/reframe/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"square_hd\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/reframe\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v3/reframe/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"square_hd\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/reframe\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ideogram V3 Reframe" - modelId: "ideogram-ai/ideogram-v3/reframe" - vendor: "Ideogram" - vendorSlug: "ideogram-ai" - modelSlug: "ideogram-v3/reframe" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-01T16:06:34.467Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram-ai/ideogram-v3/remix.md b/model-api-reference/image-generation/ideogram-ai/ideogram-v3/remix.md deleted file mode 100644 index 8fa01ef4..00000000 --- a/model-api-reference/image-generation/ideogram-ai/ideogram-v3/remix.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ideogram V3 Remix API Reference" -description: "Ideogram V3 Remix API reference for SandBase. Use model ideogram-ai/ideogram-v3/remix with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram-ai/ideogram-v3/remix" -apiReferenceJson: "{\"title\":\"Ideogram V3 Remix\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ideogram V3 Remix is ideogram-ai's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram-ai/ideogram-v3/remix.\",\"default\":\"ideogram-ai/ideogram-v3/remix\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to remix the image with\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The image URL to remix\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"A set of images to use as style references (maximum total size 10MB across all style references). The images should be in JPEG, PNG or WebP format\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"Strength of the input image in the remix\",\"default\":\"0.8\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"rendering_speed\",\"type\":\"string\",\"required\":false,\"description\":\"The rendering speed to use.\",\"default\":\"BALANCED\",\"constraints\":\"Allowed values: TURBO, BALANCED, QUALITY\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/remix\\\",\\n \\\"prompt\\\": \\\"Old ancient city day light\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v3/remix/output_url_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/remix\\\",\\n \\\"prompt\\\": \\\"Old ancient city day light\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v3/remix/output_url_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/remix\\\",\\n \\\"prompt\\\": \\\"Old ancient city day light\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v3/remix/output_url_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/remix\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ideogram V3 Remix" - modelId: "ideogram-ai/ideogram-v3/remix" - vendor: "Ideogram" - vendorSlug: "ideogram-ai" - modelSlug: "ideogram-v3/remix" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-01T16:01:06.063Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram-ai/ideogram-v3/replace-background.md b/model-api-reference/image-generation/ideogram-ai/ideogram-v3/replace-background.md deleted file mode 100644 index 0d6d31a0..00000000 --- a/model-api-reference/image-generation/ideogram-ai/ideogram-v3/replace-background.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ideogram V3 Replace Background API Reference" -description: "Ideogram V3 Replace Background API reference for SandBase. Use model ideogram-ai/ideogram-v3/replace-background with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram-ai/ideogram-v3/replace-background" -apiReferenceJson: "{\"title\":\"Ideogram V3 Replace Background\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ideogram V3 Replace Background by ideogram-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram-ai/ideogram-v3/replace-background.\",\"default\":\"ideogram-ai/ideogram-v3/replace-background\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Cyber punk city with neon lights and skyscrappers\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The image URL whose background needs to be replaced\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"A set of images to use as style references (maximum total size 10MB across all style references). The images should be in JPEG, PNG or WebP format\"},{\"name\":\"rendering_speed\",\"type\":\"string\",\"required\":false,\"description\":\"The rendering speed to use.\",\"default\":\"BALANCED\",\"constraints\":\"Allowed values: TURBO, BALANCED, QUALITY\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/replace-background\\\",\\n \\\"prompt\\\": \\\"A beautiful sunset over mountains that writes Ideogram v3 in fal.ai\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v3/replace-background/input_image_0.webp\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/replace-background\\\",\\n \\\"prompt\\\": \\\"A beautiful sunset over mountains that writes Ideogram v3 in fal.ai\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v3/replace-background/input_image_0.webp\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/replace-background\\\",\\n \\\"prompt\\\": \\\"A beautiful sunset over mountains that writes Ideogram v3 in fal.ai\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram-v3/replace-background/input_image_0.webp\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/replace-background\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ideogram V3 Replace Background" - modelId: "ideogram-ai/ideogram-v3/replace-background" - vendor: "Ideogram" - vendorSlug: "ideogram-ai" - modelSlug: "ideogram-v3/replace-background" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-01T16:02:45.35Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram-ai/ideogram-v3/transparent.md b/model-api-reference/image-generation/ideogram-ai/ideogram-v3/transparent.md deleted file mode 100644 index 03b411dd..00000000 --- a/model-api-reference/image-generation/ideogram-ai/ideogram-v3/transparent.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ideogram V3 Transparent API Reference" -description: "Ideogram V3 Transparent API reference for SandBase. Use model ideogram-ai/ideogram-v3/transparent with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram-ai/ideogram-v3/transparent" -apiReferenceJson: "{\"title\":\"Ideogram V3 Transparent\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ideogram V3 Transparent is ideogram-ai's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram-ai/ideogram-v3/transparent.\",\"default\":\"ideogram-ai/ideogram-v3/transparent\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator\"},{\"name\":\"rendering_speed\",\"type\":\"string\",\"required\":false,\"description\":\"The rendering speed to use.\",\"default\":\"BALANCED\",\"constraints\":\"Allowed values: TURBO, BALANCED, QUALITY\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/transparent\\\",\\n \\\"prompt\\\": \\\"A logo for Ideogram Coffee.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/transparent\\\",\\n \\\"prompt\\\": \\\"A logo for Ideogram Coffee.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/transparent\\\",\\n \\\"prompt\\\": \\\"A logo for Ideogram Coffee.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram-ai/ideogram-v3/transparent\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ideogram V3 Transparent" - modelId: "ideogram-ai/ideogram-v3/transparent" - vendor: "Ideogram" - vendorSlug: "ideogram-ai" - modelSlug: "ideogram-v3/transparent" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-07T13:35:57.791Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram-ai/ideogram/custom-models/generate.md b/model-api-reference/image-generation/ideogram-ai/ideogram/custom-models/generate.md deleted file mode 100644 index 51748a70..00000000 --- a/model-api-reference/image-generation/ideogram-ai/ideogram/custom-models/generate.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ideogram API Reference — Ideogram / Custom Models / Generate" -description: "Ideogram API reference for SandBase. Use model ideogram-ai/ideogram/custom-models/generate with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram-ai/ideogram/custom-models/generate" -apiReferenceJson: "{\"title\":\"Ideogram\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ideogram Custom Models Generate is ideogram-ai's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram-ai/ideogram/custom-models/generate.\",\"default\":\"ideogram-ai/ideogram/custom-models/generate\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the image to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator.\"},{\"name\":\"model_id\",\"type\":\"string\",\"required\":false,\"description\":\"The id of a trained custom model returned by /train. The model must have finished training (status COMPLETED).\"},{\"name\":\"rendering_speed\",\"type\":\"string\",\"required\":false,\"description\":\"The rendering speed to use.\",\"default\":\"BALANCED\",\"constraints\":\"Allowed values: TURBO, BALANCED, QUALITY\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram-ai/ideogram/custom-models/generate\\\",\\n \\\"prompt\\\": \\\"A photo in my custom style\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram/custom-models/generate\\\",\\n \\\"prompt\\\": \\\"A photo in my custom style\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram/custom-models/generate\\\",\\n \\\"prompt\\\": \\\"A photo in my custom style\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram-ai/ideogram/custom-models/generate\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ideogram" - modelId: "ideogram-ai/ideogram/custom-models/generate" - vendor: "ideogram-ai" - vendorSlug: "ideogram-ai" - modelSlug: "ideogram/custom-models/generate" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-22T21:14:59.252Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram-ai/ideogram/remove-background.md b/model-api-reference/image-generation/ideogram-ai/ideogram/remove-background.md deleted file mode 100644 index e7e8d33a..00000000 --- a/model-api-reference/image-generation/ideogram-ai/ideogram/remove-background.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ideogram Remove Background API Reference" -description: "Ideogram Remove Background API reference for SandBase. Use model ideogram-ai/ideogram/remove-background with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram-ai/ideogram/remove-background" -apiReferenceJson: "{\"title\":\"Ideogram Remove Background\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ideogram Remove Background by ideogram-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram-ai/ideogram/remove-background.\",\"default\":\"ideogram-ai/ideogram/remove-background\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The image URL whose background needs to be removed. The foreground subject is preserved against a transparent background. JPEG, PNG and WebP formats are supported (maximum file size 10MB).\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram-ai/ideogram/remove-background\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram/remove-background/input_image_0.webp\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram/remove-background\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram/remove-background/input_image_0.webp\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram/remove-background\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/ideogram-ai/ideogram/remove-background/input_image_0.webp\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram-ai/ideogram/remove-background\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ideogram Remove Background" - modelId: "ideogram-ai/ideogram/remove-background" - vendor: "Ideogram" - vendorSlug: "ideogram-ai" - modelSlug: "ideogram/remove-background" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-05-07T13:51:32.81Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram-ai/ideogram/upscale.md b/model-api-reference/image-generation/ideogram-ai/ideogram/upscale.md deleted file mode 100644 index 25d321dd..00000000 --- a/model-api-reference/image-generation/ideogram-ai/ideogram/upscale.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ideogram Upscale API Reference" -description: "Ideogram Upscale API reference for SandBase. Use model ideogram-ai/ideogram/upscale with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram-ai/ideogram/upscale" -apiReferenceJson: "{\"title\":\"Ideogram Upscale\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ideogram Upscale by ideogram-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram-ai/ideogram/upscale.\",\"default\":\"ideogram-ai/ideogram/upscale\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to upscale the image with\",\"default\":\"\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The image URL to upscale\"},{\"name\":\"detail\",\"type\":\"integer\",\"required\":false,\"description\":\"The detail of the upscaled image\",\"default\":\"50\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"resemblance\",\"type\":\"integer\",\"required\":false,\"description\":\"The resemblance of the upscaled image to the original image\",\"default\":\"50\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram-ai/ideogram/upscale\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"image\\\": \\\"https://fal.media/files/monkey/e6RtJf_ue0vyWzeiEmTby.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram/upscale\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"image\\\": \\\"https://fal.media/files/monkey/e6RtJf_ue0vyWzeiEmTby.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram-ai/ideogram/upscale\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"image\\\": \\\"https://fal.media/files/monkey/e6RtJf_ue0vyWzeiEmTby.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram-ai/ideogram/upscale\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ideogram Upscale" - modelId: "ideogram-ai/ideogram/upscale" - vendor: "Ideogram" - vendorSlug: "ideogram-ai" - modelSlug: "ideogram/upscale" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-02-10T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram/4.0/fast.md b/model-api-reference/image-generation/ideogram/4.0/fast.md deleted file mode 100644 index af7cf1e4..00000000 --- a/model-api-reference/image-generation/ideogram/4.0/fast.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "V4.0q [fast] API Reference" -description: "V4.0q [fast] API reference for SandBase. Use model ideogram/4.0/fast with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram/4.0/fast" -apiReferenceJson: "{\"title\":\"V4.0q [fast]\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"4.0 Fast by Ideogram - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram/4.0/fast.\",\"default\":\"ideogram/4.0/fast\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for generation. If not provided, a random seed will be used.\"},{\"name\":\"rendering_speed\",\"type\":\"string\",\"required\":false,\"description\":\"The rendering speed to use. Faster speeds use fewer denoising steps.\",\"default\":\"BALANCED\",\"constraints\":\"Allowed values: TURBO, BALANCED, QUALITY\"},{\"name\":\"expansion_model\",\"type\":\"string\",\"required\":false,\"description\":\"Which model expands the prompt. 'None' disables expansion; 'Medium' uses the fast magic prompt model.\",\"default\":\"Medium\",\"constraints\":\"Allowed values: None, Medium\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram/4.0/fast\\\",\\n \\\"prompt\\\": \\\"A red panda perched on a mossy branch in a misty forest at sunrise\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram/4.0/fast\\\",\\n \\\"prompt\\\": \\\"A red panda perched on a mossy branch in a misty forest at sunrise\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram/4.0/fast\\\",\\n \\\"prompt\\\": \\\"A red panda perched on a mossy branch in a misty forest at sunrise\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram/4.0/fast\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "V4.0q [fast]" - modelId: "ideogram/4.0/fast" - vendor: "Ideogram" - vendorSlug: "ideogram" - modelSlug: "4.0/fast" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-07-06T17:03:48.732Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram/4.0/image-to-image.md b/model-api-reference/image-generation/ideogram/4.0/image-to-image.md deleted file mode 100644 index 22395150..00000000 --- a/model-api-reference/image-generation/ideogram/4.0/image-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ideogram V4.0q Image to Image API Reference" -description: "Ideogram V4.0q Image to Image API reference for SandBase. Use model ideogram/4.0/image-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram/4.0/image-to-image" -apiReferenceJson: "{\"title\":\"Ideogram V4.0q Image to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"4.0 by Ideogram - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram/4.0/image-to-image.\",\"default\":\"ideogram/4.0/image-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image for image-to-image generation.\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"How much to transform the input image. 1.0 ignores the input image entirely; lower values stay closer to it.\",\"default\":\"0.8\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"expansion_model\",\"type\":\"string\",\"required\":false,\"description\":\"Which model expands the prompt. 'None' disables prompt expansion and skips its fee; 'Medium' is fast; 'Large' uses Ideogram's Magic Prompt for the highest quality.\",\"default\":\"Medium\",\"constraints\":\"Allowed values: None, Medium, Large\"},{\"name\":\"rendering_speed\",\"type\":\"string\",\"required\":false,\"description\":\"The rendering speed to use. Faster speeds use fewer denoising steps.\",\"default\":\"BALANCED\",\"constraints\":\"Allowed values: TURBO, BALANCED, QUALITY\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for generation. If not provided, a random seed will be used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram/4.0/image-to-image\\\",\\n \\\"prompt\\\": \\\"A red panda perched on a mossy branch in a misty forest at sunrise\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/model_tests/svd/rocket.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram/4.0/image-to-image\\\",\\n \\\"prompt\\\": \\\"A red panda perched on a mossy branch in a misty forest at sunrise\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/Falserverless/model_tests/svd/rocket.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram/4.0/image-to-image\\\",\\n \\\"prompt\\\": \\\"A red panda perched on a mossy branch in a misty forest at sunrise\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/model_tests/svd/rocket.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram/4.0/image-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ideogram V4.0q Image to Image" - modelId: "ideogram/4.0/image-to-image" - vendor: "Ideogram" - vendorSlug: "ideogram" - modelSlug: "4.0/image-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-11T08:19:33.351Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram/4.0/instant.md b/model-api-reference/image-generation/ideogram/4.0/instant.md deleted file mode 100644 index b4ab85a7..00000000 --- a/model-api-reference/image-generation/ideogram/4.0/instant.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "V4.0q [instant] API Reference" -description: "V4.0q [instant] API reference for SandBase. Use model ideogram/4.0/instant with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram/4.0/instant" -apiReferenceJson: "{\"title\":\"V4.0q [instant]\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"4.0 Instant is Ideogram's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram/4.0/instant.\",\"default\":\"ideogram/4.0/instant\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for generation. If not provided, a random seed will be used.\"},{\"name\":\"expansion_model\",\"type\":\"string\",\"required\":false,\"description\":\"Which model expands the prompt. 'None' disables expansion; 'Medium' uses the fast magic prompt model.\",\"default\":\"Medium\",\"constraints\":\"Allowed values: None, Medium\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram/4.0/instant\\\",\\n \\\"prompt\\\": \\\"A red panda perched on a mossy branch in a misty forest at sunrise\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram/4.0/instant\\\",\\n \\\"prompt\\\": \\\"A red panda perched on a mossy branch in a misty forest at sunrise\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram/4.0/instant\\\",\\n \\\"prompt\\\": \\\"A red panda perched on a mossy branch in a misty forest at sunrise\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram/4.0/instant\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "V4.0q [instant]" - modelId: "ideogram/4.0/instant" - vendor: "Ideogram" - vendorSlug: "ideogram" - modelSlug: "4.0/instant" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-07-06T17:03:57.774Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram/4.0/tiling.md b/model-api-reference/image-generation/ideogram/4.0/tiling.md deleted file mode 100644 index 62926772..00000000 --- a/model-api-reference/image-generation/ideogram/4.0/tiling.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ideogram V4.0q Tiling API Reference" -description: "Ideogram V4.0q Tiling API reference for SandBase. Use model ideogram/4.0/tiling with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram/4.0/tiling" -apiReferenceJson: "{\"title\":\"Ideogram V4.0q Tiling\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"4.0 Tiling by Ideogram - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram/4.0/tiling.\",\"default\":\"ideogram/4.0/tiling\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Optional URL of an image. When provided without `mask_url`, performs image-to-image tiling; with `mask_url`, performs inpainting tiling.\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"Optional URL of a mask image for inpainting tiling. White regions are regenerated, black regions are preserved. Requires `image_url`.\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"How much to transform the input image. Only used when `image_url` is provided.\",\"default\":\"0.8\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"expansion_model\",\"type\":\"string\",\"required\":false,\"description\":\"Which model expands the prompt. 'None' disables prompt expansion and skips its fee; 'Medium' is fast; 'Large' uses Ideogram's Magic Prompt for the highest quality.\",\"default\":\"Medium\",\"constraints\":\"Allowed values: None, Medium, Large\"},{\"name\":\"tiling_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Tiling direction: 'both' (omnidirectional), 'horizontal' (left-right only), or 'vertical' (top-bottom only).\",\"default\":\"both\",\"constraints\":\"Allowed values: both, horizontal, vertical\"},{\"name\":\"rendering_speed\",\"type\":\"string\",\"required\":false,\"description\":\"The rendering speed to use. Faster speeds use fewer denoising steps.\",\"default\":\"BALANCED\",\"constraints\":\"Allowed values: TURBO, BALANCED, QUALITY\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for generation. If not provided, a random seed will be used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram/4.0/tiling\\\",\\n \\\"prompt\\\": \\\"A red panda perched on a mossy branch in a misty forest at sunrise\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram/4.0/tiling\\\",\\n \\\"prompt\\\": \\\"A red panda perched on a mossy branch in a misty forest at sunrise\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram/4.0/tiling\\\",\\n \\\"prompt\\\": \\\"A red panda perched on a mossy branch in a misty forest at sunrise\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram/4.0/tiling\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ideogram V4.0q Tiling" - modelId: "ideogram/4.0/tiling" - vendor: "Ideogram" - vendorSlug: "ideogram" - modelSlug: "4.0/tiling" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-11T08:39:43.049Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram/4.5.md b/model-api-reference/image-generation/ideogram/4.5.md new file mode 100644 index 00000000..b0ca7091 --- /dev/null +++ b/model-api-reference/image-generation/ideogram/4.5.md @@ -0,0 +1,21 @@ +--- +title: "Ideogram 4.5 Text to Image API Reference" +description: "Ideogram 4.5 Text to Image API reference for SandBase. Use model ideogram/4.5 with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/ideogram/4.5" +apiReferenceJson: "{\"title\":\"Ideogram 4.5 Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ideogram 4.5 generates images from a text prompt, with reliable text rendering and polished graphic design output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram/4.5.\",\"default\":\"ideogram/4.5\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The generation or editing prompt.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed. Omit to choose automatically.\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Text-to-image quality.\",\"default\":\"medium\",\"constraints\":\"Allowed values: low, medium, high\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram/4.5\\\",\\n \\\"prompt\\\": \\\"A colorful storefront with a sign reading hello\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram/4.5\\\",\\n \\\"prompt\\\": \\\"A colorful storefront with a sign reading hello\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram/4.5\\\",\\n \\\"prompt\\\": \\\"A colorful storefront with a sign reading hello\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram/4.5\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Ideogram 4.5 Text to Image" + modelId: "ideogram/4.5" + vendor: "Ideogram" + vendorSlug: "ideogram" + modelSlug: "4.5" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-09-30T16:55:56.79Z" + capabilities: ["text-to-image"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/ideogram/4.5/edit.md b/model-api-reference/image-generation/ideogram/4.5/edit.md new file mode 100644 index 00000000..90e1bddd --- /dev/null +++ b/model-api-reference/image-generation/ideogram/4.5/edit.md @@ -0,0 +1,21 @@ +--- +title: "Ideogram 4.5 Edit API Reference" +description: "Ideogram 4.5 Edit API reference for SandBase. Use model ideogram/4.5/edit with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/ideogram/4.5/edit" +apiReferenceJson: "{\"title\":\"Ideogram 4.5 Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ideogram 4.5 edits an image from a text instruction, with an optional mask and style references, with reliable text rendering and polished graphic design output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram/4.5/edit.\",\"default\":\"ideogram/4.5/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The generation or editing prompt.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Primary source image to edit.\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"Mask matching the source dimensions. Black edits, white preserves. Must contain both regions after rounding.\"},{\"name\":\"edit_precision\",\"type\":\"string\",\"required\":false,\"description\":\"regular uses Generate; high uses Precise Edit with unchanged-pixel restoration. Both always prepare structured edit instructions.\",\"default\":\"regular\",\"constraints\":\"Allowed values: regular, high\"},{\"name\":\"reference_image_urls\",\"type\":\"array\",\"required\":false,\"description\":\"Up to four references plus the primary source, or three references plus the primary source and mask.\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Quality tier for either edit precision. Defaults to medium.\",\"default\":\"medium\",\"constraints\":\"Allowed values: very_low, low, medium, high\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed. Omit to choose automatically.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram/4.5/edit\\\",\\n \\\"prompt\\\": \\\"A colorful storefront with a sign reading hello\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram/4.5/edit\\\",\\n \\\"prompt\\\": \\\"A colorful storefront with a sign reading hello\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram/4.5/edit\\\",\\n \\\"prompt\\\": \\\"A colorful storefront with a sign reading hello\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram/4.5/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Ideogram 4.5 Edit" + modelId: "ideogram/4.5/edit" + vendor: "Ideogram" + vendorSlug: "ideogram" + modelSlug: "4.5/edit" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-09-30T16:56:12.009Z" + capabilities: ["image-to-image"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/ideogram/custom-models.md b/model-api-reference/image-generation/ideogram/custom-models.md deleted file mode 100644 index dc625473..00000000 --- a/model-api-reference/image-generation/ideogram/custom-models.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ideogram API Reference — Ideogram Custom Models API" -description: "Ideogram API reference for SandBase. Use model ideogram/custom-models with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram/custom-models" -apiReferenceJson: "{\"title\":\"Ideogram\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Custom Models by Ideogram - advanced AI model for training. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram/custom-models.\",\"default\":\"ideogram/custom-models\"},{\"name\":\"images_data_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of a ZIP archive of training images. The archive must contain between 10 and 100 images (JPEG, PNG, or WebP). You may include caption sidecar files (``.txt``) to guide training -- captions are matched to images by filename stem.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"training\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram/custom-models\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram/custom-models\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram/custom-models\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram/custom-models\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ideogram" - modelId: "ideogram/custom-models" - vendor: "Ideogram" - vendorSlug: "ideogram" - modelSlug: "custom-models" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-22T21:14:48.324Z" - capabilities: ["training"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/ideogram/object-removal.md b/model-api-reference/image-generation/ideogram/object-removal.md deleted file mode 100644 index d50a234f..00000000 --- a/model-api-reference/image-generation/ideogram/object-removal.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ideogram Object Removal API Reference" -description: "Ideogram Object Removal API reference for SandBase. Use model ideogram/object-removal with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/ideogram/object-removal" -apiReferenceJson: "{\"title\":\"Ideogram Object Removal\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Object Removal by Ideogram - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ideogram/object-removal.\",\"default\":\"ideogram/object-removal\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The source image containing the object to remove (maximum file size 10MB).\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"A black-and-white mask matching the source image dimensions. White pixels are removed and black pixels are preserved (maximum file size 10MB).\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ideogram/object-removal\\\",\\n \\\"image\\\": \\\"https://v3.fal.media/files/panda/-LC_gNNV3wUHaGMQT3klE_output.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"ideogram/object-removal\\\",\\n \\\"image\\\": \\\"https://v3.fal.media/files/panda/-LC_gNNV3wUHaGMQT3klE_output.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"ideogram/object-removal\\\",\\n \\\"image\\\": \\\"https://v3.fal.media/files/panda/-LC_gNNV3wUHaGMQT3klE_output.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"ideogram/object-removal\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ideogram Object Removal" - modelId: "ideogram/object-removal" - vendor: "Ideogram" - vendorSlug: "ideogram" - modelSlug: "object-removal" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-07-29T23:03:31.402Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/imagineart/imagineart-2.0-edit-preview/image-to-image.md b/model-api-reference/image-generation/imagineart/imagineart-2.0-edit-preview/image-to-image.md deleted file mode 100644 index 69e5f75a..00000000 --- a/model-api-reference/image-generation/imagineart/imagineart-2.0-edit-preview/image-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Imagineart 2.0 Edit Preview API Reference" -description: "Imagineart 2.0 Edit Preview API reference for SandBase. Use model imagineart/imagineart-2.0-edit-preview/image-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/imagineart/imagineart-2.0-edit-preview/image-to-image" -apiReferenceJson: "{\"title\":\"Imagineart 2.0 Edit Preview\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Imagineart 2.0 Edit Preview by ImagineArt - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to imagineart/imagineart-2.0-edit-preview/image-to-image.\",\"default\":\"imagineart/imagineart-2.0-edit-preview/image-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Editing instruction (e.g. 'replace the background with a sunset beach').\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference image URL(s). Up to 4 images.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"imagineart/imagineart-2.0-edit-preview/image-to-image\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"imagineart/imagineart-2.0-edit-preview/image-to-image\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"imagineart/imagineart-2.0-edit-preview/image-to-image\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"imagineart/imagineart-2.0-edit-preview/image-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Imagineart 2.0 Edit Preview" - modelId: "imagineart/imagineart-2.0-edit-preview/image-to-image" - vendor: "ImagineArt" - vendorSlug: "imagineart" - modelSlug: "imagineart-2.0-edit-preview/image-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-05-19T14:38:38.088Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/imagineart/imagineart-2.0-preview/text-to-image.md b/model-api-reference/image-generation/imagineart/imagineart-2.0-preview/text-to-image.md deleted file mode 100644 index 9d62a32d..00000000 --- a/model-api-reference/image-generation/imagineart/imagineart-2.0-preview/text-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Imagineart 2.0 Preview API Reference" -description: "Imagineart 2.0 Preview API reference for SandBase. Use model imagineart/imagineart-2.0-preview/text-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/imagineart/imagineart-2.0-preview/text-to-image" -apiReferenceJson: "{\"title\":\"Imagineart 2.0 Preview\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Imagineart 2.0 Preview by ImagineArt - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to imagineart/imagineart-2.0-preview/text-to-image.\",\"default\":\"imagineart/imagineart-2.0-preview/text-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the desired image\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution: '1K' targets ~1024px and will be faster. '2K' targets ~2048px image size and will be slower but with higher quality.\",\"default\":\"2K\",\"constraints\":\"Allowed values: 1K, 2K\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Default is random (0 and -1 are treated as random)\"},{\"name\":\"reasoning\",\"type\":\"string\",\"required\":false,\"description\":\"Visual Understanding Level: low (default) or high. High reasoning takes more time but generates better images.\",\"default\":\"low\",\"constraints\":\"Allowed values: high, low\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"imagineart/imagineart-2.0-preview/text-to-image\\\",\\n \\\"prompt\\\": \\\"Photorealistic cinematic portrait of a stressed young woman with dark skin and long brown dreadlocks styled in a messy high bun, wearing black-rimmed glasses and a peach-colored collared shirt. She is sitting at a desk, sipping coffee from a white ceramic mug held in her right hand, with a focused and slightly overwhelmed expression while looking at a silver laptop in front of her.\\\\n\\\\nHer face, hair, glasses, and entire upper body are completely covered with dozens of colorful sticky notes in yellow, pink, blue, orange, red, and green, many with no written text. Sticky notes are stuck to her forehead, cheeks, dreadlocks, and all over her shirt.\\\\n\\\\nThe scene is set in a modern office with soft cool blue-toned natural lighting coming from the side. Blurred green plants are visible in the background and \\\\\\\"ImagineArt\\\\\\\" is written on the Wall. On the desk in the foreground there is another white mug, scattered papers, and more sticky notes.\\\\n\\\\nHighly detailed, sharp focus on the woman, shallow depth of field, realistic skin texture, natural fabric folds, cinematic lighting, moody atmosphere capturing information overload and multitasking, 8k resolution, photorealistic.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"imagineart/imagineart-2.0-preview/text-to-image\\\",\\n \\\"prompt\\\": \\\"Photorealistic cinematic portrait of a stressed young woman with dark skin and long brown dreadlocks styled in a messy high bun, wearing black-rimmed glasses and a peach-colored collared shirt. She is sitting at a desk, sipping coffee from a white ceramic mug held in her right hand, with a focused and slightly overwhelmed expression while looking at a silver laptop in front of her.\\\\n\\\\nHer face, hair, glasses, and entire upper body are completely covered with dozens of colorful sticky notes in yellow, pink, blue, orange, red, and green, many with no written text. Sticky notes are stuck to her forehead, cheeks, dreadlocks, and all over her shirt.\\\\n\\\\nThe scene is set in a modern office with soft cool blue-toned natural lighting coming from the side. Blurred green plants are visible in the background and \\\\\\\"ImagineArt\\\\\\\" is written on the Wall. On the desk in the foreground there is another white mug, scattered papers, and more sticky notes.\\\\n\\\\nHighly detailed, sharp focus on the woman, shallow depth of field, realistic skin texture, natural fabric folds, cinematic lighting, moody atmosphere capturing information overload and multitasking, 8k resolution, photorealistic.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"imagineart/imagineart-2.0-preview/text-to-image\\\",\\n \\\"prompt\\\": \\\"Photorealistic cinematic portrait of a stressed young woman with dark skin and long brown dreadlocks styled in a messy high bun, wearing black-rimmed glasses and a peach-colored collared shirt. She is sitting at a desk, sipping coffee from a white ceramic mug held in her right hand, with a focused and slightly overwhelmed expression while looking at a silver laptop in front of her.\\\\n\\\\nHer face, hair, glasses, and entire upper body are completely covered with dozens of colorful sticky notes in yellow, pink, blue, orange, red, and green, many with no written text. Sticky notes are stuck to her forehead, cheeks, dreadlocks, and all over her shirt.\\\\n\\\\nThe scene is set in a modern office with soft cool blue-toned natural lighting coming from the side. Blurred green plants are visible in the background and \\\\\\\"ImagineArt\\\\\\\" is written on the Wall. On the desk in the foreground there is another white mug, scattered papers, and more sticky notes.\\\\n\\\\nHighly detailed, sharp focus on the woman, shallow depth of field, realistic skin texture, natural fabric folds, cinematic lighting, moody atmosphere capturing information overload and multitasking, 8k resolution, photorealistic.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"imagineart/imagineart-2.0-preview/text-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Imagineart 2.0 Preview" - modelId: "imagineart/imagineart-2.0-preview/text-to-image" - vendor: "ImagineArt" - vendorSlug: "imagineart" - modelSlug: "imagineart-2.0-preview/text-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-16T19:53:53.912Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/kwaivgi/kling-image/o1.md b/model-api-reference/image-generation/kwaivgi/kling-image/o1.md deleted file mode 100644 index e5ee00a4..00000000 --- a/model-api-reference/image-generation/kwaivgi/kling-image/o1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling O1 Image API Reference" -description: "Kling O1 Image API reference for SandBase. Use model kwaivgi/kling-image/o1 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/kwaivgi/kling-image/o1" -apiReferenceJson: "{\"title\":\"Kling O1 Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Image O1 by KwaiVGI - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-image/o1.\",\"default\":\"kwaivgi/kling-image/o1\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for image generation. Reference images using @Image1, @Image2, etc. (or @Image if only one image). Max 2500 characters.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"List of reference images. Reference images in prompt using @Image1, @Image2, etc. (1-indexed). Max 10 images.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Image generation resolution. 1K: standard, 2K: high-res.\",\"default\":\"1K\",\"constraints\":\"Allowed values: 1K, 2K\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"elements\",\"type\":\"array\",\"required\":false,\"description\":\"Elements (characters/objects) to include in the image. Reference in prompt as @Element1, @Element2, etc. Maximum 10 total (elements + reference images).\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-image/o1\\\",\\n \\\"prompt\\\": \\\"Put @Image1 to the back seat of the car in @Image2, put @Element1 on to the @Image1\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-image/o1\\\",\\n \\\"prompt\\\": \\\"Put @Image1 to the back seat of the car in @Image2, put @Element1 on to the @Image1\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-image/o1\\\",\\n \\\"prompt\\\": \\\"Put @Image1 to the back seat of the car in @Image2, put @Element1 on to the @Image1\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-image/o1\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling O1 Image" - modelId: "kwaivgi/kling-image/o1" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-image/o1" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-01T10:04:03.443Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/kwaivgi/kling-image/o3.md b/model-api-reference/image-generation/kwaivgi/kling-image/o3.md index 9f30e54c..f506caef 100644 --- a/model-api-reference/image-generation/kwaivgi/kling-image/o3.md +++ b/model-api-reference/image-generation/kwaivgi/kling-image/o3.md @@ -1,12 +1,12 @@ --- -title: "Kling Image API Reference — KwaiVGI Kling Image / O3 API" -description: "Kling Image API reference for SandBase. Use model kwaivgi/kling-image/o3 with /v1/run; see request and response examples." +title: "Kling Image O3 Text to Image API Reference" +description: "Kling Image O3 Text to Image API reference for SandBase. Use model kwaivgi/kling-image/o3 with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/kwaivgi/kling-image/o3" -apiReferenceJson: "{\"title\":\"Kling Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Image O3 by KwaiVGI - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-image/o3.\",\"default\":\"kwaivgi/kling-image/o3\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for image generation. Max 2500 characters.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Image generation resolution. 1K: standard, 2K: high-res, 4K: ultra high-res.\",\"default\":\"1K\",\"constraints\":\"Allowed values: 1K, 2K, 4K\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-image/o3\\\",\\n \\\"prompt\\\": \\\"A poster design says 'Kling Omni 3 Image is available on fal' with a cool font in the background as several rows and big font size. Big gap between the rows. High fashion model wearing a dress made entirely of living moss and small white flowers, standing in an abandoned greenhouse, shafts of light, editorial photography.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-image/o3\\\",\\n \\\"prompt\\\": \\\"A poster design says 'Kling Omni 3 Image is available on fal' with a cool font in the background as several rows and big font size. Big gap between the rows. High fashion model wearing a dress made entirely of living moss and small white flowers, standing in an abandoned greenhouse, shafts of light, editorial photography.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-image/o3\\\",\\n \\\"prompt\\\": \\\"A poster design says 'Kling Omni 3 Image is available on fal' with a cool font in the background as several rows and big font size. Big gap between the rows. High fashion model wearing a dress made entirely of living moss and small white flowers, standing in an abandoned greenhouse, shafts of light, editorial photography.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-image/o3\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling Image O3 Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Image O3 by Kuaishou generates images from a text prompt at 1K, 2K, or 4K resolution in common aspect ratios.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-image/o3.\",\"default\":\"kwaivgi/kling-image/o3\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for image generation. Max 2500 characters.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Image generation resolution. 1K: standard, 2K: high-res, 4K: ultra high-res.\",\"default\":\"1K\",\"constraints\":\"Allowed values: 1K, 2K, 4K\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-image/o3\\\",\\n \\\"prompt\\\": \\\"A poster design says 'Kling Omni 3 Image is available on fal' with a cool font in the background as several rows and big font size. Big gap between the rows. High fashion model wearing a dress made entirely of living moss and small white flowers, standing in an abandoned greenhouse, shafts of light, editorial photography.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-image/o3\\\",\\n \\\"prompt\\\": \\\"A poster design says 'Kling Omni 3 Image is available on fal' with a cool font in the background as several rows and big font size. Big gap between the rows. High fashion model wearing a dress made entirely of living moss and small white flowers, standing in an abandoned greenhouse, shafts of light, editorial photography.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-image/o3\\\",\\n \\\"prompt\\\": \\\"A poster design says 'Kling Omni 3 Image is available on fal' with a cool font in the background as several rows and big font size. Big gap between the rows. High fashion model wearing a dress made entirely of living moss and small white flowers, standing in an abandoned greenhouse, shafts of light, editorial photography.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-image/o3\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Image" + modelName: "Kling Image O3 Text to Image" modelId: "kwaivgi/kling-image/o3" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/image-generation/kwaivgi/kling-image/o3/edit.md b/model-api-reference/image-generation/kwaivgi/kling-image/o3/edit.md index 4bf99529..9c31dad1 100644 --- a/model-api-reference/image-generation/kwaivgi/kling-image/o3/edit.md +++ b/model-api-reference/image-generation/kwaivgi/kling-image/o3/edit.md @@ -1,12 +1,12 @@ --- -title: "Kling Image API Reference — KwaiVGI Kling Image / O3 / Edit API" -description: "Kling Image API reference for SandBase. Use model kwaivgi/kling-image/o3/edit with /v1/run; see request and response examples." +title: "Kling Image O3 Edit API Reference" +description: "Kling Image O3 Edit API reference for SandBase. Use model kwaivgi/kling-image/o3/edit with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/kwaivgi/kling-image/o3/edit" -apiReferenceJson: "{\"title\":\"Kling Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Image O3 Edit is KwaiVGI's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-image/o3/edit.\",\"default\":\"kwaivgi/kling-image/o3/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for image generation. Reference images using @Image1, @Image2, etc. (or @Image if only one image). Max 2500 characters.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"List of reference images. Reference images in prompt using @Image1, @Image2, etc. (1-indexed). Max 10 images.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Image generation resolution. 1K: standard, 2K: high-res, 4K: ultra high-res.\",\"default\":\"1K\",\"constraints\":\"Allowed values: 1K, 2K, 4K\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-image/o3/edit\\\",\\n \\\"prompt\\\": \\\"Transform into photorealistic 3D render, add proper lighting and shadows, realistic materials and textures, maintain exact proportions and design from sketch, product visualization quality\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-image/o3/edit\\\",\\n \\\"prompt\\\": \\\"Transform into photorealistic 3D render, add proper lighting and shadows, realistic materials and textures, maintain exact proportions and design from sketch, product visualization quality\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-image/o3/edit\\\",\\n \\\"prompt\\\": \\\"Transform into photorealistic 3D render, add proper lighting and shadows, realistic materials and textures, maintain exact proportions and design from sketch, product visualization quality\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-image/o3/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling Image O3 Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Image O3 Edit by Kuaishou edits or recomposes images from a text instruction using up to 10 reference images, with 1K, 2K, or 4K output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-image/o3/edit.\",\"default\":\"kwaivgi/kling-image/o3/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for image generation. Reference images using @Image1, @Image2, etc. (or @Image if only one image). Max 2500 characters.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"List of reference images. Reference images in prompt using @Image1, @Image2, etc. (1-indexed). Max 10 images.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Image generation resolution. 1K: standard, 2K: high-res, 4K: ultra high-res.\",\"default\":\"1K\",\"constraints\":\"Allowed values: 1K, 2K, 4K\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-image/o3/edit\\\",\\n \\\"prompt\\\": \\\"Transform into photorealistic 3D render, add proper lighting and shadows, realistic materials and textures, maintain exact proportions and design from sketch, product visualization quality\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/kwaivgi/kling-image/o3/edit/output_url_0.png\\\"\\n ],\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-image/o3/edit\\\",\\n \\\"prompt\\\": \\\"Transform into photorealistic 3D render, add proper lighting and shadows, realistic materials and textures, maintain exact proportions and design from sketch, product visualization quality\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/kwaivgi/kling-image/o3/edit/output_url_0.png\\\"\\n ],\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-image/o3/edit\\\",\\n \\\"prompt\\\": \\\"Transform into photorealistic 3D render, add proper lighting and shadows, realistic materials and textures, maintain exact proportions and design from sketch, product visualization quality\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/kwaivgi/kling-image/o3/edit/output_url_0.png\\\"\\n ],\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-image/o3/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Image" + modelName: "Kling Image O3 Edit" modelId: "kwaivgi/kling-image/o3/edit" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/image-generation/kwaivgi/kling-image/v3.md b/model-api-reference/image-generation/kwaivgi/kling-image/v3.md deleted file mode 100644 index 45116e57..00000000 --- a/model-api-reference/image-generation/kwaivgi/kling-image/v3.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Image V3 API Reference" -description: "Kling Image V3 API reference for SandBase. Use model kwaivgi/kling-image/v3 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/kwaivgi/kling-image/v3" -apiReferenceJson: "{\"title\":\"Kling Image V3\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Image V3 by KwaiVGI - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-image/v3.\",\"default\":\"kwaivgi/kling-image/v3\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for image generation. Max 2500 characters.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Image generation resolution. 1K: standard, 2K: high-res.\",\"default\":\"1K\",\"constraints\":\"Allowed values: 1K, 2K\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-image/v3\\\",\\n \\\"prompt\\\": \\\"Extremely realistic image of a hobbit's study filled with maps and curiosities, roaring fireplace, rain against round windows, stacks of handwritten journals, warm tungsten lighting, inviting atmosphere. Hobbit is sitting on the chair.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-image/v3\\\",\\n \\\"prompt\\\": \\\"Extremely realistic image of a hobbit's study filled with maps and curiosities, roaring fireplace, rain against round windows, stacks of handwritten journals, warm tungsten lighting, inviting atmosphere. Hobbit is sitting on the chair.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-image/v3\\\",\\n \\\"prompt\\\": \\\"Extremely realistic image of a hobbit's study filled with maps and curiosities, roaring fireplace, rain against round windows, stacks of handwritten journals, warm tungsten lighting, inviting atmosphere. Hobbit is sitting on the chair.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-image/v3\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Image V3" - modelId: "kwaivgi/kling-image/v3" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-image/v3" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-02-03T18:31:23.485Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/kwaivgi/kling-image/v3/edit.md b/model-api-reference/image-generation/kwaivgi/kling-image/v3/edit.md deleted file mode 100644 index 426f4db8..00000000 --- a/model-api-reference/image-generation/kwaivgi/kling-image/v3/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Image V3 Edit API Reference" -description: "Kling Image V3 Edit API reference for SandBase. Use model kwaivgi/kling-image/v3/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/kwaivgi/kling-image/v3/edit" -apiReferenceJson: "{\"title\":\"Kling Image V3 Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Image V3 Edit is KwaiVGI's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-image/v3/edit.\",\"default\":\"kwaivgi/kling-image/v3/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for image generation. Max 2500 characters.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Reference image for image-to-image generation. Max file size: 10.0MB, Min width: 300px, Min height: 300px, Min aspect ratio: 0.40, Max aspect ratio: 2.50, Timeout: 20.0s\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Image generation resolution. 1K: standard, 2K: high-res.\",\"default\":\"1K\",\"constraints\":\"Allowed values: 1K, 2K\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-image/v3/edit\\\",\\n \\\"prompt\\\": \\\"Transform to deep winter, heavy snow covering all surfaces, bare frozen trees, overcast sky, footprints in fresh powder, cold blue color grade\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/d135dbfa34f0-3zxm2qoj2xYWSNwEe5Vd9_a74d767fc42e47a0bf657117fbcf8b90.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-image/v3/edit\\\",\\n \\\"prompt\\\": \\\"Transform to deep winter, heavy snow covering all surfaces, bare frozen trees, overcast sky, footprints in fresh powder, cold blue color grade\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/d135dbfa34f0-3zxm2qoj2xYWSNwEe5Vd9_a74d767fc42e47a0bf657117fbcf8b90.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-image/v3/edit\\\",\\n \\\"prompt\\\": \\\"Transform to deep winter, heavy snow covering all surfaces, bare frozen trees, overcast sky, footprints in fresh powder, cold blue color grade\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/d135dbfa34f0-3zxm2qoj2xYWSNwEe5Vd9_a74d767fc42e47a0bf657117fbcf8b90.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-image/v3/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Image V3 Edit" - modelId: "kwaivgi/kling-image/v3/edit" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-image/v3/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-02-03T18:30:19.013Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/kwaivgi/kling-video/create-voice.md b/model-api-reference/image-generation/kwaivgi/kling-video/create-voice.md deleted file mode 100644 index d6da1763..00000000 --- a/model-api-reference/image-generation/kwaivgi/kling-video/create-voice.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Kling Video Create Voice reference moved" -description: "The kwaivgi/kling-video/create-voice reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/kwaivgi/kling-video/create-voice -robots: noindex,follow ---- - -# This page has moved - -`kwaivgi/kling-video/create-voice` is a video model. Its API reference now lives at [Kling Video Create Voice](/model-api-reference/video-generation/kwaivgi/kling-video/create-voice) under Video Generation. diff --git a/model-api-reference/image-generation/kwaivgi/kling-video/o1/pro/edit.md b/model-api-reference/image-generation/kwaivgi/kling-video/o1/pro/edit.md deleted file mode 100644 index 8692b665..00000000 --- a/model-api-reference/image-generation/kwaivgi/kling-video/o1/pro/edit.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Kling Video O1 Pro reference moved" -description: "The kwaivgi/kling-video/o1/pro/edit reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/kwaivgi/kling-video/o1/pro/edit -robots: noindex,follow ---- - -# This page has moved - -`kwaivgi/kling-video/o1/pro/edit` is a video model. Its API reference now lives at [Kling Video O1 Pro](/model-api-reference/video-generation/kwaivgi/kling-video/o1/pro/edit) under Video Generation. diff --git a/model-api-reference/image-generation/kwaivgi/kling-video/o1/pro/video-to-video.md b/model-api-reference/image-generation/kwaivgi/kling-video/o1/pro/video-to-video.md deleted file mode 100644 index f44ac19f..00000000 --- a/model-api-reference/image-generation/kwaivgi/kling-video/o1/pro/video-to-video.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Kling Video O1 Pro reference moved" -description: "The kwaivgi/kling-video/o1/pro/video-to-video reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/kwaivgi/kling-video/o1/pro/video-to-video -robots: noindex,follow ---- - -# This page has moved - -`kwaivgi/kling-video/o1/pro/video-to-video` is a video model. Its API reference now lives at [Kling Video O1 Pro](/model-api-reference/video-generation/kwaivgi/kling-video/o1/pro/video-to-video) under Video Generation. diff --git a/model-api-reference/image-generation/kwaivgi/kling-video/o1/standard/edit.md b/model-api-reference/image-generation/kwaivgi/kling-video/o1/standard/edit.md deleted file mode 100644 index c9e143bb..00000000 --- a/model-api-reference/image-generation/kwaivgi/kling-video/o1/standard/edit.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Kling Video O1 Standard reference moved" -description: "The kwaivgi/kling-video/o1/standard/edit reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/kwaivgi/kling-video/o1/standard/edit -robots: noindex,follow ---- - -# This page has moved - -`kwaivgi/kling-video/o1/standard/edit` is a video model. Its API reference now lives at [Kling Video O1 Standard](/model-api-reference/video-generation/kwaivgi/kling-video/o1/standard/edit) under Video Generation. diff --git a/model-api-reference/image-generation/kwaivgi/kling-video/o1/standard/video-to-video.md b/model-api-reference/image-generation/kwaivgi/kling-video/o1/standard/video-to-video.md deleted file mode 100644 index d642fc48..00000000 --- a/model-api-reference/image-generation/kwaivgi/kling-video/o1/standard/video-to-video.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Kling Video O1 Standard reference moved" -description: "The kwaivgi/kling-video/o1/standard/video-to-video reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/kwaivgi/kling-video/o1/standard/video-to-video -robots: noindex,follow ---- - -# This page has moved - -`kwaivgi/kling-video/o1/standard/video-to-video` is a video model. Its API reference now lives at [Kling Video O1 Standard](/model-api-reference/video-generation/kwaivgi/kling-video/o1/standard/video-to-video) under Video Generation. diff --git a/model-api-reference/image-generation/kwaivgi/kolors-tryon.md b/model-api-reference/image-generation/kwaivgi/kolors-tryon.md deleted file mode 100644 index 84ffd9a1..00000000 --- a/model-api-reference/image-generation/kwaivgi/kolors-tryon.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Kolors Virtual TryOn v1.5 API Reference" -description: "Kling Kolors Virtual TryOn v1.5 API reference for SandBase. Use model kwaivgi/kolors-tryon with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/kwaivgi/kolors-tryon" -apiReferenceJson: "{\"title\":\"Kling Kolors Virtual TryOn v1.5\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kolors Tryon by KwaiVGI - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kolors-tryon.\",\"default\":\"kwaivgi/kolors-tryon\"},{\"name\":\"garment_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL to the garment image.\"},{\"name\":\"human_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL for the human image.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kolors-tryon\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kolors-tryon\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kolors-tryon\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kolors-tryon\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Kolors Virtual TryOn v1.5" - modelId: "kwaivgi/kolors-tryon" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kolors-tryon" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-01-23T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/kwaivgi/kolors.md b/model-api-reference/image-generation/kwaivgi/kolors.md deleted file mode 100644 index 35aca016..00000000 --- a/model-api-reference/image-generation/kwaivgi/kolors.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kolors API Reference" -description: "Kolors API reference for SandBase. Use model kwaivgi/kolors with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/kwaivgi/kolors" -apiReferenceJson: "{\"title\":\"Kolors\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kolors by KwaiVGI - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kolors.\",\"default\":\"kwaivgi/kolors\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for generating the image. Be as descriptive as possible for best results.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"5\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"50\",\"constraints\":\"Range: 1 to 150\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed\"},{\"name\":\"scheduler\",\"type\":\"string\",\"required\":false,\"description\":\"The scheduler to use for the model.\",\"default\":\"EulerDiscreteScheduler\",\"constraints\":\"Allowed values: EulerDiscreteScheduler, EulerAncestralDiscreteScheduler, DPMSolverMultistepScheduler, DPMSolverMultistepScheduler_SDE_karras, UniPCMultistepScheduler, DEISMultistepScheduler\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kolors\\\",\\n \\\"prompt\\\": \\\"A young Chinese couple with fair skin, dressed in stylish sportswear, with the modern Beijing city skyline in the background. Facial details, clear pores, captured using the latest camera model, close-up shot, ultra-high quality, 8K, visual feast.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kolors\\\",\\n \\\"prompt\\\": \\\"A young Chinese couple with fair skin, dressed in stylish sportswear, with the modern Beijing city skyline in the background. Facial details, clear pores, captured using the latest camera model, close-up shot, ultra-high quality, 8K, visual feast.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kolors\\\",\\n \\\"prompt\\\": \\\"A young Chinese couple with fair skin, dressed in stylish sportswear, with the modern Beijing city skyline in the background. Facial details, clear pores, captured using the latest camera model, close-up shot, ultra-high quality, 8K, visual feast.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kolors\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kolors" - modelId: "kwaivgi/kolors" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kolors" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-07-24T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/kwaivgi/kolors/image-to-image.md b/model-api-reference/image-generation/kwaivgi/kolors/image-to-image.md deleted file mode 100644 index 0fb4a710..00000000 --- a/model-api-reference/image-generation/kwaivgi/kolors/image-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kolors Image to Image API Reference" -description: "Kolors Image to Image API reference for SandBase. Use model kwaivgi/kolors/image-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/kwaivgi/kolors/image-to-image" -apiReferenceJson: "{\"title\":\"Kolors Image to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kolors is KwaiVGI's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kolors/image-to-image.\",\"default\":\"kwaivgi/kolors/image-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of image to use for image to image\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"5\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"50\",\"constraints\":\"Range: 1 to 150\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength to use for image-to-image. 1.0 is completely remakes the image while 0.0 preserves the original.\",\"default\":\"0.85\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"scheduler\",\"type\":\"string\",\"required\":false,\"description\":\"The scheduler to use for the model.\",\"default\":\"EulerDiscreteScheduler\",\"constraints\":\"Allowed values: EulerDiscreteScheduler, EulerAncestralDiscreteScheduler, DPMSolverMultistepScheduler, DPMSolverMultistepScheduler_SDE_karras, UniPCMultistepScheduler, DEISMultistepScheduler\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kolors/image-to-image\\\",\\n \\\"prompt\\\": \\\"high quality image of a capybara wearing sunglasses. In the background of the image there are trees, poles, grass and other objects. At the bottom of the object there is the road., 8k, highly detailed.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kolors/image-to-image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kolors/image-to-image\\\",\\n \\\"prompt\\\": \\\"high quality image of a capybara wearing sunglasses. In the background of the image there are trees, poles, grass and other objects. At the bottom of the object there is the road., 8k, highly detailed.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kolors/image-to-image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kolors/image-to-image\\\",\\n \\\"prompt\\\": \\\"high quality image of a capybara wearing sunglasses. In the background of the image there are trees, poles, grass and other objects. At the bottom of the object there is the road., 8k, highly detailed.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kolors/image-to-image/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kolors/image-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kolors Image to Image" - modelId: "kwaivgi/kolors/image-to-image" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kolors/image-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-11-19T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/lightricks/ltx-2-19b/audio-to-video.md b/model-api-reference/image-generation/lightricks/ltx-2-19b/audio-to-video.md deleted file mode 100644 index 8cea0c7b..00000000 --- a/model-api-reference/image-generation/lightricks/ltx-2-19b/audio-to-video.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "LTX-2 19B reference moved" -description: "The lightricks/ltx-2-19b/audio-to-video reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/lightricks/ltx-2-19b/audio-to-video -robots: noindex,follow ---- - -# This page has moved - -`lightricks/ltx-2-19b/audio-to-video` is a video model. Its API reference now lives at [LTX-2 19B](/model-api-reference/video-generation/lightricks/ltx-2-19b/audio-to-video) under Video Generation. diff --git a/model-api-reference/image-generation/lightricks/ltx-2-19b/distilled/audio-to-video.md b/model-api-reference/image-generation/lightricks/ltx-2-19b/distilled/audio-to-video.md deleted file mode 100644 index 5900c6b5..00000000 --- a/model-api-reference/image-generation/lightricks/ltx-2-19b/distilled/audio-to-video.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "LTX-2 19B Distilled reference moved" -description: "The lightricks/ltx-2-19b/distilled/audio-to-video reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/audio-to-video -robots: noindex,follow ---- - -# This page has moved - -`lightricks/ltx-2-19b/distilled/audio-to-video` is a video model. Its API reference now lives at [LTX-2 19B Distilled](/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/audio-to-video) under Video Generation. diff --git a/model-api-reference/image-generation/lightricks/ltx-2-19b/extend-video.md b/model-api-reference/image-generation/lightricks/ltx-2-19b/extend-video.md deleted file mode 100644 index 25d6d100..00000000 --- a/model-api-reference/image-generation/lightricks/ltx-2-19b/extend-video.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "LTX-2 19B reference moved" -description: "The lightricks/ltx-2-19b/extend-video reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/lightricks/ltx-2-19b/extend-video -robots: noindex,follow ---- - -# This page has moved - -`lightricks/ltx-2-19b/extend-video` is a video model. Its API reference now lives at [LTX-2 19B](/model-api-reference/video-generation/lightricks/ltx-2-19b/extend-video) under Video Generation. diff --git a/model-api-reference/image-generation/lightricks/ltx-2-19b/video-to-video.md b/model-api-reference/image-generation/lightricks/ltx-2-19b/video-to-video.md deleted file mode 100644 index 73e31d07..00000000 --- a/model-api-reference/image-generation/lightricks/ltx-2-19b/video-to-video.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "LTX-2 19B reference moved" -description: "The lightricks/ltx-2-19b/video-to-video reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/lightricks/ltx-2-19b/video-to-video -robots: noindex,follow ---- - -# This page has moved - -`lightricks/ltx-2-19b/video-to-video` is a video model. Its API reference now lives at [LTX-2 19B](/model-api-reference/video-generation/lightricks/ltx-2-19b/video-to-video) under Video Generation. diff --git a/model-api-reference/image-generation/lightricks/ltx-2.3-quality/audio-to-video.md b/model-api-reference/image-generation/lightricks/ltx-2.3-quality/audio-to-video.md deleted file mode 100644 index 4020c62b..00000000 --- a/model-api-reference/image-generation/lightricks/ltx-2.3-quality/audio-to-video.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Ltx 2.3 Quality reference moved" -description: "The lightricks/ltx-2.3-quality/audio-to-video reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/lightricks/ltx-2.3-quality/audio-to-video -robots: noindex,follow ---- - -# This page has moved - -`lightricks/ltx-2.3-quality/audio-to-video` is a video model. Its API reference now lives at [Ltx 2.3 Quality](/model-api-reference/video-generation/lightricks/ltx-2.3-quality/audio-to-video) under Video Generation. diff --git a/model-api-reference/image-generation/lightricks/ltx23-v2v-trainer.md b/model-api-reference/image-generation/lightricks/ltx23-v2v-trainer.md deleted file mode 100644 index 14131342..00000000 --- a/model-api-reference/image-generation/lightricks/ltx23-v2v-trainer.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2.3 22B Video to Video Trainer API Reference" -description: "LTX-2.3 22B Video to Video Trainer API reference for SandBase. Use model lightricks/ltx23-v2v-trainer with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/lightricks/ltx23-v2v-trainer" -apiReferenceJson: "{\"title\":\"LTX-2.3 22B Video to Video Trainer\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx23 V2v Trainer by Lightricks - advanced AI model for training. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx23-v2v-trainer.\",\"default\":\"lightricks/ltx23-v2v-trainer\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution to use for training. Higher resolutions require more memory.\",\"default\":\"medium\",\"constraints\":\"Allowed values: low, medium, high\"},{\"name\":\"validation_resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution to use for validation.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high\"},{\"name\":\"validation_frame_rate\",\"type\":\"integer\",\"required\":false,\"description\":\"Target frames per second for validation videos.\",\"default\":\"25\",\"constraints\":\"Range: 8 to 60\"},{\"name\":\"frame_rate\",\"type\":\"integer\",\"required\":false,\"description\":\"Target frames per second for the video.\",\"default\":\"25\",\"constraints\":\"Range: 8 to 60\"},{\"name\":\"debug_dataset\",\"type\":\"boolean\",\"required\":false,\"description\":\"When enabled, the trainer returns a downloadable archive of your preprocessed training data for manual inspection. Use this to verify that your videos, images, and captions were processed correctly before committing to a full training run.\",\"default\":\"false\"},{\"name\":\"split_input_into_scenes\",\"type\":\"boolean\",\"required\":false,\"description\":\"If true, videos above a certain duration threshold will be split into scenes.\",\"default\":\"true\"},{\"name\":\"auto_scale_input\",\"type\":\"boolean\",\"required\":false,\"description\":\"If true, videos will be automatically scaled to the target frame count and fps. This option has no effect on image datasets.\",\"default\":\"false\"},{\"name\":\"validation_number_of_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames in validation videos.\",\"default\":\"89\",\"constraints\":\"Range: 9 to 121\"},{\"name\":\"validation\",\"type\":\"array\",\"required\":false,\"description\":\"A list of validation inputs with prompts and reference videos.\",\"default\":\"\"},{\"name\":\"training_data_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL to zip archive with videos or images. Try to use at least 10 files, although more is better. **Supported video formats:** .mp4, .mov, .avi, .mkv **Supported image formats:** .png, .jpg, .jpeg Note: The dataset must contain ONLY videos OR ONLY images - mixed datasets are not supported. The archive can also contain text files with captions. Each text file should have the same name as the media file it corresponds to.\"},{\"name\":\"validation_aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio to use for validation.\",\"default\":\"1:1\",\"constraints\":\"Allowed values: 16:9, 1:1, 9:16\"},{\"name\":\"trigger_phrase\",\"type\":\"string\",\"required\":false,\"description\":\"A phrase that will trigger the LoRA style. Will be prepended to captions during training.\",\"default\":\"\"},{\"name\":\"number_of_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of training steps.\",\"default\":\"2000\",\"constraints\":\"Range: 100 to 20000\"},{\"name\":\"split_input_duration_threshold\",\"type\":\"number\",\"required\":false,\"description\":\"The duration threshold in seconds. If a video is longer than this, it will be split into scenes.\",\"default\":\"30\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"learning_rate\",\"type\":\"number\",\"required\":false,\"description\":\"Learning rate for optimization. Higher values can lead to faster training but may cause overfitting.\",\"default\":\"0.0002\",\"constraints\":\"Range: 0.000001 to 1\"},{\"name\":\"rank\",\"type\":\"integer\",\"required\":false,\"description\":\"The rank of the LoRA adaptation. Higher values increase capacity but use more memory.\",\"default\":\"32\",\"constraints\":\"Allowed values: 8, 16, 32, 64, 128\"},{\"name\":\"stg_scale\",\"type\":\"number\",\"required\":false,\"description\":\"STG (Spatio-Temporal Guidance) scale. 0.0 disables STG. Recommended value is 1.0.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 3\"},{\"name\":\"number_of_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of frames per training sample. Must satisfy frames % 8 == 1 (e.g., 1, 9, 17, 25, 33, 41, 49, 57, 65, 73, 81, 89, 97).\",\"default\":\"89\",\"constraints\":\"Range: 9 to 121\"},{\"name\":\"validation_negative_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"A negative prompt to use for validation.\",\"default\":\"worst quality, inconsistent motion, blurry, jittery, distorted\"},{\"name\":\"first_frame_conditioning_p\",\"type\":\"number\",\"required\":false,\"description\":\"Probability of conditioning on the first frame during training. Lower values work better for video-to-video transformation.\",\"default\":\"0.1\",\"constraints\":\"Range: 0 to 1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"training\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx23-v2v-trainer\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx23-v2v-trainer\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx23-v2v-trainer\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx23-v2v-trainer\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2.3 22B Video to Video Trainer" - modelId: "lightricks/ltx23-v2v-trainer" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx23-v2v-trainer" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T21:43:44.115Z" - capabilities: ["training"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/lightricks/ltx23-video-trainer.md b/model-api-reference/image-generation/lightricks/ltx23-video-trainer.md deleted file mode 100644 index b557bfa5..00000000 --- a/model-api-reference/image-generation/lightricks/ltx23-video-trainer.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2.3 22B Video Trainer API Reference" -description: "LTX-2.3 22B Video Trainer API reference for SandBase. Use model lightricks/ltx23-video-trainer with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/lightricks/ltx23-video-trainer" -apiReferenceJson: "{\"title\":\"LTX-2.3 22B Video Trainer\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx23 Video Trainer by Lightricks - advanced AI model for training. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx23-video-trainer.\",\"default\":\"lightricks/ltx23-video-trainer\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution to use for training. Higher resolutions require more memory.\",\"default\":\"medium\",\"constraints\":\"Allowed values: low, medium, high\"},{\"name\":\"learning_rate\",\"type\":\"number\",\"required\":false,\"description\":\"Learning rate for optimization. Higher values can lead to faster training but may cause overfitting.\",\"default\":\"0.0002\",\"constraints\":\"Range: 0.000001 to 1\"},{\"name\":\"frame_rate\",\"type\":\"integer\",\"required\":false,\"description\":\"Target frames per second for the video.\",\"default\":\"25\",\"constraints\":\"Range: 8 to 60\"},{\"name\":\"validation\",\"type\":\"array\",\"required\":false,\"description\":\"A list of validation prompts to use during training. When providing an image, _all_ validation inputs must have an image.\",\"default\":\"\"},{\"name\":\"rank\",\"type\":\"integer\",\"required\":false,\"description\":\"The rank of the LoRA adaptation. Higher values increase capacity but use more memory.\",\"default\":\"32\",\"constraints\":\"Allowed values: 8, 16, 32, 64, 128\"},{\"name\":\"audio_preserve_pitch\",\"type\":\"boolean\",\"required\":false,\"description\":\"When audio duration doesn't match video duration, stretch/compress audio without changing pitch. If disabled, audio is trimmed or padded with silence.\",\"default\":\"true\"},{\"name\":\"number_of_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of frames per training sample. Must satisfy frames % 8 == 1 (e.g., 1, 9, 17, 25, 33, 41, 49, 57, 65, 73, 81, 89, 97).\",\"default\":\"89\",\"constraints\":\"Range: 9 to 121\"},{\"name\":\"number_of_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of training steps.\",\"default\":\"2000\",\"constraints\":\"Range: 100 to 20000\"},{\"name\":\"validation_aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio to use for validation.\",\"default\":\"1:1\",\"constraints\":\"Allowed values: 16:9, 1:1, 9:16\"},{\"name\":\"with_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable joint audio-video training. If None (default), automatically detects whether input videos have audio. Set to True to force audio training, or False to disable.\"},{\"name\":\"stg_scale\",\"type\":\"number\",\"required\":false,\"description\":\"STG (Spatio-Temporal Guidance) scale. 0.0 disables STG. Recommended value is 1.0.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 3\"},{\"name\":\"split_input_duration_threshold\",\"type\":\"number\",\"required\":false,\"description\":\"The duration threshold in seconds. If a video is longer than this, it will be split into scenes.\",\"default\":\"30\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"split_input_into_scenes\",\"type\":\"boolean\",\"required\":false,\"description\":\"If true, videos above a certain duration threshold will be split into scenes.\",\"default\":\"true\"},{\"name\":\"validation_number_of_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames in validation videos.\",\"default\":\"89\",\"constraints\":\"Range: 9 to 121\"},{\"name\":\"validation_negative_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"A negative prompt to use for validation.\",\"default\":\"worst quality, inconsistent motion, blurry, jittery, distorted\"},{\"name\":\"validation_frame_rate\",\"type\":\"integer\",\"required\":false,\"description\":\"Target frames per second for validation videos.\",\"default\":\"25\",\"constraints\":\"Range: 8 to 60\"},{\"name\":\"generate_audio_in_validation\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio in validation samples.\",\"default\":\"true\"},{\"name\":\"training_data_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL to zip archive with videos or images. Try to use at least 10 files, although more is better. **Supported video formats:** .mp4, .mov, .avi, .mkv **Supported image formats:** .png, .jpg, .jpeg Note: The dataset must contain ONLY videos OR ONLY images - mixed datasets are not supported. The archive can also contain text files with captions. Each text file should have the same name as the media file it corresponds to.\"},{\"name\":\"first_frame_conditioning_p\",\"type\":\"number\",\"required\":false,\"description\":\"Probability of conditioning on the first frame during training. Higher values improve image-to-video performance.\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"audio_normalize\",\"type\":\"boolean\",\"required\":false,\"description\":\"Normalize audio peak amplitude to a consistent level. Recommended for consistent audio levels across the dataset.\",\"default\":\"true\"},{\"name\":\"trigger_phrase\",\"type\":\"string\",\"required\":false,\"description\":\"A phrase that will trigger the LoRA style. Will be prepended to captions during training.\",\"default\":\"\"},{\"name\":\"debug_dataset\",\"type\":\"boolean\",\"required\":false,\"description\":\"When enabled, the trainer returns a downloadable archive of your preprocessed training data for manual inspection. Use this to verify that your videos, images, and captions were processed correctly before committing to a full training run.\",\"default\":\"false\"},{\"name\":\"auto_scale_input\",\"type\":\"boolean\",\"required\":false,\"description\":\"If true, videos will be automatically scaled to the target frame count and fps. This option has no effect on image datasets.\",\"default\":\"false\"},{\"name\":\"validation_resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution to use for validation.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"training\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx23-video-trainer\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx23-video-trainer\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx23-video-trainer\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx23-video-trainer\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2.3 22B Video Trainer" - modelId: "lightricks/ltx23-video-trainer" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx23-video-trainer" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T21:42:29.552Z" - capabilities: ["training"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/luma/agent/uni-1/1.0/edit.md b/model-api-reference/image-generation/luma/agent/uni-1/1.0/edit.md deleted file mode 100644 index 0f3d5406..00000000 --- a/model-api-reference/image-generation/luma/agent/uni-1/1.0/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Luma Uni-1 Edit API Reference" -description: "Luma Uni-1 Edit API reference for SandBase. Use model luma/agent/uni-1/1.0/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/luma/agent/uni-1/1.0/edit" -apiReferenceJson: "{\"title\":\"Luma Uni-1 Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Agent Uni 1 1.0 by Luma - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to luma/agent/uni-1/1.0/edit.\",\"default\":\"luma/agent/uni-1/1.0/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the edit to apply.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the source image to edit.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Encoding format of the edited image.\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"Visual style of the edited image.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, manga\"},{\"name\":\"reference_image_urls\",\"type\":\"array\",\"required\":false,\"description\":\"Optional list of reference image URLs used to guide the edit.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"luma/agent/uni-1/1.0/edit\\\",\\n \\\"prompt\\\": \\\"Replace the background with a sunset over the ocean.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/gallery/example_inputs_liuyifei.png\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"luma/agent/uni-1/1.0/edit\\\",\\n \\\"prompt\\\": \\\"Replace the background with a sunset over the ocean.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/Falserverless/gallery/example_inputs_liuyifei.png\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"luma/agent/uni-1/1.0/edit\\\",\\n \\\"prompt\\\": \\\"Replace the background with a sunset over the ocean.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/gallery/example_inputs_liuyifei.png\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"luma/agent/uni-1/1.0/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Luma Uni-1 Edit" - modelId: "luma/agent/uni-1/1.0/edit" - vendor: "Luma" - vendorSlug: "luma" - modelSlug: "agent/uni-1/1.0/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-09T15:16:33.097Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/luma/agent/uni-1/1.0/max.md b/model-api-reference/image-generation/luma/agent/uni-1/1.0/max.md deleted file mode 100644 index b41c4377..00000000 --- a/model-api-reference/image-generation/luma/agent/uni-1/1.0/max.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Luma Uni-1 Text to Image Max API Reference" -description: "Luma Uni-1 Text to Image Max API reference for SandBase. Use model luma/agent/uni-1/1.0/max with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/luma/agent/uni-1/1.0/max" -apiReferenceJson: "{\"title\":\"Luma Uni-1 Text to Image Max\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Agent Uni 1 1.0 is Luma's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to luma/agent/uni-1/1.0/max.\",\"default\":\"luma/agent/uni-1/1.0/max\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the image to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Encoding format of the generated image.\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"reference_image_urls\",\"type\":\"array\",\"required\":false,\"description\":\"Optional list of reference image URLs used to guide the generation.\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"Visual style of the generated image.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, manga\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"luma/agent/uni-1/1.0/max\\\",\\n \\\"prompt\\\": \\\"A manga panel of a stoic samurai overlooking a neon cyberpunk city at dusk.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"luma/agent/uni-1/1.0/max\\\",\\n \\\"prompt\\\": \\\"A manga panel of a stoic samurai overlooking a neon cyberpunk city at dusk.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"luma/agent/uni-1/1.0/max\\\",\\n \\\"prompt\\\": \\\"A manga panel of a stoic samurai overlooking a neon cyberpunk city at dusk.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"luma/agent/uni-1/1.0/max\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Luma Uni-1 Text to Image Max" - modelId: "luma/agent/uni-1/1.0/max" - vendor: "Luma" - vendorSlug: "luma" - modelSlug: "agent/uni-1/1.0/max" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-09T15:16:24.712Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/luma/agent/uni-1/1.0/max/edit.md b/model-api-reference/image-generation/luma/agent/uni-1/1.0/max/edit.md deleted file mode 100644 index 31f7f05a..00000000 --- a/model-api-reference/image-generation/luma/agent/uni-1/1.0/max/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Luma Uni-1 Edit Max API Reference" -description: "Luma Uni-1 Edit Max API reference for SandBase. Use model luma/agent/uni-1/1.0/max/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/luma/agent/uni-1/1.0/max/edit" -apiReferenceJson: "{\"title\":\"Luma Uni-1 Edit Max\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Agent Uni 1 1.0 by Luma - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to luma/agent/uni-1/1.0/max/edit.\",\"default\":\"luma/agent/uni-1/1.0/max/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the edit to apply.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the source image to edit.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Encoding format of the edited image.\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"Visual style of the edited image.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, manga\"},{\"name\":\"reference_image_urls\",\"type\":\"array\",\"required\":false,\"description\":\"Optional list of reference image URLs used to guide the edit.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"luma/agent/uni-1/1.0/max/edit\\\",\\n \\\"prompt\\\": \\\"Replace the background with a sunset over the ocean.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/gallery/example_inputs_liuyifei.png\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"luma/agent/uni-1/1.0/max/edit\\\",\\n \\\"prompt\\\": \\\"Replace the background with a sunset over the ocean.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/Falserverless/gallery/example_inputs_liuyifei.png\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"luma/agent/uni-1/1.0/max/edit\\\",\\n \\\"prompt\\\": \\\"Replace the background with a sunset over the ocean.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/gallery/example_inputs_liuyifei.png\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"luma/agent/uni-1/1.0/max/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Luma Uni-1 Edit Max" - modelId: "luma/agent/uni-1/1.0/max/edit" - vendor: "Luma" - vendorSlug: "luma" - modelSlug: "agent/uni-1/1.0/max/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-09T15:16:14.108Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/luma/agent/uni-1/1.0/text-to-image.md b/model-api-reference/image-generation/luma/agent/uni-1/1.0/text-to-image.md deleted file mode 100644 index a06aaa72..00000000 --- a/model-api-reference/image-generation/luma/agent/uni-1/1.0/text-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Luma Uni-1 Text to Image API Reference" -description: "Luma Uni-1 Text to Image API reference for SandBase. Use model luma/agent/uni-1/1.0/text-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/luma/agent/uni-1/1.0/text-to-image" -apiReferenceJson: "{\"title\":\"Luma Uni-1 Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Agent Uni 1 1.0 is Luma's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to luma/agent/uni-1/1.0/text-to-image.\",\"default\":\"luma/agent/uni-1/1.0/text-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the image to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Encoding format of the generated image.\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"Visual style of the generated image.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, manga\"},{\"name\":\"reference_image_urls\",\"type\":\"array\",\"required\":false,\"description\":\"Optional list of reference image URLs used to guide the generation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"luma/agent/uni-1/1.0/text-to-image\\\",\\n \\\"prompt\\\": \\\"A manga panel of a stoic samurai overlooking a neon cyberpunk city at dusk.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"luma/agent/uni-1/1.0/text-to-image\\\",\\n \\\"prompt\\\": \\\"A manga panel of a stoic samurai overlooking a neon cyberpunk city at dusk.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"luma/agent/uni-1/1.0/text-to-image\\\",\\n \\\"prompt\\\": \\\"A manga panel of a stoic samurai overlooking a neon cyberpunk city at dusk.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"luma/agent/uni-1/1.0/text-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Luma Uni-1 Text to Image" - modelId: "luma/agent/uni-1/1.0/text-to-image" - vendor: "Luma" - vendorSlug: "luma" - modelSlug: "agent/uni-1/1.0/text-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-09T15:15:56.994Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/luma/photon-1.md b/model-api-reference/image-generation/luma/photon-1.md deleted file mode 100644 index a610a299..00000000 --- a/model-api-reference/image-generation/luma/photon-1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Luma Photon API Reference" -description: "Luma Photon API reference for SandBase. Use model luma/photon-1 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/luma/photon-1" -apiReferenceJson: "{\"title\":\"Luma Photon\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Photon 1 by Luma - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to luma/photon-1.\",\"default\":\"luma/photon-1\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"luma/photon-1\\\",\\n \\\"prompt\\\": \\\"A teddy bear in sunglasses playing electric guitar and dancing\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"luma/photon-1\\\",\\n \\\"prompt\\\": \\\"A teddy bear in sunglasses playing electric guitar and dancing\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"luma/photon-1\\\",\\n \\\"prompt\\\": \\\"A teddy bear in sunglasses playing electric guitar and dancing\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"luma/photon-1\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Luma Photon" - modelId: "luma/photon-1" - vendor: "Luma" - vendorSlug: "luma" - modelSlug: "photon-1" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-06-03T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/luma/photon-1/edit.md b/model-api-reference/image-generation/luma/photon-1/edit.md deleted file mode 100644 index 57b3f4bd..00000000 --- a/model-api-reference/image-generation/luma/photon-1/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Luma Photon Edit API Reference" -description: "Luma Photon Edit API reference for SandBase. Use model luma/photon-1/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/luma/photon-1/edit" -apiReferenceJson: "{\"title\":\"Luma Photon Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Photon 1 Edit is Luma's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to luma/photon-1/edit.\",\"default\":\"luma/photon-1/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Instruction for modifying the image\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image to reframe\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"luma/photon-1/edit\\\",\\n \\\"prompt\\\": \\\"Make the image look like a painting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/luma/photon-1/edit/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"luma/photon-1/edit\\\",\\n \\\"prompt\\\": \\\"Make the image look like a painting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/luma/photon-1/edit/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"luma/photon-1/edit\\\",\\n \\\"prompt\\\": \\\"Make the image look like a painting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/luma/photon-1/edit/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"luma/photon-1/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Luma Photon Edit" - modelId: "luma/photon-1/edit" - vendor: "Luma" - vendorSlug: "luma" - modelSlug: "photon-1/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-08T12:46:34.379Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/luma/photon-1/reframe.md b/model-api-reference/image-generation/luma/photon-1/reframe.md deleted file mode 100644 index c8eeb685..00000000 --- a/model-api-reference/image-generation/luma/photon-1/reframe.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Luma Photon Reframe API Reference" -description: "Luma Photon Reframe API reference for SandBase. Use model luma/photon-1/reframe with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/luma/photon-1/reframe" -apiReferenceJson: "{\"title\":\"Luma Photon Reframe\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Photon 1 Reframe by Luma - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to luma/photon-1/reframe.\",\"default\":\"luma/photon-1/reframe\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Optional prompt for reframing\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image to reframe\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"luma/photon-1/reframe\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/luma/photon-1/reframe/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"luma/photon-1/reframe\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/luma/photon-1/reframe/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"luma/photon-1/reframe\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/luma/photon-1/reframe/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"luma/photon-1/reframe\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Luma Photon Reframe" - modelId: "luma/photon-1/reframe" - vendor: "Luma" - vendorSlug: "luma" - modelSlug: "photon-1/reframe" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-03T15:13:14.628Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/luma/photon-flash-1.md b/model-api-reference/image-generation/luma/photon-flash-1.md deleted file mode 100644 index 6b47cb96..00000000 --- a/model-api-reference/image-generation/luma/photon-flash-1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Luma Photon Flash API Reference" -description: "Luma Photon Flash API reference for SandBase. Use model luma/photon-flash-1 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/luma/photon-flash-1" -apiReferenceJson: "{\"title\":\"Luma Photon Flash\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Photon Flash 1 by Luma - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to luma/photon-flash-1.\",\"default\":\"luma/photon-flash-1\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"luma/photon-flash-1\\\",\\n \\\"prompt\\\": \\\"A teddy bear in sunglasses playing electric guitar and dancing\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"luma/photon-flash-1\\\",\\n \\\"prompt\\\": \\\"A teddy bear in sunglasses playing electric guitar and dancing\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"luma/photon-flash-1\\\",\\n \\\"prompt\\\": \\\"A teddy bear in sunglasses playing electric guitar and dancing\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"luma/photon-flash-1\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Luma Photon Flash" - modelId: "luma/photon-flash-1" - vendor: "Luma" - vendorSlug: "luma" - modelSlug: "photon-flash-1" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-12-03T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/luma/photon-flash-1/edit.md b/model-api-reference/image-generation/luma/photon-flash-1/edit.md deleted file mode 100644 index 1f7493bb..00000000 --- a/model-api-reference/image-generation/luma/photon-flash-1/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Luma Photon Flash Edit API Reference" -description: "Luma Photon Flash Edit API reference for SandBase. Use model luma/photon-flash-1/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/luma/photon-flash-1/edit" -apiReferenceJson: "{\"title\":\"Luma Photon Flash Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Photon Flash 1 Edit is Luma's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to luma/photon-flash-1/edit.\",\"default\":\"luma/photon-flash-1/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Instruction for modifying the image\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image to reframe\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"luma/photon-flash-1/edit\\\",\\n \\\"prompt\\\": \\\"Make the image look like a painting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/luma/photon-flash-1/edit/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"luma/photon-flash-1/edit\\\",\\n \\\"prompt\\\": \\\"Make the image look like a painting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/luma/photon-flash-1/edit/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"luma/photon-flash-1/edit\\\",\\n \\\"prompt\\\": \\\"Make the image look like a painting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/luma/photon-flash-1/edit/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"luma/photon-flash-1/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Luma Photon Flash Edit" - modelId: "luma/photon-flash-1/edit" - vendor: "Luma" - vendorSlug: "luma" - modelSlug: "photon-flash-1/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-08T12:51:44.15Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/luma/photon-flash-1/reframe.md b/model-api-reference/image-generation/luma/photon-flash-1/reframe.md deleted file mode 100644 index 60f0f324..00000000 --- a/model-api-reference/image-generation/luma/photon-flash-1/reframe.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Luma Photon Flash Reframe API Reference" -description: "Luma Photon Flash Reframe API reference for SandBase. Use model luma/photon-flash-1/reframe with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/luma/photon-flash-1/reframe" -apiReferenceJson: "{\"title\":\"Luma Photon Flash Reframe\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Photon Flash 1 Reframe by Luma - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to luma/photon-flash-1/reframe.\",\"default\":\"luma/photon-flash-1/reframe\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Optional prompt for reframing\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image to reframe\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"luma/photon-flash-1/reframe\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/luma/photon-flash-1/reframe/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"luma/photon-flash-1/reframe\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/luma/photon-flash-1/reframe/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"luma/photon-flash-1/reframe\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/luma/photon-flash-1/reframe/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"luma/photon-flash-1/reframe\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Luma Photon Flash Reframe" - modelId: "luma/photon-flash-1/reframe" - vendor: "Luma" - vendorSlug: "luma" - modelSlug: "photon-flash-1/reframe" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-03T15:28:07.803Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/meituan/longcat-image.md b/model-api-reference/image-generation/meituan/longcat-image.md deleted file mode 100644 index ac3f7e15..00000000 --- a/model-api-reference/image-generation/meituan/longcat-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Longcat Image API Reference — Meituan Longcat Image API" -description: "Longcat Image API reference for SandBase. Use model meituan/longcat-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/meituan/longcat-image" -apiReferenceJson: "{\"title\":\"Longcat Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Longcat Image is meituan's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meituan/longcat-image.\",\"default\":\"meituan/longcat-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The guidance scale to use for the image generation.\",\"default\":\"4.5\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meituan/longcat-image\\\",\\n \\\"prompt\\\": \\\"A lioness crouching in the tall dry grass of the Serengeti during golden hour, intense gaze, telephoto lens with shallow depth of field\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meituan/longcat-image\\\",\\n \\\"prompt\\\": \\\"A lioness crouching in the tall dry grass of the Serengeti during golden hour, intense gaze, telephoto lens with shallow depth of field\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meituan/longcat-image\\\",\\n \\\"prompt\\\": \\\"A lioness crouching in the tall dry grass of the Serengeti during golden hour, intense gaze, telephoto lens with shallow depth of field\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meituan/longcat-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Longcat Image" - modelId: "meituan/longcat-image" - vendor: "meituan" - vendorSlug: "meituan" - modelSlug: "longcat-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-05T17:12:42.231Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/meituan/longcat-image/edit.md b/model-api-reference/image-generation/meituan/longcat-image/edit.md deleted file mode 100644 index bf1bf7c4..00000000 --- a/model-api-reference/image-generation/meituan/longcat-image/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Longcat Image API Reference — Meituan Longcat Image / Edit API" -description: "Longcat Image API reference for SandBase. Use model meituan/longcat-image/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/meituan/longcat-image/edit" -apiReferenceJson: "{\"title\":\"Longcat Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Longcat Image Edit by sandbase-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meituan/longcat-image/edit.\",\"default\":\"meituan/longcat-image/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to edit the image with.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to edit.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The guidance scale to use for the image generation.\",\"default\":\"4.5\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meituan/longcat-image/edit\\\",\\n \\\"prompt\\\": \\\"Add the text \\\\\\\"Fal is fast\\\\\\\" in elegant cursive font with lightning streaks at the top of the image.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-image/edit/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meituan/longcat-image/edit\\\",\\n \\\"prompt\\\": \\\"Add the text \\\\\\\"Fal is fast\\\\\\\" in elegant cursive font with lightning streaks at the top of the image.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-image/edit/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meituan/longcat-image/edit\\\",\\n \\\"prompt\\\": \\\"Add the text \\\\\\\"Fal is fast\\\\\\\" in elegant cursive font with lightning streaks at the top of the image.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/qwen-image/edit/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meituan/longcat-image/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Longcat Image" - modelId: "meituan/longcat-image/edit" - vendor: "meituan" - vendorSlug: "meituan" - modelSlug: "longcat-image/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-05T19:51:05.485Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/meituan/longcat-multi-avatar/image-audio-to-video.md b/model-api-reference/image-generation/meituan/longcat-multi-avatar/image-audio-to-video.md deleted file mode 100644 index ac88dfc6..00000000 --- a/model-api-reference/image-generation/meituan/longcat-multi-avatar/image-audio-to-video.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Longcat Multi Avatar reference moved" -description: "The meituan/longcat-multi-avatar/image-audio-to-video reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/meituan/longcat-multi-avatar/image-audio-to-video -robots: noindex,follow ---- - -# This page has moved - -`meituan/longcat-multi-avatar/image-audio-to-video` is a video model. Its API reference now lives at [Longcat Multi Avatar](/model-api-reference/video-generation/meituan/longcat-multi-avatar/image-audio-to-video) under Video Generation. diff --git a/model-api-reference/image-generation/meituan/longcat-single-avatar/audio-to-video.md b/model-api-reference/image-generation/meituan/longcat-single-avatar/audio-to-video.md deleted file mode 100644 index e08a72d9..00000000 --- a/model-api-reference/image-generation/meituan/longcat-single-avatar/audio-to-video.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Longcat Single Avatar reference moved" -description: "The meituan/longcat-single-avatar/audio-to-video reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/meituan/longcat-single-avatar/audio-to-video -robots: noindex,follow ---- - -# This page has moved - -`meituan/longcat-single-avatar/audio-to-video` is a video model. Its API reference now lives at [Longcat Single Avatar](/model-api-reference/video-generation/meituan/longcat-single-avatar/audio-to-video) under Video Generation. diff --git a/model-api-reference/image-generation/meshy/7.1/image-to-3d.md b/model-api-reference/image-generation/meshy/7.1/image-to-3d.md new file mode 100644 index 00000000..164ab555 --- /dev/null +++ b/model-api-reference/image-generation/meshy/7.1/image-to-3d.md @@ -0,0 +1,21 @@ +--- +title: "Meshy 7.1 Image to 3D API Reference" +description: "Meshy 7.1 Image to 3D API reference for SandBase. Use model meshy/7.1/image-to-3d with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/meshy/7.1/image-to-3d" +apiReferenceJson: "{\"title\":\"Meshy 7.1 Image to 3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Meshy 7.1 turns a single image into a textured, optionally rigged and animated 3D model.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meshy/7.1/image-to-3d.\",\"default\":\"meshy/7.1/image-to-3d\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Image URL or base64 data URI for 3D model creation. Supports .jpg, .jpeg, and .png formats. Also supports AVIF and HEIF formats which will be automatically converted.\"},{\"name\":\"symmetry_mode\",\"type\":\"string\",\"required\":false,\"description\":\"off / auto / on.\",\"default\":\"auto\",\"constraints\":\"Allowed values: off, auto, on\"},{\"name\":\"enable_rigging\",\"type\":\"boolean\",\"required\":false,\"description\":\"Rig the model as a humanoid character (+$0.20).\",\"default\":\"false\"},{\"name\":\"model_type\",\"type\":\"string\",\"required\":false,\"description\":\"standard, lowpoly or smart-topology.\",\"default\":\"standard\",\"constraints\":\"Allowed values: standard, lowpoly, smart-topology\"},{\"name\":\"enable_pbr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate PBR maps (metallic, roughness, normal).\",\"default\":\"false\"},{\"name\":\"pose_mode\",\"type\":\"string\",\"required\":false,\"description\":\"a-pose, t-pose or empty for none.\",\"default\":\"\",\"constraints\":\"Allowed values: a-pose, t-pose, \"},{\"name\":\"should_texture\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate textures (untextured models are cheaper).\",\"default\":\"true\"},{\"name\":\"enable_animation\",\"type\":\"boolean\",\"required\":false,\"description\":\"Apply an animation preset; requires enable_rigging (+$0.12).\",\"default\":\"false\"},{\"name\":\"texture_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Text prompt to guide texturing.\"},{\"name\":\"geometry_resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Geometry resolution.\",\"default\":\"standard\",\"constraints\":\"Allowed values: standard, 2k, 4k\"},{\"name\":\"target_polycount\",\"type\":\"integer\",\"required\":false,\"description\":\"Target polygon count (100–300,000).\",\"default\":\"30000\",\"constraints\":\"Range: 100 to 300000\"},{\"name\":\"topology\",\"type\":\"string\",\"required\":false,\"description\":\"quad for smooth surfaces, triangle for detail.\",\"default\":\"triangle\",\"constraints\":\"Allowed values: quad, triangle\"},{\"name\":\"texture_image\",\"type\":\"string\",\"required\":false,\"description\":\"Image URL to guide texturing.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meshy/7.1/image-to-3d\\\",\\n \\\"image\\\": \\\"https://v3b.fal.media/files/b/zebra/3osHJDI8IZ2wl6sGtEUeB_image.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meshy/7.1/image-to-3d\\\",\\n \\\"image\\\": \\\"https://v3b.fal.media/files/b/zebra/3osHJDI8IZ2wl6sGtEUeB_image.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meshy/7.1/image-to-3d\\\",\\n \\\"image\\\": \\\"https://v3b.fal.media/files/b/zebra/3osHJDI8IZ2wl6sGtEUeB_image.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meshy/7.1/image-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Meshy 7.1 Image to 3D" + modelId: "meshy/7.1/image-to-3d" + vendor: "Meshy" + vendorSlug: "meshy" + modelSlug: "7.1/image-to-3d" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-09-21T17:30:11.193Z" + capabilities: ["image-to-3d"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/meshy/7.1/multi-image-to-3d.md b/model-api-reference/image-generation/meshy/7.1/multi-image-to-3d.md new file mode 100644 index 00000000..7f9232dd --- /dev/null +++ b/model-api-reference/image-generation/meshy/7.1/multi-image-to-3d.md @@ -0,0 +1,21 @@ +--- +title: "Meshy 7.1 Multi-Image to 3D API Reference" +description: "Meshy 7.1 Multi-Image to 3D API reference for SandBase. Use model meshy/7.1/multi-image-to-3d with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/meshy/7.1/multi-image-to-3d" +apiReferenceJson: "{\"title\":\"Meshy 7.1 Multi-Image to 3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Meshy 7.1 reconstructs a textured, optionally rigged 3D model from 1–4 views of the same object.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meshy/7.1/multi-image-to-3d.\",\"default\":\"meshy/7.1/multi-image-to-3d\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"1 to 4 images of the same object from different angles.\"},{\"name\":\"symmetry_mode\",\"type\":\"string\",\"required\":false,\"description\":\"off / auto / on.\",\"default\":\"auto\",\"constraints\":\"Allowed values: off, auto, on\"},{\"name\":\"topology\",\"type\":\"string\",\"required\":false,\"description\":\"quad for smooth surfaces, triangle for detail.\",\"default\":\"triangle\",\"constraints\":\"Allowed values: quad, triangle\"},{\"name\":\"enable_rigging\",\"type\":\"boolean\",\"required\":false,\"description\":\"Rig the model as a humanoid character (+$0.20).\",\"default\":\"false\"},{\"name\":\"enable_animation\",\"type\":\"boolean\",\"required\":false,\"description\":\"Apply an animation preset; requires enable_rigging (+$0.12).\",\"default\":\"false\"},{\"name\":\"enable_pbr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate PBR maps (metallic, roughness, normal).\",\"default\":\"false\"},{\"name\":\"target_polycount\",\"type\":\"integer\",\"required\":false,\"description\":\"Target polygon count (100–300,000).\",\"default\":\"30000\",\"constraints\":\"Range: 100 to 300000\"},{\"name\":\"geometry_resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Geometry resolution.\",\"default\":\"standard\",\"constraints\":\"Allowed values: standard, 2k\"},{\"name\":\"should_texture\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate textures (untextured models are cheaper).\",\"default\":\"true\"},{\"name\":\"pose_mode\",\"type\":\"string\",\"required\":false,\"description\":\"a-pose, t-pose or empty for none.\",\"default\":\"\",\"constraints\":\"Allowed values: a-pose, t-pose, \"},{\"name\":\"texture_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Text prompt to guide texturing.\"},{\"name\":\"texture_image\",\"type\":\"string\",\"required\":false,\"description\":\"Image URL to guide texturing.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meshy/7.1/multi-image-to-3d\\\",\\n \\\"images\\\": [\\n \\\"https://v3b.fal.media/files/b/kangaroo/cPyD3-por0XI7jDa9F9vP_image%20(3).png\\\",\\n \\\"https://v3b.fal.media/files/b/elephant/9sd5JWAOJBcR7G3NMjPVs_image%20(2).png\\\",\\n \\\"https://v3b.fal.media/files/b/tiger/TP4sTzPATX_w1Tn4m6kYM_image%20(1).png\\\"\\n ]\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meshy/7.1/multi-image-to-3d\\\",\\n \\\"images\\\": [\\n \\\"https://v3b.fal.media/files/b/kangaroo/cPyD3-por0XI7jDa9F9vP_image%20(3).png\\\",\\n \\\"https://v3b.fal.media/files/b/elephant/9sd5JWAOJBcR7G3NMjPVs_image%20(2).png\\\",\\n \\\"https://v3b.fal.media/files/b/tiger/TP4sTzPATX_w1Tn4m6kYM_image%20(1).png\\\"\\n ]\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meshy/7.1/multi-image-to-3d\\\",\\n \\\"images\\\": [\\n \\\"https://v3b.fal.media/files/b/kangaroo/cPyD3-por0XI7jDa9F9vP_image%20(3).png\\\",\\n \\\"https://v3b.fal.media/files/b/elephant/9sd5JWAOJBcR7G3NMjPVs_image%20(2).png\\\",\\n \\\"https://v3b.fal.media/files/b/tiger/TP4sTzPATX_w1Tn4m6kYM_image%20(1).png\\\"\\n ]\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meshy/7.1/multi-image-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Meshy 7.1 Multi-Image to 3D" + modelId: "meshy/7.1/multi-image-to-3d" + vendor: "Meshy" + vendorSlug: "meshy" + modelSlug: "7.1/multi-image-to-3d" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-09-21T17:30:17.517Z" + capabilities: ["image-to-3d"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/meshy/7.1/text-to-3d.md b/model-api-reference/image-generation/meshy/7.1/text-to-3d.md new file mode 100644 index 00000000..ff86e015 --- /dev/null +++ b/model-api-reference/image-generation/meshy/7.1/text-to-3d.md @@ -0,0 +1,21 @@ +--- +title: "Meshy 7.1 Text to 3D API Reference" +description: "Meshy 7.1 Text to 3D API reference for SandBase. Use model meshy/7.1/text-to-3d with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/meshy/7.1/text-to-3d" +apiReferenceJson: "{\"title\":\"Meshy 7.1 Text to 3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Meshy 7.1 generates a textured, optionally rigged and animated 3D model from a text prompt.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meshy/7.1/text-to-3d.\",\"default\":\"meshy/7.1/text-to-3d\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Describe what kind of object the 3D model is. Maximum 600 characters.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for reproducible results.\"},{\"name\":\"texture_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Text prompt to guide texturing.\"},{\"name\":\"pose_mode\",\"type\":\"string\",\"required\":false,\"description\":\"a-pose, t-pose or empty for none.\",\"default\":\"\",\"constraints\":\"Allowed values: a-pose, t-pose, \"},{\"name\":\"symmetry_mode\",\"type\":\"string\",\"required\":false,\"description\":\"off / auto / on.\",\"default\":\"auto\",\"constraints\":\"Allowed values: off, auto, on\"},{\"name\":\"enable_animation\",\"type\":\"boolean\",\"required\":false,\"description\":\"Apply an animation preset; requires enable_rigging (+$0.12).\",\"default\":\"false\"},{\"name\":\"enable_pbr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate PBR maps (metallic, roughness, normal).\",\"default\":\"false\"},{\"name\":\"target_polycount\",\"type\":\"integer\",\"required\":false,\"description\":\"Target polygon count (100–300,000).\",\"default\":\"30000\",\"constraints\":\"Range: 100 to 300000\"},{\"name\":\"topology\",\"type\":\"string\",\"required\":false,\"description\":\"quad for smooth surfaces, triangle for detail.\",\"default\":\"triangle\",\"constraints\":\"Allowed values: quad, triangle\"},{\"name\":\"model_type\",\"type\":\"string\",\"required\":false,\"description\":\"standard, lowpoly or smart-topology.\",\"default\":\"standard\",\"constraints\":\"Allowed values: standard, lowpoly, smart-topology\"},{\"name\":\"enable_rigging\",\"type\":\"boolean\",\"required\":false,\"description\":\"Rig the model as a humanoid character (+$0.20).\",\"default\":\"false\"},{\"name\":\"geometry_resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Geometry resolution.\",\"default\":\"standard\",\"constraints\":\"Allowed values: standard, 2k, 4k\"},{\"name\":\"texture_image\",\"type\":\"string\",\"required\":false,\"description\":\"Image URL to guide texturing.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meshy/7.1/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A rustic, antique wooden treasure chest with a curved, domed lid, constructed from weathered, dark brown planks exhibiting prominent wood grain and subtle distress. It's heavily reinforced with broad, dark grey, oxidized metal bands secured by numerous circular rivets. Ornate, dark iron decorative elements featuring swirling foliate patterns and dragon motifs adorn the corners and lid. A prominent, circular, intricately carved metal lock plate with a central keyhole dominates the front, flanked by two large, dark metallic pull rings.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meshy/7.1/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A rustic, antique wooden treasure chest with a curved, domed lid, constructed from weathered, dark brown planks exhibiting prominent wood grain and subtle distress. It's heavily reinforced with broad, dark grey, oxidized metal bands secured by numerous circular rivets. Ornate, dark iron decorative elements featuring swirling foliate patterns and dragon motifs adorn the corners and lid. A prominent, circular, intricately carved metal lock plate with a central keyhole dominates the front, flanked by two large, dark metallic pull rings.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meshy/7.1/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A rustic, antique wooden treasure chest with a curved, domed lid, constructed from weathered, dark brown planks exhibiting prominent wood grain and subtle distress. It's heavily reinforced with broad, dark grey, oxidized metal bands secured by numerous circular rivets. Ornate, dark iron decorative elements featuring swirling foliate patterns and dragon motifs adorn the corners and lid. A prominent, circular, intricately carved metal lock plate with a central keyhole dominates the front, flanked by two large, dark metallic pull rings.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meshy/7.1/text-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Meshy 7.1 Text to 3D" + modelId: "meshy/7.1/text-to-3d" + vendor: "Meshy" + vendorSlug: "meshy" + modelSlug: "7.1/text-to-3d" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-09-21T17:30:05.031Z" + capabilities: ["text-to-3d"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/meshy/meshy-v6-preview.md b/model-api-reference/image-generation/meshy/meshy-v6-preview.md deleted file mode 100644 index b4806dd0..00000000 --- a/model-api-reference/image-generation/meshy/meshy-v6-preview.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Meshy 6 Preview API Reference — Meshy Meshy V6 Preview API" -description: "Meshy 6 Preview API reference for SandBase. Use model meshy/meshy-v6-preview with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/meshy/meshy-v6-preview" -apiReferenceJson: "{\"title\":\"Meshy 6 Preview\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Meshy V6 Preview by Meshy - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meshy/meshy-v6-preview.\",\"default\":\"meshy/meshy-v6-preview\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Image URL or base64 data URI for 3D model creation. Supports .jpg, .jpeg, and .png formats. Also supports AVIF and HEIF formats which will be automatically converted.\"},{\"name\":\"enable_rigging\",\"type\":\"boolean\",\"required\":false,\"description\":\"Automatically rig the generated model as a humanoid character. Includes basic walking and running animations. Best results with humanoid characters that have clearly defined limbs.\",\"default\":\"false\"},{\"name\":\"pose_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Pose mode for the generated model. 'a-pose' generates an A-pose, 't-pose' generates a T-pose, empty string for no specific pose.\",\"default\":\"\",\"constraints\":\"Allowed values: a-pose, t-pose, \"},{\"name\":\"animation_action_id\",\"type\":\"integer\",\"required\":false,\"description\":\"Animation preset ID from Meshy's library (500+ presets). Only used when enable_animation is true. See https://docs.meshy.ai/en/api/animation-library for available action IDs.\",\"default\":\"1001\"},{\"name\":\"topology\",\"type\":\"string\",\"required\":false,\"description\":\"Specify the topology of the generated model. Quad for smooth surfaces, Triangle for detailed geometry.\",\"default\":\"triangle\",\"constraints\":\"Allowed values: quad, triangle\"},{\"name\":\"is_a_t_pose\",\"type\":\"boolean\",\"required\":false,\"description\":\"Deprecated: use pose_mode instead. When true, generates a T-pose model.\",\"default\":\"false\"},{\"name\":\"enable_pbr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate PBR Maps (metallic, roughness, normal) in addition to base color\",\"default\":\"false\"},{\"name\":\"enable_animation\",\"type\":\"boolean\",\"required\":false,\"description\":\"Apply an animation preset to the rigged model. Requires enable_rigging to be true.\",\"default\":\"false\"},{\"name\":\"texture_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Text prompt to guide the texturing process\"},{\"name\":\"symmetry_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Controls symmetry behavior during model generation. Off disables symmetry, Auto determines it automatically, On enforces symmetry.\",\"default\":\"auto\",\"constraints\":\"Allowed values: off, auto, on\"},{\"name\":\"target_polycount\",\"type\":\"integer\",\"required\":false,\"description\":\"Target number of polygons in the generated model\",\"default\":\"30000\",\"constraints\":\"Range: 100 to 300000\"},{\"name\":\"should_remesh\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to enable the remesh phase\",\"default\":\"true\"},{\"name\":\"rigging_height_meters\",\"type\":\"number\",\"required\":false,\"description\":\"Approximate height of the character in meters. Only used when enable_rigging is true.\",\"default\":\"1.7\"},{\"name\":\"texture_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"2D image to guide the texturing process\"},{\"name\":\"should_texture\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate textures\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meshy/meshy-v6-preview\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/meshy/meshy-v6-preview/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meshy/meshy-v6-preview\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/meshy/meshy-v6-preview/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meshy/meshy-v6-preview\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/meshy/meshy-v6-preview/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meshy/meshy-v6-preview\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Meshy 6 Preview" - modelId: "meshy/meshy-v6-preview" - vendor: "Meshy" - vendorSlug: "meshy" - modelSlug: "meshy-v6-preview" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-06T23:11:32.101Z" - capabilities: ["image-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/meshy/meshy-v6-preview/text-to-3d.md b/model-api-reference/image-generation/meshy/meshy-v6-preview/text-to-3d.md deleted file mode 100644 index 4da1b97f..00000000 --- a/model-api-reference/image-generation/meshy/meshy-v6-preview/text-to-3d.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Meshy 6 Preview API Reference — Meshy V6 Preview / Text To 3d" -description: "Meshy 6 Preview API reference for SandBase. Use model meshy/meshy-v6-preview/text-to-3d with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/meshy/meshy-v6-preview/text-to-3d" -apiReferenceJson: "{\"title\":\"Meshy 6 Preview\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Meshy V6 Preview is Meshy's text-to-3D AI model. Turn written descriptions into textured 3D objects with realistic geometry and materials.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meshy/meshy-v6-preview/text-to-3d.\",\"default\":\"meshy/meshy-v6-preview/text-to-3d\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Describe what kind of object the 3D model is. Maximum 600 characters.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for reproducible results. Same prompt and seed usually generate the same result.\"},{\"name\":\"symmetry_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Controls symmetry behavior during model generation.\",\"default\":\"auto\",\"constraints\":\"Allowed values: off, auto, on\"},{\"name\":\"texture_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"2D image to guide the texturing process (only used in 'full' mode)\"},{\"name\":\"enable_animation\",\"type\":\"boolean\",\"required\":false,\"description\":\"Apply an animation preset to the rigged model. Requires enable_rigging to be true.\",\"default\":\"false\"},{\"name\":\"rigging_height_meters\",\"type\":\"number\",\"required\":false,\"description\":\"Approximate height of the character in meters. Only used when enable_rigging is true.\",\"default\":\"1.7\"},{\"name\":\"animation_action_id\",\"type\":\"integer\",\"required\":false,\"description\":\"Animation preset ID from Meshy's library (500+ presets). Only used when enable_animation is true. See https://docs.meshy.ai/en/api/animation-library for available action IDs.\",\"default\":\"1001\"},{\"name\":\"target_polycount\",\"type\":\"integer\",\"required\":false,\"description\":\"Target number of polygons in the generated model\",\"default\":\"30000\",\"constraints\":\"Range: 100 to 300000\"},{\"name\":\"enable_rigging\",\"type\":\"boolean\",\"required\":false,\"description\":\"Automatically rig the generated model as a humanoid character. Includes basic walking and running animations. Best results with humanoid characters that have clearly defined limbs.\",\"default\":\"false\"},{\"name\":\"mode\",\"type\":\"string\",\"required\":false,\"description\":\"Generation mode. 'preview' returns untextured geometry only, 'full' returns textured model (preview + refine).\",\"default\":\"full\",\"constraints\":\"Allowed values: preview, full\"},{\"name\":\"texture_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Additional text prompt to guide the texturing process (only used in 'full' mode)\"},{\"name\":\"topology\",\"type\":\"string\",\"required\":false,\"description\":\"Specify the topology of the generated model. Quad for smooth surfaces, Triangle for detailed geometry.\",\"default\":\"triangle\",\"constraints\":\"Allowed values: quad, triangle\"},{\"name\":\"enable_pbr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate PBR Maps (metallic, roughness, normal) in addition to base color.\",\"default\":\"false\"},{\"name\":\"pose_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Pose mode for the generated model. 'a-pose' generates an A-pose, 't-pose' generates a T-pose, empty string for no specific pose.\",\"default\":\"\",\"constraints\":\"Allowed values: a-pose, t-pose, \"},{\"name\":\"is_a_t_pose\",\"type\":\"boolean\",\"required\":false,\"description\":\"Deprecated: use pose_mode instead. When true, generates a T-pose model.\",\"default\":\"false\"},{\"name\":\"should_remesh\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to enable the remesh phase. When false, returns unprocessed triangular mesh.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meshy/meshy-v6-preview/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A rustic, antique wooden treasure chest with a curved, domed lid, constructed from weathered, dark brown planks exhibiting prominent wood grain and subtle distress. It's heavily reinforced with broad, dark grey, oxidized metal bands secured by numerous circular rivets. Ornate, dark iron decorative elements featuring swirling foliate patterns and dragon motifs adorn the corners and lid. A prominent, circular, intricately carved metal lock plate with a central keyhole dominates the front, flanked by two large, dark metallic pull rings.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meshy/meshy-v6-preview/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A rustic, antique wooden treasure chest with a curved, domed lid, constructed from weathered, dark brown planks exhibiting prominent wood grain and subtle distress. It's heavily reinforced with broad, dark grey, oxidized metal bands secured by numerous circular rivets. Ornate, dark iron decorative elements featuring swirling foliate patterns and dragon motifs adorn the corners and lid. A prominent, circular, intricately carved metal lock plate with a central keyhole dominates the front, flanked by two large, dark metallic pull rings.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meshy/meshy-v6-preview/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A rustic, antique wooden treasure chest with a curved, domed lid, constructed from weathered, dark brown planks exhibiting prominent wood grain and subtle distress. It's heavily reinforced with broad, dark grey, oxidized metal bands secured by numerous circular rivets. Ornate, dark iron decorative elements featuring swirling foliate patterns and dragon motifs adorn the corners and lid. A prominent, circular, intricately carved metal lock plate with a central keyhole dominates the front, flanked by two large, dark metallic pull rings.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meshy/meshy-v6-preview/text-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Meshy 6 Preview" - modelId: "meshy/meshy-v6-preview/text-to-3d" - vendor: "Meshy" - vendorSlug: "meshy" - modelSlug: "meshy-v6-preview/text-to-3d" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-06T23:26:16.872Z" - capabilities: ["text-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/meshy/meshy-v6.md b/model-api-reference/image-generation/meshy/meshy-v6.md deleted file mode 100644 index b18c35e0..00000000 --- a/model-api-reference/image-generation/meshy/meshy-v6.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Meshy 6 API Reference — Meshy Meshy V6 API" -description: "Meshy 6 API reference for SandBase. Use model meshy/meshy-v6 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/meshy/meshy-v6" -apiReferenceJson: "{\"title\":\"Meshy 6\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Meshy V6 by Meshy - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meshy/meshy-v6.\",\"default\":\"meshy/meshy-v6\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Image URL or base64 data URI for 3D model creation. Supports .jpg, .jpeg, and .png formats. Also supports AVIF and HEIF formats which will be automatically converted.\"},{\"name\":\"topology\",\"type\":\"string\",\"required\":false,\"description\":\"Specify the topology of the generated model. Quad for smooth surfaces, Triangle for detailed geometry.\",\"default\":\"triangle\",\"constraints\":\"Allowed values: quad, triangle\"},{\"name\":\"enable_rigging\",\"type\":\"boolean\",\"required\":false,\"description\":\"Automatically rig the generated model as a humanoid character. Includes basic walking and running animations. Best results with humanoid characters that have clearly defined limbs.\",\"default\":\"false\"},{\"name\":\"texture_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Text prompt to guide the texturing process\"},{\"name\":\"enable_pbr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate PBR Maps (metallic, roughness, normal) in addition to base color\",\"default\":\"false\"},{\"name\":\"animation_action_id\",\"type\":\"integer\",\"required\":false,\"description\":\"Animation preset ID from Meshy's library (500+ presets). Only used when enable_animation is true. See https://docs.meshy.ai/en/api/animation-library for available action IDs.\",\"default\":\"1001\"},{\"name\":\"rigging_height_meters\",\"type\":\"number\",\"required\":false,\"description\":\"Approximate height of the character in meters. Only used when enable_rigging is true.\",\"default\":\"1.7\"},{\"name\":\"should_texture\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate textures\",\"default\":\"true\"},{\"name\":\"pose_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Pose mode for the generated model. 'a-pose' generates an A-pose, 't-pose' generates a T-pose, empty string for no specific pose.\",\"default\":\"\",\"constraints\":\"Allowed values: a-pose, t-pose, \"},{\"name\":\"should_remesh\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to enable the remesh phase\",\"default\":\"true\"},{\"name\":\"is_a_t_pose\",\"type\":\"boolean\",\"required\":false,\"description\":\"Deprecated: use pose_mode instead. When true, generates a T-pose model.\",\"default\":\"false\"},{\"name\":\"target_polycount\",\"type\":\"integer\",\"required\":false,\"description\":\"Target number of polygons in the generated model\",\"default\":\"30000\",\"constraints\":\"Range: 100 to 300000\"},{\"name\":\"texture_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"2D image to guide the texturing process\"},{\"name\":\"enable_animation\",\"type\":\"boolean\",\"required\":false,\"description\":\"Apply an animation preset to the rigged model. Requires enable_rigging to be true.\",\"default\":\"false\"},{\"name\":\"symmetry_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Controls symmetry behavior during model generation. Off disables symmetry, Auto determines it automatically, On enforces symmetry.\",\"default\":\"auto\",\"constraints\":\"Allowed values: off, auto, on\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meshy/meshy-v6\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/meshy/meshy-v6/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meshy/meshy-v6\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/meshy/meshy-v6/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meshy/meshy-v6\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/meshy/meshy-v6/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meshy/meshy-v6\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Meshy 6" - modelId: "meshy/meshy-v6" - vendor: "Meshy" - vendorSlug: "meshy" - modelSlug: "meshy-v6" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-02-09T19:31:09.486Z" - capabilities: ["image-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/meshy/meshy-v6/multi-image-to-3d.md b/model-api-reference/image-generation/meshy/meshy-v6/multi-image-to-3d.md deleted file mode 100644 index b6b02ff8..00000000 --- a/model-api-reference/image-generation/meshy/meshy-v6/multi-image-to-3d.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Meshy 6 - Multi Image To 3D API Reference" -description: "Meshy 6 - Multi Image To 3D API reference for SandBase. Use model meshy/meshy-v6/multi-image-to-3d with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/meshy/meshy-v6/multi-image-to-3d" -apiReferenceJson: "{\"title\":\"Meshy 6 - Multi Image To 3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Meshy V6 Multi Image To 3d by Meshy - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meshy/meshy-v6/multi-image-to-3d.\",\"default\":\"meshy/meshy-v6/multi-image-to-3d\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"1 to 4 images for 3D model creation. All images should depict the same object from different angles. Supports .jpg, .jpeg, .png formats, and AVIF/HEIF which will be automatically converted. If more than 4 images are provided, only the first 4 will be used.\"},{\"name\":\"enable_rigging\",\"type\":\"boolean\",\"required\":false,\"description\":\"Automatically rig the generated model as a humanoid character. Includes basic walking and running animations. Best results with humanoid characters that have clearly defined limbs.\",\"default\":\"false\"},{\"name\":\"topology\",\"type\":\"string\",\"required\":false,\"description\":\"Specify the topology of the generated model. Quad for smooth surfaces, Triangle for detailed geometry.\",\"default\":\"triangle\",\"constraints\":\"Allowed values: quad, triangle\"},{\"name\":\"should_texture\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate textures. False provides mesh without textures for 5 credits, True adds texture generation for additional 10 credits.\",\"default\":\"true\"},{\"name\":\"should_remesh\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to enable the remesh phase. When false, returns triangular mesh ignoring topology and target_polycount.\",\"default\":\"true\"},{\"name\":\"animation_action_id\",\"type\":\"integer\",\"required\":false,\"description\":\"Animation preset ID from Meshy's library (500+ presets). Only used when enable_animation is true. See https://docs.meshy.ai/en/api/animation-library for available action IDs.\",\"default\":\"1001\"},{\"name\":\"texture_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Text prompt to guide the texturing process. Requires should_texture to be true.\"},{\"name\":\"target_polycount\",\"type\":\"integer\",\"required\":false,\"description\":\"Target number of polygons in the generated model\",\"default\":\"30000\",\"constraints\":\"Range: 100 to 300000\"},{\"name\":\"is_a_t_pose\",\"type\":\"boolean\",\"required\":false,\"description\":\"Deprecated: use pose_mode instead. When true, generates a T-pose model.\",\"default\":\"false\"},{\"name\":\"rigging_height_meters\",\"type\":\"number\",\"required\":false,\"description\":\"Approximate height of the character in meters. Only used when enable_rigging is true.\",\"default\":\"1.7\"},{\"name\":\"symmetry_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Controls symmetry behavior during model generation.\",\"default\":\"auto\",\"constraints\":\"Allowed values: off, auto, on\"},{\"name\":\"texture_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"2D image to guide the texturing process. Requires should_texture to be true.\"},{\"name\":\"enable_animation\",\"type\":\"boolean\",\"required\":false,\"description\":\"Apply an animation preset to the rigged model. Requires enable_rigging to be true.\",\"default\":\"false\"},{\"name\":\"pose_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Pose mode for the generated model. 'a-pose' generates an A-pose, 't-pose' generates a T-pose, empty string for no specific pose.\",\"default\":\"\",\"constraints\":\"Allowed values: a-pose, t-pose, \"},{\"name\":\"enable_pbr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate PBR Maps (metallic, roughness, normal) in addition to base color. Requires should_texture to be true.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meshy/meshy-v6/multi-image-to-3d\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meshy/meshy-v6/multi-image-to-3d\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meshy/meshy-v6/multi-image-to-3d\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meshy/meshy-v6/multi-image-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Meshy 6 - Multi Image To 3D" - modelId: "meshy/meshy-v6/multi-image-to-3d" - vendor: "Meshy" - vendorSlug: "meshy" - modelSlug: "meshy-v6/multi-image-to-3d" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-23T16:08:02.069Z" - capabilities: ["image-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/meshy/meshy-v6/text-to-3d.md b/model-api-reference/image-generation/meshy/meshy-v6/text-to-3d.md deleted file mode 100644 index a75934ed..00000000 --- a/model-api-reference/image-generation/meshy/meshy-v6/text-to-3d.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Meshy 6 API Reference — Meshy Meshy V6 / Text To 3d API" -description: "Meshy 6 API reference for SandBase. Use model meshy/meshy-v6/text-to-3d with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/meshy/meshy-v6/text-to-3d" -apiReferenceJson: "{\"title\":\"Meshy 6\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Meshy V6 is Meshy's text-to-3D AI model. Turn written descriptions into textured 3D objects with realistic geometry and materials.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meshy/meshy-v6/text-to-3d.\",\"default\":\"meshy/meshy-v6/text-to-3d\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Describe what kind of object the 3D model is. Maximum 600 characters.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for reproducible results. Same prompt and seed usually generate the same result.\"},{\"name\":\"enable_rigging\",\"type\":\"boolean\",\"required\":false,\"description\":\"Automatically rig the generated model as a humanoid character. Includes basic walking and running animations. Best results with humanoid characters that have clearly defined limbs.\",\"default\":\"false\"},{\"name\":\"enable_animation\",\"type\":\"boolean\",\"required\":false,\"description\":\"Apply an animation preset to the rigged model. Requires enable_rigging to be true.\",\"default\":\"false\"},{\"name\":\"pose_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Pose mode for the generated model. 'a-pose' generates an A-pose, 't-pose' generates a T-pose, empty string for no specific pose.\",\"default\":\"\",\"constraints\":\"Allowed values: a-pose, t-pose, \"},{\"name\":\"should_remesh\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to enable the remesh phase. When false, returns unprocessed triangular mesh.\",\"default\":\"true\"},{\"name\":\"enable_pbr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate PBR Maps (metallic, roughness, normal) in addition to base color.\",\"default\":\"false\"},{\"name\":\"target_polycount\",\"type\":\"integer\",\"required\":false,\"description\":\"Target number of polygons in the generated model\",\"default\":\"30000\",\"constraints\":\"Range: 100 to 300000\"},{\"name\":\"texture_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Additional text prompt to guide the texturing process (only used in 'full' mode)\"},{\"name\":\"animation_action_id\",\"type\":\"integer\",\"required\":false,\"description\":\"Animation preset ID from Meshy's library (500+ presets). Only used when enable_animation is true. See https://docs.meshy.ai/en/api/animation-library for available action IDs.\",\"default\":\"1001\"},{\"name\":\"is_a_t_pose\",\"type\":\"boolean\",\"required\":false,\"description\":\"Deprecated: use pose_mode instead. When true, generates a T-pose model.\",\"default\":\"false\"},{\"name\":\"symmetry_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Controls symmetry behavior during model generation.\",\"default\":\"auto\",\"constraints\":\"Allowed values: off, auto, on\"},{\"name\":\"topology\",\"type\":\"string\",\"required\":false,\"description\":\"Specify the topology of the generated model. Quad for smooth surfaces, Triangle for detailed geometry.\",\"default\":\"triangle\",\"constraints\":\"Allowed values: quad, triangle\"},{\"name\":\"rigging_height_meters\",\"type\":\"number\",\"required\":false,\"description\":\"Approximate height of the character in meters. Only used when enable_rigging is true.\",\"default\":\"1.7\"},{\"name\":\"texture_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"2D image to guide the texturing process (only used in 'full' mode)\"},{\"name\":\"mode\",\"type\":\"string\",\"required\":false,\"description\":\"Generation mode. 'preview' returns untextured geometry only, 'full' returns textured model (preview + refine).\",\"default\":\"full\",\"constraints\":\"Allowed values: preview, full\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meshy/meshy-v6/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A rustic, antique wooden treasure chest with a curved, domed lid, constructed from weathered, dark brown planks exhibiting prominent wood grain and subtle distress. It's heavily reinforced with broad, dark grey, oxidized metal bands secured by numerous circular rivets. Ornate, dark iron decorative elements featuring swirling foliate patterns and dragon motifs adorn the corners and lid. A prominent, circular, intricately carved metal lock plate with a central keyhole dominates the front, flanked by two large, dark metallic pull rings.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meshy/meshy-v6/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A rustic, antique wooden treasure chest with a curved, domed lid, constructed from weathered, dark brown planks exhibiting prominent wood grain and subtle distress. It's heavily reinforced with broad, dark grey, oxidized metal bands secured by numerous circular rivets. Ornate, dark iron decorative elements featuring swirling foliate patterns and dragon motifs adorn the corners and lid. A prominent, circular, intricately carved metal lock plate with a central keyhole dominates the front, flanked by two large, dark metallic pull rings.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meshy/meshy-v6/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A rustic, antique wooden treasure chest with a curved, domed lid, constructed from weathered, dark brown planks exhibiting prominent wood grain and subtle distress. It's heavily reinforced with broad, dark grey, oxidized metal bands secured by numerous circular rivets. Ornate, dark iron decorative elements featuring swirling foliate patterns and dragon motifs adorn the corners and lid. A prominent, circular, intricately carved metal lock plate with a central keyhole dominates the front, flanked by two large, dark metallic pull rings.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meshy/meshy-v6/text-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Meshy 6" - modelId: "meshy/meshy-v6/text-to-3d" - vendor: "Meshy" - vendorSlug: "meshy" - modelSlug: "meshy-v6/text-to-3d" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-02-09T19:27:07.101Z" - capabilities: ["text-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/meshy/meshy/v5/multi-image-to-3d.md b/model-api-reference/image-generation/meshy/meshy/v5/multi-image-to-3d.md deleted file mode 100644 index bbfd4cf3..00000000 --- a/model-api-reference/image-generation/meshy/meshy/v5/multi-image-to-3d.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Meshy 5 Multi API Reference" -description: "Meshy 5 Multi API reference for SandBase. Use model meshy/meshy/v5/multi-image-to-3d with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/meshy/meshy/v5/multi-image-to-3d" -apiReferenceJson: "{\"title\":\"Meshy 5 Multi\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Meshy V5 Multi Image To 3d by Meshy - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meshy/meshy/v5/multi-image-to-3d.\",\"default\":\"meshy/meshy/v5/multi-image-to-3d\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"1 to 4 images for 3D model creation. All images should depict the same object from different angles. Supports .jpg, .jpeg, .png formats, and AVIF/HEIF which will be automatically converted. If more than 4 images are provided, only the first 4 will be used.\"},{\"name\":\"should_texture\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate textures. False provides mesh without textures for 5 credits, True adds texture generation for additional 10 credits.\",\"default\":\"true\"},{\"name\":\"enable_rigging\",\"type\":\"boolean\",\"required\":false,\"description\":\"Automatically rig the generated model as a humanoid character. Includes basic walking and running animations. Best results with humanoid characters that have clearly defined limbs.\",\"default\":\"false\"},{\"name\":\"topology\",\"type\":\"string\",\"required\":false,\"description\":\"Specify the topology of the generated model. Quad for smooth surfaces, Triangle for detailed geometry.\",\"default\":\"triangle\",\"constraints\":\"Allowed values: quad, triangle\"},{\"name\":\"animation_action_id\",\"type\":\"integer\",\"required\":false,\"description\":\"Animation preset ID from Meshy's library (500+ presets). Only used when enable_animation is true. See https://docs.meshy.ai/en/api/animation-library for available action IDs.\",\"default\":\"1001\"},{\"name\":\"enable_pbr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate PBR Maps (metallic, roughness, normal) in addition to base color. Requires should_texture to be true.\",\"default\":\"false\"},{\"name\":\"is_a_t_pose\",\"type\":\"boolean\",\"required\":false,\"description\":\"Deprecated: use pose_mode instead. When true, generates a T-pose model.\",\"default\":\"false\"},{\"name\":\"pose_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Pose mode for the generated model. 'a-pose' generates an A-pose, 't-pose' generates a T-pose, empty string for no specific pose.\",\"default\":\"\",\"constraints\":\"Allowed values: a-pose, t-pose, \"},{\"name\":\"should_remesh\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to enable the remesh phase. When false, returns triangular mesh ignoring topology and target_polycount.\",\"default\":\"true\"},{\"name\":\"texture_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"2D image to guide the texturing process. Requires should_texture to be true.\"},{\"name\":\"rigging_height_meters\",\"type\":\"number\",\"required\":false,\"description\":\"Approximate height of the character in meters. Only used when enable_rigging is true.\",\"default\":\"1.7\"},{\"name\":\"target_polycount\",\"type\":\"integer\",\"required\":false,\"description\":\"Target number of polygons in the generated model\",\"default\":\"30000\",\"constraints\":\"Range: 100 to 300000\"},{\"name\":\"enable_animation\",\"type\":\"boolean\",\"required\":false,\"description\":\"Apply an animation preset to the rigged model. Requires enable_rigging to be true.\",\"default\":\"false\"},{\"name\":\"symmetry_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Controls symmetry behavior during model generation.\",\"default\":\"auto\",\"constraints\":\"Allowed values: off, auto, on\"},{\"name\":\"texture_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Text prompt to guide the texturing process. Requires should_texture to be true.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meshy/meshy/v5/multi-image-to-3d\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meshy/meshy/v5/multi-image-to-3d\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meshy/meshy/v5/multi-image-to-3d\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meshy/meshy/v5/multi-image-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Meshy 5 Multi" - modelId: "meshy/meshy/v5/multi-image-to-3d" - vendor: "Meshy" - vendorSlug: "meshy" - modelSlug: "meshy/v5/multi-image-to-3d" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-06T23:15:19.272Z" - capabilities: ["image-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/meshy/meshy/v5/remesh.md b/model-api-reference/image-generation/meshy/meshy/v5/remesh.md deleted file mode 100644 index bf8cb4b8..00000000 --- a/model-api-reference/image-generation/meshy/meshy/v5/remesh.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Meshy 5 Remesh API Reference" -description: "Meshy 5 Remesh API reference for SandBase. Use model meshy/meshy/v5/remesh with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/meshy/meshy/v5/remesh" -apiReferenceJson: "{\"title\":\"Meshy 5 Remesh\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Meshy V5 Remesh by Meshy - advanced AI model for 3d-to-3d. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meshy/meshy/v5/remesh.\",\"default\":\"meshy/meshy/v5/remesh\"},{\"name\":\"target_formats\",\"type\":\"array\",\"required\":false,\"description\":\"List of target formats for the remeshed model.\",\"default\":\"glb\"},{\"name\":\"model_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL or base64 data URI of a 3D model to remesh. Supports .glb, .gltf, .obj, .fbx, .stl formats. Can be a publicly accessible URL or data URI with MIME type application/octet-stream.\"},{\"name\":\"resize_height\",\"type\":\"number\",\"required\":false,\"description\":\"Resize the model to a certain height measured in meters. Set to 0 for no resizing.\",\"default\":\"0\",\"constraints\":\"Minimum: 0\"},{\"name\":\"target_polycount\",\"type\":\"integer\",\"required\":false,\"description\":\"Target number of polygons in the generated model. Actual count may vary based on geometry complexity.\",\"default\":\"30000\",\"constraints\":\"Range: 100 to 300000\"},{\"name\":\"origin_at\",\"type\":\"string\",\"required\":false,\"description\":\"Position of the origin. None means no effect.\",\"constraints\":\"Allowed values: bottom, center\"},{\"name\":\"topology\",\"type\":\"string\",\"required\":false,\"description\":\"Specify the topology of the generated model. Quad for smooth surfaces, Triangle for detailed geometry.\",\"default\":\"triangle\",\"constraints\":\"Allowed values: quad, triangle\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"3d-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meshy/meshy/v5/remesh\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meshy/meshy/v5/remesh\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meshy/meshy/v5/remesh\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meshy/meshy/v5/remesh\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Meshy 5 Remesh" - modelId: "meshy/meshy/v5/remesh" - vendor: "Meshy" - vendorSlug: "meshy" - modelSlug: "meshy/v5/remesh" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-18T01:56:03.334Z" - capabilities: ["3d-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/meshy/meshy/v5/retexture.md b/model-api-reference/image-generation/meshy/meshy/v5/retexture.md deleted file mode 100644 index df8143db..00000000 --- a/model-api-reference/image-generation/meshy/meshy/v5/retexture.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Meshy 5 Retexture API Reference" -description: "Meshy 5 Retexture API reference for SandBase. Use model meshy/meshy/v5/retexture with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/meshy/meshy/v5/retexture" -apiReferenceJson: "{\"title\":\"Meshy 5 Retexture\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Meshy V5 Retexture by Meshy - advanced AI model for 3d-to-3d. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meshy/meshy/v5/retexture.\",\"default\":\"meshy/meshy/v5/retexture\"},{\"name\":\"enable_original_uv\",\"type\":\"boolean\",\"required\":false,\"description\":\"Use the original UV mapping of the model instead of generating new UVs. If the model has no original UV, output quality may be reduced.\",\"default\":\"true\"},{\"name\":\"image_style_url\",\"type\":\"string\",\"required\":false,\"description\":\"2D image to guide the texturing process. Supports .jpg, .jpeg, and .png formats. Required if text_style_prompt is not provided. If both are provided, image_style_url takes precedence.\"},{\"name\":\"model_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL or base64 data URI of a 3D model to texture. Supports .glb, .gltf, .obj, .fbx, .stl formats. Can be a publicly accessible URL or data URI with MIME type application/octet-stream.\"},{\"name\":\"text_style_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Describe your desired texture style using text. Maximum 600 characters. Required if image_style_url is not provided.\"},{\"name\":\"enable_pbr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate PBR Maps (metallic, roughness, normal) in addition to base color.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"3d-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meshy/meshy/v5/retexture\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meshy/meshy/v5/retexture\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meshy/meshy/v5/retexture\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meshy/meshy/v5/retexture\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Meshy 5 Retexture" - modelId: "meshy/meshy/v5/retexture" - vendor: "Meshy" - vendorSlug: "meshy" - modelSlug: "meshy/v5/retexture" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-18T02:04:55.284Z" - capabilities: ["3d-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/meshy/rigging.md b/model-api-reference/image-generation/meshy/rigging.md deleted file mode 100644 index 36ef41f6..00000000 --- a/model-api-reference/image-generation/meshy/rigging.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Meshy Rigging API Reference" -description: "Meshy Rigging API reference for SandBase. Use model meshy/rigging with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/meshy/rigging" -apiReferenceJson: "{\"title\":\"Meshy Rigging\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Rigging by Meshy - advanced AI model for 3d-to-3d. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meshy/rigging.\",\"default\":\"meshy/rigging\"},{\"name\":\"animation_action_id\",\"type\":\"integer\",\"required\":false,\"description\":\"Animation preset ID from Meshy's library. Only used when enable_animation is true; in that case it must be in [0, 696] (``0`` is the \\\"Idle\\\" preset) and is otherwise rejected with a 422. See https://docs.meshy.ai/en/api/animation-library for available action IDs.\",\"default\":\"92\"},{\"name\":\"height_meters\",\"type\":\"number\",\"required\":false,\"description\":\"Approximate height of the character in meters.\",\"default\":\"1.7\"},{\"name\":\"enable_animation\",\"type\":\"boolean\",\"required\":false,\"description\":\"Apply an animation preset to the rigged model.\",\"default\":\"false\"},{\"name\":\"model_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of a 3D model in GLB format to rig. Can be any publicly accessible URL — works with models generated by Hunyuan, Trellis, Meshy, or any other 3D generation tool. The model must be a humanoid character with clearly defined limbs.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"3d-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meshy/rigging\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meshy/rigging\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meshy/rigging\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meshy/rigging\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Meshy Rigging" - modelId: "meshy/rigging" - vendor: "Meshy" - vendorSlug: "meshy" - modelSlug: "rigging" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-05-19T22:13:29.355Z" - capabilities: ["3d-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/meshy/rigging/multi-animation.md b/model-api-reference/image-generation/meshy/rigging/multi-animation.md deleted file mode 100644 index d66137ed..00000000 --- a/model-api-reference/image-generation/meshy/rigging/multi-animation.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Meshy Rigging Multi Animation API Reference" -description: "Meshy Rigging Multi Animation API reference for SandBase. Use model meshy/rigging/multi-animation with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/meshy/rigging/multi-animation" -apiReferenceJson: "{\"title\":\"Meshy Rigging Multi Animation\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Rigging Multi Animation by Meshy - advanced AI model for 3d-to-3d. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meshy/rigging/multi-animation.\",\"default\":\"meshy/rigging/multi-animation\"},{\"name\":\"height_meters\",\"type\":\"number\",\"required\":false,\"description\":\"Approximate height of the character in meters.\",\"default\":\"1.7\"},{\"name\":\"model_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of a 3D model in GLB format to rig and animate. Can be any publicly accessible URL — works with models generated by Hunyuan, Trellis, Meshy, or any other 3D generation tool. The model must be a humanoid character with clearly defined limbs.\"},{\"name\":\"animation_action_ids\",\"type\":\"array\",\"required\":false,\"description\":\"Animation preset IDs from Meshy's library. One animation clip is generated per ID against the same rig and returned in the 'animations' output array, in request order. Must contain at least one ID. Each ID must be in [0, 696], at most 10 distinct clips may be requested, and duplicate IDs are de-duplicated. See https://docs.meshy.ai/en/api/animation-library for available IDs.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"3d-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meshy/rigging/multi-animation\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meshy/rigging/multi-animation\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meshy/rigging/multi-animation\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meshy/rigging/multi-animation\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Meshy Rigging Multi Animation" - modelId: "meshy/rigging/multi-animation" - vendor: "Meshy" - vendorSlug: "meshy" - modelSlug: "rigging/multi-animation" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-12T21:40:43.99Z" - capabilities: ["3d-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/meta/demucs.md b/model-api-reference/image-generation/meta/demucs.md deleted file mode 100644 index 69045a97..00000000 --- a/model-api-reference/image-generation/meta/demucs.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Demucs API Reference" -description: "Demucs API reference for SandBase. Use model meta/demucs with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/meta/demucs" -apiReferenceJson: "{\"title\":\"Demucs\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Demucs by Meta - advanced AI model for audio-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/demucs.\",\"default\":\"meta/demucs\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the audio file to separate into stems\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output audio format for the separated stems\",\"default\":\"mp3\",\"constraints\":\"Allowed values: wav, mp3\"},{\"name\":\"stems\",\"type\":\"array\",\"required\":false,\"description\":\"Specific stems to extract. If None, extracts all available stems. Available stems depend on model: vocals, drums, bass, other, guitar, piano (for 6s model)\",\"default\":\"vocals,drums,bass,other,guitar,piano\"},{\"name\":\"segment_length\",\"type\":\"integer\",\"required\":false,\"description\":\"Length in seconds of each segment for processing. Smaller values use less memory but may reduce quality. Default is model-specific.\"},{\"name\":\"overlap\",\"type\":\"number\",\"required\":false,\"description\":\"Overlap between segments (0.0 to 1.0). Higher values may improve quality but increase processing time.\",\"default\":\"0.25\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"shifts\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of random shifts for equivariant stabilization. Higher values improve quality but increase processing time.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/demucs\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/meta/demucs/input_audio_0.mp3\\\",\\n \\\"output_format\\\": \\\"mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meta/demucs\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/meta/demucs/input_audio_0.mp3\\\",\\n \\\"output_format\\\": \\\"mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meta/demucs\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/meta/demucs/input_audio_0.mp3\\\",\\n \\\"output_format\\\": \\\"mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meta/demucs\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Demucs" - modelId: "meta/demucs" - vendor: "Meta" - vendorSlug: "meta" - modelSlug: "demucs" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-27T21:40:53.677Z" - capabilities: ["audio-to-audio"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/meta/sam-3-1/image-rle.md b/model-api-reference/image-generation/meta/sam-3-1/image-rle.md deleted file mode 100644 index 386d2d94..00000000 --- a/model-api-reference/image-generation/meta/sam-3-1/image-rle.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sam 3 1 API Reference — Meta Sam 3 1 / Image Rle API" -description: "Sam 3 1 API reference for SandBase. Use model meta/sam-3-1/image-rle with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/meta/sam-3-1/image-rle" -apiReferenceJson: "{\"title\":\"Sam 3 1\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sam 3 1 Image Rle is Meta's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/sam-3-1/image-rle.\",\"default\":\"meta/sam-3-1/image-rle\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for segmentation\",\"default\":\"wheel\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to be segmented\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"include_scores\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to include mask confidence scores.\",\"default\":\"false\"},{\"name\":\"max_masks\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of masks to return when `return_multiple_masks` is enabled.\",\"default\":\"3\",\"constraints\":\"Range: 1 to 32\"},{\"name\":\"apply_mask\",\"type\":\"boolean\",\"required\":false,\"description\":\"Apply the mask on the image.\",\"default\":\"true\"},{\"name\":\"point_prompts\",\"type\":\"array\",\"required\":false,\"description\":\"List of point prompts\",\"default\":\"\"},{\"name\":\"include_boxes\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to include bounding boxes for each mask (when available).\",\"default\":\"false\"},{\"name\":\"return_multiple_masks\",\"type\":\"boolean\",\"required\":false,\"description\":\"If True, upload and return multiple generated masks as defined by `max_masks`.\",\"default\":\"false\"},{\"name\":\"box_prompts\",\"type\":\"array\",\"required\":false,\"description\":\"Box prompt coordinates (x_min, y_min, x_max, y_max). Multiple boxes supported - use object_id to group boxes for the same object or leave empty for separate objects.\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/sam-3-1/image-rle\\\",\\n \\\"prompt\\\": \\\"wheel\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/facebookresearch/segment-anything-2/main/notebooks/images/truck.jpg\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meta/sam-3-1/image-rle\\\",\\n \\\"prompt\\\": \\\"wheel\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/facebookresearch/segment-anything-2/main/notebooks/images/truck.jpg\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meta/sam-3-1/image-rle\\\",\\n \\\"prompt\\\": \\\"wheel\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/facebookresearch/segment-anything-2/main/notebooks/images/truck.jpg\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meta/sam-3-1/image-rle\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Sam 3 1" - modelId: "meta/sam-3-1/image-rle" - vendor: "Meta" - vendorSlug: "meta" - modelSlug: "sam-3-1/image-rle" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-30T16:26:48.794Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/meta/sam-3-1/image.md b/model-api-reference/image-generation/meta/sam-3-1/image.md deleted file mode 100644 index ba0c3c66..00000000 --- a/model-api-reference/image-generation/meta/sam-3-1/image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sam 3 1 API Reference — Meta Sam 3 1 / Image API" -description: "Sam 3 1 API reference for SandBase. Use model meta/sam-3-1/image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/meta/sam-3-1/image" -apiReferenceJson: "{\"title\":\"Sam 3 1\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sam 3 1 Image is Meta's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/sam-3-1/image.\",\"default\":\"meta/sam-3-1/image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for segmentation\",\"default\":\"wheel\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to be segmented\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"apply_mask\",\"type\":\"boolean\",\"required\":false,\"description\":\"Apply the mask on the image.\",\"default\":\"true\"},{\"name\":\"max_masks\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of masks to return when `return_multiple_masks` is enabled.\",\"default\":\"3\",\"constraints\":\"Range: 1 to 32\"},{\"name\":\"include_boxes\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to include bounding boxes for each mask (when available).\",\"default\":\"false\"},{\"name\":\"include_scores\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to include mask confidence scores.\",\"default\":\"false\"},{\"name\":\"box_prompts\",\"type\":\"array\",\"required\":false,\"description\":\"Box prompt coordinates (x_min, y_min, x_max, y_max). Multiple boxes supported - use object_id to group boxes for the same object or leave empty for separate objects.\",\"default\":\"\"},{\"name\":\"return_multiple_masks\",\"type\":\"boolean\",\"required\":false,\"description\":\"If True, upload and return multiple generated masks as defined by `max_masks`.\",\"default\":\"false\"},{\"name\":\"point_prompts\",\"type\":\"array\",\"required\":false,\"description\":\"List of point prompts\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/sam-3-1/image\\\",\\n \\\"prompt\\\": \\\"wheel\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/facebookresearch/segment-anything-2/main/notebooks/images/truck.jpg\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meta/sam-3-1/image\\\",\\n \\\"prompt\\\": \\\"wheel\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/facebookresearch/segment-anything-2/main/notebooks/images/truck.jpg\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meta/sam-3-1/image\\\",\\n \\\"prompt\\\": \\\"wheel\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/facebookresearch/segment-anything-2/main/notebooks/images/truck.jpg\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meta/sam-3-1/image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Sam 3 1" - modelId: "meta/sam-3-1/image" - vendor: "Meta" - vendorSlug: "meta" - modelSlug: "sam-3-1/image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-30T16:22:58.421Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/meta/sam-3-1/video.md b/model-api-reference/image-generation/meta/sam-3-1/video.md deleted file mode 100644 index db463301..00000000 --- a/model-api-reference/image-generation/meta/sam-3-1/video.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Sam 3 1 reference moved" -description: "The meta/sam-3-1/video reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/meta/sam-3-1/video -robots: noindex,follow ---- - -# This page has moved - -`meta/sam-3-1/video` is a video model. Its API reference now lives at [Sam 3 1](/model-api-reference/video-generation/meta/sam-3-1/video) under Video Generation. diff --git a/model-api-reference/image-generation/meta/sam-3/3d-align.md b/model-api-reference/image-generation/meta/sam-3/3d-align.md deleted file mode 100644 index a9111143..00000000 --- a/model-api-reference/image-generation/meta/sam-3/3d-align.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "SAM 3 3D Align API Reference" -description: "SAM 3 3D Align API reference for SandBase. Use model meta/sam-3/3d-align with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/meta/sam-3/3d-align" -apiReferenceJson: "{\"title\":\"SAM 3 3D Align\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sam 3 3d Align by Meta - advanced AI model for 3d-to-3d. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/sam-3/3d-align.\",\"default\":\"meta/sam-3/3d-align\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the original image used for MoGe depth estimation\"},{\"name\":\"focal_length\",\"type\":\"number\",\"required\":false,\"description\":\"Focal length from SAM-3D Body metadata. If not provided, estimated from MoGe.\"},{\"name\":\"body_mask_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the human mask image. If not provided, uses full image.\"},{\"name\":\"body_mesh_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the SAM-3D Body mesh file (.ply or .glb) to align\"},{\"name\":\"object_mesh_url\",\"type\":\"string\",\"required\":false,\"description\":\"Optional URL of SAM-3D Object mesh (.glb) to create combined scene\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"3d-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/sam-3/3d-align\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meta/sam-3/3d-align\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meta/sam-3/3d-align\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meta/sam-3/3d-align\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "SAM 3 3D Align" - modelId: "meta/sam-3/3d-align" - vendor: "Meta" - vendorSlug: "meta" - modelSlug: "sam-3/3d-align" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-02T20:56:43.845Z" - capabilities: ["3d-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/meta/sam-3/3d-body.md b/model-api-reference/image-generation/meta/sam-3/3d-body.md deleted file mode 100644 index 2ed81d25..00000000 --- a/model-api-reference/image-generation/meta/sam-3/3d-body.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sam 3 API Reference — Meta Sam 3 / 3d Body API" -description: "Sam 3 API reference for SandBase. Use model meta/sam-3/3d-body with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/meta/sam-3/3d-body" -apiReferenceJson: "{\"title\":\"Sam 3\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sam 3 3d Body is Meta's image-to-3D AI model. Transform photographs into production-ready 3D meshes with accurate geometry and texture mapping.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/sam-3/3d-body.\",\"default\":\"meta/sam-3/3d-body\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image containing humans\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"Optional URL of a binary mask image (white=person, black=background). When provided, skips auto human detection and uses this mask instead. Bbox is auto-computed from the mask.\"},{\"name\":\"include_mhr_params\",\"type\":\"boolean\",\"required\":false,\"description\":\"Include the full MHR (Meta Human Representation) parameter set per person in the response metadata (shape, pose, expression, global rotations, joint coordinates, packed model params, raw pose). Set to `false` to return a leaner metadata block with only keypoints and camera parameters.\",\"default\":\"true\"},{\"name\":\"export_meshes\",\"type\":\"boolean\",\"required\":false,\"description\":\"Export individual mesh files (.ply) per person\",\"default\":\"true\"},{\"name\":\"include_3d_keypoints\",\"type\":\"boolean\",\"required\":false,\"description\":\"Include 3D keypoint markers (spheres) in the GLB mesh for visualization\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/sam-3/3d-body\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/meta/sam-3/3d-body/input_image_0.jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meta/sam-3/3d-body\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/meta/sam-3/3d-body/input_image_0.jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meta/sam-3/3d-body\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/meta/sam-3/3d-body/input_image_0.jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meta/sam-3/3d-body\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Sam 3" - modelId: "meta/sam-3/3d-body" - vendor: "Meta" - vendorSlug: "meta" - modelSlug: "sam-3/3d-body" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-02T20:52:11.002Z" - capabilities: ["image-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/meta/sam-3/3d-objects.md b/model-api-reference/image-generation/meta/sam-3/3d-objects.md index d2211b84..baf8e2a8 100644 --- a/model-api-reference/image-generation/meta/sam-3/3d-objects.md +++ b/model-api-reference/image-generation/meta/sam-3/3d-objects.md @@ -1,12 +1,12 @@ --- -title: "Sam 3 API Reference — Meta Sam 3 / 3d Objects API" -description: "Sam 3 API reference for SandBase. Use model meta/sam-3/3d-objects with /v1/run; see request and response examples." +title: "SAM 3 3D Objects API Reference" +description: "SAM 3 3D Objects API reference for SandBase. Use model meta/sam-3/3d-objects with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/meta/sam-3/3d-objects" -apiReferenceJson: "{\"title\":\"Sam 3\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sam 3 3d Objects by Meta - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/sam-3/3d-objects.\",\"default\":\"meta/sam-3/3d-objects\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for auto-segmentation when no masks provided (e.g., 'chair', 'lamp')\",\"default\":\"car\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to reconstruct in 3D\"},{\"name\":\"point_prompts\",\"type\":\"array\",\"required\":false,\"description\":\"Point prompts for auto-segmentation when no masks provided\",\"default\":\"\"},{\"name\":\"detection_threshold\",\"type\":\"number\",\"required\":false,\"description\":\"Detection confidence threshold (0.1-1.0). Lower = more detections but less precise. If not set, uses the model's default.\",\"constraints\":\"Range: 0.1 to 1\"},{\"name\":\"box_prompts\",\"type\":\"array\",\"required\":false,\"description\":\"Box prompts for auto-segmentation when no masks provided. Multiple boxes supported - each produces a separate object mask for 3D reconstruction.\",\"default\":\"\"},{\"name\":\"pointmap_url\",\"type\":\"string\",\"required\":false,\"description\":\"Optional URL to external pointmap/depth data (NPY or NPZ format) for improved 3D reconstruction depth estimation\"},{\"name\":\"export_textured_glb\",\"type\":\"boolean\",\"required\":false,\"description\":\"If True, exports GLB with baked texture and UVs instead of vertex colors.\",\"default\":\"false\"},{\"name\":\"mask_urls\",\"type\":\"array\",\"required\":false,\"description\":\"Optional list of mask URLs (one per object). If not provided, use prompt/point_prompts/box_prompts to auto-segment, or entire image will be used.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/sam-3/3d-objects\\\",\\n \\\"prompt\\\": \\\"car\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/meta/sam-3/3d-objects/input_image_0.jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meta/sam-3/3d-objects\\\",\\n \\\"prompt\\\": \\\"car\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/meta/sam-3/3d-objects/input_image_0.jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meta/sam-3/3d-objects\\\",\\n \\\"prompt\\\": \\\"car\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/meta/sam-3/3d-objects/input_image_0.jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meta/sam-3/3d-objects\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"SAM 3 3D Objects\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sam 3 3d Objects by Meta - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/sam-3/3d-objects.\",\"default\":\"meta/sam-3/3d-objects\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for auto-segmentation when no masks provided (e.g., 'chair', 'lamp')\",\"default\":\"car\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to reconstruct in 3D\"},{\"name\":\"point_prompts\",\"type\":\"array\",\"required\":false,\"description\":\"Point prompts for auto-segmentation when no masks provided\",\"default\":\"\"},{\"name\":\"detection_threshold\",\"type\":\"number\",\"required\":false,\"description\":\"Detection confidence threshold (0.1-1.0). Lower = more detections but less precise. If not set, uses the model's default.\",\"constraints\":\"Range: 0.1 to 1\"},{\"name\":\"box_prompts\",\"type\":\"array\",\"required\":false,\"description\":\"Box prompts for auto-segmentation when no masks provided. Multiple boxes supported - each produces a separate object mask for 3D reconstruction.\",\"default\":\"\"},{\"name\":\"pointmap_url\",\"type\":\"string\",\"required\":false,\"description\":\"Optional URL to external pointmap/depth data (NPY or NPZ format) for improved 3D reconstruction depth estimation\"},{\"name\":\"export_textured_glb\",\"type\":\"boolean\",\"required\":false,\"description\":\"If True, exports GLB with baked texture and UVs instead of vertex colors.\",\"default\":\"false\"},{\"name\":\"mask_urls\",\"type\":\"array\",\"required\":false,\"description\":\"Optional list of mask URLs (one per object). If not provided, use prompt/point_prompts/box_prompts to auto-segment, or entire image will be used.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/sam-3/3d-objects\\\",\\n \\\"prompt\\\": \\\"car\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/meta/sam-3/3d-objects/input_image_0.jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meta/sam-3/3d-objects\\\",\\n \\\"prompt\\\": \\\"car\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/meta/sam-3/3d-objects/input_image_0.jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meta/sam-3/3d-objects\\\",\\n \\\"prompt\\\": \\\"car\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/meta/sam-3/3d-objects/input_image_0.jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meta/sam-3/3d-objects\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Sam 3" + modelName: "SAM 3 3D Objects" modelId: "meta/sam-3/3d-objects" vendor: "Meta" vendorSlug: "meta" diff --git a/model-api-reference/image-generation/meta/sam-3/image-rle.md b/model-api-reference/image-generation/meta/sam-3/image-rle.md deleted file mode 100644 index 3b783400..00000000 --- a/model-api-reference/image-generation/meta/sam-3/image-rle.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sam 3 API Reference — Meta Sam 3 / Image Rle API" -description: "Sam 3 API reference for SandBase. Use model meta/sam-3/image-rle with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/meta/sam-3/image-rle" -apiReferenceJson: "{\"title\":\"Sam 3\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sam 3 Image Rle is Meta's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/sam-3/image-rle.\",\"default\":\"meta/sam-3/image-rle\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for segmentation\",\"default\":\"wheel\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to be segmented\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"apply_mask\",\"type\":\"boolean\",\"required\":false,\"description\":\"Apply the mask on the image.\",\"default\":\"true\"},{\"name\":\"max_masks\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of masks to return when `return_multiple_masks` is enabled.\",\"default\":\"3\",\"constraints\":\"Range: 1 to 32\"},{\"name\":\"include_scores\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to include mask confidence scores.\",\"default\":\"false\"},{\"name\":\"box_prompts\",\"type\":\"array\",\"required\":false,\"description\":\"Box prompt coordinates (x_min, y_min, x_max, y_max). Multiple boxes supported - use object_id to group boxes for the same object or leave empty for separate objects.\",\"default\":\"\"},{\"name\":\"return_multiple_masks\",\"type\":\"boolean\",\"required\":false,\"description\":\"If True, upload and return multiple generated masks as defined by `max_masks`.\",\"default\":\"false\"},{\"name\":\"text_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"[DEPRECATED] Use 'prompt' instead. Kept for backward compatibility.\"},{\"name\":\"point_prompts\",\"type\":\"array\",\"required\":false,\"description\":\"List of point prompts\",\"default\":\"\"},{\"name\":\"include_boxes\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to include bounding boxes for each mask (when available).\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/sam-3/image-rle\\\",\\n \\\"prompt\\\": \\\"wheel\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/facebookresearch/segment-anything-2/main/notebooks/images/truck.jpg\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meta/sam-3/image-rle\\\",\\n \\\"prompt\\\": \\\"wheel\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/facebookresearch/segment-anything-2/main/notebooks/images/truck.jpg\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meta/sam-3/image-rle\\\",\\n \\\"prompt\\\": \\\"wheel\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/facebookresearch/segment-anything-2/main/notebooks/images/truck.jpg\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meta/sam-3/image-rle\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Sam 3" - modelId: "meta/sam-3/image-rle" - vendor: "Meta" - vendorSlug: "meta" - modelSlug: "sam-3/image-rle" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-20T20:28:17.206Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/meta/sam-3/image/embed.md b/model-api-reference/image-generation/meta/sam-3/image/embed.md deleted file mode 100644 index c244b24a..00000000 --- a/model-api-reference/image-generation/meta/sam-3/image/embed.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "SAM 3 Embed API Reference" -description: "SAM 3 Embed API reference for SandBase. Use model meta/sam-3/image/embed with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/meta/sam-3/image/embed" -apiReferenceJson: "{\"title\":\"SAM 3 Embed\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sam 3 Image Embed by Meta - advanced AI model for vision. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/sam-3/image/embed.\",\"default\":\"meta/sam-3/image/embed\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to embed.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"vision\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/sam-3/image/embed\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/facebookresearch/segment-anything-2/main/notebooks/images/truck.jpg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meta/sam-3/image/embed\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/facebookresearch/segment-anything-2/main/notebooks/images/truck.jpg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meta/sam-3/image/embed\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/facebookresearch/segment-anything-2/main/notebooks/images/truck.jpg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meta/sam-3/image/embed\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "SAM 3 Embed" - modelId: "meta/sam-3/image/embed" - vendor: "Meta" - vendorSlug: "meta" - modelSlug: "sam-3/image/embed" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-20T20:21:00.592Z" - capabilities: ["vision"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/meta/sam-3/video-rle.md b/model-api-reference/image-generation/meta/sam-3/video-rle.md deleted file mode 100644 index c7f72455..00000000 --- a/model-api-reference/image-generation/meta/sam-3/video-rle.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Sam 3 reference moved" -description: "The meta/sam-3/video-rle reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/meta/sam-3/video-rle -robots: noindex,follow ---- - -# This page has moved - -`meta/sam-3/video-rle` is a video model. Its API reference now lives at [Sam 3](/model-api-reference/video-generation/meta/sam-3/video-rle) under Video Generation. diff --git a/model-api-reference/image-generation/microsoft/mai-image-2.5-pro/edit.md b/model-api-reference/image-generation/microsoft/mai-image-2.5-pro/edit.md index e46e0836..97172be4 100644 --- a/model-api-reference/image-generation/microsoft/mai-image-2.5-pro/edit.md +++ b/model-api-reference/image-generation/microsoft/mai-image-2.5-pro/edit.md @@ -1,12 +1,12 @@ --- -title: "MAI Image 2.5 Pro (Edit) API Reference" -description: "MAI Image 2.5 Pro (Edit) API reference for SandBase. Use model microsoft/mai-image-2.5-pro/edit with /v1/run; see request and response examples." +title: "MAI Image 2.5 Pro Edit API Reference" +description: "MAI Image 2.5 Pro Edit API reference for SandBase. Use model microsoft/mai-image-2.5-pro/edit with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/microsoft/mai-image-2.5-pro/edit" -apiReferenceJson: "{\"title\":\"MAI Image 2.5 Pro (Edit)\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Mai Image 2.5 Pro Edit by Microsoft - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to microsoft/mai-image-2.5-pro/edit.\",\"default\":\"microsoft/mai-image-2.5-pro/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The instruction describing how to edit the input image(s).\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to edit. Provide one http(s) or data: URL.\",\"default\":\"\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"microsoft/mai-image-2.5-pro/edit\\\",\\n \\\"prompt\\\": \\\"Turn this into a clean, futuristic product shot with soft studio lighting.\\\",\\n \\\"image\\\": \\\"\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"microsoft/mai-image-2.5-pro/edit\\\",\\n \\\"prompt\\\": \\\"Turn this into a clean, futuristic product shot with soft studio lighting.\\\",\\n \\\"image\\\": \\\"\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"microsoft/mai-image-2.5-pro/edit\\\",\\n \\\"prompt\\\": \\\"Turn this into a clean, futuristic product shot with soft studio lighting.\\\",\\n \\\"image\\\": \\\"\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"microsoft/mai-image-2.5-pro/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"MAI Image 2.5 Pro Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Mai Image 2.5 Pro Edit by Microsoft - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to microsoft/mai-image-2.5-pro/edit.\",\"default\":\"microsoft/mai-image-2.5-pro/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The instruction describing how to edit the input image(s).\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to edit. Provide one http(s) or data: URL.\",\"default\":\"\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"microsoft/mai-image-2.5-pro/edit\\\",\\n \\\"prompt\\\": \\\"Turn this into a clean, futuristic product shot with soft studio lighting.\\\",\\n \\\"image\\\": \\\"\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"microsoft/mai-image-2.5-pro/edit\\\",\\n \\\"prompt\\\": \\\"Turn this into a clean, futuristic product shot with soft studio lighting.\\\",\\n \\\"image\\\": \\\"\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"microsoft/mai-image-2.5-pro/edit\\\",\\n \\\"prompt\\\": \\\"Turn this into a clean, futuristic product shot with soft studio lighting.\\\",\\n \\\"image\\\": \\\"\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"microsoft/mai-image-2.5-pro/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "MAI Image 2.5 Pro (Edit)" + modelName: "MAI Image 2.5 Pro Edit" modelId: "microsoft/mai-image-2.5-pro/edit" vendor: "Microsoft" vendorSlug: "microsoft" diff --git a/model-api-reference/image-generation/microsoft/mai-image-2.5/edit.md b/model-api-reference/image-generation/microsoft/mai-image-2.5/edit.md index 074f0327..e971b4ff 100644 --- a/model-api-reference/image-generation/microsoft/mai-image-2.5/edit.md +++ b/model-api-reference/image-generation/microsoft/mai-image-2.5/edit.md @@ -1,12 +1,12 @@ --- -title: "Mai Image 2.5 API Reference" -description: "Mai Image 2.5 API reference for SandBase. Use model microsoft/mai-image-2.5/edit with /v1/run; see request and response examples." +title: "MAI Image 2.5 Edit API Reference" +description: "MAI Image 2.5 Edit API reference for SandBase. Use model microsoft/mai-image-2.5/edit with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/microsoft/mai-image-2.5/edit" -apiReferenceJson: "{\"title\":\"Mai Image 2.5\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Mai Image 2.5 Edit by Microsoft - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to microsoft/mai-image-2.5/edit.\",\"default\":\"microsoft/mai-image-2.5/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The instruction describing how to edit the input image(s).\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URL of the image to edit. Provide one http(s) or data: URL.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"microsoft/mai-image-2.5/edit\\\",\\n \\\"prompt\\\": \\\"Turn this into a clean, futuristic product shot with soft studio lighting.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"microsoft/mai-image-2.5/edit\\\",\\n \\\"prompt\\\": \\\"Turn this into a clean, futuristic product shot with soft studio lighting.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"microsoft/mai-image-2.5/edit\\\",\\n \\\"prompt\\\": \\\"Turn this into a clean, futuristic product shot with soft studio lighting.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"microsoft/mai-image-2.5/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"MAI Image 2.5 Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Mai Image 2.5 Edit by Microsoft - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to microsoft/mai-image-2.5/edit.\",\"default\":\"microsoft/mai-image-2.5/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The instruction describing how to edit the input image(s).\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URL of the image to edit. Provide one http(s) or data: URL.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"microsoft/mai-image-2.5/edit\\\",\\n \\\"prompt\\\": \\\"Turn this into a clean, futuristic product shot with soft studio lighting.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"microsoft/mai-image-2.5/edit\\\",\\n \\\"prompt\\\": \\\"Turn this into a clean, futuristic product shot with soft studio lighting.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"microsoft/mai-image-2.5/edit\\\",\\n \\\"prompt\\\": \\\"Turn this into a clean, futuristic product shot with soft studio lighting.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"microsoft/mai-image-2.5/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Mai Image 2.5" + modelName: "MAI Image 2.5 Edit" modelId: "microsoft/mai-image-2.5/edit" vendor: "Microsoft" vendorSlug: "microsoft" diff --git a/model-api-reference/image-generation/minimax/image-01.md b/model-api-reference/image-generation/minimax/image-01.md deleted file mode 100644 index 638ef714..00000000 --- a/model-api-reference/image-generation/minimax/image-01.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiniMax (Hailuo AI) Text to Image API Reference" -description: "MiniMax (Hailuo AI) Text to Image API reference for SandBase. Use model minimax/image-01 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/minimax/image-01" -apiReferenceJson: "{\"title\":\"MiniMax (Hailuo AI) Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Image 01 by MiniMax - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/image-01.\",\"default\":\"minimax/image-01\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for image generation (max 1500 characters)\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to enable automatic prompt optimization\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/image-01\\\",\\n \\\"prompt\\\": \\\"Man dressed in white t shirt, full-body stand front view image, outdoor, Venice beach sign, full-body image, Los Angeles, Fashion photography of 90s, documentary, Film grain, photorealistic\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/image-01\\\",\\n \\\"prompt\\\": \\\"Man dressed in white t shirt, full-body stand front view image, outdoor, Venice beach sign, full-body image, Los Angeles, Fashion photography of 90s, documentary, Film grain, photorealistic\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/image-01\\\",\\n \\\"prompt\\\": \\\"Man dressed in white t shirt, full-body stand front view image, outdoor, Venice beach sign, full-body image, Los Angeles, Fashion photography of 90s, documentary, Film grain, photorealistic\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/image-01\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "MiniMax (Hailuo AI) Text to Image" - modelId: "minimax/image-01" - vendor: "MiniMax" - vendorSlug: "minimax" - modelSlug: "image-01" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-06T16:11:12.334Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/minimax/image-01/subject-reference.md b/model-api-reference/image-generation/minimax/image-01/subject-reference.md deleted file mode 100644 index 17a1dcc9..00000000 --- a/model-api-reference/image-generation/minimax/image-01/subject-reference.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Minimax Image Subject Reference API Reference" -description: "Minimax Image Subject Reference API reference for SandBase. Use model minimax/image-01/subject-reference with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/minimax/image-01/subject-reference" -apiReferenceJson: "{\"title\":\"Minimax Image Subject Reference\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Image 01 Subject Reference by MiniMax - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/image-01/subject-reference.\",\"default\":\"minimax/image-01/subject-reference\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for image generation (max 1500 characters)\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the subject reference image to use for consistent character appearance\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to enable automatic prompt optimization\",\"default\":\"false\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/image-01/subject-reference\\\",\\n \\\"prompt\\\": \\\"A beautiful woman with a crown on her head.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/image-01/subject-reference/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/image-01/subject-reference\\\",\\n \\\"prompt\\\": \\\"A beautiful woman with a crown on her head.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/image-01/subject-reference/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/image-01/subject-reference\\\",\\n \\\"prompt\\\": \\\"A beautiful woman with a crown on her head.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/image-01/subject-reference/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/image-01/subject-reference\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Minimax Image Subject Reference" - modelId: "minimax/image-01/subject-reference" - vendor: "MiniMax" - vendorSlug: "minimax" - modelSlug: "image-01/subject-reference" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-06T16:14:51.517Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/mirelo/sfx1.6/extend-audio.md b/model-api-reference/image-generation/mirelo/sfx1.6/extend-audio.md deleted file mode 100644 index 083d1051..00000000 --- a/model-api-reference/image-generation/mirelo/sfx1.6/extend-audio.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Mirelo SFX1.6 API Reference — Mirelo Sfx1.6 / Extend Audio API" -description: "Mirelo SFX1.6 API reference for SandBase. Use model mirelo/sfx1.6/extend-audio with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/mirelo/sfx1.6/extend-audio" -apiReferenceJson: "{\"title\":\"Mirelo SFX1.6\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sfx1.6 Extend Audio by Mirelo - advanced AI model for audio-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mirelo/sfx1.6/extend-audio.\",\"default\":\"mirelo/sfx1.6/extend-audio\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the audio prefix to extend. The prefix duration must be 3–59 seconds; the total output (prefix + append_duration) is capped at 60 seconds.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for generation. -1 or None for random.\",\"constraints\":\"Range: -1 to ∞\"},{\"name\":\"append_duration\",\"type\":\"number\",\"required\":false,\"description\":\"How many seconds to add after the prefix. Total output = prefix duration + append_duration, capped at 60s. Minimum 1s, maximum 57s (60s cap minus the 3s prefix minimum).\",\"default\":\"10\",\"constraints\":\"Range: 1 to 57\"},{\"name\":\"upload_audio_format\",\"type\":\"string\",\"required\":false,\"description\":\"Audio format for the returned files.\",\"default\":\"wav\",\"constraints\":\"Allowed values: wav, mp3, aac, flac\"},{\"name\":\"ambience\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, run the extend+loop path: extend the prefix and stitch the end back to the prefix start so the tile loops seamlessly. When false, run a one-shot extension.\",\"default\":\"false\"},{\"name\":\"double_output\",\"type\":\"boolean\",\"required\":false,\"description\":\"Only used when ambience=true: concatenate the loop with itself for a 2x-length output.\",\"default\":\"false\"},{\"name\":\"num_samples\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of variations to generate.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 4\"},{\"name\":\"text_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Optional text prompt guiding the extension.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mirelo/sfx1.6/extend-audio\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/mirelo/sfx1.6/extend-audio/input_audio_0.aac\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"mirelo/sfx1.6/extend-audio\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/mirelo/sfx1.6/extend-audio/input_audio_0.aac\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"mirelo/sfx1.6/extend-audio\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/mirelo/sfx1.6/extend-audio/input_audio_0.aac\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"mirelo/sfx1.6/extend-audio\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Mirelo SFX1.6" - modelId: "mirelo/sfx1.6/extend-audio" - vendor: "Mirelo" - vendorSlug: "mirelo" - modelSlug: "sfx1.6/extend-audio" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-05-18T18:43:44.785Z" - capabilities: ["audio-to-audio"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/mirelo/sfx1.6/inpaint-audio.md b/model-api-reference/image-generation/mirelo/sfx1.6/inpaint-audio.md deleted file mode 100644 index 5d2ac4eb..00000000 --- a/model-api-reference/image-generation/mirelo/sfx1.6/inpaint-audio.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Mirelo SFX1.6 API Reference — Mirelo Sfx1.6 / Inpaint Audio API" -description: "Mirelo SFX1.6 API reference for SandBase. Use model mirelo/sfx1.6/inpaint-audio with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/mirelo/sfx1.6/inpaint-audio" -apiReferenceJson: "{\"title\":\"Mirelo SFX1.6\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sfx1.6 Inpaint Audio by Mirelo - advanced AI model for audio-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mirelo/sfx1.6/inpaint-audio.\",\"default\":\"mirelo/sfx1.6/inpaint-audio\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the source audio. Maximum 10 seconds — longer clips are rejected. The model regenerates only the region defined by `segment`; everything outside it is preserved.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for generation. -1 or None for random.\",\"constraints\":\"Range: -1 to ∞\"},{\"name\":\"text_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Optional text prompt guiding the regenerated segment.\"},{\"name\":\"upload_audio_format\",\"type\":\"string\",\"required\":false,\"description\":\"Audio format for the returned files.\",\"default\":\"wav\",\"constraints\":\"Allowed values: wav, mp3, aac, flac\"},{\"name\":\"segment\",\"type\":\"string\",\"required\":false,\"description\":\"Region [start_s, end_s] (in seconds, 1s ≤ start < end ≤ 10s, 1–8s span) to regenerate. The audio outside this region is preserved.\"},{\"name\":\"num_samples\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of variations to generate.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 4\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mirelo/sfx1.6/inpaint-audio\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/mirelo/sfx1.6/inpaint-audio/output_url_0.wav\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"mirelo/sfx1.6/inpaint-audio\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/mirelo/sfx1.6/inpaint-audio/output_url_0.wav\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"mirelo/sfx1.6/inpaint-audio\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/mirelo/sfx1.6/inpaint-audio/output_url_0.wav\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"mirelo/sfx1.6/inpaint-audio\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Mirelo SFX1.6" - modelId: "mirelo/sfx1.6/inpaint-audio" - vendor: "Mirelo" - vendorSlug: "mirelo" - modelSlug: "sfx1.6/inpaint-audio" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-05-18T18:43:48.448Z" - capabilities: ["audio-to-audio"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/mirelo/sfx1.6/video-to-video.md b/model-api-reference/image-generation/mirelo/sfx1.6/video-to-video.md deleted file mode 100644 index d8d59fa7..00000000 --- a/model-api-reference/image-generation/mirelo/sfx1.6/video-to-video.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Mirelo SFX1.6 reference moved" -description: "The mirelo/sfx1.6/video-to-video reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/mirelo/sfx1.6/video-to-video -robots: noindex,follow ---- - -# This page has moved - -`mirelo/sfx1.6/video-to-video` is a video model. Its API reference now lives at [Mirelo SFX1.6](/model-api-reference/video-generation/mirelo/sfx1.6/video-to-video) under Video Generation. diff --git a/model-api-reference/image-generation/nvidia/cosmos-3-super/text-to-image.md b/model-api-reference/image-generation/nvidia/cosmos-3-super/text-to-image.md deleted file mode 100644 index f6396dfa..00000000 --- a/model-api-reference/image-generation/nvidia/cosmos-3-super/text-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Cosmos 3 Super API Reference" -description: "Cosmos 3 Super API reference for SandBase. Use model nvidia/cosmos-3-super/text-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/nvidia/cosmos-3-super/text-to-image" -apiReferenceJson: "{\"title\":\"Cosmos 3 Super\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Cosmos 3 Super by NVIDIA - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to nvidia/cosmos-3-super/text-to-image.\",\"default\":\"nvidia/cosmos-3-super/text-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the image to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Classifier-free guidance scale. Higher values increase prompt adherence at the cost of diversity.\",\"default\":\"4\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising steps. More steps yield higher quality but take longer.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and prompt given to the same model version will produce the same image every time.\"},{\"name\":\"agentic_early_stop\",\"type\":\"boolean\",\"required\":false,\"description\":\"Stop early when a candidate image is already a strong match for the prompt.\",\"default\":\"true\"},{\"name\":\"agentic_max_iterations\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of refinement rounds when agentic generation is enabled.\",\"default\":\"2\",\"constraints\":\"Range: 1 to 3\"},{\"name\":\"enable_agentic_generation\",\"type\":\"boolean\",\"required\":false,\"description\":\"Automatically generate and compare multiple candidate images, then refine the prompt between rounds to better match the original request. This can improve prompt adherence but increases latency and billable image generations.\",\"default\":\"false\"},{\"name\":\"agentic_samples_per_iteration\",\"type\":\"integer\",\"required\":false,\"description\":\"Candidate images to generate and judge per agentic iteration. The best candidate advances to the next rewrite stage.\",\"default\":\"2\",\"constraints\":\"Range: 1 to 3\"},{\"name\":\"num_images\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"1\",\"constraints\":\"Minimum: 1\"},{\"name\":\"enable_prompt_expansion\",\"type\":\"boolean\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"nvidia/cosmos-3-super/text-to-image\\\",\\n \\\"prompt\\\": \\\"A photorealistic close-up of two damp hands shaping a spinning cylinder of wet gray clay on a pottery wheel, fingers pinching the walls upward into a narrow-necked vase, water glistening on the clay, soft studio lighting, shallow depth of field.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"nvidia/cosmos-3-super/text-to-image\\\",\\n \\\"prompt\\\": \\\"A photorealistic close-up of two damp hands shaping a spinning cylinder of wet gray clay on a pottery wheel, fingers pinching the walls upward into a narrow-necked vase, water glistening on the clay, soft studio lighting, shallow depth of field.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"nvidia/cosmos-3-super/text-to-image\\\",\\n \\\"prompt\\\": \\\"A photorealistic close-up of two damp hands shaping a spinning cylinder of wet gray clay on a pottery wheel, fingers pinching the walls upward into a narrow-necked vase, water glistening on the clay, soft studio lighting, shallow depth of field.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"nvidia/cosmos-3-super/text-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Cosmos 3 Super" - modelId: "nvidia/cosmos-3-super/text-to-image" - vendor: "NVIDIA" - vendorSlug: "nvidia" - modelSlug: "cosmos-3-super/text-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-01T22:04:50.504Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/nvidia/nemotron-3-nano-omni/audio.md b/model-api-reference/image-generation/nvidia/nemotron-3-nano-omni/audio.md deleted file mode 100644 index 8c0e26bb..00000000 --- a/model-api-reference/image-generation/nvidia/nemotron-3-nano-omni/audio.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Nemotron 3 Nano Omni API Reference — NVIDIA 3 Nano Omni / Audio" -description: "Nemotron 3 Nano Omni API reference for SandBase. Use model nvidia/nemotron-3-nano-omni/audio with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/nvidia/nemotron-3-nano-omni/audio" -apiReferenceJson: "{\"title\":\"Nemotron 3 Nano Omni\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Nemotron 3 Nano Omni Audio by NVIDIA - advanced AI model for audio-to-text. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to nvidia/nemotron-3-nano-omni/audio.\",\"default\":\"nvidia/nemotron-3-nano-omni/audio\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt to send to the model. English only.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the audio clip to reason about. wav or mp3, max 1 hour.\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling probability mass.\",\"default\":\"0.95\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower is more deterministic.\",\"default\":\"0.7\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"system_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Optional system prompt to steer the model. Reasoning behavior is controlled by the separate `reasoning_mode` field.\"},{\"name\":\"reasoning_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Whether the model should emit an explicit reasoning trace. `no_think` returns a direct answer; `think` returns chain-of-thought followed by the final answer.\",\"default\":\"no_think\",\"constraints\":\"Allowed values: think, no_think\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens to generate.\",\"default\":\"1024\",\"constraints\":\"Range: 1 to 20000\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-text\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"nvidia/nemotron-3-nano-omni/audio\\\",\\n \\\"prompt\\\": \\\"Summarize the key capabilities of a multimodal agent.\\\",\\n \\\"audio\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/nemotron-3-nano-omni/audio_in.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"nvidia/nemotron-3-nano-omni/audio\\\",\\n \\\"prompt\\\": \\\"Summarize the key capabilities of a multimodal agent.\\\",\\n \\\"audio\\\": \\\"https://storage.googleapis.com/Falserverless/example_inputs/nemotron-3-nano-omni/audio_in.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"nvidia/nemotron-3-nano-omni/audio\\\",\\n \\\"prompt\\\": \\\"Summarize the key capabilities of a multimodal agent.\\\",\\n \\\"audio\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/nemotron-3-nano-omni/audio_in.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"nvidia/nemotron-3-nano-omni/audio\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Nemotron 3 Nano Omni" - modelId: "nvidia/nemotron-3-nano-omni/audio" - vendor: "NVIDIA" - vendorSlug: "nvidia" - modelSlug: "nemotron-3-nano-omni/audio" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-28T15:51:13.512Z" - capabilities: ["audio-to-text"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/nvidia/nemotron-3-nano-omni/video.md b/model-api-reference/image-generation/nvidia/nemotron-3-nano-omni/video.md deleted file mode 100644 index 731e50da..00000000 --- a/model-api-reference/image-generation/nvidia/nemotron-3-nano-omni/video.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Nemotron 3 Nano Omni reference moved" -description: "The nvidia/nemotron-3-nano-omni/video reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/nvidia/nemotron-3-nano-omni/video -robots: noindex,follow ---- - -# This page has moved - -`nvidia/nemotron-3-nano-omni/video` is a video model. Its API reference now lives at [Nemotron 3 Nano Omni](/model-api-reference/video-generation/nvidia/nemotron-3-nano-omni/video) under Video Generation. diff --git a/model-api-reference/image-generation/nvidia/nemotron-3-nano-omni/vision.md b/model-api-reference/image-generation/nvidia/nemotron-3-nano-omni/vision.md deleted file mode 100644 index abd3ff51..00000000 --- a/model-api-reference/image-generation/nvidia/nemotron-3-nano-omni/vision.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Nemotron 3 Nano Omni API Reference — NVIDIA 3 Nano Omni / Vision" -description: "Nemotron 3 Nano Omni API reference for SandBase. Use model nvidia/nemotron-3-nano-omni/vision with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/nvidia/nemotron-3-nano-omni/vision" -apiReferenceJson: "{\"title\":\"Nemotron 3 Nano Omni\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Nemotron 3 Nano Omni Vision by NVIDIA - advanced AI model for image-to-text. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to nvidia/nemotron-3-nano-omni/vision.\",\"default\":\"nvidia/nemotron-3-nano-omni/vision\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt to send to the model. English only.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to reason about. RGB JPEG or PNG.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens to generate.\",\"default\":\"1024\",\"constraints\":\"Range: 1 to 20000\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling probability mass.\",\"default\":\"0.95\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower is more deterministic.\",\"default\":\"0.7\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"system_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Optional system prompt to steer the model. Reasoning behavior is controlled by the separate `reasoning_mode` field.\"},{\"name\":\"reasoning_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Whether the model should emit an explicit reasoning trace. `no_think` returns a direct answer; `think` returns chain-of-thought followed by the final answer.\",\"default\":\"no_think\",\"constraints\":\"Allowed values: think, no_think\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-text\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"nvidia/nemotron-3-nano-omni/vision\\\",\\n \\\"prompt\\\": \\\"Summarize the key capabilities of a multimodal agent.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/nemotron-3-nano-omni/vision_in.jpg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"nvidia/nemotron-3-nano-omni/vision\\\",\\n \\\"prompt\\\": \\\"Summarize the key capabilities of a multimodal agent.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/Falserverless/example_inputs/nemotron-3-nano-omni/vision_in.jpg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"nvidia/nemotron-3-nano-omni/vision\\\",\\n \\\"prompt\\\": \\\"Summarize the key capabilities of a multimodal agent.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/nemotron-3-nano-omni/vision_in.jpg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"nvidia/nemotron-3-nano-omni/vision\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Nemotron 3 Nano Omni" - modelId: "nvidia/nemotron-3-nano-omni/vision" - vendor: "NVIDIA" - vendorSlug: "nvidia" - modelSlug: "nemotron-3-nano-omni/vision" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-28T15:51:27.028Z" - capabilities: ["image-to-text"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/openai/gpt-image-1-mini.md b/model-api-reference/image-generation/openai/gpt-image-1-mini.md deleted file mode 100644 index f69bb52c..00000000 --- a/model-api-reference/image-generation/openai/gpt-image-1-mini.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT Image 1 Mini API Reference" -description: "GPT Image 1 Mini API reference for SandBase. Use model openai/gpt-image-1-mini with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/openai/gpt-image-1-mini" -apiReferenceJson: "{\"title\":\"GPT Image 1 Mini\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gpt Image 1 Mini by OpenAI - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-image-1-mini.\",\"default\":\"openai/gpt-image-1-mini\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt for image generation\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format for the images\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"background\",\"type\":\"string\",\"required\":false,\"description\":\"Background for the generated image\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, transparent, opaque\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Quality for the generated image\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, low, medium, high\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-image-1-mini\\\",\\n \\\"prompt\\\": \\\"A serene landscape with mountains reflecting in a crystal-clear lake at sunset, photorealistic style\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/gpt-image-1-mini\\\",\\n \\\"prompt\\\": \\\"A serene landscape with mountains reflecting in a crystal-clear lake at sunset, photorealistic style\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/gpt-image-1-mini\\\",\\n \\\"prompt\\\": \\\"A serene landscape with mountains reflecting in a crystal-clear lake at sunset, photorealistic style\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/gpt-image-1-mini\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "GPT Image 1 Mini" - modelId: "openai/gpt-image-1-mini" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-image-1-mini" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-21T22:06:41.68Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/openai/gpt-image-1-mini/edit.md b/model-api-reference/image-generation/openai/gpt-image-1-mini/edit.md index d6c0c22a..91c26b74 100644 --- a/model-api-reference/image-generation/openai/gpt-image-1-mini/edit.md +++ b/model-api-reference/image-generation/openai/gpt-image-1-mini/edit.md @@ -4,7 +4,7 @@ description: "GPT Image 1 Mini Edit API reference for SandBase. Use model openai aside: false outline: false apiReferenceKey: "image/openai/gpt-image-1-mini/edit" -apiReferenceJson: "{\"title\":\"GPT Image 1 Mini Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gpt Image 1 Mini Edit is OpenAI's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-image-1-mini/edit.\",\"default\":\"openai/gpt-image-1-mini/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt for image generation\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images to use as a reference for the generation.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format for the images\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"background\",\"type\":\"string\",\"required\":false,\"description\":\"Background for the generated image\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, transparent, opaque\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Quality for the generated image\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, low, medium, high\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-image-1-mini/edit\\\",\\n \\\"prompt\\\": \\\"Dress the model in the clothes and hat. Add a cat to the scene and change the background to a Victorian era building.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/gpt-image-1-mini/edit\\\",\\n \\\"prompt\\\": \\\"Dress the model in the clothes and hat. Add a cat to the scene and change the background to a Victorian era building.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/gpt-image-1-mini/edit\\\",\\n \\\"prompt\\\": \\\"Dress the model in the clothes and hat. Add a cat to the scene and change the background to a Victorian era building.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/gpt-image-1-mini/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT Image 1 Mini Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gpt Image 1 Mini Edit is OpenAI's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-image-1-mini/edit.\",\"default\":\"openai/gpt-image-1-mini/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt for image generation\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images to use as a reference for the generation.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format for the images\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"background\",\"type\":\"string\",\"required\":false,\"description\":\"Background for the generated image\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, transparent, opaque\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Quality for the generated image\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, low, medium, high\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio: 1:1 (1024x1024), 3:2 (1536x1024) or 2:3 (1024x1536).\",\"default\":\"1:1\",\"constraints\":\"Allowed values: 1:1, 3:2, 2:3\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-image-1-mini/edit\\\",\\n \\\"prompt\\\": \\\"Dress the model in the clothes and hat. Add a cat to the scene and change the background to a Victorian era building.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/gpt-image-1-mini/edit\\\",\\n \\\"prompt\\\": \\\"Dress the model in the clothes and hat. Add a cat to the scene and change the background to a Victorian era building.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/gpt-image-1-mini/edit\\\",\\n \\\"prompt\\\": \\\"Dress the model in the clothes and hat. Add a cat to the scene and change the background to a Victorian era building.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/gpt-image-1-mini/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "GPT Image 1 Mini Edit" modelId: "openai/gpt-image-1-mini/edit" diff --git a/model-api-reference/image-generation/openai/gpt-image-1.5.md b/model-api-reference/image-generation/openai/gpt-image-1.5.md index 324345ae..be12a7d4 100644 --- a/model-api-reference/image-generation/openai/gpt-image-1.5.md +++ b/model-api-reference/image-generation/openai/gpt-image-1.5.md @@ -1,12 +1,12 @@ --- -title: "GPT Image 1.5 API Reference" -description: "GPT Image 1.5 API reference for SandBase. Use model openai/gpt-image-1.5 with /v1/run; see request and response examples." +title: "GPT Image 1.5 Text to Image API Reference" +description: "GPT Image 1.5 Text to Image API reference for SandBase. Use model openai/gpt-image-1.5 with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/openai/gpt-image-1.5" -apiReferenceJson: "{\"title\":\"GPT Image 1.5\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gpt Image 1.5 is OpenAI's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-image-1.5.\",\"default\":\"openai/gpt-image-1.5\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt for image generation\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format for the images\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"background\",\"type\":\"string\",\"required\":false,\"description\":\"Background for the generated image\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, transparent, opaque\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Quality for the generated image\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-image-1.5\\\",\\n \\\"prompt\\\": \\\"create a realistic image taken with iphone at these coordinates 41°43′32″N 49°56′49″W 15 April 1912\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/gpt-image-1.5\\\",\\n \\\"prompt\\\": \\\"create a realistic image taken with iphone at these coordinates 41°43′32″N 49°56′49″W 15 April 1912\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/gpt-image-1.5\\\",\\n \\\"prompt\\\": \\\"create a realistic image taken with iphone at these coordinates 41°43′32″N 49°56′49″W 15 April 1912\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/gpt-image-1.5\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT Image 1.5 Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gpt Image 1.5 is OpenAI's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-image-1.5.\",\"default\":\"openai/gpt-image-1.5\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt for image generation\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio: 1:1 (1024x1024), 3:2 (1536x1024) or 2:3 (1024x1536).\",\"default\":\"1:1\",\"constraints\":\"Allowed values: 1:1, 3:2, 2:3\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format for the images\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"background\",\"type\":\"string\",\"required\":false,\"description\":\"Background for the generated image\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, transparent, opaque\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Quality for the generated image\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-image-1.5\\\",\\n \\\"prompt\\\": \\\"create a realistic image taken with iphone at these coordinates 41°43′32″N 49°56′49″W 15 April 1912\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/gpt-image-1.5\\\",\\n \\\"prompt\\\": \\\"create a realistic image taken with iphone at these coordinates 41°43′32″N 49°56′49″W 15 April 1912\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/gpt-image-1.5\\\",\\n \\\"prompt\\\": \\\"create a realistic image taken with iphone at these coordinates 41°43′32″N 49°56′49″W 15 April 1912\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/gpt-image-1.5\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "GPT Image 1.5" + modelName: "GPT Image 1.5 Text to Image" modelId: "openai/gpt-image-1.5" vendor: "OpenAI" vendorSlug: "openai" diff --git a/model-api-reference/image-generation/openai/gpt-image-1.5/edit.md b/model-api-reference/image-generation/openai/gpt-image-1.5/edit.md index e03ae14f..f71da505 100644 --- a/model-api-reference/image-generation/openai/gpt-image-1.5/edit.md +++ b/model-api-reference/image-generation/openai/gpt-image-1.5/edit.md @@ -1,12 +1,12 @@ --- -title: "GPT-Image 1.5 API Reference" -description: "GPT-Image 1.5 API reference for SandBase. Use model openai/gpt-image-1.5/edit with /v1/run; see request and response examples." +title: "GPT Image 1.5 Edit API Reference" +description: "GPT Image 1.5 Edit API reference for SandBase. Use model openai/gpt-image-1.5/edit with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/openai/gpt-image-1.5/edit" -apiReferenceJson: "{\"title\":\"GPT-Image 1.5\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gpt Image 1.5 Edit by OpenAI - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-image-1.5/edit.\",\"default\":\"openai/gpt-image-1.5/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt for image generation\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images to use as a reference for the generation.\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the mask image to use for the generation. This indicates what part of the image to edit.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 1:1, 2:3, 3:2\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format for the images\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"input_fidelity\",\"type\":\"string\",\"required\":false,\"description\":\"Input fidelity for the generated image\",\"default\":\"high\",\"constraints\":\"Allowed values: low, high\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Quality for the generated image\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high\"},{\"name\":\"background\",\"type\":\"string\",\"required\":false,\"description\":\"Background for the generated image\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, transparent, opaque\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-image-1.5/edit\\\",\\n \\\"prompt\\\": \\\"Same workers, same beam, same lunch boxes - but they're all on their phones now. One is taking a selfie. One is on a call looking annoyed. Same danger, new priorities. A hard hat has AirPods.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/gpt-image-1.5/edit\\\",\\n \\\"prompt\\\": \\\"Same workers, same beam, same lunch boxes - but they're all on their phones now. One is taking a selfie. One is on a call looking annoyed. Same danger, new priorities. A hard hat has AirPods.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/gpt-image-1.5/edit\\\",\\n \\\"prompt\\\": \\\"Same workers, same beam, same lunch boxes - but they're all on their phones now. One is taking a selfie. One is on a call looking annoyed. Same danger, new priorities. A hard hat has AirPods.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/gpt-image-1.5/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT Image 1.5 Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gpt Image 1.5 Edit by OpenAI - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-image-1.5/edit.\",\"default\":\"openai/gpt-image-1.5/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt for image generation\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images to use as a reference for the generation.\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the mask image to use for the generation. This indicates what part of the image to edit.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 1:1, 2:3, 3:2\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format for the images\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"input_fidelity\",\"type\":\"string\",\"required\":false,\"description\":\"Input fidelity for the generated image\",\"default\":\"high\",\"constraints\":\"Allowed values: low, high\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Quality for the generated image\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high\"},{\"name\":\"background\",\"type\":\"string\",\"required\":false,\"description\":\"Background for the generated image\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, transparent, opaque\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-image-1.5/edit\\\",\\n \\\"prompt\\\": \\\"Same workers, same beam, same lunch boxes - but they're all on their phones now. One is taking a selfie. One is on a call looking annoyed. Same danger, new priorities. A hard hat has AirPods.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/gpt-image-1.5/edit\\\",\\n \\\"prompt\\\": \\\"Same workers, same beam, same lunch boxes - but they're all on their phones now. One is taking a selfie. One is on a call looking annoyed. Same danger, new priorities. A hard hat has AirPods.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/gpt-image-1.5/edit\\\",\\n \\\"prompt\\\": \\\"Same workers, same beam, same lunch boxes - but they're all on their phones now. One is taking a selfie. One is on a call looking annoyed. Same danger, new priorities. A hard hat has AirPods.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/gpt-image-1.5/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "GPT-Image 1.5" + modelName: "GPT Image 1.5 Edit" modelId: "openai/gpt-image-1.5/edit" vendor: "OpenAI" vendorSlug: "openai" diff --git a/model-api-reference/image-generation/openai/gpt-image-1.md b/model-api-reference/image-generation/openai/gpt-image-1.md deleted file mode 100644 index 30514f4b..00000000 --- a/model-api-reference/image-generation/openai/gpt-image-1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT Image 1 API Reference" -description: "GPT Image 1 API reference for SandBase. Use model openai/gpt-image-1 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/openai/gpt-image-1" -apiReferenceJson: "{\"title\":\"GPT Image 1\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gpt Image 1 is OpenAI's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-image-1.\",\"default\":\"openai/gpt-image-1\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt for image generation\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format for the images\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"background\",\"type\":\"string\",\"required\":false,\"description\":\"Background for the generated image\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, transparent, opaque\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Quality for the generated image\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, low, medium, high\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-image-1\\\",\\n \\\"prompt\\\": \\\"A serene cyberpunk cityscape at twilight, with neon signs glowing in vibrant blues and purples, reflecting on rain-slick streets. Sleek futuristic buildings tower above, connected by glowing skybridges. A lone figure in a hooded jacket stands under a streetlamp, backlit by soft mist. The atmosphere is cinematic, moody\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/gpt-image-1\\\",\\n \\\"prompt\\\": \\\"A serene cyberpunk cityscape at twilight, with neon signs glowing in vibrant blues and purples, reflecting on rain-slick streets. Sleek futuristic buildings tower above, connected by glowing skybridges. A lone figure in a hooded jacket stands under a streetlamp, backlit by soft mist. The atmosphere is cinematic, moody\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/gpt-image-1\\\",\\n \\\"prompt\\\": \\\"A serene cyberpunk cityscape at twilight, with neon signs glowing in vibrant blues and purples, reflecting on rain-slick streets. Sleek futuristic buildings tower above, connected by glowing skybridges. A lone figure in a hooded jacket stands under a streetlamp, backlit by soft mist. The atmosphere is cinematic, moody\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/gpt-image-1\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "GPT Image 1" - modelId: "openai/gpt-image-1" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-image-1" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-04-23T17:29:52.367Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/openai/gpt-image-1/edit.md b/model-api-reference/image-generation/openai/gpt-image-1/edit.md deleted file mode 100644 index fd82b22f..00000000 --- a/model-api-reference/image-generation/openai/gpt-image-1/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT Image 1 Edit API Reference" -description: "GPT Image 1 Edit API reference for SandBase. Use model openai/gpt-image-1/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/openai/gpt-image-1/edit" -apiReferenceJson: "{\"title\":\"GPT Image 1 Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gpt Image 1 Edit by OpenAI - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-image-1/edit.\",\"default\":\"openai/gpt-image-1/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt for image generation\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images to use as a reference for the generation.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format for the images\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Quality for the generated image\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, low, medium, high\"},{\"name\":\"background\",\"type\":\"string\",\"required\":false,\"description\":\"Background for the generated image\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, transparent, opaque\"},{\"name\":\"input_fidelity\",\"type\":\"string\",\"required\":false,\"description\":\"Input fidelity for the generated image\",\"default\":\"high\",\"constraints\":\"Allowed values: low, high\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-image-1/edit\\\",\\n \\\"prompt\\\": \\\"Make this pixel-art style.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/gpt-image-1/edit\\\",\\n \\\"prompt\\\": \\\"Make this pixel-art style.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/gpt-image-1/edit\\\",\\n \\\"prompt\\\": \\\"Make this pixel-art style.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/gpt-image-1/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "GPT Image 1 Edit" - modelId: "openai/gpt-image-1/edit" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-image-1/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-04-23T17:29:21.329Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/openai/gpt-image-2-official.md b/model-api-reference/image-generation/openai/gpt-image-2-official.md deleted file mode 100644 index 4092f7f7..00000000 --- a/model-api-reference/image-generation/openai/gpt-image-2-official.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT Image 2 Official API Reference" -description: "GPT Image 2 Official API reference for SandBase. Use model openai/gpt-image-2-official with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/openai/gpt-image-2-official" -apiReferenceJson: "{\"title\":\"GPT Image 2 Official API\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"GPT Image 2 through the OpenAI Images API contract.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-image-2-official.\",\"default\":\"openai/gpt-image-2-official\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image, commercial, protocol-ingress-only\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-image-2-official\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/gpt-image-2-official\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/gpt-image-2-official\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/gpt-image-2-official\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "GPT Image 2 Official API" - modelId: "openai/gpt-image-2-official" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-image-2-official" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-08-20T00:00:00Z" - capabilities: ["text-to-image","commercial","protocol-ingress-only"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/openai/gpt-image-2-official/edit.md b/model-api-reference/image-generation/openai/gpt-image-2-official/edit.md deleted file mode 100644 index f1160612..00000000 --- a/model-api-reference/image-generation/openai/gpt-image-2-official/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT Image 2 Official Edit API Reference" -description: "GPT Image 2 Official Edit API reference for SandBase. Use model openai/gpt-image-2-official/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/openai/gpt-image-2-official/edit" -apiReferenceJson: "{\"title\":\"GPT Image 2 Official Edit API\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"GPT Image 2 editing through the OpenAI Images API contract.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-image-2-official/edit.\",\"default\":\"openai/gpt-image-2-official/edit\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image, commercial, protocol-ingress-only\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-image-2-official/edit\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/gpt-image-2-official/edit\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/gpt-image-2-official/edit\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/gpt-image-2-official/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "GPT Image 2 Official Edit API" - modelId: "openai/gpt-image-2-official/edit" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-image-2-official/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-08-20T00:00:00Z" - capabilities: ["image-to-image","commercial","protocol-ingress-only"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/openai/gpt-image-2.5-flare.md b/model-api-reference/image-generation/openai/gpt-image-2.5-flare.md index 90d13bc0..2e4706cf 100644 --- a/model-api-reference/image-generation/openai/gpt-image-2.5-flare.md +++ b/model-api-reference/image-generation/openai/gpt-image-2.5-flare.md @@ -1,12 +1,12 @@ --- -title: "GPT Image 2.5 Flare API Reference" -description: "GPT Image 2.5 Flare API reference for SandBase. Use model openai/gpt-image-2.5-flare with /v1/run; see request and response examples." +title: "GPT Image 2.5 Flare Text to Image API Reference" +description: "GPT Image 2.5 Flare Text to Image API reference for SandBase. Use model openai/gpt-image-2.5-flare with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/openai/gpt-image-2.5-flare" -apiReferenceJson: "{\"title\":\"GPT Image 2.5 Flare\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"GPT Image 2.5 Flare is optimized for fast, high-quality image generation for everyday creative workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-image-2.5-flare.\",\"default\":\"openai/gpt-image-2.5-flare\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Generate an image of gray tabby cat hugging an otter with an orange scarf\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Quality for the generated image\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated image. Leave unset to preserve the provider's standard dimensions.\",\"constraints\":\"Allowed values: 1k, 2k, 4k\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"1:1\",\"constraints\":\"Allowed values: 1:1, 1:2, 2:1, 1:3, 3:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 9:21, 21:9\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png, webp\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-image-2.5-flare\\\",\\n \\\"prompt\\\": \\\"Generate an image of gray tabby cat hugging an otter with an orange scarf\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/gpt-image-2.5-flare\\\",\\n \\\"prompt\\\": \\\"Generate an image of gray tabby cat hugging an otter with an orange scarf\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/gpt-image-2.5-flare\\\",\\n \\\"prompt\\\": \\\"Generate an image of gray tabby cat hugging an otter with an orange scarf\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/gpt-image-2.5-flare\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT Image 2.5 Flare Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"GPT Image 2.5 Flare is optimized for fast, high-quality image generation for everyday creative workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-image-2.5-flare.\",\"default\":\"openai/gpt-image-2.5-flare\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Generate an image of gray tabby cat hugging an otter with an orange scarf\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Rendering quality. `xhigh` and `max` add detail at higher latency and cost.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, xhigh, max\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated image. Leave unset to preserve the provider's standard dimensions.\",\"constraints\":\"Allowed values: 1k, 2k, 4k\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"1:1\",\"constraints\":\"Allowed values: 1:1, 1:2, 2:1, 1:3, 3:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 9:21, 21:9\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png, webp\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-image-2.5-flare\\\",\\n \\\"prompt\\\": \\\"Generate an image of gray tabby cat hugging an otter with an orange scarf\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/gpt-image-2.5-flare\\\",\\n \\\"prompt\\\": \\\"Generate an image of gray tabby cat hugging an otter with an orange scarf\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/gpt-image-2.5-flare\\\",\\n \\\"prompt\\\": \\\"Generate an image of gray tabby cat hugging an otter with an orange scarf\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/gpt-image-2.5-flare\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "GPT Image 2.5 Flare" + modelName: "GPT Image 2.5 Flare Text to Image" modelId: "openai/gpt-image-2.5-flare" vendor: "OpenAI" vendorSlug: "openai" diff --git a/model-api-reference/image-generation/openai/gpt-image-2.5-flare/edit.md b/model-api-reference/image-generation/openai/gpt-image-2.5-flare/edit.md index 3a62708c..02eabac3 100644 --- a/model-api-reference/image-generation/openai/gpt-image-2.5-flare/edit.md +++ b/model-api-reference/image-generation/openai/gpt-image-2.5-flare/edit.md @@ -4,7 +4,7 @@ description: "GPT Image 2.5 Flare Edit API reference for SandBase. Use model ope aside: false outline: false apiReferenceKey: "image/openai/gpt-image-2.5-flare/edit" -apiReferenceJson: "{\"title\":\"GPT Image 2.5 Flare Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"GPT Image 2.5 Flare Edit is optimized for fast, high-quality image editing and multi-image composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-image-2.5-flare/edit.\",\"default\":\"openai/gpt-image-2.5-flare/edit\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"The URLs of the images to use for image-to-image generation or image editing.\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Generate a photorealistic image of a gift basket on a white background labeled 'Relax & Unwind' with a ribbon and handwriting-like font, containing all the items in the reference pictures.\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Quality for the generated image\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated image. Leave unset to preserve the provider's standard dimensions.\",\"constraints\":\"Allowed values: 1k, 2k, 4k\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 1:1, 1:2, 2:1, 1:3, 3:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 9:21, 21:9\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png, webp\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-image-2.5-flare/edit\\\",\\n \\\"images\\\": [\\n \\\"https://cdn.openai.com/API/docs/images/body-lotion.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/soap.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/incense-kit.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/bath-bomb.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate a photorealistic image of a gift basket on a white background labeled 'Relax & Unwind' with a ribbon and handwriting-like font, containing all the items in the reference pictures.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/gpt-image-2.5-flare/edit\\\",\\n \\\"images\\\": [\\n \\\"https://cdn.openai.com/API/docs/images/body-lotion.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/soap.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/incense-kit.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/bath-bomb.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate a photorealistic image of a gift basket on a white background labeled 'Relax & Unwind' with a ribbon and handwriting-like font, containing all the items in the reference pictures.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/gpt-image-2.5-flare/edit\\\",\\n \\\"images\\\": [\\n \\\"https://cdn.openai.com/API/docs/images/body-lotion.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/soap.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/incense-kit.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/bath-bomb.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate a photorealistic image of a gift basket on a white background labeled 'Relax & Unwind' with a ribbon and handwriting-like font, containing all the items in the reference pictures.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/gpt-image-2.5-flare/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT Image 2.5 Flare Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"GPT Image 2.5 Flare Edit is optimized for fast, high-quality image editing and multi-image composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-image-2.5-flare/edit.\",\"default\":\"openai/gpt-image-2.5-flare/edit\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"The URLs of the images to use for image-to-image generation or image editing.\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Generate a photorealistic image of a gift basket on a white background labeled 'Relax & Unwind' with a ribbon and handwriting-like font, containing all the items in the reference pictures.\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Rendering quality. `xhigh` and `max` add detail at higher latency and cost.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, xhigh, max\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated image. Leave unset to preserve the provider's standard dimensions.\",\"constraints\":\"Allowed values: 1k, 2k, 4k\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 1:1, 1:2, 2:1, 1:3, 3:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 9:21, 21:9\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png, webp\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-image-2.5-flare/edit\\\",\\n \\\"images\\\": [\\n \\\"https://cdn.openai.com/API/docs/images/body-lotion.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/soap.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/incense-kit.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/bath-bomb.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate a photorealistic image of a gift basket on a white background labeled 'Relax & Unwind' with a ribbon and handwriting-like font, containing all the items in the reference pictures.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/gpt-image-2.5-flare/edit\\\",\\n \\\"images\\\": [\\n \\\"https://cdn.openai.com/API/docs/images/body-lotion.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/soap.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/incense-kit.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/bath-bomb.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate a photorealistic image of a gift basket on a white background labeled 'Relax & Unwind' with a ribbon and handwriting-like font, containing all the items in the reference pictures.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/gpt-image-2.5-flare/edit\\\",\\n \\\"images\\\": [\\n \\\"https://cdn.openai.com/API/docs/images/body-lotion.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/soap.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/incense-kit.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/bath-bomb.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate a photorealistic image of a gift basket on a white background labeled 'Relax & Unwind' with a ribbon and handwriting-like font, containing all the items in the reference pictures.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/gpt-image-2.5-flare/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "GPT Image 2.5 Flare Edit" modelId: "openai/gpt-image-2.5-flare/edit" diff --git a/model-api-reference/image-generation/openai/gpt-image-2.5-sunburst.md b/model-api-reference/image-generation/openai/gpt-image-2.5-sunburst.md index 475c33cb..30d04a98 100644 --- a/model-api-reference/image-generation/openai/gpt-image-2.5-sunburst.md +++ b/model-api-reference/image-generation/openai/gpt-image-2.5-sunburst.md @@ -1,12 +1,12 @@ --- -title: "GPT Image 2.5 Sunburst API Reference" -description: "GPT Image 2.5 Sunburst API reference for SandBase. Use model openai/gpt-image-2.5-sunburst with /v1/run; see request and response examples." +title: "GPT Image 2.5 Sunburst Text to Image API Reference" +description: "GPT Image 2.5 Sunburst Text to Image API reference for SandBase. Use model openai/gpt-image-2.5-sunburst with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/openai/gpt-image-2.5-sunburst" -apiReferenceJson: "{\"title\":\"GPT Image 2.5 Sunburst\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"GPT Image 2.5 Sunburst prioritizes visual fidelity and precision for complex image generation workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-image-2.5-sunburst.\",\"default\":\"openai/gpt-image-2.5-sunburst\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Generate an image of gray tabby cat hugging an otter with an orange scarf\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Quality for the generated image\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated image. Leave unset to preserve the provider's standard dimensions.\",\"constraints\":\"Allowed values: 1k, 2k, 4k\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"1:1\",\"constraints\":\"Allowed values: 1:1, 1:2, 2:1, 1:3, 3:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 9:21, 21:9\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png, webp\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-image-2.5-sunburst\\\",\\n \\\"prompt\\\": \\\"Generate an image of gray tabby cat hugging an otter with an orange scarf\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/gpt-image-2.5-sunburst\\\",\\n \\\"prompt\\\": \\\"Generate an image of gray tabby cat hugging an otter with an orange scarf\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/gpt-image-2.5-sunburst\\\",\\n \\\"prompt\\\": \\\"Generate an image of gray tabby cat hugging an otter with an orange scarf\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/gpt-image-2.5-sunburst\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT Image 2.5 Sunburst Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"GPT Image 2.5 Sunburst prioritizes visual fidelity and precision for complex image generation workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-image-2.5-sunburst.\",\"default\":\"openai/gpt-image-2.5-sunburst\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Generate an image of gray tabby cat hugging an otter with an orange scarf\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Rendering quality. `xhigh` and `max` add detail at higher latency and cost.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, xhigh, max\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated image. Leave unset to preserve the provider's standard dimensions.\",\"constraints\":\"Allowed values: 1k, 2k, 4k\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"1:1\",\"constraints\":\"Allowed values: 1:1, 1:2, 2:1, 1:3, 3:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 9:21, 21:9\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png, webp\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-image-2.5-sunburst\\\",\\n \\\"prompt\\\": \\\"Generate an image of gray tabby cat hugging an otter with an orange scarf\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/gpt-image-2.5-sunburst\\\",\\n \\\"prompt\\\": \\\"Generate an image of gray tabby cat hugging an otter with an orange scarf\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/gpt-image-2.5-sunburst\\\",\\n \\\"prompt\\\": \\\"Generate an image of gray tabby cat hugging an otter with an orange scarf\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/gpt-image-2.5-sunburst\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "GPT Image 2.5 Sunburst" + modelName: "GPT Image 2.5 Sunburst Text to Image" modelId: "openai/gpt-image-2.5-sunburst" vendor: "OpenAI" vendorSlug: "openai" diff --git a/model-api-reference/image-generation/openai/gpt-image-2.5-sunburst/edit.md b/model-api-reference/image-generation/openai/gpt-image-2.5-sunburst/edit.md index e2c982f6..1477e8de 100644 --- a/model-api-reference/image-generation/openai/gpt-image-2.5-sunburst/edit.md +++ b/model-api-reference/image-generation/openai/gpt-image-2.5-sunburst/edit.md @@ -4,7 +4,7 @@ description: "GPT Image 2.5 Sunburst Edit API reference for SandBase. Use model aside: false outline: false apiReferenceKey: "image/openai/gpt-image-2.5-sunburst/edit" -apiReferenceJson: "{\"title\":\"GPT Image 2.5 Sunburst Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"GPT Image 2.5 Sunburst Edit prioritizes precision and visual fidelity for complex image editing workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-image-2.5-sunburst/edit.\",\"default\":\"openai/gpt-image-2.5-sunburst/edit\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"The URLs of the images to use for image-to-image generation or image editing.\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Generate a photorealistic image of a gift basket on a white background labeled 'Relax & Unwind' with a ribbon and handwriting-like font, containing all the items in the reference pictures.\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Quality for the generated image\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated image. Leave unset to preserve the provider's standard dimensions.\",\"constraints\":\"Allowed values: 1k, 2k, 4k\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 1:1, 1:2, 2:1, 1:3, 3:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 9:21, 21:9\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png, webp\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-image-2.5-sunburst/edit\\\",\\n \\\"images\\\": [\\n \\\"https://cdn.openai.com/API/docs/images/body-lotion.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/soap.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/incense-kit.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/bath-bomb.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate a photorealistic image of a gift basket on a white background labeled 'Relax & Unwind' with a ribbon and handwriting-like font, containing all the items in the reference pictures.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/gpt-image-2.5-sunburst/edit\\\",\\n \\\"images\\\": [\\n \\\"https://cdn.openai.com/API/docs/images/body-lotion.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/soap.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/incense-kit.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/bath-bomb.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate a photorealistic image of a gift basket on a white background labeled 'Relax & Unwind' with a ribbon and handwriting-like font, containing all the items in the reference pictures.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/gpt-image-2.5-sunburst/edit\\\",\\n \\\"images\\\": [\\n \\\"https://cdn.openai.com/API/docs/images/body-lotion.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/soap.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/incense-kit.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/bath-bomb.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate a photorealistic image of a gift basket on a white background labeled 'Relax & Unwind' with a ribbon and handwriting-like font, containing all the items in the reference pictures.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/gpt-image-2.5-sunburst/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT Image 2.5 Sunburst Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"GPT Image 2.5 Sunburst Edit prioritizes precision and visual fidelity for complex image editing workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-image-2.5-sunburst/edit.\",\"default\":\"openai/gpt-image-2.5-sunburst/edit\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"The URLs of the images to use for image-to-image generation or image editing.\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Generate a photorealistic image of a gift basket on a white background labeled 'Relax & Unwind' with a ribbon and handwriting-like font, containing all the items in the reference pictures.\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Rendering quality. `xhigh` and `max` add detail at higher latency and cost.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, xhigh, max\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated image. Leave unset to preserve the provider's standard dimensions.\",\"constraints\":\"Allowed values: 1k, 2k, 4k\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 1:1, 1:2, 2:1, 1:3, 3:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 9:21, 21:9\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png, webp\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-image-2.5-sunburst/edit\\\",\\n \\\"images\\\": [\\n \\\"https://cdn.openai.com/API/docs/images/body-lotion.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/soap.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/incense-kit.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/bath-bomb.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate a photorealistic image of a gift basket on a white background labeled 'Relax & Unwind' with a ribbon and handwriting-like font, containing all the items in the reference pictures.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/gpt-image-2.5-sunburst/edit\\\",\\n \\\"images\\\": [\\n \\\"https://cdn.openai.com/API/docs/images/body-lotion.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/soap.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/incense-kit.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/bath-bomb.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate a photorealistic image of a gift basket on a white background labeled 'Relax & Unwind' with a ribbon and handwriting-like font, containing all the items in the reference pictures.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/gpt-image-2.5-sunburst/edit\\\",\\n \\\"images\\\": [\\n \\\"https://cdn.openai.com/API/docs/images/body-lotion.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/soap.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/incense-kit.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/bath-bomb.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate a photorealistic image of a gift basket on a white background labeled 'Relax & Unwind' with a ribbon and handwriting-like font, containing all the items in the reference pictures.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/gpt-image-2.5-sunburst/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "GPT Image 2.5 Sunburst Edit" modelId: "openai/gpt-image-2.5-sunburst/edit" diff --git a/model-api-reference/image-generation/openai/gpt-image-2.md b/model-api-reference/image-generation/openai/gpt-image-2.md index c43618b5..8bb1a8e1 100644 --- a/model-api-reference/image-generation/openai/gpt-image-2.md +++ b/model-api-reference/image-generation/openai/gpt-image-2.md @@ -1,12 +1,12 @@ --- -title: "GPT Image 2 API Reference" -description: "GPT Image 2 API reference for SandBase. Use model openai/gpt-image-2 with /v1/run; see request and response examples." +title: "GPT Image 2 Text to Image API Reference" +description: "GPT Image 2 Text to Image API reference for SandBase. Use model openai/gpt-image-2 with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/openai/gpt-image-2" -apiReferenceJson: "{\"title\":\"GPT Image 2\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"GPT Image 2, OpenAI's available image model, is capable of making fine-grained, detailed edits to images.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-image-2.\",\"default\":\"openai/gpt-image-2\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Generate an image of gray tabby cat hugging an otter with an orange scarf\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Quality for the generated image\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated image. Leave unset to preserve the provider's standard dimensions.\",\"constraints\":\"Allowed values: 1k, 2k, 4k\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"1:1\",\"constraints\":\"Allowed values: 1:1, 1:2, 2:1, 1:3, 3:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 9:21, 21:9\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png, webp\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-image-2\\\",\\n \\\"prompt\\\": \\\"Generate an image of gray tabby cat hugging an otter with an orange scarf\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/gpt-image-2\\\",\\n \\\"prompt\\\": \\\"Generate an image of gray tabby cat hugging an otter with an orange scarf\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/gpt-image-2\\\",\\n \\\"prompt\\\": \\\"Generate an image of gray tabby cat hugging an otter with an orange scarf\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/gpt-image-2\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT Image 2 Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"GPT Image 2, OpenAI's available image model, is capable of making fine-grained, detailed edits to images.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-image-2.\",\"default\":\"openai/gpt-image-2\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Generate an image of gray tabby cat hugging an otter with an orange scarf\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Quality for the generated image\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated image. Leave unset to preserve the provider's standard dimensions.\",\"constraints\":\"Allowed values: 1k, 2k, 4k\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"1:1\",\"constraints\":\"Allowed values: 1:1, 1:2, 2:1, 1:3, 3:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 9:21, 21:9\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png, webp\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-image-2\\\",\\n \\\"prompt\\\": \\\"Generate an image of gray tabby cat hugging an otter with an orange scarf\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/gpt-image-2\\\",\\n \\\"prompt\\\": \\\"Generate an image of gray tabby cat hugging an otter with an orange scarf\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/gpt-image-2\\\",\\n \\\"prompt\\\": \\\"Generate an image of gray tabby cat hugging an otter with an orange scarf\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/gpt-image-2\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "GPT Image 2" + modelName: "GPT Image 2 Text to Image" modelId: "openai/gpt-image-2" vendor: "OpenAI" vendorSlug: "openai" diff --git a/model-api-reference/image-generation/openai/gpt-image-2/edit.md b/model-api-reference/image-generation/openai/gpt-image-2/edit.md index fcea1978..45895737 100644 --- a/model-api-reference/image-generation/openai/gpt-image-2/edit.md +++ b/model-api-reference/image-generation/openai/gpt-image-2/edit.md @@ -1,12 +1,12 @@ --- -title: "GPT Image 2 Editing API Reference" -description: "GPT Image 2 Editing API reference for SandBase. Use model openai/gpt-image-2/edit with /v1/run; see request and response examples." +title: "GPT Image 2 Edit API Reference" +description: "GPT Image 2 Edit API reference for SandBase. Use model openai/gpt-image-2/edit with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/openai/gpt-image-2/edit" -apiReferenceJson: "{\"title\":\"GPT Image 2 Editing\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"GPT Image 2 Editing supports image editing and multi-image synthesis with high-quality results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-image-2/edit.\",\"default\":\"openai/gpt-image-2/edit\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"The URLs of the images to use for image-to-image generation or image editing.\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Generate a photorealistic image of a gift basket on a white background labeled 'Relax & Unwind' with a ribbon and handwriting-like font, containing all the items in the reference pictures.\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Quality for the generated image\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated image. Leave unset to preserve the provider's standard dimensions.\",\"constraints\":\"Allowed values: 1k, 2k, 4k\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 1:1, 1:2, 2:1, 1:3, 3:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 9:21, 21:9\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png, webp\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-image-2/edit\\\",\\n \\\"images\\\": [\\n \\\"https://cdn.openai.com/API/docs/images/body-lotion.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/soap.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/incense-kit.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/bath-bomb.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate a photorealistic image of a gift basket on a white background labeled 'Relax & Unwind' with a ribbon and handwriting-like font, containing all the items in the reference pictures.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/gpt-image-2/edit\\\",\\n \\\"images\\\": [\\n \\\"https://cdn.openai.com/API/docs/images/body-lotion.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/soap.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/incense-kit.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/bath-bomb.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate a photorealistic image of a gift basket on a white background labeled 'Relax & Unwind' with a ribbon and handwriting-like font, containing all the items in the reference pictures.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/gpt-image-2/edit\\\",\\n \\\"images\\\": [\\n \\\"https://cdn.openai.com/API/docs/images/body-lotion.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/soap.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/incense-kit.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/bath-bomb.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate a photorealistic image of a gift basket on a white background labeled 'Relax & Unwind' with a ribbon and handwriting-like font, containing all the items in the reference pictures.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/gpt-image-2/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT Image 2 Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"GPT Image 2 Editing supports image editing and multi-image synthesis with high-quality results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-image-2/edit.\",\"default\":\"openai/gpt-image-2/edit\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"The URLs of the images to use for image-to-image generation or image editing.\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\",\"default\":\"Generate a photorealistic image of a gift basket on a white background labeled 'Relax & Unwind' with a ribbon and handwriting-like font, containing all the items in the reference pictures.\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Quality for the generated image\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated image. Leave unset to preserve the provider's standard dimensions.\",\"constraints\":\"Allowed values: 1k, 2k, 4k\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 1:1, 1:2, 2:1, 1:3, 3:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 9:21, 21:9\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png, webp\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image, commercial\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-image-2/edit\\\",\\n \\\"images\\\": [\\n \\\"https://cdn.openai.com/API/docs/images/body-lotion.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/soap.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/incense-kit.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/bath-bomb.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate a photorealistic image of a gift basket on a white background labeled 'Relax & Unwind' with a ribbon and handwriting-like font, containing all the items in the reference pictures.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/gpt-image-2/edit\\\",\\n \\\"images\\\": [\\n \\\"https://cdn.openai.com/API/docs/images/body-lotion.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/soap.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/incense-kit.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/bath-bomb.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate a photorealistic image of a gift basket on a white background labeled 'Relax & Unwind' with a ribbon and handwriting-like font, containing all the items in the reference pictures.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/gpt-image-2/edit\\\",\\n \\\"images\\\": [\\n \\\"https://cdn.openai.com/API/docs/images/body-lotion.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/soap.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/incense-kit.png\\\",\\n \\\"https://cdn.openai.com/API/docs/images/bath-bomb.png\\\"\\n ],\\n \\\"prompt\\\": \\\"Generate a photorealistic image of a gift basket on a white background labeled 'Relax & Unwind' with a ribbon and handwriting-like font, containing all the items in the reference pictures.\\\",\\n \\\"aspect_ratio\\\": \\\"1:1\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/gpt-image-2/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "GPT Image 2 Editing" + modelName: "GPT Image 2 Edit" modelId: "openai/gpt-image-2/edit" vendor: "OpenAI" vendorSlug: "openai" diff --git a/model-api-reference/image-generation/patina/material.md b/model-api-reference/image-generation/patina/material.md deleted file mode 100644 index a76a6c95..00000000 --- a/model-api-reference/image-generation/patina/material.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PATINA API Reference — Patina Material API" -description: "PATINA API reference for SandBase. Use model patina/material with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/patina/material" -apiReferenceJson: "{\"title\":\"PATINA\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Material by patina - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to patina/material.\",\"default\":\"patina/material\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the material/texture to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of an input image for image-to-image or inpainting. When provided without mask_url, performs image-to-image; with mask_url, performs inpainting.\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"URL of a mask image for inpainting. White regions are regenerated, black regions are preserved. Requires image_url.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising steps for texture generation.\",\"default\":\"8\",\"constraints\":\"Range: 1 to 8\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"How much to transform the input image. Only used when image_url is provided.\",\"default\":\"0.6\",\"constraints\":\"Maximum: 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output image format for textures and PBR maps.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"tile_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Tile size in latent space (64 = 512px, 128 = 1024px).\",\"default\":\"128\",\"constraints\":\"Range: 32 to 256\"},{\"name\":\"tiling_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Tiling direction: 'both' (omnidirectional), 'horizontal', or 'vertical'.\",\"default\":\"both\",\"constraints\":\"Allowed values: both, horizontal, vertical\"},{\"name\":\"upscale_factor\",\"type\":\"integer\",\"required\":false,\"description\":\"Upscale factor for predicted PBR maps via SeedVR seamless upscaling. 0 = no upscaling, 2 = 2× resolution, 4 = 4× resolution. The base texture image is not upscaled.\",\"default\":\"0\",\"constraints\":\"Allowed values: 0, 2, 4\"},{\"name\":\"tile_stride\",\"type\":\"integer\",\"required\":false,\"description\":\"Tile stride in latent space.\",\"default\":\"64\",\"constraints\":\"Range: 16 to 128\"},{\"name\":\"maps\",\"type\":\"array\",\"required\":false,\"description\":\"Which PBR maps to predict. Deselect all to skip PBR estimation entirely. Defaults to all five.\",\"default\":\"basecolor,normal,roughness,metalness,height\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible generation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"patina/material\\\",\\n \\\"prompt\\\": \\\"mossy stone wall\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"patina/material\\\",\\n \\\"prompt\\\": \\\"mossy stone wall\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"patina/material\\\",\\n \\\"prompt\\\": \\\"mossy stone wall\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"patina/material\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PATINA" - modelId: "patina/material" - vendor: "patina" - vendorSlug: "patina" - modelSlug: "material" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-10T16:42:49.705Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/patina/material/extract.md b/model-api-reference/image-generation/patina/material/extract.md deleted file mode 100644 index 1be839c2..00000000 --- a/model-api-reference/image-generation/patina/material/extract.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PATINA API Reference — Patina Material / Extract API" -description: "PATINA API reference for SandBase. Use model patina/material/extract with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/patina/material/extract" -apiReferenceJson: "{\"title\":\"PATINA\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Material Extract by patina - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to patina/material/extract.\",\"default\":\"patina/material/extract\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Describe which texture to extract from the image.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to extract a texture from.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising steps for texture generation.\",\"default\":\"8\",\"constraints\":\"Range: 1 to 8\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"How much to transform the input image. Only used when image_url is provided.\",\"default\":\"0.6\",\"constraints\":\"Maximum: 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output image format for textures and PBR maps.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"maps\",\"type\":\"array\",\"required\":false,\"description\":\"Which PBR maps to predict. Deselect all to skip PBR estimation entirely. Defaults to all five.\",\"default\":\"basecolor,normal,roughness,metalness,height\"},{\"name\":\"tile_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Tile size in latent space (64 = 512px, 128 = 1024px).\",\"default\":\"128\",\"constraints\":\"Range: 32 to 256\"},{\"name\":\"upscale_factor\",\"type\":\"integer\",\"required\":false,\"description\":\"Upscale factor for predicted PBR maps via SeedVR seamless upscaling. 0 = no upscaling, 2 = 2× resolution, 4 = 4× resolution. The base texture image is not upscaled.\",\"default\":\"0\",\"constraints\":\"Allowed values: 0, 2, 4\"},{\"name\":\"tiling_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Tiling direction: 'both' (omnidirectional), 'horizontal', or 'vertical'.\",\"default\":\"both\",\"constraints\":\"Allowed values: both, horizontal, vertical\"},{\"name\":\"tile_stride\",\"type\":\"integer\",\"required\":false,\"description\":\"Tile stride in latent space.\",\"default\":\"64\",\"constraints\":\"Range: 16 to 128\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible generation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"patina/material/extract\\\",\\n \\\"prompt\\\": \\\"the wall\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/patina/material/extract/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"patina/material/extract\\\",\\n \\\"prompt\\\": \\\"the wall\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/patina/material/extract/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"patina/material/extract\\\",\\n \\\"prompt\\\": \\\"the wall\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/patina/material/extract/input_image_0.png\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"patina/material/extract\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PATINA" - modelId: "patina/material/extract" - vendor: "patina" - vendorSlug: "patina" - modelSlug: "material/extract" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-10T16:43:03.33Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/pixal3d/pixal3d.md b/model-api-reference/image-generation/pixal3d/pixal3d.md deleted file mode 100644 index d91b2a6f..00000000 --- a/model-api-reference/image-generation/pixal3d/pixal3d.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Pixal3d API Reference" -description: "Pixal3d API reference for SandBase. Use model pixal3d/pixal3d with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/pixal3d/pixal3d" -apiReferenceJson: "{\"title\":\"Pixal3d\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Pixal3d is pixal3d's image-to-3D AI model. Transform photographs into production-ready 3D meshes with accurate geometry and texture mapping.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixal3d/pixal3d.\",\"default\":\"pixal3d/pixal3d\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image to convert to 3D\"},{\"name\":\"resolution\",\"type\":\"integer\",\"required\":false,\"description\":\"Output resolution; higher is slower but more detailed\",\"default\":\"1024\",\"constraints\":\"Allowed values: 1024, 1536\"},{\"name\":\"mesh_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Scale factor applied to the inferred mesh. Affects the camera distance estimation used by the model.\",\"default\":\"1\",\"constraints\":\"Range: 0.1 to 4\"},{\"name\":\"shape_slat_guidance_strength\",\"type\":\"number\",\"required\":false,\"description\":\"How closely the detailed geometry follows the input image. Higher values add more detail but may introduce noise.\",\"default\":\"7.5\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"remesh\",\"type\":\"boolean\",\"required\":false,\"description\":\"Rebuild the mesh topology for cleaner triangles. Slower but usually produces better results for downstream use.\",\"default\":\"true\"},{\"name\":\"texture_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Resolution of the texture image baked onto the mesh. Higher values capture finer surface details but produce larger files.\",\"default\":\"2048\",\"constraints\":\"Allowed values: 1024, 2048, 4096\"},{\"name\":\"ss_sampling_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising steps for the initial structure. More steps = slower but potentially higher quality.\",\"default\":\"12\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"shape_slat_rescale_t\",\"type\":\"number\",\"required\":false,\"description\":\"Controls noise schedule sharpness for shape refinement. Higher values produce sharper geometric details.\",\"default\":\"3\",\"constraints\":\"Range: 1 to 6\"},{\"name\":\"tex_slat_sampling_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising steps for texture generation. More steps = slower but potentially cleaner textures.\",\"default\":\"12\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"ss_guidance_strength\",\"type\":\"number\",\"required\":false,\"description\":\"How closely the initial 3D structure follows the input image. Higher values produce more faithful but potentially noisier results.\",\"default\":\"7.5\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"ss_guidance_rescale\",\"type\":\"number\",\"required\":false,\"description\":\"Dampens artifacts from high guidance in stage 1. Lower values allow stronger guidance effects, higher values stabilize the output.\",\"default\":\"0.7\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"max_num_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of HR tokens used by the cascaded shape sampler. Higher values allow finer geometry; lower values reduce memory and time.\",\"default\":\"49152\",\"constraints\":\"Range: 4096 to 131072\"},{\"name\":\"ss_rescale_t\",\"type\":\"number\",\"required\":false,\"description\":\"Controls noise schedule sharpness for structure generation. Higher values produce sharper transitions.\",\"default\":\"5\",\"constraints\":\"Range: 1 to 6\"},{\"name\":\"shape_slat_guidance_rescale\",\"type\":\"number\",\"required\":false,\"description\":\"Dampens artifacts from high guidance in the shape stage. Increase if you see noisy geometry.\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"tex_slat_rescale_t\",\"type\":\"number\",\"required\":false,\"description\":\"Controls noise schedule sharpness for texture generation. Higher values produce sharper texture details.\",\"default\":\"3\",\"constraints\":\"Range: 1 to 6\"},{\"name\":\"tex_slat_guidance_rescale\",\"type\":\"number\",\"required\":false,\"description\":\"Dampens artifacts from high guidance in the texture stage. Increase if textures look noisy or have color banding.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"shape_slat_sampling_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising steps for shape refinement. More steps = slower but potentially smoother geometry.\",\"default\":\"12\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"decimation_target\",\"type\":\"integer\",\"required\":false,\"description\":\"Target number of vertices in the final mesh. Lower values produce smaller files but less detail.\",\"default\":\"200000\",\"constraints\":\"Range: 5000 to 2000000\"},{\"name\":\"tex_slat_guidance_strength\",\"type\":\"number\",\"required\":false,\"description\":\"How closely the texture follows the input image colors. Higher values produce more vivid but potentially oversaturated textures.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixal3d/pixal3d\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixal3d/pixal3d/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixal3d/pixal3d\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixal3d/pixal3d/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixal3d/pixal3d\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixal3d/pixal3d/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixal3d/pixal3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Pixal3d" - modelId: "pixal3d/pixal3d" - vendor: "pixal3d" - vendorSlug: "pixal3d" - modelSlug: "pixal3d" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-05-13T20:35:36.991Z" - capabilities: ["image-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/pixverse/v6/extend.md b/model-api-reference/image-generation/pixverse/v6/extend.md deleted file mode 100644 index decfa5fd..00000000 --- a/model-api-reference/image-generation/pixverse/v6/extend.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "PixVerse V6 Extend reference moved" -description: "The pixverse/v6/extend reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/pixverse/v6/extend -robots: noindex,follow ---- - -# This page has moved - -`pixverse/v6/extend` is a video model. Its API reference now lives at [PixVerse V6 Extend](/model-api-reference/video-generation/pixverse/v6/extend) under Video Generation. diff --git a/model-api-reference/image-generation/recraft/recraft-20b.md b/model-api-reference/image-generation/recraft/recraft-20b.md deleted file mode 100644 index 3da5a859..00000000 --- a/model-api-reference/image-generation/recraft/recraft-20b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Recraft 20b API Reference" -description: "Recraft 20b API reference for SandBase. Use model recraft/recraft-20b with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/recraft/recraft-20b" -apiReferenceJson: "{\"title\":\"Recraft 20b\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Recraft 20b is Recraft's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to recraft/recraft-20b.\",\"default\":\"recraft/recraft-20b\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated images. Vector images cost 2X as much.\",\"default\":\"realistic_image\",\"constraints\":\"Allowed values: any, realistic_image, digital_illustration, vector_illustration, realistic_image/b_and_w, realistic_image/enterprise, realistic_image/hard_flash, realistic_image/hdr, realistic_image/motion_blur, realistic_image/natural_light, realistic_image/studio_portrait, digital_illustration/2d_art_poster, digital_illustration/2d_art_poster_2, digital_illustration/3d, digital_illustration/80s, digital_illustration/engraving_color, digital_illustration/glow, digital_illustration/grain, digital_illustration/hand_drawn, digital_illustration/hand_drawn_outline, digital_illustration/handmade_3d, digital_illustration/infantile_sketch, digital_illustration/kawaii, digital_illustration/pixel_art, digital_illustration/psychedelic, digital_illustration/seamless, digital_illustration/voxel, digital_illustration/watercolor, vector_illustration/cartoon, vector_illustration/doodle_line_art, vector_illustration/engraving, vector_illustration/flat_2, vector_illustration/kawaii, vector_illustration/line_art, vector_illustration/line_circuit, vector_illustration/linocut, vector_illustration/seamless\"},{\"name\":\"colors\",\"type\":\"array\",\"required\":false,\"description\":\"An array of preferable colors\",\"default\":\"\"},{\"name\":\"style_id\",\"type\":\"string\",\"required\":false,\"description\":\"The ID of the custom style reference (optional)\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"recraft/recraft-20b\\\",\\n \\\"prompt\\\": \\\"a red panda in Kyoto\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"recraft/recraft-20b\\\",\\n \\\"prompt\\\": \\\"a red panda in Kyoto\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"recraft/recraft-20b\\\",\\n \\\"prompt\\\": \\\"a red panda in Kyoto\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"recraft/recraft-20b\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Recraft 20b" - modelId: "recraft/recraft-20b" - vendor: "Recraft" - vendorSlug: "recraft" - modelSlug: "recraft-20b" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-12-16T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/recraft/recraft/upscale/creative.md b/model-api-reference/image-generation/recraft/recraft/upscale/creative.md deleted file mode 100644 index a7f789d4..00000000 --- a/model-api-reference/image-generation/recraft/recraft/upscale/creative.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Recraft Creative Upscale API Reference" -description: "Recraft Creative Upscale API reference for SandBase. Use model recraft/recraft/upscale/creative with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/recraft/recraft/upscale/creative" -apiReferenceJson: "{\"title\":\"Recraft Creative Upscale\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Recraft Upscale Creative by Recraft - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to recraft/recraft/upscale/creative.\",\"default\":\"recraft/recraft/upscale/creative\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to be upscaled. Must be in PNG format.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"recraft/recraft/upscale/creative\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/recraft/recraft/upscale/creative/input_image_0.jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"recraft/recraft/upscale/creative\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/recraft/recraft/upscale/creative/input_image_0.jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"recraft/recraft/upscale/creative\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/recraft/recraft/upscale/creative/input_image_0.jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"recraft/recraft/upscale/creative\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Recraft Creative Upscale" - modelId: "recraft/recraft/upscale/creative" - vendor: "Recraft" - vendorSlug: "recraft" - modelSlug: "recraft/upscale/creative" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-07T13:10:35.699Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/recraft/recraft/upscale/crisp.md b/model-api-reference/image-generation/recraft/recraft/upscale/crisp.md deleted file mode 100644 index b6268ed1..00000000 --- a/model-api-reference/image-generation/recraft/recraft/upscale/crisp.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Recraft Crisp Upscale API Reference" -description: "Recraft Crisp Upscale API reference for SandBase. Use model recraft/recraft/upscale/crisp with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/recraft/recraft/upscale/crisp" -apiReferenceJson: "{\"title\":\"Recraft Crisp Upscale\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Recraft Upscale Crisp is Recraft's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to recraft/recraft/upscale/crisp.\",\"default\":\"recraft/recraft/upscale/crisp\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to be upscaled. Must be in PNG format.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"recraft/recraft/upscale/crisp\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/recraft/recraft/upscale/crisp/input_image_0.jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"recraft/recraft/upscale/crisp\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/recraft/recraft/upscale/crisp/input_image_0.jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"recraft/recraft/upscale/crisp\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/recraft/recraft/upscale/crisp/input_image_0.jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"recraft/recraft/upscale/crisp\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Recraft Crisp Upscale" - modelId: "recraft/recraft/upscale/crisp" - vendor: "Recraft" - vendorSlug: "recraft" - modelSlug: "recraft/upscale/crisp" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-07T13:07:59.554Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/recraft/recraft/v3.md b/model-api-reference/image-generation/recraft/recraft/v3.md deleted file mode 100644 index 3d4ff664..00000000 --- a/model-api-reference/image-generation/recraft/recraft/v3.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Recraft V3 API Reference" -description: "Recraft V3 API reference for SandBase. Use model recraft/recraft/v3 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/recraft/recraft/v3" -apiReferenceJson: "{\"title\":\"Recraft V3\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Recraft V3 by Recraft - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to recraft/recraft/v3.\",\"default\":\"recraft/recraft/v3\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated images. Vector images cost 2X as much.\",\"default\":\"realistic_image\",\"constraints\":\"Allowed values: any, realistic_image, digital_illustration, vector_illustration, realistic_image/b_and_w, realistic_image/hard_flash, realistic_image/hdr, realistic_image/natural_light, realistic_image/studio_portrait, realistic_image/enterprise, realistic_image/motion_blur, realistic_image/evening_light, realistic_image/faded_nostalgia, realistic_image/forest_life, realistic_image/mystic_naturalism, realistic_image/natural_tones, realistic_image/organic_calm, realistic_image/real_life_glow, realistic_image/retro_realism, realistic_image/retro_snapshot, realistic_image/urban_drama, realistic_image/village_realism, realistic_image/warm_folk, digital_illustration/pixel_art, digital_illustration/hand_drawn, digital_illustration/grain, digital_illustration/infantile_sketch, digital_illustration/2d_art_poster, digital_illustration/handmade_3d, digital_illustration/hand_drawn_outline, digital_illustration/engraving_color, digital_illustration/2d_art_poster_2, digital_illustration/antiquarian, digital_illustration/bold_fantasy, digital_illustration/child_book, digital_illustration/child_books, digital_illustration/cover, digital_illustration/crosshatch, digital_illustration/digital_engraving, digital_illustration/expressionism, digital_illustration/freehand_details, digital_illustration/grain_20, digital_illustration/graphic_intensity, digital_illustration/hard_comics, digital_illustration/long_shadow, digital_illustration/modern_folk, digital_illustration/multicolor, digital_illustration/neon_calm, digital_illustration/noir, digital_illustration/nostalgic_pastel, digital_illustration/outline_details, digital_illustration/pastel_gradient, digital_illustration/pastel_sketch, digital_illustration/pop_art, digital_illustration/pop_renaissance, digital_illustration/street_art, digital_illustration/tablet_sketch, digital_illustration/urban_glow, digital_illustration/urban_sketching, digital_illustration/vanilla_dreams, digital_illustration/young_adult_book, digital_illustration/young_adult_book_2, vector_illustration/bold_stroke, vector_illustration/chemistry, vector_illustration/colored_stencil, vector_illustration/contour_pop_art, vector_illustration/cosmics, vector_illustration/cutout, vector_illustration/depressive, vector_illustration/editorial, vector_illustration/emotional_flat, vector_illustration/infographical, vector_illustration/marker_outline, vector_illustration/mosaic, vector_illustration/naivector, vector_illustration/roundish_flat, vector_illustration/segmented_colors, vector_illustration/sharp_contrast, vector_illustration/thin, vector_illustration/vector_photo, vector_illustration/vivid_shapes, vector_illustration/engraving, vector_illustration/line_art, vector_illustration/line_circuit, vector_illustration/linocut\"},{\"name\":\"colors\",\"type\":\"array\",\"required\":false,\"description\":\"An array of preferable colors\",\"default\":\"\"},{\"name\":\"style_id\",\"type\":\"string\",\"required\":false,\"description\":\"The ID of the custom style reference (optional)\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"recraft/recraft/v3\\\",\\n \\\"prompt\\\": \\\"a red panda eating a bamboo in front of a poster that says \\\\\\\"recraft V3 now available at fal\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"recraft/recraft/v3\\\",\\n \\\"prompt\\\": \\\"a red panda eating a bamboo in front of a poster that says \\\\\\\"recraft V3 now available at fal\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"recraft/recraft/v3\\\",\\n \\\"prompt\\\": \\\"a red panda eating a bamboo in front of a poster that says \\\\\\\"recraft V3 now available at fal\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"recraft/recraft/v3\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Recraft V3" - modelId: "recraft/recraft/v3" - vendor: "Recraft" - vendorSlug: "recraft" - modelSlug: "recraft/v3" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-07T11:59:27.643Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/recraft/recraft/v3/create-style.md b/model-api-reference/image-generation/recraft/recraft/v3/create-style.md deleted file mode 100644 index a5957e20..00000000 --- a/model-api-reference/image-generation/recraft/recraft/v3/create-style.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Recraft V3 Create Style API Reference" -description: "Recraft V3 Create Style API reference for SandBase. Use model recraft/recraft/v3/create-style with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/recraft/recraft/v3/create-style" -apiReferenceJson: "{\"title\":\"Recraft V3 Create Style\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Recraft V3 Create Style by Recraft - advanced AI model for training. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to recraft/recraft/v3/create-style.\",\"default\":\"recraft/recraft/v3/create-style\"},{\"name\":\"images_data_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL to zip archive with images, use PNG format. Maximum 5 images are allowed.\"},{\"name\":\"base_style\",\"type\":\"string\",\"required\":false,\"description\":\"The base style of the generated images, this topic is covered above.\",\"default\":\"digital_illustration\",\"constraints\":\"Allowed values: any, realistic_image, digital_illustration, vector_illustration, realistic_image/b_and_w, realistic_image/hard_flash, realistic_image/hdr, realistic_image/natural_light, realistic_image/studio_portrait, realistic_image/enterprise, realistic_image/motion_blur, realistic_image/evening_light, realistic_image/faded_nostalgia, realistic_image/forest_life, realistic_image/mystic_naturalism, realistic_image/natural_tones, realistic_image/organic_calm, realistic_image/real_life_glow, realistic_image/retro_realism, realistic_image/retro_snapshot, realistic_image/urban_drama, realistic_image/village_realism, realistic_image/warm_folk, digital_illustration/pixel_art, digital_illustration/hand_drawn, digital_illustration/grain, digital_illustration/infantile_sketch, digital_illustration/2d_art_poster, digital_illustration/handmade_3d, digital_illustration/hand_drawn_outline, digital_illustration/engraving_color, digital_illustration/2d_art_poster_2, digital_illustration/antiquarian, digital_illustration/bold_fantasy, digital_illustration/child_book, digital_illustration/child_books, digital_illustration/cover, digital_illustration/crosshatch, digital_illustration/digital_engraving, digital_illustration/expressionism, digital_illustration/freehand_details, digital_illustration/grain_20, digital_illustration/graphic_intensity, digital_illustration/hard_comics, digital_illustration/long_shadow, digital_illustration/modern_folk, digital_illustration/multicolor, digital_illustration/neon_calm, digital_illustration/noir, digital_illustration/nostalgic_pastel, digital_illustration/outline_details, digital_illustration/pastel_gradient, digital_illustration/pastel_sketch, digital_illustration/pop_art, digital_illustration/pop_renaissance, digital_illustration/street_art, digital_illustration/tablet_sketch, digital_illustration/urban_glow, digital_illustration/urban_sketching, digital_illustration/vanilla_dreams, digital_illustration/young_adult_book, digital_illustration/young_adult_book_2, vector_illustration/bold_stroke, vector_illustration/chemistry, vector_illustration/colored_stencil, vector_illustration/contour_pop_art, vector_illustration/cosmics, vector_illustration/cutout, vector_illustration/depressive, vector_illustration/editorial, vector_illustration/emotional_flat, vector_illustration/infographical, vector_illustration/marker_outline, vector_illustration/mosaic, vector_illustration/naivector, vector_illustration/roundish_flat, vector_illustration/segmented_colors, vector_illustration/sharp_contrast, vector_illustration/thin, vector_illustration/vector_photo, vector_illustration/vivid_shapes, vector_illustration/engraving, vector_illustration/line_art, vector_illustration/line_circuit, vector_illustration/linocut\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"training\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"recraft/recraft/v3/create-style\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"recraft/recraft/v3/create-style\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"recraft/recraft/v3/create-style\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"recraft/recraft/v3/create-style\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Recraft V3 Create Style" - modelId: "recraft/recraft/v3/create-style" - vendor: "Recraft" - vendorSlug: "recraft" - modelSlug: "recraft/v3/create-style" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-07T12:54:56.466Z" - capabilities: ["training"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/recraft/recraft/v3/edit.md b/model-api-reference/image-generation/recraft/recraft/v3/edit.md deleted file mode 100644 index a0237643..00000000 --- a/model-api-reference/image-generation/recraft/recraft/v3/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Recraft V3 Edit API Reference" -description: "Recraft V3 Edit API reference for SandBase. Use model recraft/recraft/v3/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/recraft/recraft/v3/edit" -apiReferenceJson: "{\"title\":\"Recraft V3 Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Recraft V3 Edit is Recraft's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to recraft/recraft/v3/edit.\",\"default\":\"recraft/recraft/v3/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"A text description of areas to change.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to modify. Must be less than 5 MB in size, have resolution less than 16 MP and max dimension less than 4096 pixels.\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"Defines the difference with the original image, should lie in [0, 1], where 0 means almost identical, and 1 means miserable similarity\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"style_id\",\"type\":\"string\",\"required\":false,\"description\":\"The ID of the custom style reference (optional)\"},{\"name\":\"colors\",\"type\":\"array\",\"required\":false,\"description\":\"An array of preferable colors\",\"default\":\"\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated images. Vector images cost 2X as much.\",\"default\":\"realistic_image\",\"constraints\":\"Allowed values: any, realistic_image, digital_illustration, vector_illustration, realistic_image/b_and_w, realistic_image/hard_flash, realistic_image/hdr, realistic_image/natural_light, realistic_image/studio_portrait, realistic_image/enterprise, realistic_image/motion_blur, realistic_image/evening_light, realistic_image/faded_nostalgia, realistic_image/forest_life, realistic_image/mystic_naturalism, realistic_image/natural_tones, realistic_image/organic_calm, realistic_image/real_life_glow, realistic_image/retro_realism, realistic_image/retro_snapshot, realistic_image/urban_drama, realistic_image/village_realism, realistic_image/warm_folk, digital_illustration/pixel_art, digital_illustration/hand_drawn, digital_illustration/grain, digital_illustration/infantile_sketch, digital_illustration/2d_art_poster, digital_illustration/handmade_3d, digital_illustration/hand_drawn_outline, digital_illustration/engraving_color, digital_illustration/2d_art_poster_2, digital_illustration/antiquarian, digital_illustration/bold_fantasy, digital_illustration/child_book, digital_illustration/child_books, digital_illustration/cover, digital_illustration/crosshatch, digital_illustration/digital_engraving, digital_illustration/expressionism, digital_illustration/freehand_details, digital_illustration/grain_20, digital_illustration/graphic_intensity, digital_illustration/hard_comics, digital_illustration/long_shadow, digital_illustration/modern_folk, digital_illustration/multicolor, digital_illustration/neon_calm, digital_illustration/noir, digital_illustration/nostalgic_pastel, digital_illustration/outline_details, digital_illustration/pastel_gradient, digital_illustration/pastel_sketch, digital_illustration/pop_art, digital_illustration/pop_renaissance, digital_illustration/street_art, digital_illustration/tablet_sketch, digital_illustration/urban_glow, digital_illustration/urban_sketching, digital_illustration/vanilla_dreams, digital_illustration/young_adult_book, digital_illustration/young_adult_book_2, vector_illustration/bold_stroke, vector_illustration/chemistry, vector_illustration/colored_stencil, vector_illustration/contour_pop_art, vector_illustration/cosmics, vector_illustration/cutout, vector_illustration/depressive, vector_illustration/editorial, vector_illustration/emotional_flat, vector_illustration/infographical, vector_illustration/marker_outline, vector_illustration/mosaic, vector_illustration/naivector, vector_illustration/roundish_flat, vector_illustration/segmented_colors, vector_illustration/sharp_contrast, vector_illustration/thin, vector_illustration/vector_photo, vector_illustration/vivid_shapes, vector_illustration/engraving, vector_illustration/line_art, vector_illustration/line_circuit, vector_illustration/linocut\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"recraft/recraft/v3/edit\\\",\\n \\\"prompt\\\": \\\"winter\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/recraft/recraft/v3/edit/input_image_0.jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"recraft/recraft/v3/edit\\\",\\n \\\"prompt\\\": \\\"winter\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/recraft/recraft/v3/edit/input_image_0.jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"recraft/recraft/v3/edit\\\",\\n \\\"prompt\\\": \\\"winter\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/recraft/recraft/v3/edit/input_image_0.jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"recraft/recraft/v3/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Recraft V3 Edit" - modelId: "recraft/recraft/v3/edit" - vendor: "Recraft" - vendorSlug: "recraft" - modelSlug: "recraft/v3/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-07T12:02:09.806Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/recraft/recraft/v4.1/pro.md b/model-api-reference/image-generation/recraft/recraft/v4.1/pro.md deleted file mode 100644 index 560988a3..00000000 --- a/model-api-reference/image-generation/recraft/recraft/v4.1/pro.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Recraft V4.1 Pro API Reference" -description: "Recraft V4.1 Pro API reference for SandBase. Use model recraft/recraft/v4.1/pro with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/recraft/recraft/v4.1/pro" -apiReferenceJson: "{\"title\":\"Recraft V4.1 Pro\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Recraft V4.1 Pro by Recraft - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to recraft/recraft/v4.1/pro.\",\"default\":\"recraft/recraft/v4.1/pro\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"colors\",\"type\":\"array\",\"required\":false,\"description\":\"An array of preferable colors\",\"default\":\"\"},{\"name\":\"background_color\",\"type\":\"string\",\"required\":false,\"description\":\"The preferable background color of the generated images.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"recraft/recraft/v4.1/pro\\\",\\n \\\"prompt\\\": \\\"Crash zoom frozen at the moment of impact as a kingfisher breaks the surface of a pond, water crown splash forming a perfect circle, the bird's beak piercing the mirror-like surface, fish visible just below, frozen at 1/8000s, 400mm super telephoto with 2x extender, ring flash fill, pre-dawn blue light with single shaft of gold, BBC Frozen Planet production quality\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"recraft/recraft/v4.1/pro\\\",\\n \\\"prompt\\\": \\\"Crash zoom frozen at the moment of impact as a kingfisher breaks the surface of a pond, water crown splash forming a perfect circle, the bird's beak piercing the mirror-like surface, fish visible just below, frozen at 1/8000s, 400mm super telephoto with 2x extender, ring flash fill, pre-dawn blue light with single shaft of gold, BBC Frozen Planet production quality\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"recraft/recraft/v4.1/pro\\\",\\n \\\"prompt\\\": \\\"Crash zoom frozen at the moment of impact as a kingfisher breaks the surface of a pond, water crown splash forming a perfect circle, the bird's beak piercing the mirror-like surface, fish visible just below, frozen at 1/8000s, 400mm super telephoto with 2x extender, ring flash fill, pre-dawn blue light with single shaft of gold, BBC Frozen Planet production quality\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"recraft/recraft/v4.1/pro\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Recraft V4.1 Pro" - modelId: "recraft/recraft/v4.1/pro" - vendor: "Recraft" - vendorSlug: "recraft" - modelSlug: "recraft/v4.1/pro" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-05-14T15:54:09.506Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/recraft/recraft/v4.1/pro/vector.md b/model-api-reference/image-generation/recraft/recraft/v4.1/pro/vector.md deleted file mode 100644 index 0e534bc8..00000000 --- a/model-api-reference/image-generation/recraft/recraft/v4.1/pro/vector.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Recraft V4.1 Pro Vector API Reference" -description: "Recraft V4.1 Pro Vector API reference for SandBase. Use model recraft/recraft/v4.1/pro/vector with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/recraft/recraft/v4.1/pro/vector" -apiReferenceJson: "{\"title\":\"Recraft V4.1 Pro Vector\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Recraft V4.1 Pro is Recraft's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to recraft/recraft/v4.1/pro/vector.\",\"default\":\"recraft/recraft/v4.1/pro/vector\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"background_color\",\"type\":\"string\",\"required\":false,\"description\":\"The preferable background color of the generated images.\"},{\"name\":\"colors\",\"type\":\"array\",\"required\":false,\"description\":\"An array of preferable colors\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"recraft/recraft/v4.1/pro/vector\\\",\\n \\\"prompt\\\": \\\"a cute character panda with cool clothes, 3d flat color, design\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"recraft/recraft/v4.1/pro/vector\\\",\\n \\\"prompt\\\": \\\"a cute character panda with cool clothes, 3d flat color, design\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"recraft/recraft/v4.1/pro/vector\\\",\\n \\\"prompt\\\": \\\"a cute character panda with cool clothes, 3d flat color, design\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"recraft/recraft/v4.1/pro/vector\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Recraft V4.1 Pro Vector" - modelId: "recraft/recraft/v4.1/pro/vector" - vendor: "Recraft" - vendorSlug: "recraft" - modelSlug: "recraft/v4.1/pro/vector" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-05-14T15:54:18.558Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/recraft/recraft/v4.1/utility/pro.md b/model-api-reference/image-generation/recraft/recraft/v4.1/utility/pro.md deleted file mode 100644 index 862e4423..00000000 --- a/model-api-reference/image-generation/recraft/recraft/v4.1/utility/pro.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Recraft V4.1 Utility Pro API Reference" -description: "Recraft V4.1 Utility Pro API reference for SandBase. Use model recraft/recraft/v4.1/utility/pro with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/recraft/recraft/v4.1/utility/pro" -apiReferenceJson: "{\"title\":\"Recraft V4.1 Utility Pro\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Recraft V4.1 Utility by Recraft - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to recraft/recraft/v4.1/utility/pro.\",\"default\":\"recraft/recraft/v4.1/utility/pro\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"background_color\",\"type\":\"string\",\"required\":false,\"description\":\"The preferable background color of the generated images.\"},{\"name\":\"colors\",\"type\":\"array\",\"required\":false,\"description\":\"An array of preferable colors\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"recraft/recraft/v4.1/utility/pro\\\",\\n \\\"prompt\\\": \\\"Crash zoom frozen at the moment of impact as a kingfisher breaks the surface of a pond, water crown splash forming a perfect circle, the bird's beak piercing the mirror-like surface, fish visible just below, frozen at 1/8000s, 400mm super telephoto with 2x extender, ring flash fill, pre-dawn blue light with single shaft of gold, BBC Frozen Planet production quality\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"recraft/recraft/v4.1/utility/pro\\\",\\n \\\"prompt\\\": \\\"Crash zoom frozen at the moment of impact as a kingfisher breaks the surface of a pond, water crown splash forming a perfect circle, the bird's beak piercing the mirror-like surface, fish visible just below, frozen at 1/8000s, 400mm super telephoto with 2x extender, ring flash fill, pre-dawn blue light with single shaft of gold, BBC Frozen Planet production quality\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"recraft/recraft/v4.1/utility/pro\\\",\\n \\\"prompt\\\": \\\"Crash zoom frozen at the moment of impact as a kingfisher breaks the surface of a pond, water crown splash forming a perfect circle, the bird's beak piercing the mirror-like surface, fish visible just below, frozen at 1/8000s, 400mm super telephoto with 2x extender, ring flash fill, pre-dawn blue light with single shaft of gold, BBC Frozen Planet production quality\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"recraft/recraft/v4.1/utility/pro\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Recraft V4.1 Utility Pro" - modelId: "recraft/recraft/v4.1/utility/pro" - vendor: "Recraft" - vendorSlug: "recraft" - modelSlug: "recraft/v4.1/utility/pro" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-05-14T15:54:51.584Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/recraft/recraft/v4.1/vector.md b/model-api-reference/image-generation/recraft/recraft/v4.1/vector.md deleted file mode 100644 index 32c5cdd4..00000000 --- a/model-api-reference/image-generation/recraft/recraft/v4.1/vector.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Recraft V4.1 Vector API Reference" -description: "Recraft V4.1 Vector API reference for SandBase. Use model recraft/recraft/v4.1/vector with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/recraft/recraft/v4.1/vector" -apiReferenceJson: "{\"title\":\"Recraft V4.1 Vector\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Recraft V4.1 Vector is Recraft's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to recraft/recraft/v4.1/vector.\",\"default\":\"recraft/recraft/v4.1/vector\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"background_color\",\"type\":\"string\",\"required\":false,\"description\":\"The preferable background color of the generated images.\"},{\"name\":\"colors\",\"type\":\"array\",\"required\":false,\"description\":\"An array of preferable colors\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"recraft/recraft/v4.1/vector\\\",\\n \\\"prompt\\\": \\\"a cute character fox with cool clothes, 3d flat color, design\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"recraft/recraft/v4.1/vector\\\",\\n \\\"prompt\\\": \\\"a cute character fox with cool clothes, 3d flat color, design\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"recraft/recraft/v4.1/vector\\\",\\n \\\"prompt\\\": \\\"a cute character fox with cool clothes, 3d flat color, design\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"recraft/recraft/v4.1/vector\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Recraft V4.1 Vector" - modelId: "recraft/recraft/v4.1/vector" - vendor: "Recraft" - vendorSlug: "recraft" - modelSlug: "recraft/v4.1/vector" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-05-14T15:54:43.175Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/recraft/recraft/v4.md b/model-api-reference/image-generation/recraft/recraft/v4.md deleted file mode 100644 index f155dadf..00000000 --- a/model-api-reference/image-generation/recraft/recraft/v4.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Recraft V4 API Reference" -description: "Recraft V4 API reference for SandBase. Use model recraft/recraft/v4 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/recraft/recraft/v4" -apiReferenceJson: "{\"title\":\"Recraft V4\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Recraft V4 by Recraft - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to recraft/recraft/v4.\",\"default\":\"recraft/recraft/v4\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"background_color\",\"type\":\"string\",\"required\":false,\"description\":\"The preferable background color of the generated images.\"},{\"name\":\"colors\",\"type\":\"array\",\"required\":false,\"description\":\"An array of preferable colors\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"recraft/recraft/v4\\\",\\n \\\"prompt\\\": \\\"Tilt-shift miniature effect on a real Portuguese fishing village at golden hour, colorful boats in the harbor appearing toy-like, selective focus band across the middle, saturated primary colors of blue red and yellow boats against white buildings, 90mm tilt-shift lens, the familiar made fantastical, Wes Anderson color sensibility\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"recraft/recraft/v4\\\",\\n \\\"prompt\\\": \\\"Tilt-shift miniature effect on a real Portuguese fishing village at golden hour, colorful boats in the harbor appearing toy-like, selective focus band across the middle, saturated primary colors of blue red and yellow boats against white buildings, 90mm tilt-shift lens, the familiar made fantastical, Wes Anderson color sensibility\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"recraft/recraft/v4\\\",\\n \\\"prompt\\\": \\\"Tilt-shift miniature effect on a real Portuguese fishing village at golden hour, colorful boats in the harbor appearing toy-like, selective focus band across the middle, saturated primary colors of blue red and yellow boats against white buildings, 90mm tilt-shift lens, the familiar made fantastical, Wes Anderson color sensibility\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"recraft/recraft/v4\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Recraft V4" - modelId: "recraft/recraft/v4" - vendor: "Recraft" - vendorSlug: "recraft" - modelSlug: "recraft/v4" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-02-12T18:15:47.502Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/recraft/recraft/v4/pro.md b/model-api-reference/image-generation/recraft/recraft/v4/pro.md deleted file mode 100644 index c242d2fa..00000000 --- a/model-api-reference/image-generation/recraft/recraft/v4/pro.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Recraft V4 Pro API Reference" -description: "Recraft V4 Pro API reference for SandBase. Use model recraft/recraft/v4/pro with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/recraft/recraft/v4/pro" -apiReferenceJson: "{\"title\":\"Recraft V4 Pro\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Recraft V4 Pro by Recraft - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to recraft/recraft/v4/pro.\",\"default\":\"recraft/recraft/v4/pro\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"background_color\",\"type\":\"string\",\"required\":false,\"description\":\"The preferable background color of the generated images.\"},{\"name\":\"colors\",\"type\":\"array\",\"required\":false,\"description\":\"An array of preferable colors\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"recraft/recraft/v4/pro\\\",\\n \\\"prompt\\\": \\\"Crash zoom frozen at the moment of impact as a kingfisher breaks the surface of a pond, water crown splash forming a perfect circle, the bird's beak piercing the mirror-like surface, fish visible just below, frozen at 1/8000s, 400mm super telephoto with 2x extender, ring flash fill, pre-dawn blue light with single shaft of gold, BBC Frozen Planet production quality\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"recraft/recraft/v4/pro\\\",\\n \\\"prompt\\\": \\\"Crash zoom frozen at the moment of impact as a kingfisher breaks the surface of a pond, water crown splash forming a perfect circle, the bird's beak piercing the mirror-like surface, fish visible just below, frozen at 1/8000s, 400mm super telephoto with 2x extender, ring flash fill, pre-dawn blue light with single shaft of gold, BBC Frozen Planet production quality\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"recraft/recraft/v4/pro\\\",\\n \\\"prompt\\\": \\\"Crash zoom frozen at the moment of impact as a kingfisher breaks the surface of a pond, water crown splash forming a perfect circle, the bird's beak piercing the mirror-like surface, fish visible just below, frozen at 1/8000s, 400mm super telephoto with 2x extender, ring flash fill, pre-dawn blue light with single shaft of gold, BBC Frozen Planet production quality\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"recraft/recraft/v4/pro\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Recraft V4 Pro" - modelId: "recraft/recraft/v4/pro" - vendor: "Recraft" - vendorSlug: "recraft" - modelSlug: "recraft/v4/pro" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-02-12T18:30:16.402Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/recraft/recraft/v4/pro/vector.md b/model-api-reference/image-generation/recraft/recraft/v4/pro/vector.md deleted file mode 100644 index f0e97c9b..00000000 --- a/model-api-reference/image-generation/recraft/recraft/v4/pro/vector.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Recraft V4 Pro (Vector) API Reference" -description: "Recraft V4 Pro (Vector) API reference for SandBase. Use model recraft/recraft/v4/pro/vector with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/recraft/recraft/v4/pro/vector" -apiReferenceJson: "{\"title\":\"Recraft V4 Pro (Vector)\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Recraft V4 Pro is Recraft's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to recraft/recraft/v4/pro/vector.\",\"default\":\"recraft/recraft/v4/pro/vector\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"background_color\",\"type\":\"string\",\"required\":false,\"description\":\"The preferable background color of the generated images.\"},{\"name\":\"colors\",\"type\":\"array\",\"required\":false,\"description\":\"An array of preferable colors\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"recraft/recraft/v4/pro/vector\\\",\\n \\\"prompt\\\": \\\"a cute character panda with cool clothes, 3d flat color, design\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"recraft/recraft/v4/pro/vector\\\",\\n \\\"prompt\\\": \\\"a cute character panda with cool clothes, 3d flat color, design\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"recraft/recraft/v4/pro/vector\\\",\\n \\\"prompt\\\": \\\"a cute character panda with cool clothes, 3d flat color, design\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"recraft/recraft/v4/pro/vector\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Recraft V4 Pro (Vector)" - modelId: "recraft/recraft/v4/pro/vector" - vendor: "Recraft" - vendorSlug: "recraft" - modelSlug: "recraft/v4/pro/vector" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-02-16T21:47:29Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/recraft/recraft/v4/vector.md b/model-api-reference/image-generation/recraft/recraft/v4/vector.md deleted file mode 100644 index dfa733ce..00000000 --- a/model-api-reference/image-generation/recraft/recraft/v4/vector.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Recraft V4 (Vector) API Reference" -description: "Recraft V4 (Vector) API reference for SandBase. Use model recraft/recraft/v4/vector with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/recraft/recraft/v4/vector" -apiReferenceJson: "{\"title\":\"Recraft V4 (Vector)\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Recraft V4 Vector is Recraft's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to recraft/recraft/v4/vector.\",\"default\":\"recraft/recraft/v4/vector\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"background_color\",\"type\":\"string\",\"required\":false,\"description\":\"The preferable background color of the generated images.\"},{\"name\":\"colors\",\"type\":\"array\",\"required\":false,\"description\":\"An array of preferable colors\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"recraft/recraft/v4/vector\\\",\\n \\\"prompt\\\": \\\"a cute character fox with cool clothes, 3d flat color, design\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"recraft/recraft/v4/vector\\\",\\n \\\"prompt\\\": \\\"a cute character fox with cool clothes, 3d flat color, design\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"recraft/recraft/v4/vector\\\",\\n \\\"prompt\\\": \\\"a cute character fox with cool clothes, 3d flat color, design\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"recraft/recraft/v4/vector\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Recraft V4 (Vector)" - modelId: "recraft/recraft/v4/vector" - vendor: "Recraft" - vendorSlug: "recraft" - modelSlug: "recraft/v4/vector" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-02-16T21:45:43.314Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/recraft/recraft/vectorize.md b/model-api-reference/image-generation/recraft/recraft/vectorize.md deleted file mode 100644 index 04a24a8a..00000000 --- a/model-api-reference/image-generation/recraft/recraft/vectorize.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Recraft Vectorize API Reference" -description: "Recraft Vectorize API reference for SandBase. Use model recraft/recraft/vectorize with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/recraft/recraft/vectorize" -apiReferenceJson: "{\"title\":\"Recraft Vectorize\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Recraft Vectorize is Recraft's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to recraft/recraft/vectorize.\",\"default\":\"recraft/recraft/vectorize\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to be vectorized. Must be in PNG, JPG or WEBP format, less than 5 MB in size, have resolution less than 16 MP and max dimension less than 4096 pixels, min dimension more than 256 pixels.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"recraft/recraft/vectorize\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/recraft/recraft/vectorize/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"recraft/recraft/vectorize\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/recraft/recraft/vectorize/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"recraft/recraft/vectorize\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/recraft/recraft/vectorize/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"recraft/recraft/vectorize\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Recraft Vectorize" - modelId: "recraft/recraft/vectorize" - vendor: "Recraft" - vendorSlug: "recraft" - modelSlug: "recraft/vectorize" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-12T15:27:32.275Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/reve/2.1/edit.md b/model-api-reference/image-generation/reve/2.1/edit.md deleted file mode 100644 index 074eb66c..00000000 --- a/model-api-reference/image-generation/reve/2.1/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Reve 2.1 API Reference — Reve 2.1 / Edit API" -description: "Reve 2.1 API reference for SandBase. Use model reve/2.1/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/reve/2.1/edit" -apiReferenceJson: "{\"title\":\"Reve 2.1\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"2.1 Edit by Reve - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to reve/2.1/edit.\",\"default\":\"reve/2.1/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text description of how to edit the provided image. You can refer to the reference image with `0`.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the reference image to edit. Must be publicly accessible or base64 data URI. Supports PNG, JPEG, WebP, AVIF, and HEIF formats.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format for the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"reve/2.1/edit\\\",\\n \\\"prompt\\\": \\\"Give him a friend\\\",\\n \\\"image\\\": \\\"https://v3b.fal.media/files/b/koala/sZE6zNTKjOKc4kcUdVlu__26bac54c-3e94-43e9-aeff-f2efc2631ef0.webp\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"reve/2.1/edit\\\",\\n \\\"prompt\\\": \\\"Give him a friend\\\",\\n \\\"image\\\": \\\"https://v3b.fal.media/files/b/koala/sZE6zNTKjOKc4kcUdVlu__26bac54c-3e94-43e9-aeff-f2efc2631ef0.webp\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"reve/2.1/edit\\\",\\n \\\"prompt\\\": \\\"Give him a friend\\\",\\n \\\"image\\\": \\\"https://v3b.fal.media/files/b/koala/sZE6zNTKjOKc4kcUdVlu__26bac54c-3e94-43e9-aeff-f2efc2631ef0.webp\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"reve/2.1/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Reve 2.1" - modelId: "reve/2.1/edit" - vendor: "Reve" - vendorSlug: "reve" - modelSlug: "2.1/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-07-14T17:49:32.903Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/reve/2.1/remix.md b/model-api-reference/image-generation/reve/2.1/remix.md deleted file mode 100644 index a7fa965a..00000000 --- a/model-api-reference/image-generation/reve/2.1/remix.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Reve 2.1 API Reference — Reve 2.1 / Remix API" -description: "Reve 2.1 API reference for SandBase. Use model reve/2.1/remix with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/reve/2.1/remix" -apiReferenceJson: "{\"title\":\"Reve 2.1\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"2.1 Remix is Reve's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to reve/2.1/remix.\",\"default\":\"reve/2.1/remix\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text description of the desired image. Refer to a reference image by frame: `N` is the Nth entry in `image_urls` (0-based, so the first reference is `0`).\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"List of reference images. Refer to them from the prompt with `N` (0-based). Must provide between 1 and 8 images (inclusive). Each image must be less than 10 MB. Supports PNG, JPEG, WebP, AVIF, and HEIF formats.\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format for the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"reve/2.1/remix\\\",\\n \\\"prompt\\\": \\\"Dress the model in the clothes and hat. Add a cat to the scene and change the background to a Victorian era building.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"reve/2.1/remix\\\",\\n \\\"prompt\\\": \\\"Dress the model in the clothes and hat. Add a cat to the scene and change the background to a Victorian era building.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"reve/2.1/remix\\\",\\n \\\"prompt\\\": \\\"Dress the model in the clothes and hat. Add a cat to the scene and change the background to a Victorian era building.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"reve/2.1/remix\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Reve 2.1" - modelId: "reve/2.1/remix" - vendor: "Reve" - vendorSlug: "reve" - modelSlug: "2.1/remix" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-07-14T17:49:39.26Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/reve/2.1/text-to-image.md b/model-api-reference/image-generation/reve/2.1/text-to-image.md deleted file mode 100644 index 70f2e2ed..00000000 --- a/model-api-reference/image-generation/reve/2.1/text-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Reve 2.1 API Reference — Reve 2.1 / Text To Image API" -description: "Reve 2.1 API reference for SandBase. Use model reve/2.1/text-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/reve/2.1/text-to-image" -apiReferenceJson: "{\"title\":\"Reve 2.1\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"2.1 is Reve's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to reve/2.1/text-to-image.\",\"default\":\"reve/2.1/text-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text description of the desired image.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format for the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: png, jpeg\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"reve/2.1/text-to-image\\\",\\n \\\"prompt\\\": \\\"A towering stack of golden fluffy pancakes drizzled with amber honey syrup, topped with fresh blackberries and sliced bananas, served on a white ceramic plate on a rustic wooden table with a soft blue-gray background.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"reve/2.1/text-to-image\\\",\\n \\\"prompt\\\": \\\"A towering stack of golden fluffy pancakes drizzled with amber honey syrup, topped with fresh blackberries and sliced bananas, served on a white ceramic plate on a rustic wooden table with a soft blue-gray background.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"reve/2.1/text-to-image\\\",\\n \\\"prompt\\\": \\\"A towering stack of golden fluffy pancakes drizzled with amber honey syrup, topped with fresh blackberries and sliced bananas, served on a white ceramic plate on a rustic wooden table with a soft blue-gray background.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"reve/2.1/text-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Reve 2.1" - modelId: "reve/2.1/text-to-image" - vendor: "Reve" - vendorSlug: "reve" - modelSlug: "2.1/text-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-07-14T17:49:27.001Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/sandbase-ai/cat-vton.md b/model-api-reference/image-generation/sandbase-ai/cat-vton.md index c0d3505a..32f66577 100644 --- a/model-api-reference/image-generation/sandbase-ai/cat-vton.md +++ b/model-api-reference/image-generation/sandbase-ai/cat-vton.md @@ -4,7 +4,7 @@ description: "try-on API reference for SandBase. Use model sandbase-ai/cat-vton aside: false outline: false apiReferenceKey: "image/sandbase-ai/cat-vton" -apiReferenceJson: "{\"title\":\"try-on\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Cat VTON by sandbase-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sandbase-ai/cat-vton.\",\"default\":\"sandbase-ai/cat-vton\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"2.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"30\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same input given to the same version of the model will output the same image every time.\"},{\"name\":\"cloth_type\",\"type\":\"string\",\"required\":false,\"description\":\"Type of the Cloth to be tried on. Options: upper: Upper body cloth lower: Lower body cloth overall: Full body cloth inner: Inner cloth, like T-shirt inside a jacket outer: Outer cloth, like a jacket over a T-shirt\",\"constraints\":\"Allowed values: upper, lower, overall, inner, outer\"},{\"name\":\"garment_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL to the garment image.\"},{\"name\":\"human_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL for the human image.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sandbase-ai/cat-vton\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"sandbase-ai/cat-vton\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"sandbase-ai/cat-vton\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"sandbase-ai/cat-vton\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"try-on\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Cat Vton by sandbase-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sandbase-ai/cat-vton.\",\"default\":\"sandbase-ai/cat-vton\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"2.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"30\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same input given to the same version of the model will output the same image every time.\"},{\"name\":\"cloth_type\",\"type\":\"string\",\"required\":false,\"description\":\"Type of the Cloth to be tried on. Options: upper: Upper body cloth lower: Lower body cloth overall: Full body cloth inner: Inner cloth, like T-shirt inside a jacket outer: Outer cloth, like a jacket over a T-shirt\",\"constraints\":\"Allowed values: upper, lower, overall, inner, outer\"},{\"name\":\"garment_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"Url to the garment image.\"},{\"name\":\"human_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"Url for the human image.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sandbase-ai/cat-vton\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"sandbase-ai/cat-vton\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"sandbase-ai/cat-vton\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"sandbase-ai/cat-vton\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "try-on" modelId: "sandbase-ai/cat-vton" diff --git a/model-api-reference/image-generation/sandbase-ai/creative-upscaler.md b/model-api-reference/image-generation/sandbase-ai/creative-upscaler.md deleted file mode 100644 index 2be6bec1..00000000 --- a/model-api-reference/image-generation/sandbase-ai/creative-upscaler.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Creative Upscaler API Reference" -description: "Creative Upscaler API reference for SandBase. Use model sandbase-ai/creative-upscaler with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/sandbase-ai/creative-upscaler" -apiReferenceJson: "{\"title\":\"Creative Upscaler\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Creative Upscaler is sandbase-ai's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sandbase-ai/creative-upscaler.\",\"default\":\"sandbase-ai/creative-upscaler\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for generating the image. Be as descriptive as possible for best results. If no prompt is provide BLIP2 will be used to generate a prompt.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The image to upscale.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"7.5\",\"constraints\":\"Range: 0 to 16\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to use for generating the image. The more steps the better the image will be but it will also take longer to generate.\",\"default\":\"20\",\"constraints\":\"Range: 1 to 200\"},{\"name\":\"prompt_suffix\",\"type\":\"string\",\"required\":false,\"description\":\"The suffix to add to the prompt. This is useful to add a common ending to all prompts such as 'high quality' etc or embedding tokens.\",\"default\":\" high quality, highly detailed, high resolution, sharp\"},{\"name\":\"additional_lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the additional LORA model to use for the upscaling. Default is 1.0\",\"default\":\"1\"},{\"name\":\"base_model_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL to the base model to use for the upscaling\"},{\"name\":\"model_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of model to use for the upscaling. Default is SD_1_5\",\"default\":\"SD_1_5\",\"constraints\":\"Allowed values: SD_1_5, SDXL\"},{\"name\":\"scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the output image. The higher the scale, the bigger the output image will be.\",\"default\":\"2\",\"constraints\":\"Range: 1 to 5\"},{\"name\":\"additional_embedding_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL to the additional embeddings to use for the upscaling. Default is None\"},{\"name\":\"detail\",\"type\":\"number\",\"required\":false,\"description\":\"How much detail to add\",\"default\":\"1\",\"constraints\":\"Range: 0 to 5\"},{\"name\":\"skip_ccsr\",\"type\":\"boolean\",\"required\":false,\"description\":\"If set to true, the image will not be processed by the CCSR model before being processed by the creativity model.\",\"default\":\"false\"},{\"name\":\"shape_preservation\",\"type\":\"number\",\"required\":false,\"description\":\"How much to preserve the shape of the original image\",\"default\":\"0.25\",\"constraints\":\"Range: 0 to 3\"},{\"name\":\"creativity\",\"type\":\"number\",\"required\":false,\"description\":\"How much the output can deviate from the original\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"enable_safety_checks\",\"type\":\"boolean\",\"required\":false,\"description\":\"If set to true, the resulting image will be checked whether it includes any potentially unsafe content. If it does, it will be replaced with a black image.\",\"default\":\"true\"},{\"name\":\"additional_lora_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL to the additional LORA model to use for the upscaling. Default is None\"},{\"name\":\"override_size_limits\",\"type\":\"boolean\",\"required\":false,\"description\":\"Allow for large uploads that could take a very long time.\",\"default\":\"false\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of Stable Diffusion will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sandbase-ai/creative-upscaler\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/seedvr/upscale/image/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"sandbase-ai/creative-upscaler\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/seedvr/upscale/image/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"sandbase-ai/creative-upscaler\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/seedvr/upscale/image/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"sandbase-ai/creative-upscaler\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Creative Upscaler" - modelId: "sandbase-ai/creative-upscaler" - vendor: "sandbase-ai" - vendorSlug: "sandbase-ai" - modelSlug: "creative-upscaler" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-02-27T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/sandbase-ai/firered-image-edit-v1.1.md b/model-api-reference/image-generation/sandbase-ai/firered-image-edit-v1.1.md deleted file mode 100644 index fe357904..00000000 --- a/model-api-reference/image-generation/sandbase-ai/firered-image-edit-v1.1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Firered Image Edit V1.1 API Reference" -description: "Firered Image Edit V1.1 API reference for SandBase. Use model sandbase-ai/firered-image-edit-v1.1 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/sandbase-ai/firered-image-edit-v1.1" -apiReferenceJson: "{\"title\":\"Firered Image Edit V1.1\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Firered Image Edit V1.1 is sandbase-ai's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sandbase-ai/firered-image-edit-v1.1.\",\"default\":\"sandbase-ai/firered-image-edit-v1.1\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The editing instruction describing what changes to make to the image. Supports both English and Chinese instructions.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of the images to edit. Supports single image editing and multi-image references (e.g., virtual try-on, style transfer from reference, portrait makeup).\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Classifier-free guidance scale. Higher values make the model follow the prompt more closely.\",\"default\":\"4\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform. More steps generally produce higher quality results.\",\"default\":\"30\",\"constraints\":\"Range: 2 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sandbase-ai/firered-image-edit-v1.1\\\",\\n \\\"prompt\\\": \\\"Transform her look into a romantic Parisian evening style with a soft smoky eye in warm terracotta and bronze tones, enhanced lashes with a subtle winged effect, sun-kissed contouring that complements her olive skin, a natural rose-tinted blush on the apples of her cheeks, and lips in a sophisticated mauve-pink shade with a subtle glossy finish, while adding a touch of luminous highlighter on her cheekbones and cupid's bow to catch the warm cafe lighting.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"sandbase-ai/firered-image-edit-v1.1\\\",\\n \\\"prompt\\\": \\\"Transform her look into a romantic Parisian evening style with a soft smoky eye in warm terracotta and bronze tones, enhanced lashes with a subtle winged effect, sun-kissed contouring that complements her olive skin, a natural rose-tinted blush on the apples of her cheeks, and lips in a sophisticated mauve-pink shade with a subtle glossy finish, while adding a touch of luminous highlighter on her cheekbones and cupid's bow to catch the warm cafe lighting.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"sandbase-ai/firered-image-edit-v1.1\\\",\\n \\\"prompt\\\": \\\"Transform her look into a romantic Parisian evening style with a soft smoky eye in warm terracotta and bronze tones, enhanced lashes with a subtle winged effect, sun-kissed contouring that complements her olive skin, a natural rose-tinted blush on the apples of her cheeks, and lips in a sophisticated mauve-pink shade with a subtle glossy finish, while adding a touch of luminous highlighter on her cheekbones and cupid's bow to catch the warm cafe lighting.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"sandbase-ai/firered-image-edit-v1.1\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Firered Image Edit V1.1" - modelId: "sandbase-ai/firered-image-edit-v1.1" - vendor: "sandbase-ai" - vendorSlug: "sandbase-ai" - modelSlug: "firered-image-edit-v1.1" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-05T15:29:32.237Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/sandbase-ai/hy-wu-edit.md b/model-api-reference/image-generation/sandbase-ai/hy-wu-edit.md deleted file mode 100644 index 5ccee14a..00000000 --- a/model-api-reference/image-generation/sandbase-ai/hy-wu-edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hy Wu Edit API Reference" -description: "Hy Wu Edit API reference for SandBase. Use model sandbase-ai/hy-wu-edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/sandbase-ai/hy-wu-edit" -apiReferenceJson: "{\"title\":\"Hy Wu Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hy Wu Edit by sandbase-ai - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sandbase-ai/hy-wu-edit.\",\"default\":\"sandbase-ai/hy-wu-edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the desired edit. Supports both English and Chinese. Use specific instructions like 'Replace the clothing on figure 1 with the outfit from figure 2'.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"URLs of input images for editing. Typically 2 images: the base image and the reference image. Supports up to 3 images.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of diffusion denoising steps.\",\"default\":\"30\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"enable_thinking\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable thinking mode. The model reasons about the edit before generating, producing higher quality results at the cost of longer inference time. Disable for faster results on straightforward edits.\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results. If None, a random seed is used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sandbase-ai/hy-wu-edit\\\",\\n \\\"prompt\\\": \\\"Using image 1 as the base image, replace the outfit with the clothing from image 2 while keeping the subject, pose, and background unchanged.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"sandbase-ai/hy-wu-edit\\\",\\n \\\"prompt\\\": \\\"Using image 1 as the base image, replace the outfit with the clothing from image 2 while keeping the subject, pose, and background unchanged.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"sandbase-ai/hy-wu-edit\\\",\\n \\\"prompt\\\": \\\"Using image 1 as the base image, replace the outfit with the clothing from image 2 while keeping the subject, pose, and background unchanged.\\\",\\n \\\"output_format\\\": \\\"png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"sandbase-ai/hy-wu-edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hy Wu Edit" - modelId: "sandbase-ai/hy-wu-edit" - vendor: "sandbase-ai" - vendorSlug: "sandbase-ai" - modelSlug: "hy-wu-edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-25T22:28:59.055Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/sandbase-ai/phota.md b/model-api-reference/image-generation/sandbase-ai/phota.md deleted file mode 100644 index ee8178b6..00000000 --- a/model-api-reference/image-generation/sandbase-ai/phota.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Phota Text to Image API Reference" -description: "Phota Text to Image API reference for SandBase. Use model sandbase-ai/phota with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/sandbase-ai/phota" -apiReferenceJson: "{\"title\":\"Phota Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Phota is sandbase-ai's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sandbase-ai/phota.\",\"default\":\"sandbase-ai/phota\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of the desired image. In case you wish to use specific profiles, refer to them as [[profile_id_1]], [[profile_id_2]], etc.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated image.\",\"default\":\"1K\",\"constraints\":\"Allowed values: 1K, 4K\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sandbase-ai/phota\\\",\\n \\\"prompt\\\": \\\"Middle Eastern man in traditional clothing sitting in a cool tent in the desert with a laptop\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"sandbase-ai/phota\\\",\\n \\\"prompt\\\": \\\"Middle Eastern man in traditional clothing sitting in a cool tent in the desert with a laptop\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"sandbase-ai/phota\\\",\\n \\\"prompt\\\": \\\"Middle Eastern man in traditional clothing sitting in a cool tent in the desert with a laptop\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"sandbase-ai/phota\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Phota Text to Image" - modelId: "sandbase-ai/phota" - vendor: "sandbase-ai" - vendorSlug: "sandbase-ai" - modelSlug: "phota" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-26T13:42:50.195Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/sandbase-ai/sana.md b/model-api-reference/image-generation/sandbase-ai/sana.md deleted file mode 100644 index 5ad36eaa..00000000 --- a/model-api-reference/image-generation/sandbase-ai/sana.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sana API Reference" -description: "Sana API reference for SandBase. Use model sandbase-ai/sana with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/sandbase-ai/sana" -apiReferenceJson: "{\"title\":\"Sana\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sana by sandbase-ai - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sandbase-ai/sana.\",\"default\":\"sandbase-ai/sana\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"18\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"},{\"name\":\"style_name\",\"type\":\"string\",\"required\":false,\"description\":\"The style to generate the image in.\",\"default\":\"(No style)\",\"constraints\":\"Allowed values: (No style), Cinematic, Photographic, Anime, Manga, Digital Art, Pixel art, Fantasy art, Neonpunk, 3D Model\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sandbase-ai/sana\\\",\\n \\\"prompt\\\": \\\"Underwater coral reef ecosystem during peak bioluminescent activity, multiple layers of marine life - from microscopic plankton to massive coral structures, light refracting through crystal-clear tropical waters, creating prismatic color gradients, hyper-detailed texture of marine organisms\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"sandbase-ai/sana\\\",\\n \\\"prompt\\\": \\\"Underwater coral reef ecosystem during peak bioluminescent activity, multiple layers of marine life - from microscopic plankton to massive coral structures, light refracting through crystal-clear tropical waters, creating prismatic color gradients, hyper-detailed texture of marine organisms\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"sandbase-ai/sana\\\",\\n \\\"prompt\\\": \\\"Underwater coral reef ecosystem during peak bioluminescent activity, multiple layers of marine life - from microscopic plankton to massive coral structures, light refracting through crystal-clear tropical waters, creating prismatic color gradients, hyper-detailed texture of marine organisms\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"sandbase-ai/sana\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Sana" - modelId: "sandbase-ai/sana" - vendor: "sandbase-ai" - vendorSlug: "sandbase-ai" - modelSlug: "sana" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-08-01T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/sonilo/1.1/video-to-music.md b/model-api-reference/image-generation/sonilo/1.1/video-to-music.md deleted file mode 100644 index 23978cae..00000000 --- a/model-api-reference/image-generation/sonilo/1.1/video-to-music.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "V1.1 reference moved" -description: "The sonilo/1.1/video-to-music reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/sonilo/1.1/video-to-music -robots: noindex,follow ---- - -# This page has moved - -`sonilo/1.1/video-to-music` is a video model. Its API reference now lives at [V1.1](/model-api-reference/video-generation/sonilo/1.1/video-to-music) under Video Generation. diff --git a/model-api-reference/image-generation/sonilo/1.1/video-to-sound-effects.md b/model-api-reference/image-generation/sonilo/1.1/video-to-sound-effects.md deleted file mode 100644 index 9f19beb1..00000000 --- a/model-api-reference/image-generation/sonilo/1.1/video-to-sound-effects.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "V1.1 Video to Sound Effects reference moved" -description: "The sonilo/1.1/video-to-sound-effects reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/sonilo/1.1/video-to-sound-effects -robots: noindex,follow ---- - -# This page has moved - -`sonilo/1.1/video-to-sound-effects` is a video model. Its API reference now lives at [V1.1 Video to Sound Effects](/model-api-reference/video-generation/sonilo/1.1/video-to-sound-effects) under Video Generation. diff --git a/model-api-reference/image-generation/stability-ai/fast-sdxl-controlnet-canny.md b/model-api-reference/image-generation/stability-ai/fast-sdxl-controlnet-canny.md deleted file mode 100644 index 7c40b5f3..00000000 --- a/model-api-reference/image-generation/stability-ai/fast-sdxl-controlnet-canny.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "ControlNet SDXL API Reference — Stability Sdxl Controlnet Canny" -description: "ControlNet SDXL API reference for SandBase. Use model stability-ai/fast-sdxl-controlnet-canny with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/stability-ai/fast-sdxl-controlnet-canny" -apiReferenceJson: "{\"title\":\"ControlNet SDXL\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Fast Sdxl Controlnet Canny by Stability AI - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to stability-ai/fast-sdxl-controlnet-canny.\",\"default\":\"stability-ai/fast-sdxl-controlnet-canny\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for generating the image. Be as descriptive as possible for best results.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of Stable Diffusion will output the same image every time.\",\"default\":\"null\"},{\"name\":\"control_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the control image.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"35\",\"constraints\":\"Range: 1 to 70\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"7.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"stability-ai/fast-sdxl-controlnet-canny\\\",\\n \\\"prompt\\\": \\\"Ice fortress, aurora skies, polar wildlife, twilight\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"stability-ai/fast-sdxl-controlnet-canny\\\",\\n \\\"prompt\\\": \\\"Ice fortress, aurora skies, polar wildlife, twilight\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"stability-ai/fast-sdxl-controlnet-canny\\\",\\n \\\"prompt\\\": \\\"Ice fortress, aurora skies, polar wildlife, twilight\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"stability-ai/fast-sdxl-controlnet-canny\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "ControlNet SDXL" - modelId: "stability-ai/fast-sdxl-controlnet-canny" - vendor: "Stability AI" - vendorSlug: "stability-ai" - modelSlug: "fast-sdxl-controlnet-canny" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-02-28T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/stability-ai/fast-sdxl-controlnet-canny/image-to-image.md b/model-api-reference/image-generation/stability-ai/fast-sdxl-controlnet-canny/image-to-image.md deleted file mode 100644 index 69452246..00000000 --- a/model-api-reference/image-generation/stability-ai/fast-sdxl-controlnet-canny/image-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "ControlNet SDXL API Reference — Stability Canny / Image To Image" -description: "ControlNet SDXL API reference for SandBase. Use model stability-ai/fast-sdxl-controlnet-canny/image-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/stability-ai/fast-sdxl-controlnet-canny/image-to-image" -apiReferenceJson: "{\"title\":\"ControlNet SDXL\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Fast Sdxl Controlnet Canny is Stability AI's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to stability-ai/fast-sdxl-controlnet-canny/image-to-image.\",\"default\":\"stability-ai/fast-sdxl-controlnet-canny/image-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for generating the image. Be as descriptive as possible for best results.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to use as a starting point for the generation.\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"determines how much the generated image resembles the initial image\",\"default\":\"0.95\",\"constraints\":\"Range: 0.05 to 1\"},{\"name\":\"control_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the control image.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of Stable Diffusion will output the same image every time.\",\"default\":\"null\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"35\",\"constraints\":\"Range: 1 to 70\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"7.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"stability-ai/fast-sdxl-controlnet-canny/image-to-image\\\",\\n \\\"prompt\\\": \\\"Ice fortress, aurora skies, polar wildlife, twilight\\\",\\n \\\"image\\\": \\\"https://fal-cdn.batuhan-941.workers.dev/files/tiger/IExuP-WICqaIesLZAZPur.jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"stability-ai/fast-sdxl-controlnet-canny/image-to-image\\\",\\n \\\"prompt\\\": \\\"Ice fortress, aurora skies, polar wildlife, twilight\\\",\\n \\\"image\\\": \\\"https://fal-cdn.batuhan-941.workers.dev/files/tiger/IExuP-WICqaIesLZAZPur.jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"stability-ai/fast-sdxl-controlnet-canny/image-to-image\\\",\\n \\\"prompt\\\": \\\"Ice fortress, aurora skies, polar wildlife, twilight\\\",\\n \\\"image\\\": \\\"https://fal-cdn.batuhan-941.workers.dev/files/tiger/IExuP-WICqaIesLZAZPur.jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"stability-ai/fast-sdxl-controlnet-canny/image-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "ControlNet SDXL" - modelId: "stability-ai/fast-sdxl-controlnet-canny/image-to-image" - vendor: "Stability AI" - vendorSlug: "stability-ai" - modelSlug: "fast-sdxl-controlnet-canny/image-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2023-12-01T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/stability-ai/fast-sdxl.md b/model-api-reference/image-generation/stability-ai/fast-sdxl.md deleted file mode 100644 index 821830f7..00000000 --- a/model-api-reference/image-generation/stability-ai/fast-sdxl.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Stable Diffusion XL API Reference — Stability AI Fast Sdxl API" -description: "Stable Diffusion XL API reference for SandBase. Use model stability-ai/fast-sdxl with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/stability-ai/fast-sdxl" -apiReferenceJson: "{\"title\":\"Stable Diffusion XL\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Fast Sdxl is Stability AI's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to stability-ai/fast-sdxl.\",\"default\":\"stability-ai/fast-sdxl\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for generating the image. Be as descriptive as possible for best results.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of Stable Diffusion will output the same image every time.\",\"default\":\"null\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"25\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"7.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"stability-ai/fast-sdxl\\\",\\n \\\"prompt\\\": \\\"photo of a rhino dressed suit and tie sitting at a table in a bar with a bar stools, award winning photography, Elke vogelsang\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"stability-ai/fast-sdxl\\\",\\n \\\"prompt\\\": \\\"photo of a rhino dressed suit and tie sitting at a table in a bar with a bar stools, award winning photography, Elke vogelsang\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"stability-ai/fast-sdxl\\\",\\n \\\"prompt\\\": \\\"photo of a rhino dressed suit and tie sitting at a table in a bar with a bar stools, award winning photography, Elke vogelsang\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"stability-ai/fast-sdxl\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Stable Diffusion XL" - modelId: "stability-ai/fast-sdxl" - vendor: "Stability AI" - vendorSlug: "stability-ai" - modelSlug: "fast-sdxl" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-06-12T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/stability-ai/fast-sdxl/image-to-image.md b/model-api-reference/image-generation/stability-ai/fast-sdxl/image-to-image.md deleted file mode 100644 index a1087586..00000000 --- a/model-api-reference/image-generation/stability-ai/fast-sdxl/image-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Stable Diffusion XL API Reference — Stability / Image To Image" -description: "Stable Diffusion XL API reference for SandBase. Use model stability-ai/fast-sdxl/image-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/stability-ai/fast-sdxl/image-to-image" -apiReferenceJson: "{\"title\":\"Stable Diffusion XL\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Fast Sdxl by Stability AI - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to stability-ai/fast-sdxl/image-to-image.\",\"default\":\"stability-ai/fast-sdxl/image-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for generating the image. Be as descriptive as possible for best results.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to use as a starting point for the generation.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"7.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"25\",\"constraints\":\"Range: 1 to 65\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"determines how much the generated image resembles the initial image\",\"default\":\"0.95\",\"constraints\":\"Range: 0.05 to 1\"},{\"name\":\"preserve_aspect_ratio\",\"type\":\"boolean\",\"required\":false,\"description\":\"If set to true, the aspect ratio of the generated image will be preserved even if the image size is too large. However, if the image is not a multiple of 32 in width or height, it will be resized to the nearest multiple of 32. By default, this snapping to the nearest multiple of 32 will not preserve the aspect ratio. Set crop_output to True, to crop the output to the proper aspect ratio after generating.\",\"default\":\"false\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The list of LoRA weights to use.\",\"default\":\"\"},{\"name\":\"request_id\",\"type\":\"string\",\"required\":false,\"description\":\"An id bound to a request, can be used with response to identify the request itself.\",\"default\":\"\"},{\"name\":\"safety_checker_version\",\"type\":\"string\",\"required\":false,\"description\":\"The version of the safety checker to use. v1 is the default CompVis safety checker. v2 uses a custom ViT model.\",\"default\":\"v1\",\"constraints\":\"Allowed values: v1, v2\"},{\"name\":\"embeddings\",\"type\":\"array\",\"required\":false,\"description\":\"The list of embeddings to use.\",\"default\":\"\"},{\"name\":\"crop_output\",\"type\":\"boolean\",\"required\":false,\"description\":\"If set to true, the output cropped to the proper aspect ratio after generating.\",\"default\":\"false\"},{\"name\":\"expand_prompt\",\"type\":\"boolean\",\"required\":false,\"description\":\"If set to true, the prompt will be expanded with additional prompts.\",\"default\":\"false\"},{\"name\":\"format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of Stable Diffusion will output the same image every time.\",\"default\":\"null\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"stability-ai/fast-sdxl/image-to-image\\\",\\n \\\"prompt\\\": \\\"an island near sea, with seagulls, moon shining over the sea, light house, boats int he background, fish flying over the sea\\\",\\n \\\"image\\\": \\\"https://fal-cdn.batuhan-941.workers.dev/files/tiger/IExuP-WICqaIesLZAZPur.jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"stability-ai/fast-sdxl/image-to-image\\\",\\n \\\"prompt\\\": \\\"an island near sea, with seagulls, moon shining over the sea, light house, boats int he background, fish flying over the sea\\\",\\n \\\"image\\\": \\\"https://fal-cdn.batuhan-941.workers.dev/files/tiger/IExuP-WICqaIesLZAZPur.jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"stability-ai/fast-sdxl/image-to-image\\\",\\n \\\"prompt\\\": \\\"an island near sea, with seagulls, moon shining over the sea, light house, boats int he background, fish flying over the sea\\\",\\n \\\"image\\\": \\\"https://fal-cdn.batuhan-941.workers.dev/files/tiger/IExuP-WICqaIesLZAZPur.jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"stability-ai/fast-sdxl/image-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Stable Diffusion XL" - modelId: "stability-ai/fast-sdxl/image-to-image" - vendor: "Stability AI" - vendorSlug: "stability-ai" - modelSlug: "fast-sdxl/image-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-04-16T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/stability-ai/fast-sdxl/inpainting.md b/model-api-reference/image-generation/stability-ai/fast-sdxl/inpainting.md deleted file mode 100644 index 7795599f..00000000 --- a/model-api-reference/image-generation/stability-ai/fast-sdxl/inpainting.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Stable Diffusion XL API Reference — Stability Sdxl / Inpainting" -description: "Stable Diffusion XL API reference for SandBase. Use model stability-ai/fast-sdxl/inpainting with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/stability-ai/fast-sdxl/inpainting" -apiReferenceJson: "{\"title\":\"Stable Diffusion XL\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Fast Sdxl Inpainting by Stability AI - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to stability-ai/fast-sdxl/inpainting.\",\"default\":\"stability-ai/fast-sdxl/inpainting\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for generating the image. Be as descriptive as possible for best results.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to use as a starting point for the generation.\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the mask to use for inpainting.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"7.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"25\",\"constraints\":\"Range: 1 to 65\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"determines how much the generated image resembles the initial image\",\"default\":\"0.95\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"expand_prompt\",\"type\":\"boolean\",\"required\":false,\"description\":\"If set to true, the prompt will be expanded with additional prompts.\",\"default\":\"false\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The list of LoRA weights to use.\",\"default\":\"\"},{\"name\":\"request_id\",\"type\":\"string\",\"required\":false,\"description\":\"An id bound to a request, can be used with response to identify the request itself.\",\"default\":\"\"},{\"name\":\"format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"embeddings\",\"type\":\"array\",\"required\":false,\"description\":\"The list of embeddings to use.\",\"default\":\"\"},{\"name\":\"safety_checker_version\",\"type\":\"string\",\"required\":false,\"description\":\"The version of the safety checker to use. v1 is the default CompVis safety checker. v2 uses a custom ViT model.\",\"default\":\"v1\",\"constraints\":\"Allowed values: v1, v2\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of Stable Diffusion will output the same image every time.\",\"default\":\"null\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"stability-ai/fast-sdxl/inpainting\\\",\\n \\\"prompt\\\": \\\"a tiger sitting on a park bench\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/CompVis/latent-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"stability-ai/fast-sdxl/inpainting\\\",\\n \\\"prompt\\\": \\\"a tiger sitting on a park bench\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/CompVis/latent-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"stability-ai/fast-sdxl/inpainting\\\",\\n \\\"prompt\\\": \\\"a tiger sitting on a park bench\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/CompVis/latent-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"stability-ai/fast-sdxl/inpainting\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Stable Diffusion XL" - modelId: "stability-ai/fast-sdxl/inpainting" - vendor: "Stability AI" - vendorSlug: "stability-ai" - modelSlug: "fast-sdxl/inpainting" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-04-16T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/stability-ai/sd/3.5-large.md b/model-api-reference/image-generation/stability-ai/sd/3.5-large.md deleted file mode 100644 index fea41cd0..00000000 --- a/model-api-reference/image-generation/stability-ai/sd/3.5-large.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Stable Diffusion 3.5 Large API Reference" -description: "Stable Diffusion 3.5 Large API reference for SandBase. Use model stability-ai/sd/3.5-large with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/stability-ai/sd/3.5-large" -apiReferenceJson: "{\"title\":\"Stable Diffusion 3.5 Large\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sd 3.5 Large by stability-ai - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to stability-ai/sd/3.5-large.\",\"default\":\"stability-ai/sd/3.5-large\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"stability-ai/sd/3.5-large\\\",\\n \\\"prompt\\\": \\\"A dreamlike Japanese garden in perpetual twilight, bathed in bioluminescent cherry blossoms that emit a soft pink-purple glow. Floating paper lanterns drift lazily through the scene, their warm light creating dancing reflections in a mirror-like koi pond. Ethereal mist weaves between ancient stone pathways lined with glowing mushrooms in pastel blues and purples. A traditional wooden bridge arches gracefully over the water, dusted with fallen petals that sparkle like stardust. The scene is captured through a cinematic lens with perfect bokeh, creating an otherworldly atmosphere. In the background, a crescent moon hangs impossibly large in the sky, surrounded by a sea of stars and auroral wisps in teal and violet. Crystal formations emerge from the ground, refracting the ambient light into rainbow prisms. The entire composition follows the golden ratio, with moody film-like color grading reminiscent of Studio Ghibli, enhanced by volumetric god rays filtering through the luminous foliage. 8K resolution, masterful photography, hyperdetailed, magical realism.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"stability-ai/sd/3.5-large\\\",\\n \\\"prompt\\\": \\\"A dreamlike Japanese garden in perpetual twilight, bathed in bioluminescent cherry blossoms that emit a soft pink-purple glow. Floating paper lanterns drift lazily through the scene, their warm light creating dancing reflections in a mirror-like koi pond. Ethereal mist weaves between ancient stone pathways lined with glowing mushrooms in pastel blues and purples. A traditional wooden bridge arches gracefully over the water, dusted with fallen petals that sparkle like stardust. The scene is captured through a cinematic lens with perfect bokeh, creating an otherworldly atmosphere. In the background, a crescent moon hangs impossibly large in the sky, surrounded by a sea of stars and auroral wisps in teal and violet. Crystal formations emerge from the ground, refracting the ambient light into rainbow prisms. The entire composition follows the golden ratio, with moody film-like color grading reminiscent of Studio Ghibli, enhanced by volumetric god rays filtering through the luminous foliage. 8K resolution, masterful photography, hyperdetailed, magical realism.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"stability-ai/sd/3.5-large\\\",\\n \\\"prompt\\\": \\\"A dreamlike Japanese garden in perpetual twilight, bathed in bioluminescent cherry blossoms that emit a soft pink-purple glow. Floating paper lanterns drift lazily through the scene, their warm light creating dancing reflections in a mirror-like koi pond. Ethereal mist weaves between ancient stone pathways lined with glowing mushrooms in pastel blues and purples. A traditional wooden bridge arches gracefully over the water, dusted with fallen petals that sparkle like stardust. The scene is captured through a cinematic lens with perfect bokeh, creating an otherworldly atmosphere. In the background, a crescent moon hangs impossibly large in the sky, surrounded by a sea of stars and auroral wisps in teal and violet. Crystal formations emerge from the ground, refracting the ambient light into rainbow prisms. The entire composition follows the golden ratio, with moody film-like color grading reminiscent of Studio Ghibli, enhanced by volumetric god rays filtering through the luminous foliage. 8K resolution, masterful photography, hyperdetailed, magical realism.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"stability-ai/sd/3.5-large\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Stable Diffusion 3.5 Large" - modelId: "stability-ai/sd/3.5-large" - vendor: "stability-ai" - vendorSlug: "stability-ai" - modelSlug: "sd/3.5-large" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-10-27T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/stability-ai/sd/3.5-medium.md b/model-api-reference/image-generation/stability-ai/sd/3.5-medium.md deleted file mode 100644 index f549bd46..00000000 --- a/model-api-reference/image-generation/stability-ai/sd/3.5-medium.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Stable Diffusion 3.5 Medium API Reference" -description: "Stable Diffusion 3.5 Medium API reference for SandBase. Use model stability-ai/sd/3.5-medium with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/stability-ai/sd/3.5-medium" -apiReferenceJson: "{\"title\":\"Stable Diffusion 3.5 Medium\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sd 3.5 Medium is stability-ai's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to stability-ai/sd/3.5-medium.\",\"default\":\"stability-ai/sd/3.5-medium\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"stability-ai/sd/3.5-medium\\\",\\n \\\"prompt\\\": \\\"A dreamlike Japanese garden in perpetual twilight, bathed in bioluminescent cherry blossoms that emit a soft pink-purple glow. Floating paper lanterns drift lazily through the scene, their warm light creating dancing reflections in a mirror-like koi pond. Ethereal mist weaves between ancient stone pathways lined with glowing mushrooms in pastel blues and purples. A traditional wooden bridge arches gracefully over the water, dusted with fallen petals that sparkle like stardust. The scene is captured through a cinematic lens with perfect bokeh, creating an otherworldly atmosphere. In the background, a crescent moon hangs impossibly large in the sky, surrounded by a sea of stars and auroral wisps in teal and violet. Crystal formations emerge from the ground, refracting the ambient light into rainbow prisms. The entire composition follows the golden ratio, with moody film-like color grading reminiscent of Studio Ghibli, enhanced by volumetric god rays filtering through the luminous foliage. 8K resolution, masterful photography, hyperdetailed, magical realism.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"stability-ai/sd/3.5-medium\\\",\\n \\\"prompt\\\": \\\"A dreamlike Japanese garden in perpetual twilight, bathed in bioluminescent cherry blossoms that emit a soft pink-purple glow. Floating paper lanterns drift lazily through the scene, their warm light creating dancing reflections in a mirror-like koi pond. Ethereal mist weaves between ancient stone pathways lined with glowing mushrooms in pastel blues and purples. A traditional wooden bridge arches gracefully over the water, dusted with fallen petals that sparkle like stardust. The scene is captured through a cinematic lens with perfect bokeh, creating an otherworldly atmosphere. In the background, a crescent moon hangs impossibly large in the sky, surrounded by a sea of stars and auroral wisps in teal and violet. Crystal formations emerge from the ground, refracting the ambient light into rainbow prisms. The entire composition follows the golden ratio, with moody film-like color grading reminiscent of Studio Ghibli, enhanced by volumetric god rays filtering through the luminous foliage. 8K resolution, masterful photography, hyperdetailed, magical realism.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"stability-ai/sd/3.5-medium\\\",\\n \\\"prompt\\\": \\\"A dreamlike Japanese garden in perpetual twilight, bathed in bioluminescent cherry blossoms that emit a soft pink-purple glow. Floating paper lanterns drift lazily through the scene, their warm light creating dancing reflections in a mirror-like koi pond. Ethereal mist weaves between ancient stone pathways lined with glowing mushrooms in pastel blues and purples. A traditional wooden bridge arches gracefully over the water, dusted with fallen petals that sparkle like stardust. The scene is captured through a cinematic lens with perfect bokeh, creating an otherworldly atmosphere. In the background, a crescent moon hangs impossibly large in the sky, surrounded by a sea of stars and auroral wisps in teal and violet. Crystal formations emerge from the ground, refracting the ambient light into rainbow prisms. The entire composition follows the golden ratio, with moody film-like color grading reminiscent of Studio Ghibli, enhanced by volumetric god rays filtering through the luminous foliage. 8K resolution, masterful photography, hyperdetailed, magical realism.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"stability-ai/sd/3.5-medium\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Stable Diffusion 3.5 Medium" - modelId: "stability-ai/sd/3.5-medium" - vendor: "stability-ai" - vendorSlug: "stability-ai" - modelSlug: "sd/3.5-medium" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-10-27T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/stability-ai/sdxl-controlnet-union.md b/model-api-reference/image-generation/stability-ai/sdxl-controlnet-union.md deleted file mode 100644 index 85ffd4bf..00000000 --- a/model-api-reference/image-generation/stability-ai/sdxl-controlnet-union.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "SDXL ControlNet Union API Reference — Stability Controlnet Union" -description: "SDXL ControlNet Union API reference for SandBase. Use model stability-ai/sdxl-controlnet-union with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/stability-ai/sdxl-controlnet-union" -apiReferenceJson: "{\"title\":\"SDXL ControlNet Union\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sdxl Controlnet Union is Stability AI's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to stability-ai/sdxl-controlnet-union.\",\"default\":\"stability-ai/sdxl-controlnet-union\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for generating the image. Be as descriptive as possible for best results.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"7.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"35\",\"constraints\":\"Range: 1 to 70\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of Stable Diffusion will output the same image every time.\",\"default\":\"null\"},{\"name\":\"openpose_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the control image.\",\"default\":\"null\"},{\"name\":\"segmentation_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the control image.\",\"default\":\"null\"},{\"name\":\"request_id\",\"type\":\"string\",\"required\":false,\"description\":\"An id bound to a request, can be used with response to identify the request itself.\",\"default\":\"\"},{\"name\":\"teed_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the control image.\",\"default\":\"null\"},{\"name\":\"canny_preprocess\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to preprocess the canny image.\",\"default\":\"true\"},{\"name\":\"expand_prompt\",\"type\":\"boolean\",\"required\":false,\"description\":\"If set to true, the prompt will be expanded with additional prompts.\",\"default\":\"false\"},{\"name\":\"normal_preprocess\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to preprocess the normal image.\",\"default\":\"true\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The list of LoRA weights to use.\",\"default\":\"\"},{\"name\":\"depth_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the control image.\",\"default\":\"null\"},{\"name\":\"teed_preprocess\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to preprocess the teed image.\",\"default\":\"true\"},{\"name\":\"normal_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the control image.\",\"default\":\"null\"},{\"name\":\"depth_preprocess\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to preprocess the depth image.\",\"default\":\"true\"},{\"name\":\"openpose_preprocess\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to preprocess the openpose image.\",\"default\":\"true\"},{\"name\":\"canny_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the control image.\",\"default\":\"null\"},{\"name\":\"safety_checker_version\",\"type\":\"string\",\"required\":false,\"description\":\"The version of the safety checker to use. v1 is the default CompVis safety checker. v2 uses a custom ViT model.\",\"default\":\"v1\",\"constraints\":\"Allowed values: v1, v2\"},{\"name\":\"controlnet_conditioning_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the controlnet conditioning.\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"embeddings\",\"type\":\"array\",\"required\":false,\"description\":\"The list of embeddings to use.\",\"default\":\"\"},{\"name\":\"segmentation_preprocess\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to preprocess the segmentation image.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"stability-ai/sdxl-controlnet-union\\\",\\n \\\"prompt\\\": \\\"Ice fortress, aurora skies, polar wildlife, twilight\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"stability-ai/sdxl-controlnet-union\\\",\\n \\\"prompt\\\": \\\"Ice fortress, aurora skies, polar wildlife, twilight\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"stability-ai/sdxl-controlnet-union\\\",\\n \\\"prompt\\\": \\\"Ice fortress, aurora skies, polar wildlife, twilight\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"stability-ai/sdxl-controlnet-union\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "SDXL ControlNet Union" - modelId: "stability-ai/sdxl-controlnet-union" - vendor: "Stability AI" - vendorSlug: "stability-ai" - modelSlug: "sdxl-controlnet-union" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-07-31T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/stability-ai/sdxl-controlnet-union/image-to-image.md b/model-api-reference/image-generation/stability-ai/sdxl-controlnet-union/image-to-image.md deleted file mode 100644 index 8beaa5b6..00000000 --- a/model-api-reference/image-generation/stability-ai/sdxl-controlnet-union/image-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "SDXL ControlNet Union API Reference — Stability / Image To Image" -description: "SDXL ControlNet Union API reference for SandBase. Use model stability-ai/sdxl-controlnet-union/image-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/stability-ai/sdxl-controlnet-union/image-to-image" -apiReferenceJson: "{\"title\":\"SDXL ControlNet Union\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sdxl Controlnet Union by Stability AI - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to stability-ai/sdxl-controlnet-union/image-to-image.\",\"default\":\"stability-ai/sdxl-controlnet-union/image-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for generating the image. Be as descriptive as possible for best results.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to use as a starting point for the generation.\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"determines how much the generated image resembles the initial image\",\"default\":\"0.95\",\"constraints\":\"Range: 0.05 to 1\"},{\"name\":\"canny_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the control image.\",\"default\":\"null\"},{\"name\":\"openpose_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the control image.\",\"default\":\"null\"},{\"name\":\"depth_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the control image.\",\"default\":\"null\"},{\"name\":\"teed_preprocess\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to preprocess the teed image.\",\"default\":\"true\"},{\"name\":\"canny_preprocess\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to preprocess the canny image.\",\"default\":\"true\"},{\"name\":\"teed_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the control image.\",\"default\":\"null\"},{\"name\":\"normal_preprocess\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to preprocess the normal image.\",\"default\":\"true\"},{\"name\":\"segmentation_preprocess\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to preprocess the segmentation image.\",\"default\":\"true\"},{\"name\":\"openpose_preprocess\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to preprocess the openpose image.\",\"default\":\"true\"},{\"name\":\"segmentation_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the control image.\",\"default\":\"null\"},{\"name\":\"normal_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the control image.\",\"default\":\"null\"},{\"name\":\"depth_preprocess\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to preprocess the depth image.\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of Stable Diffusion will output the same image every time.\",\"default\":\"null\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"35\",\"constraints\":\"Range: 1 to 70\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"7.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"stability-ai/sdxl-controlnet-union/image-to-image\\\",\\n \\\"prompt\\\": \\\"Ice fortress, aurora skies, polar wildlife, twilight\\\",\\n \\\"image\\\": \\\"https://fal-cdn.batuhan-941.workers.dev/files/tiger/IExuP-WICqaIesLZAZPur.jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"stability-ai/sdxl-controlnet-union/image-to-image\\\",\\n \\\"prompt\\\": \\\"Ice fortress, aurora skies, polar wildlife, twilight\\\",\\n \\\"image\\\": \\\"https://fal-cdn.batuhan-941.workers.dev/files/tiger/IExuP-WICqaIesLZAZPur.jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"stability-ai/sdxl-controlnet-union/image-to-image\\\",\\n \\\"prompt\\\": \\\"Ice fortress, aurora skies, polar wildlife, twilight\\\",\\n \\\"image\\\": \\\"https://fal-cdn.batuhan-941.workers.dev/files/tiger/IExuP-WICqaIesLZAZPur.jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"stability-ai/sdxl-controlnet-union/image-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "SDXL ControlNet Union" - modelId: "stability-ai/sdxl-controlnet-union/image-to-image" - vendor: "Stability AI" - vendorSlug: "stability-ai" - modelSlug: "sdxl-controlnet-union/image-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-07-31T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/stability-ai/sdxl-controlnet-union/inpainting.md b/model-api-reference/image-generation/stability-ai/sdxl-controlnet-union/inpainting.md deleted file mode 100644 index 2c2593ad..00000000 --- a/model-api-reference/image-generation/stability-ai/sdxl-controlnet-union/inpainting.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "SDXL ControlNet Union API Reference — Stability / Inpainting" -description: "SDXL ControlNet Union API reference for SandBase. Use model stability-ai/sdxl-controlnet-union/inpainting with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/stability-ai/sdxl-controlnet-union/inpainting" -apiReferenceJson: "{\"title\":\"SDXL ControlNet Union\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sdxl Controlnet Union Inpainting by Stability AI - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to stability-ai/sdxl-controlnet-union/inpainting.\",\"default\":\"stability-ai/sdxl-controlnet-union/inpainting\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for generating the image. Be as descriptive as possible for best results.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to use as a starting point for the generation.\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the mask to use for inpainting.\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"determines how much the generated image resembles the initial image\",\"default\":\"0.95\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"teed_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the control image.\",\"default\":\"null\"},{\"name\":\"segmentation_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the control image.\",\"default\":\"null\"},{\"name\":\"normal_preprocess\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to preprocess the normal image.\",\"default\":\"true\"},{\"name\":\"teed_preprocess\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to preprocess the teed image.\",\"default\":\"true\"},{\"name\":\"depth_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the control image.\",\"default\":\"null\"},{\"name\":\"depth_preprocess\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to preprocess the depth image.\",\"default\":\"true\"},{\"name\":\"canny_preprocess\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to preprocess the canny image.\",\"default\":\"true\"},{\"name\":\"openpose_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the control image.\",\"default\":\"null\"},{\"name\":\"normal_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the control image.\",\"default\":\"null\"},{\"name\":\"canny_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the control image.\",\"default\":\"null\"},{\"name\":\"openpose_preprocess\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to preprocess the openpose image.\",\"default\":\"true\"},{\"name\":\"segmentation_preprocess\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to preprocess the segmentation image.\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of Stable Diffusion will output the same image every time.\",\"default\":\"null\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"35\",\"constraints\":\"Range: 1 to 70\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"7.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"stability-ai/sdxl-controlnet-union/inpainting\\\",\\n \\\"prompt\\\": \\\"Ice fortress, aurora skies, polar wildlife, twilight\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/CompVis/latent-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"stability-ai/sdxl-controlnet-union/inpainting\\\",\\n \\\"prompt\\\": \\\"Ice fortress, aurora skies, polar wildlife, twilight\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/CompVis/latent-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"stability-ai/sdxl-controlnet-union/inpainting\\\",\\n \\\"prompt\\\": \\\"Ice fortress, aurora skies, polar wildlife, twilight\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/CompVis/latent-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"stability-ai/sdxl-controlnet-union/inpainting\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "SDXL ControlNet Union" - modelId: "stability-ai/sdxl-controlnet-union/inpainting" - vendor: "Stability AI" - vendorSlug: "stability-ai" - modelSlug: "sdxl-controlnet-union/inpainting" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-07-31T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/stability-ai/stable-cascade.md b/model-api-reference/image-generation/stability-ai/stable-cascade.md deleted file mode 100644 index 696f3f91..00000000 --- a/model-api-reference/image-generation/stability-ai/stable-cascade.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Stable Cascade API Reference" -description: "Stable Cascade API reference for SandBase. Use model stability-ai/stable-cascade with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/stability-ai/stable-cascade" -apiReferenceJson: "{\"title\":\"Stable Cascade\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Stable Cascade by Stability AI - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to stability-ai/stable-cascade.\",\"default\":\"stability-ai/stable-cascade\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for generating the image. Be as descriptive as possible for best results.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"4\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of Stable Cascade will output the same image every time.\"},{\"name\":\"first_stage_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of steps to run the first stage for.\",\"default\":\"20\",\"constraints\":\"Range: 4 to 40\"},{\"name\":\"second_stage_guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"second_stage_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of steps to run the second stage for.\",\"default\":\"10\",\"constraints\":\"Range: 4 to 24\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"stability-ai/stable-cascade\\\",\\n \\\"prompt\\\": \\\"An image of a shiba inu, donning a spacesuit and helmet\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"stability-ai/stable-cascade\\\",\\n \\\"prompt\\\": \\\"An image of a shiba inu, donning a spacesuit and helmet\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"stability-ai/stable-cascade\\\",\\n \\\"prompt\\\": \\\"An image of a shiba inu, donning a spacesuit and helmet\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"stability-ai/stable-cascade\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Stable Cascade" - modelId: "stability-ai/stable-cascade" - vendor: "Stability AI" - vendorSlug: "stability-ai" - modelSlug: "stable-cascade" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-06-25T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/stability-ai/stable-cascade/sote-diffusion.md b/model-api-reference/image-generation/stability-ai/stable-cascade/sote-diffusion.md deleted file mode 100644 index b6b137a3..00000000 --- a/model-api-reference/image-generation/stability-ai/stable-cascade/sote-diffusion.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "SoteDiffusion API Reference" -description: "SoteDiffusion API reference for SandBase. Use model stability-ai/stable-cascade/sote-diffusion with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/stability-ai/stable-cascade/sote-diffusion" -apiReferenceJson: "{\"title\":\"SoteDiffusion\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Stable Cascade Sote Diffusion is Stability AI's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to stability-ai/stable-cascade/sote-diffusion.\",\"default\":\"stability-ai/stable-cascade/sote-diffusion\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for generating the image. Be as descriptive as possible for best results.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of Stable Cascade will output the same image every time.\"},{\"name\":\"second_stage_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of steps to run the second stage for.\",\"default\":\"10\",\"constraints\":\"Range: 4 to 24\"},{\"name\":\"first_stage_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of steps to run the first stage for.\",\"default\":\"25\",\"constraints\":\"Range: 4 to 50\"},{\"name\":\"second_stage_guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"2\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"8\",\"constraints\":\"Range: 0 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"stability-ai/stable-cascade/sote-diffusion\\\",\\n \\\"prompt\\\": \\\"newest, extremely aesthetic, best quality, 1girl, solo, pink hair, blue eyes, long hair, looking at viewer, smile, black background, holding a sign, the text on the sign says \\\\\\\"Hello\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"stability-ai/stable-cascade/sote-diffusion\\\",\\n \\\"prompt\\\": \\\"newest, extremely aesthetic, best quality, 1girl, solo, pink hair, blue eyes, long hair, looking at viewer, smile, black background, holding a sign, the text on the sign says \\\\\\\"Hello\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"stability-ai/stable-cascade/sote-diffusion\\\",\\n \\\"prompt\\\": \\\"newest, extremely aesthetic, best quality, 1girl, solo, pink hair, blue eyes, long hair, looking at viewer, smile, black background, holding a sign, the text on the sign says \\\\\\\"Hello\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"stability-ai/stable-cascade/sote-diffusion\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "SoteDiffusion" - modelId: "stability-ai/stable-cascade/sote-diffusion" - vendor: "Stability AI" - vendorSlug: "stability-ai" - modelSlug: "stable-cascade/sote-diffusion" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-06-10T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/stability-ai/stable-diffusion-v15.md b/model-api-reference/image-generation/stability-ai/stable-diffusion-v15.md deleted file mode 100644 index 3dd93b4a..00000000 --- a/model-api-reference/image-generation/stability-ai/stable-diffusion-v15.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Stable Diffusion v1.5 API Reference" -description: "Stable Diffusion v1.5 API reference for SandBase. Use model stability-ai/stable-diffusion-v15 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/stability-ai/stable-diffusion-v15" -apiReferenceJson: "{\"title\":\"Stable Diffusion v1.5\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Stable Diffusion V15 by Stability AI - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to stability-ai/stable-diffusion-v15.\",\"default\":\"stability-ai/stable-diffusion-v15\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for generating the image. Be as descriptive as possible for best results.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"7.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"25\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of Stable Diffusion will output the same image every time.\",\"default\":\"null\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The list of LoRA weights to use.\",\"default\":\"\"},{\"name\":\"embeddings\",\"type\":\"array\",\"required\":false,\"description\":\"The list of embeddings to use.\",\"default\":\"\"},{\"name\":\"safety_checker_version\",\"type\":\"string\",\"required\":false,\"description\":\"The version of the safety checker to use. v1 is the default CompVis safety checker. v2 uses a custom ViT model.\",\"default\":\"v1\",\"constraints\":\"Allowed values: v1, v2\"},{\"name\":\"expand_prompt\",\"type\":\"boolean\",\"required\":false,\"description\":\"If set to true, the prompt will be expanded with additional prompts.\",\"default\":\"false\"},{\"name\":\"request_id\",\"type\":\"string\",\"required\":false,\"description\":\"An id bound to a request, can be used with response to identify the request itself.\",\"default\":\"\"},{\"name\":\"format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"stability-ai/stable-diffusion-v15\\\",\\n \\\"prompt\\\": \\\"photo of a rhino dressed suit and tie sitting at a table in a bar with a bar stools, award winning photography, Elke vogelsang\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"stability-ai/stable-diffusion-v15\\\",\\n \\\"prompt\\\": \\\"photo of a rhino dressed suit and tie sitting at a table in a bar with a bar stools, award winning photography, Elke vogelsang\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"stability-ai/stable-diffusion-v15\\\",\\n \\\"prompt\\\": \\\"photo of a rhino dressed suit and tie sitting at a table in a bar with a bar stools, award winning photography, Elke vogelsang\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"stability-ai/stable-diffusion-v15\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Stable Diffusion v1.5" - modelId: "stability-ai/stable-diffusion-v15" - vendor: "Stability AI" - vendorSlug: "stability-ai" - modelSlug: "stable-diffusion-v15" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-04-16T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/stability-ai/stable-diffusion-v3-medium.md b/model-api-reference/image-generation/stability-ai/stable-diffusion-v3-medium.md deleted file mode 100644 index 82bfa90f..00000000 --- a/model-api-reference/image-generation/stability-ai/stable-diffusion-v3-medium.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Stable Diffusion V3 API Reference — Stability Diffusion V3 Medium" -description: "Stable Diffusion V3 API reference for SandBase. Use model stability-ai/stable-diffusion-v3-medium with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/stability-ai/stable-diffusion-v3-medium" -apiReferenceJson: "{\"title\":\"Stable Diffusion V3\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Stable Diffusion V3 Medium by Stability AI - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to stability-ai/stable-diffusion-v3-medium.\",\"default\":\"stability-ai/stable-diffusion-v3-medium\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of Stable Diffusion will output the same image every time.\"},{\"name\":\"prompt_expansion\",\"type\":\"boolean\",\"required\":false,\"description\":\"If set to true, prompt will be upsampled with more details.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"stability-ai/stable-diffusion-v3-medium\\\",\\n \\\"prompt\\\": \\\"Digital art, portrait of an anthropomorphic roaring Tiger warrior with full armor, close up in the middle of a battle, behind him there is a banner with the text \\\\\\\"Open Source\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"stability-ai/stable-diffusion-v3-medium\\\",\\n \\\"prompt\\\": \\\"Digital art, portrait of an anthropomorphic roaring Tiger warrior with full armor, close up in the middle of a battle, behind him there is a banner with the text \\\\\\\"Open Source\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"stability-ai/stable-diffusion-v3-medium\\\",\\n \\\"prompt\\\": \\\"Digital art, portrait of an anthropomorphic roaring Tiger warrior with full armor, close up in the middle of a battle, behind him there is a banner with the text \\\\\\\"Open Source\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"stability-ai/stable-diffusion-v3-medium\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Stable Diffusion V3" - modelId: "stability-ai/stable-diffusion-v3-medium" - vendor: "Stability AI" - vendorSlug: "stability-ai" - modelSlug: "stable-diffusion-v3-medium" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-08-20T00:00:00Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/stability-ai/stable-diffusion-v3-medium/image-to-image.md b/model-api-reference/image-generation/stability-ai/stable-diffusion-v3-medium/image-to-image.md deleted file mode 100644 index 87b73dd1..00000000 --- a/model-api-reference/image-generation/stability-ai/stable-diffusion-v3-medium/image-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Stable Diffusion V3 API Reference — Stability / Image To Image" -description: "Stable Diffusion V3 API reference for SandBase. Use model stability-ai/stable-diffusion-v3-medium/image-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/stability-ai/stable-diffusion-v3-medium/image-to-image" -apiReferenceJson: "{\"title\":\"Stable Diffusion V3\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Stable Diffusion V3 Medium is Stability AI's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to stability-ai/stable-diffusion-v3-medium/image-to-image.\",\"default\":\"stability-ai/stable-diffusion-v3-medium/image-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The image URL to generate an image from.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.\",\"default\":\"5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the image-to-image transformation.\",\"default\":\"0.9\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"prompt_expansion\",\"type\":\"boolean\",\"required\":false,\"description\":\"If set to true, prompt will be upsampled with more details.\",\"default\":\"false\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of Stable Diffusion will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"stability-ai/stable-diffusion-v3-medium/image-to-image\\\",\\n \\\"prompt\\\": \\\"cat wizard, gandalf, lord of the rings, detailed, fantasy, cute, adorable, Pixar, Disney, 8k\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/stability/stable-diffusion-v3-medium/image-to-image/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"stability-ai/stable-diffusion-v3-medium/image-to-image\\\",\\n \\\"prompt\\\": \\\"cat wizard, gandalf, lord of the rings, detailed, fantasy, cute, adorable, Pixar, Disney, 8k\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/stability/stable-diffusion-v3-medium/image-to-image/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"stability-ai/stable-diffusion-v3-medium/image-to-image\\\",\\n \\\"prompt\\\": \\\"cat wizard, gandalf, lord of the rings, detailed, fantasy, cute, adorable, Pixar, Disney, 8k\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/stability/stable-diffusion-v3-medium/image-to-image/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"stability-ai/stable-diffusion-v3-medium/image-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Stable Diffusion V3" - modelId: "stability-ai/stable-diffusion-v3-medium/image-to-image" - vendor: "Stability AI" - vendorSlug: "stability-ai" - modelSlug: "stable-diffusion-v3-medium/image-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-06-12T00:00:00Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/sync/lipsync/react-1.md b/model-api-reference/image-generation/sync/lipsync/react-1.md deleted file mode 100644 index 26f2141e..00000000 --- a/model-api-reference/image-generation/sync/lipsync/react-1.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Sync React-1 reference moved" -description: "The sync/lipsync/react-1 reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/sync/lipsync/react-1 -robots: noindex,follow ---- - -# This page has moved - -`sync/lipsync/react-1` is a video model. Its API reference now lives at [Sync React-1](/model-api-reference/video-generation/sync/lipsync/react-1) under Video Generation. diff --git a/model-api-reference/image-generation/sync/lipsync/v2.md b/model-api-reference/image-generation/sync/lipsync/v2.md deleted file mode 100644 index c3fe70be..00000000 --- a/model-api-reference/image-generation/sync/lipsync/v2.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Sync Lipsync 2.0 reference moved" -description: "The sync/lipsync/v2 reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/sync/lipsync/v2 -robots: noindex,follow ---- - -# This page has moved - -`sync/lipsync/v2` is a video model. Its API reference now lives at [Sync Lipsync 2.0](/model-api-reference/video-generation/sync/lipsync/v2) under Video Generation. diff --git a/model-api-reference/image-generation/sync/lipsync/v2/pro.md b/model-api-reference/image-generation/sync/lipsync/v2/pro.md deleted file mode 100644 index 2b29f3e2..00000000 --- a/model-api-reference/image-generation/sync/lipsync/v2/pro.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Sync Lipsync reference moved" -description: "The sync/lipsync/v2/pro reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/sync/lipsync/v2/pro -robots: noindex,follow ---- - -# This page has moved - -`sync/lipsync/v2/pro` is a video model. Its API reference now lives at [Sync Lipsync](/model-api-reference/video-generation/sync/lipsync/v2/pro) under Video Generation. diff --git a/model-api-reference/image-generation/sync/lipsync/v3.md b/model-api-reference/image-generation/sync/lipsync/v3.md deleted file mode 100644 index 552c1b5a..00000000 --- a/model-api-reference/image-generation/sync/lipsync/v3.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "sync-3 Lipsync reference moved" -description: "The sync/lipsync/v3 reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/sync/lipsync/v3 -robots: noindex,follow ---- - -# This page has moved - -`sync/lipsync/v3` is a video model. Its API reference now lives at [sync-3 Lipsync](/model-api-reference/video-generation/sync/lipsync/v3) under Video Generation. diff --git a/model-api-reference/image-generation/sync/sync-lipsync.md b/model-api-reference/image-generation/sync/sync-lipsync.md deleted file mode 100644 index 9bdb36cc..00000000 --- a/model-api-reference/image-generation/sync/sync-lipsync.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "sync.so -- lipsync 1.9.0-beta reference moved" -description: "The sync/sync-lipsync reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/sync/sync-lipsync -robots: noindex,follow ---- - -# This page has moved - -`sync/sync-lipsync` is a video model. Its API reference now lives at [sync.so -- lipsync 1.9.0-beta](/model-api-reference/video-generation/sync/sync-lipsync) under Video Generation. diff --git a/model-api-reference/image-generation/tencent/hunyuan-3d/3.0/image-to-3d.md b/model-api-reference/image-generation/tencent/hunyuan-3d/3.0/image-to-3d.md new file mode 100644 index 00000000..3497a1d3 --- /dev/null +++ b/model-api-reference/image-generation/tencent/hunyuan-3d/3.0/image-to-3d.md @@ -0,0 +1,21 @@ +--- +title: "Hunyuan 3D 3.0 Image to 3D API Reference" +description: "Hunyuan 3D 3.0 Image to 3D API reference for SandBase. Use model tencent/hunyuan-3d/3.0/image-to-3d with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/tencent/hunyuan-3d/3.0/image-to-3d" +apiReferenceJson: "{\"title\":\"Hunyuan 3D 3.0 Image to 3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan 3d V3 is Tencent's image-to-3D AI model. Transform photographs into production-ready 3D meshes with accurate geometry and texture mapping.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-3d/3.0/image-to-3d.\",\"default\":\"tencent/hunyuan-3d/3.0/image-to-3d\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of image to use while generating the 3D model.\"},{\"name\":\"enable_pbr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate PBR materials (metallic, roughness, normal). Ignored for Geometry output.\",\"default\":\"false\"},{\"name\":\"polygon_type\",\"type\":\"string\",\"required\":false,\"description\":\"Polygon type. Only takes effect when generate_type is LowPoly.\",\"default\":\"triangle\",\"constraints\":\"Allowed values: triangle, quadrilateral\"},{\"name\":\"generate_type\",\"type\":\"string\",\"required\":false,\"description\":\"Normal: textured model. LowPoly: polygon reduction. Geometry: white model without texture.\",\"default\":\"Normal\",\"constraints\":\"Allowed values: Normal, LowPoly, Geometry\"},{\"name\":\"face_count\",\"type\":\"integer\",\"required\":false,\"description\":\"Target polygon face count (custom face count is billed as an add-on).\",\"default\":\"500000\",\"constraints\":\"Range: 40000 to 1500000\"},{\"name\":\"back_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional back view image URL for multi-view reconstruction.\"},{\"name\":\"left_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional left view image URL for multi-view reconstruction.\"},{\"name\":\"right_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional right view image URL for multi-view reconstruction.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.0/image-to-3d\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/v3/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.0/image-to-3d\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/v3/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.0/image-to-3d\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/v3/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.0/image-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Hunyuan 3D 3.0 Image to 3D" + modelId: "tencent/hunyuan-3d/3.0/image-to-3d" + vendor: "Tencent" + vendorSlug: "tencent" + modelSlug: "hunyuan-3d/3.0/image-to-3d" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2025-12-16T22:01:39.729Z" + capabilities: ["image-to-3d"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/part.md b/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/part.md deleted file mode 100644 index e6b99d68..00000000 --- a/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/part.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan 3D Part Splitter API Reference" -description: "Hunyuan 3D Part Splitter API reference for SandBase. Use model tencent/hunyuan-3d/3.1/part with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/tencent/hunyuan-3d/3.1/part" -apiReferenceJson: "{\"title\":\"Hunyuan 3D Part Splitter\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan 3d 3.1 Part by Tencent - advanced AI model for 3d-to-3d. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-3d/3.1/part.\",\"default\":\"tencent/hunyuan-3d/3.1/part\"},{\"name\":\"input_file_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of FBX file to split into parts. ONLY FBX format supported. Max size: 100MB, face count ≤30,000. Recommended: AIGC-generated models.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"3d-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/part\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/part\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/part\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/part\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan 3D Part Splitter" - modelId: "tencent/hunyuan-3d/3.1/part" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-3d/3.1/part" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-27T21:42:17.195Z" - capabilities: ["3d-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/pro/image-to-3d.md b/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/pro/image-to-3d.md index 3d11e212..651ac6bf 100644 --- a/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/pro/image-to-3d.md +++ b/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/pro/image-to-3d.md @@ -4,7 +4,7 @@ description: "Hunyuan 3D 3.1 Pro Image to 3D API reference for SandBase. Use mod aside: false outline: false apiReferenceKey: "image/tencent/hunyuan-3d/3.1/pro/image-to-3d" -apiReferenceJson: "{\"title\":\"Hunyuan 3D 3.1 Pro Image to 3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan 3d 3.1 Pro by Tencent - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-3d/3.1/pro/image-to-3d.\",\"default\":\"tencent/hunyuan-3d/3.1/pro/image-to-3d\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Front view image URL. Resolution: 128-5000px, max 8MB, formats: JPG/PNG/WEBP. Tips: simple background, single object, object >50% of frame.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/pro/image-to-3d\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/3.1/pro/image-to-3d/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/pro/image-to-3d\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/3.1/pro/image-to-3d/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/pro/image-to-3d\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/3.1/pro/image-to-3d/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/pro/image-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Hunyuan 3D 3.1 Pro Image to 3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan 3d 3.1 Pro by Tencent - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-3d/3.1/pro/image-to-3d.\",\"default\":\"tencent/hunyuan-3d/3.1/pro/image-to-3d\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Front view image URL. Resolution: 128-5000px, max 8MB, formats: JPG/PNG/WEBP. Tips: simple background, single object, object >50% of frame.\"},{\"name\":\"back_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional back view image URL for multi-view reconstruction.\"},{\"name\":\"bottom_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional bottom view image URL for multi-view reconstruction.\"},{\"name\":\"enable_pbr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate PBR materials (metallic, roughness, normal). Ignored for Geometry output.\",\"default\":\"false\"},{\"name\":\"face_count\",\"type\":\"integer\",\"required\":false,\"description\":\"Target polygon face count (custom face count is billed as an add-on).\",\"constraints\":\"Range: 40000 to 1500000\"},{\"name\":\"generate_type\",\"type\":\"string\",\"required\":false,\"description\":\"Normal: textured model. Geometry: geometry-only white model.\",\"default\":\"Normal\",\"constraints\":\"Allowed values: Normal, Geometry\"},{\"name\":\"left_front_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional left-front view image URL for multi-view reconstruction.\"},{\"name\":\"left_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional left view image URL for multi-view reconstruction.\"},{\"name\":\"right_front_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional right-front view image URL for multi-view reconstruction.\"},{\"name\":\"right_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional right view image URL for multi-view reconstruction.\"},{\"name\":\"top_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional top view image URL for multi-view reconstruction.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/pro/image-to-3d\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/3.1/pro/image-to-3d/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/pro/image-to-3d\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/3.1/pro/image-to-3d/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/pro/image-to-3d\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/3.1/pro/image-to-3d/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/pro/image-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Hunyuan 3D 3.1 Pro Image to 3D" modelId: "tencent/hunyuan-3d/3.1/pro/image-to-3d" diff --git a/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/pro/text-to-3d.md b/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/pro/text-to-3d.md index 5f7a248d..55b3f110 100644 --- a/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/pro/text-to-3d.md +++ b/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/pro/text-to-3d.md @@ -4,7 +4,7 @@ description: "Hunyuan 3D 3.1 Pro Text to 3D API reference for SandBase. Use mode aside: false outline: false apiReferenceKey: "image/tencent/hunyuan-3d/3.1/pro/text-to-3d" -apiReferenceJson: "{\"title\":\"Hunyuan 3D 3.1 Pro Text to 3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan 3d 3.1 Pro is Tencent's text-to-3D AI model. Turn written descriptions into textured 3D objects with realistic geometry and materials.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-3d/3.1/pro/text-to-3d.\",\"default\":\"tencent/hunyuan-3d/3.1/pro/text-to-3d\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of the 3D content to generate. Max 1024 UTF-8 characters.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/pro/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A super cool space ship with details\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/pro/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A super cool space ship with details\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/pro/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A super cool space ship with details\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/pro/text-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Hunyuan 3D 3.1 Pro Text to 3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan 3d 3.1 Pro is Tencent's text-to-3D AI model. Turn written descriptions into textured 3D objects with realistic geometry and materials.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-3d/3.1/pro/text-to-3d.\",\"default\":\"tencent/hunyuan-3d/3.1/pro/text-to-3d\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of the 3D content to generate. Max 1024 UTF-8 characters.\"},{\"name\":\"enable_pbr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate PBR materials (metallic, roughness, normal). Ignored for Geometry output.\",\"default\":\"false\"},{\"name\":\"face_count\",\"type\":\"integer\",\"required\":false,\"description\":\"Target polygon face count (custom face count is billed as an add-on).\",\"constraints\":\"Range: 40000 to 1500000\"},{\"name\":\"generate_type\",\"type\":\"string\",\"required\":false,\"description\":\"Normal: textured model. Geometry: geometry-only white model.\",\"default\":\"Normal\",\"constraints\":\"Allowed values: Normal, Geometry\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/pro/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A super cool space ship with details\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/pro/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A super cool space ship with details\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/pro/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A super cool space ship with details\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/pro/text-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Hunyuan 3D 3.1 Pro Text to 3D" modelId: "tencent/hunyuan-3d/3.1/pro/text-to-3d" diff --git a/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/rapid/image-to-3d.md b/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/rapid/image-to-3d.md deleted file mode 100644 index 87224beb..00000000 --- a/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/rapid/image-to-3d.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan 3D 3.1 Rapid Image to 3D API Reference" -description: "Hunyuan 3D 3.1 Rapid Image to 3D API reference for SandBase. Use model tencent/hunyuan-3d/3.1/rapid/image-to-3d with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/tencent/hunyuan-3d/3.1/rapid/image-to-3d" -apiReferenceJson: "{\"title\":\"Hunyuan 3D 3.1 Rapid Image to 3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan 3d 3.1 Rapid by Tencent - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-3d/3.1/rapid/image-to-3d.\",\"default\":\"tencent/hunyuan-3d/3.1/rapid/image-to-3d\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Front view image URL. Resolution: 128-5000px, max 8MB (recommended ≤6MB for base64 encoding), formats: JPG/PNG/WEBP. Tips: simple background, single object, object >50% of frame.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/rapid/image-to-3d\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/3.1/rapid/image-to-3d/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/rapid/image-to-3d\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/3.1/rapid/image-to-3d/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/rapid/image-to-3d\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/3.1/rapid/image-to-3d/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/rapid/image-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan 3D 3.1 Rapid Image to 3D" - modelId: "tencent/hunyuan-3d/3.1/rapid/image-to-3d" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-3d/3.1/rapid/image-to-3d" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-27T22:51:01.772Z" - capabilities: ["image-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/rapid/text-to-3d.md b/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/rapid/text-to-3d.md deleted file mode 100644 index 689a71b4..00000000 --- a/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/rapid/text-to-3d.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan 3D 3.1 Rapid Text to 3D API Reference" -description: "Hunyuan 3D 3.1 Rapid Text to 3D API reference for SandBase. Use model tencent/hunyuan-3d/3.1/rapid/text-to-3d with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/tencent/hunyuan-3d/3.1/rapid/text-to-3d" -apiReferenceJson: "{\"title\":\"Hunyuan 3D 3.1 Rapid Text to 3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan 3d 3.1 Rapid is Tencent's text-to-3D AI model. Turn written descriptions into textured 3D objects with realistic geometry and materials.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-3d/3.1/rapid/text-to-3d.\",\"default\":\"tencent/hunyuan-3d/3.1/rapid/text-to-3d\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of the 3D content to generate. Max 200 UTF-8 characters.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/rapid/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A rustic wooden treasure chest with metal bands and ornate lock\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/rapid/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A rustic wooden treasure chest with metal bands and ornate lock\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/rapid/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A rustic wooden treasure chest with metal bands and ornate lock\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/rapid/text-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan 3D 3.1 Rapid Text to 3D" - modelId: "tencent/hunyuan-3d/3.1/rapid/text-to-3d" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-3d/3.1/rapid/text-to-3d" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-29T11:55:24.432Z" - capabilities: ["text-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/smart-topology.md b/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/smart-topology.md deleted file mode 100644 index 8d57eab0..00000000 --- a/model-api-reference/image-generation/tencent/hunyuan-3d/3.1/smart-topology.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan 3D Smart Topology API Reference" -description: "Hunyuan 3D Smart Topology API reference for SandBase. Use model tencent/hunyuan-3d/3.1/smart-topology with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/tencent/hunyuan-3d/3.1/smart-topology" -apiReferenceJson: "{\"title\":\"Hunyuan 3D Smart Topology\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan 3d 3.1 Smart Topology by Tencent - advanced AI model for 3d-to-3d. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-3d/3.1/smart-topology.\",\"default\":\"tencent/hunyuan-3d/3.1/smart-topology\"},{\"name\":\"input_file_type\",\"type\":\"string\",\"required\":false,\"description\":\"Input 3D file format.\",\"default\":\"glb\",\"constraints\":\"Allowed values: glb, obj\"},{\"name\":\"input_file_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of GLB or OBJ file to optimize topology. Max size: 200MB.\",\"default\":\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/3.1/smart-topology/input_input_file_url_0.glb\"},{\"name\":\"polygon_type\",\"type\":\"string\",\"required\":false,\"description\":\"Output polygon type. triangle: triangular faces only. quadrilateral: mixed quad and triangle faces.\",\"default\":\"triangle\",\"constraints\":\"Allowed values: triangle, quadrilateral\"},{\"name\":\"face_level\",\"type\":\"string\",\"required\":false,\"description\":\"Target polygon density. high: more detail/polygons, medium: balanced, low: fewer polygons.\",\"default\":\"medium\",\"constraints\":\"Allowed values: high, medium, low\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"3d-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/smart-topology\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/smart-topology\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/smart-topology\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-3d/3.1/smart-topology\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan 3D Smart Topology" - modelId: "tencent/hunyuan-3d/3.1/smart-topology" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-3d/3.1/smart-topology" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-27T23:31:42.305Z" - capabilities: ["3d-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/tencent/hunyuan-3d/v2.md b/model-api-reference/image-generation/tencent/hunyuan-3d/v2.md deleted file mode 100644 index 24336f6f..00000000 --- a/model-api-reference/image-generation/tencent/hunyuan-3d/v2.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan3D API Reference — Tencent Hunyuan 3d / V2 API" -description: "Hunyuan3D API reference for SandBase. Use model tencent/hunyuan-3d/v2 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/tencent/hunyuan-3d/v2" -apiReferenceJson: "{\"title\":\"Hunyuan3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan 3d V2 is Tencent's image-to-3D AI model. Transform photographs into production-ready 3D meshes with accurate geometry and texture mapping.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-3d/v2.\",\"default\":\"tencent/hunyuan-3d/v2\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of image to use while generating the 3D model.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance scale for the model.\",\"default\":\"7.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of inference steps to perform.\",\"default\":\"50\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"textured_mesh\",\"type\":\"boolean\",\"required\":false,\"description\":\"If set true, textured mesh will be generated and the price charged would be 3 times that of white mesh.\",\"default\":\"false\"},{\"name\":\"octree_resolution\",\"type\":\"integer\",\"required\":false,\"description\":\"Octree resolution for the model.\",\"default\":\"256\",\"constraints\":\"Range: 1 to 1024\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v2\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/v2/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v2\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/v2/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v2\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/v2/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v2\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan3D" - modelId: "tencent/hunyuan-3d/v2" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-3d/v2" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-20T00:00:00Z" - capabilities: ["image-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/tencent/hunyuan-3d/v2/mini-turbo.md b/model-api-reference/image-generation/tencent/hunyuan-3d/v2/mini-turbo.md deleted file mode 100644 index 38a9d000..00000000 --- a/model-api-reference/image-generation/tencent/hunyuan-3d/v2/mini-turbo.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan3D API Reference — Tencent Hunyuan 3d / V2 / Mini Turbo" -description: "Hunyuan3D API reference for SandBase. Use model tencent/hunyuan-3d/v2/mini-turbo with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/tencent/hunyuan-3d/v2/mini-turbo" -apiReferenceJson: "{\"title\":\"Hunyuan3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan 3d V2 Mini Turbo by Tencent - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-3d/v2/mini-turbo.\",\"default\":\"tencent/hunyuan-3d/v2/mini-turbo\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of image to use while generating the 3D model.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance scale for the model.\",\"default\":\"7.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of inference steps to perform.\",\"default\":\"50\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"octree_resolution\",\"type\":\"integer\",\"required\":false,\"description\":\"Octree resolution for the model.\",\"default\":\"256\",\"constraints\":\"Range: 1 to 1024\"},{\"name\":\"textured_mesh\",\"type\":\"boolean\",\"required\":false,\"description\":\"If set true, textured mesh will be generated and the price charged would be 3 times that of white mesh.\",\"default\":\"false\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v2/mini-turbo\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/v2/mini-turbo/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v2/mini-turbo\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/v2/mini-turbo/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v2/mini-turbo\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/v2/mini-turbo/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v2/mini-turbo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan3D" - modelId: "tencent/hunyuan-3d/v2/mini-turbo" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-3d/v2/mini-turbo" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-20T00:00:00Z" - capabilities: ["image-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/tencent/hunyuan-3d/v2/mini.md b/model-api-reference/image-generation/tencent/hunyuan-3d/v2/mini.md deleted file mode 100644 index 5a9f7800..00000000 --- a/model-api-reference/image-generation/tencent/hunyuan-3d/v2/mini.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan3D API Reference — Tencent Hunyuan 3d / V2 / Mini API" -description: "Hunyuan3D API reference for SandBase. Use model tencent/hunyuan-3d/v2/mini with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/tencent/hunyuan-3d/v2/mini" -apiReferenceJson: "{\"title\":\"Hunyuan3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan 3d V2 Mini by Tencent - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-3d/v2/mini.\",\"default\":\"tencent/hunyuan-3d/v2/mini\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of image to use while generating the 3D model.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance scale for the model.\",\"default\":\"7.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of inference steps to perform.\",\"default\":\"50\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"textured_mesh\",\"type\":\"boolean\",\"required\":false,\"description\":\"If set true, textured mesh will be generated and the price charged would be 3 times that of white mesh.\",\"default\":\"false\"},{\"name\":\"octree_resolution\",\"type\":\"integer\",\"required\":false,\"description\":\"Octree resolution for the model.\",\"default\":\"256\",\"constraints\":\"Range: 1 to 1024\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v2/mini\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/v2/mini/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v2/mini\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/v2/mini/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v2/mini\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/v2/mini/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v2/mini\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan3D" - modelId: "tencent/hunyuan-3d/v2/mini" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-3d/v2/mini" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-20T00:00:00Z" - capabilities: ["image-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/tencent/hunyuan-3d/v2/multi-view-turbo.md b/model-api-reference/image-generation/tencent/hunyuan-3d/v2/multi-view-turbo.md deleted file mode 100644 index abb2ab4b..00000000 --- a/model-api-reference/image-generation/tencent/hunyuan-3d/v2/multi-view-turbo.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan3D API Reference — Tencent 3d / V2 / Multi View Turbo" -description: "Hunyuan3D API reference for SandBase. Use model tencent/hunyuan-3d/v2/multi-view-turbo with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/tencent/hunyuan-3d/v2/multi-view-turbo" -apiReferenceJson: "{\"title\":\"Hunyuan3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan 3d V2 Multi View Turbo by Tencent - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-3d/v2/multi-view-turbo.\",\"default\":\"tencent/hunyuan-3d/v2/multi-view-turbo\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance scale for the model.\",\"default\":\"7.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of inference steps to perform.\",\"default\":\"50\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"},{\"name\":\"back_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of image to use while generating the 3D model.\"},{\"name\":\"left_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of image to use while generating the 3D model.\"},{\"name\":\"octree_resolution\",\"type\":\"integer\",\"required\":false,\"description\":\"Octree resolution for the model.\",\"default\":\"256\",\"constraints\":\"Range: 1 to 1024\"},{\"name\":\"front_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of image to use while generating the 3D model.\"},{\"name\":\"textured_mesh\",\"type\":\"boolean\",\"required\":false,\"description\":\"If set true, textured mesh will be generated and the price charged would be 3 times that of white mesh.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v2/multi-view-turbo\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v2/multi-view-turbo\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v2/multi-view-turbo\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v2/multi-view-turbo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan3D" - modelId: "tencent/hunyuan-3d/v2/multi-view-turbo" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-3d/v2/multi-view-turbo" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-20T00:00:00Z" - capabilities: ["image-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/tencent/hunyuan-3d/v2/multi-view.md b/model-api-reference/image-generation/tencent/hunyuan-3d/v2/multi-view.md deleted file mode 100644 index 7fe73c6c..00000000 --- a/model-api-reference/image-generation/tencent/hunyuan-3d/v2/multi-view.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan3D API Reference — Tencent Hunyuan 3d / V2 / Multi View" -description: "Hunyuan3D API reference for SandBase. Use model tencent/hunyuan-3d/v2/multi-view with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/tencent/hunyuan-3d/v2/multi-view" -apiReferenceJson: "{\"title\":\"Hunyuan3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan 3d V2 Multi View by Tencent - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-3d/v2/multi-view.\",\"default\":\"tencent/hunyuan-3d/v2/multi-view\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance scale for the model.\",\"default\":\"7.5\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of inference steps to perform.\",\"default\":\"50\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"},{\"name\":\"left_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of image to use while generating the 3D model.\"},{\"name\":\"octree_resolution\",\"type\":\"integer\",\"required\":false,\"description\":\"Octree resolution for the model.\",\"default\":\"256\",\"constraints\":\"Range: 1 to 1024\"},{\"name\":\"front_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of image to use while generating the 3D model.\"},{\"name\":\"textured_mesh\",\"type\":\"boolean\",\"required\":false,\"description\":\"If set true, textured mesh will be generated and the price charged would be 3 times that of white mesh.\",\"default\":\"false\"},{\"name\":\"back_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of image to use while generating the 3D model.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v2/multi-view\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v2/multi-view\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v2/multi-view\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v2/multi-view\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan3D" - modelId: "tencent/hunyuan-3d/v2/multi-view" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-3d/v2/multi-view" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-20T00:00:00Z" - capabilities: ["image-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/tencent/hunyuan-3d/v3.md b/model-api-reference/image-generation/tencent/hunyuan-3d/v3.md deleted file mode 100644 index 2e12ffd4..00000000 --- a/model-api-reference/image-generation/tencent/hunyuan-3d/v3.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan3d V3 API Reference — Tencent Hunyuan 3d / V3 API" -description: "Hunyuan3d V3 API reference for SandBase. Use model tencent/hunyuan-3d/v3 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/tencent/hunyuan-3d/v3" -apiReferenceJson: "{\"title\":\"Hunyuan3d V3\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan 3d V3 is Tencent's image-to-3D AI model. Transform photographs into production-ready 3D meshes with accurate geometry and texture mapping.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-3d/v3.\",\"default\":\"tencent/hunyuan-3d/v3\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of image to use while generating the 3D model.\"},{\"name\":\"enable_pbr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to enable PBR material generation. Does not take effect when generate_type is Geometry.\",\"default\":\"false\"},{\"name\":\"polygon_type\",\"type\":\"string\",\"required\":false,\"description\":\"Polygon type. Only takes effect when GenerateType is LowPoly.\",\"default\":\"triangle\",\"constraints\":\"Allowed values: triangle, quadrilateral\"},{\"name\":\"right_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"Optional right view image URL for better 3D reconstruction.\"},{\"name\":\"left_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"Optional left view image URL for better 3D reconstruction.\"},{\"name\":\"back_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"Optional back view image URL for better 3D reconstruction.\"},{\"name\":\"generate_type\",\"type\":\"string\",\"required\":false,\"description\":\"Generation type. Normal: textured model. LowPoly: polygon reduction. Geometry: white model without texture.\",\"default\":\"Normal\",\"constraints\":\"Allowed values: Normal, LowPoly, Geometry\"},{\"name\":\"face_count\",\"type\":\"integer\",\"required\":false,\"description\":\"Target face count. Range: 40000-1500000\",\"default\":\"500000\",\"constraints\":\"Range: 40000 to 1500000\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v3\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/v3/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v3\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/v3/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v3\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/v3/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v3\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan3d V3" - modelId: "tencent/hunyuan-3d/v3" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-3d/v3" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-16T22:01:39.729Z" - capabilities: ["image-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/tencent/hunyuan-3d/v3/sketch-to-3d.md b/model-api-reference/image-generation/tencent/hunyuan-3d/v3/sketch-to-3d.md deleted file mode 100644 index 758feca4..00000000 --- a/model-api-reference/image-generation/tencent/hunyuan-3d/v3/sketch-to-3d.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan3d V3 API Reference — Tencent 3d / V3 / Sketch To 3d" -description: "Hunyuan3d V3 API reference for SandBase. Use model tencent/hunyuan-3d/v3/sketch-to-3d with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/tencent/hunyuan-3d/v3/sketch-to-3d" -apiReferenceJson: "{\"title\":\"Hunyuan3d V3\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan 3d V3 Sketch To 3d by Tencent - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-3d/v3/sketch-to-3d.\",\"default\":\"tencent/hunyuan-3d/v3/sketch-to-3d\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the 3D content attributes such as color, category, and material.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of sketch or line art image to transform into a 3D model. Image resolution must be between 128x128 and 5000x5000 pixels.\"},{\"name\":\"face_count\",\"type\":\"integer\",\"required\":false,\"description\":\"Target face count. Range: 40000-1500000\",\"default\":\"500000\",\"constraints\":\"Range: 40000 to 1500000\"},{\"name\":\"enable_pbr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to enable PBR material generation.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v3/sketch-to-3d\\\",\\n \\\"prompt\\\": \\\"orange cat\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/v3/sketch-to-3d/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v3/sketch-to-3d\\\",\\n \\\"prompt\\\": \\\"orange cat\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/v3/sketch-to-3d/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v3/sketch-to-3d\\\",\\n \\\"prompt\\\": \\\"orange cat\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-3d/v3/sketch-to-3d/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v3/sketch-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan3d V3" - modelId: "tencent/hunyuan-3d/v3/sketch-to-3d" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-3d/v3/sketch-to-3d" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-16T22:12:40.672Z" - capabilities: ["image-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/tencent/hunyuan-3d/v3/text-to-3d.md b/model-api-reference/image-generation/tencent/hunyuan-3d/v3/text-to-3d.md deleted file mode 100644 index 8175a44e..00000000 --- a/model-api-reference/image-generation/tencent/hunyuan-3d/v3/text-to-3d.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan3d V3 API Reference — Tencent Hunyuan 3d / V3 / Text To 3d" -description: "Hunyuan3d V3 API reference for SandBase. Use model tencent/hunyuan-3d/v3/text-to-3d with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/tencent/hunyuan-3d/v3/text-to-3d" -apiReferenceJson: "{\"title\":\"Hunyuan3d V3\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan 3d V3 by Tencent - generate 3D models from text descriptions with AI. Create detailed 3D assets from natural language for games, visualization, and digital production.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-3d/v3/text-to-3d.\",\"default\":\"tencent/hunyuan-3d/v3/text-to-3d\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of the 3D content to generate. Supports up to 1024 UTF-8 characters.\"},{\"name\":\"face_count\",\"type\":\"integer\",\"required\":false,\"description\":\"Target face count. Range: 40000-1500000\",\"default\":\"500000\",\"constraints\":\"Range: 40000 to 1500000\"},{\"name\":\"enable_pbr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to enable PBR material generation\",\"default\":\"false\"},{\"name\":\"polygon_type\",\"type\":\"string\",\"required\":false,\"description\":\"Polygon type. Only takes effect when GenerateType is LowPoly.\",\"default\":\"triangle\",\"constraints\":\"Allowed values: triangle, quadrilateral\"},{\"name\":\"generate_type\",\"type\":\"string\",\"required\":false,\"description\":\"Generation type. Normal: textured model. LowPoly: polygon reduction. Geometry: white model without texture.\",\"default\":\"Normal\",\"constraints\":\"Allowed values: Normal, LowPoly, Geometry\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v3/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A rustic wooden treasure chest with metal bands and ornate lock\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v3/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A rustic wooden treasure chest with metal bands and ornate lock\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v3/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A rustic wooden treasure chest with metal bands and ornate lock\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-3d/v3/text-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan3d V3" - modelId: "tencent/hunyuan-3d/v3/text-to-3d" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-3d/v3/text-to-3d" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-16T22:13:53.731Z" - capabilities: ["text-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/tencent/hunyuan-image/2.1.md b/model-api-reference/image-generation/tencent/hunyuan-image/2.1.md deleted file mode 100644 index 531021eb..00000000 --- a/model-api-reference/image-generation/tencent/hunyuan-image/2.1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan Image API Reference" -description: "Hunyuan Image API reference for SandBase. Use model tencent/hunyuan-image/2.1 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/tencent/hunyuan-image/2.1" -apiReferenceJson: "{\"title\":\"Hunyuan Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan Image 2.1 is Tencent's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-image/2.1.\",\"default\":\"tencent/hunyuan-image/2.1\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Controls how much the model adheres to the prompt. Higher values mean stricter adherence.\",\"default\":\"3.5\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising steps.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results. If None, a random seed is used.\"},{\"name\":\"use_refiner\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable the refiner model for improved image quality.\",\"default\":\"false\"},{\"name\":\"use_reprompt\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable prompt enhancement for potentially better results.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-image/2.1\\\",\\n \\\"prompt\\\": \\\"A cute, cartoon-style anthropomorphic penguin plush toy, standing in a painting studio, wearing a red knitted scarf and beret.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-image/2.1\\\",\\n \\\"prompt\\\": \\\"A cute, cartoon-style anthropomorphic penguin plush toy, standing in a painting studio, wearing a red knitted scarf and beret.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-image/2.1\\\",\\n \\\"prompt\\\": \\\"A cute, cartoon-style anthropomorphic penguin plush toy, standing in a painting studio, wearing a red knitted scarf and beret.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-image/2.1\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan Image" - modelId: "tencent/hunyuan-image/2.1" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-image/2.1" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-09T16:54:57.565Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/tencent/hunyuan-image/3.0.md b/model-api-reference/image-generation/tencent/hunyuan-image/3.0.md index 232e0bea..655f623d 100644 --- a/model-api-reference/image-generation/tencent/hunyuan-image/3.0.md +++ b/model-api-reference/image-generation/tencent/hunyuan-image/3.0.md @@ -1,12 +1,12 @@ --- -title: "Hunyuan Image 3.0 API Reference" -description: "Hunyuan Image 3.0 API reference for SandBase. Use model tencent/hunyuan-image/3.0 with /v1/run; see request and response examples." +title: "Hunyuan Image 3.0 Text to Image API Reference" +description: "Hunyuan Image 3.0 Text to Image API reference for SandBase. Use model tencent/hunyuan-image/3.0 with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/tencent/hunyuan-image/3.0" -apiReferenceJson: "{\"title\":\"Hunyuan Image 3.0\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan Image 3.0 is Tencent's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-image/3.0.\",\"default\":\"tencent/hunyuan-image/3.0\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt for image-to-image.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-image/3.0\\\",\\n \\\"prompt\\\": \\\"200mm telephoto through crowd gaps; subject laughing, candid; creamy background compression, color pop from a single bold garment, catchlight in eyes.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-image/3.0\\\",\\n \\\"prompt\\\": \\\"200mm telephoto through crowd gaps; subject laughing, candid; creamy background compression, color pop from a single bold garment, catchlight in eyes.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-image/3.0\\\",\\n \\\"prompt\\\": \\\"200mm telephoto through crowd gaps; subject laughing, candid; creamy background compression, color pop from a single bold garment, catchlight in eyes.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-image/3.0\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Hunyuan Image 3.0 Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan Image 3.0 is Tencent's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-image/3.0.\",\"default\":\"tencent/hunyuan-image/3.0\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt for image-to-image.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-image/3.0\\\",\\n \\\"prompt\\\": \\\"200mm telephoto through crowd gaps; subject laughing, candid; creamy background compression, color pop from a single bold garment, catchlight in eyes.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-image/3.0\\\",\\n \\\"prompt\\\": \\\"200mm telephoto through crowd gaps; subject laughing, candid; creamy background compression, color pop from a single bold garment, catchlight in eyes.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-image/3.0\\\",\\n \\\"prompt\\\": \\\"200mm telephoto through crowd gaps; subject laughing, candid; creamy background compression, color pop from a single bold garment, catchlight in eyes.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-image/3.0\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Hunyuan Image 3.0" + modelName: "Hunyuan Image 3.0 Text to Image" modelId: "tencent/hunyuan-image/3.0" vendor: "Tencent" vendorSlug: "tencent" diff --git a/model-api-reference/image-generation/tencent/hunyuan-image/3.0/instruct.md b/model-api-reference/image-generation/tencent/hunyuan-image/3.0/instruct.md deleted file mode 100644 index 1bf7f761..00000000 --- a/model-api-reference/image-generation/tencent/hunyuan-image/3.0/instruct.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan Image 3.0 Instruct API Reference" -description: "Hunyuan Image 3.0 Instruct API reference for SandBase. Use model tencent/hunyuan-image/3.0/instruct with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/tencent/hunyuan-image/3.0/instruct" -apiReferenceJson: "{\"title\":\"Hunyuan Image 3.0 Instruct\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan Image 3.0 Instruct by Tencent - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-image/3.0/instruct.\",\"default\":\"tencent/hunyuan-image/3.0/instruct\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-image/3.0/instruct\\\",\\n \\\"prompt\\\": \\\"Macro photograph of a peacock feather showing individual barbs, barbules, and the iridescent microstructure creating color.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-image/3.0/instruct\\\",\\n \\\"prompt\\\": \\\"Macro photograph of a peacock feather showing individual barbs, barbules, and the iridescent microstructure creating color.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-image/3.0/instruct\\\",\\n \\\"prompt\\\": \\\"Macro photograph of a peacock feather showing individual barbs, barbules, and the iridescent microstructure creating color.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-image/3.0/instruct\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan Image 3.0 Instruct" - modelId: "tencent/hunyuan-image/3.0/instruct" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-image/3.0/instruct" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-28T14:35:52.431Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/tencent/hunyuan-motion.md b/model-api-reference/image-generation/tencent/hunyuan-motion.md deleted file mode 100644 index be448280..00000000 --- a/model-api-reference/image-generation/tencent/hunyuan-motion.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan Motion API Reference" -description: "Hunyuan Motion API reference for SandBase. Use model tencent/hunyuan-motion with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/tencent/hunyuan-motion" -apiReferenceJson: "{\"title\":\"Hunyuan Motion\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan Motion by Tencent - generate 3D models from text descriptions with AI. Create detailed 3D assets from natural language for games, visualization, and digital production.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-motion.\",\"default\":\"tencent/hunyuan-motion\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the motion to generate.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Motion duration in seconds (0.5-12.0).\",\"default\":\"5\",\"constraints\":\"Range: 0.5 to 12\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format: 'fbx' for animation files, 'dict' for raw JSON.\",\"default\":\"fbx\",\"constraints\":\"Allowed values: fbx, dict\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-motion\\\",\\n \\\"prompt\\\": \\\"A person is running then takes a big leap.\\\",\\n \\\"duration\\\": 5,\\n \\\"output_format\\\": \\\"fbx\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-motion\\\",\\n \\\"prompt\\\": \\\"A person is running then takes a big leap.\\\",\\n \\\"duration\\\": 5,\\n \\\"output_format\\\": \\\"fbx\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-motion\\\",\\n \\\"prompt\\\": \\\"A person is running then takes a big leap.\\\",\\n \\\"duration\\\": 5,\\n \\\"output_format\\\": \\\"fbx\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-motion\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan Motion" - modelId: "tencent/hunyuan-motion" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-motion" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-30T12:54:39.431Z" - capabilities: ["text-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/tencent/hunyuan-motion/fast.md b/model-api-reference/image-generation/tencent/hunyuan-motion/fast.md deleted file mode 100644 index 2bf169d0..00000000 --- a/model-api-reference/image-generation/tencent/hunyuan-motion/fast.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan Motion Fast API Reference" -description: "Hunyuan Motion Fast API reference for SandBase. Use model tencent/hunyuan-motion/fast with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/tencent/hunyuan-motion/fast" -apiReferenceJson: "{\"title\":\"Hunyuan Motion Fast\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan Motion Fast is Tencent's text-to-3D AI model. Turn written descriptions into textured 3D objects with realistic geometry and materials.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-motion/fast.\",\"default\":\"tencent/hunyuan-motion/fast\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the motion to generate.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Motion duration in seconds (0.5-12.0).\",\"default\":\"5\",\"constraints\":\"Range: 0.5 to 12\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format: 'fbx' for animation files, 'dict' for raw JSON.\",\"default\":\"fbx\",\"constraints\":\"Allowed values: fbx, dict\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-motion/fast\\\",\\n \\\"prompt\\\": \\\"A person is running then takes a big leap.\\\",\\n \\\"duration\\\": 5,\\n \\\"output_format\\\": \\\"fbx\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-motion/fast\\\",\\n \\\"prompt\\\": \\\"A person is running then takes a big leap.\\\",\\n \\\"duration\\\": 5,\\n \\\"output_format\\\": \\\"fbx\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-motion/fast\\\",\\n \\\"prompt\\\": \\\"A person is running then takes a big leap.\\\",\\n \\\"duration\\\": 5,\\n \\\"output_format\\\": \\\"fbx\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-motion/fast\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan Motion Fast" - modelId: "tencent/hunyuan-motion/fast" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-motion/fast" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-30T12:58:39.853Z" - capabilities: ["text-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/tencent/hunyuan-world.md b/model-api-reference/image-generation/tencent/hunyuan-world.md deleted file mode 100644 index ab52044f..00000000 --- a/model-api-reference/image-generation/tencent/hunyuan-world.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan World API Reference — Tencent Hunyuan World API" -description: "Hunyuan World API reference for SandBase. Use model tencent/hunyuan-world with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/tencent/hunyuan-world" -apiReferenceJson: "{\"title\":\"Hunyuan World\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan World is Tencent's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-world.\",\"default\":\"tencent/hunyuan-world\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for the panorama generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to convert to a panorama.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-world\\\",\\n \\\"prompt\\\": \\\"A skyland of wonders\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-world/output_url_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-world\\\",\\n \\\"prompt\\\": \\\"A skyland of wonders\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-world/output_url_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-world\\\",\\n \\\"prompt\\\": \\\"A skyland of wonders\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-world/output_url_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-world\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan World" - modelId: "tencent/hunyuan-world" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-world" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-07-28T09:45:58.041Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/tencent/hunyuan3d/v2/turbo.md b/model-api-reference/image-generation/tencent/hunyuan3d/v2/turbo.md deleted file mode 100644 index c551c72b..00000000 --- a/model-api-reference/image-generation/tencent/hunyuan3d/v2/turbo.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan3D API Reference — Tencent Hunyuan3d / V2 / Turbo API" -description: "Hunyuan3D API reference for SandBase. Use model tencent/hunyuan3d/v2/turbo with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/tencent/hunyuan3d/v2/turbo" -apiReferenceJson: "{\"title\":\"Hunyuan3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan3d V2 Turbo by Tencent - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan3d/v2/turbo.\",\"default\":\"tencent/hunyuan3d/v2/turbo\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of image to use while generating the 3D model.\"},{\"name\":\"octree_resolution\",\"type\":\"integer\",\"required\":false,\"description\":\"Octree resolution for the model.\",\"default\":\"256\",\"constraints\":\"Range: 1 to 1024\"},{\"name\":\"textured_mesh\",\"type\":\"boolean\",\"required\":false,\"description\":\"If set true, textured mesh will be generated and the price charged would be 3 times that of white mesh.\",\"default\":\"false\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"50\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"7.5\",\"constraints\":\"Range: 0 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan3d/v2/turbo\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan3d/v2/turbo/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan3d/v2/turbo\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan3d/v2/turbo/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan3d/v2/turbo\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan3d/v2/turbo/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan3d/v2/turbo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan3D" - modelId: "tencent/hunyuan3d/v2/turbo" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan3d/v2/turbo" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-20T00:00:00Z" - capabilities: ["image-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/tencent/hunyuan_world/image-to-world.md b/model-api-reference/image-generation/tencent/hunyuan_world/image-to-world.md deleted file mode 100644 index 20aa1a12..00000000 --- a/model-api-reference/image-generation/tencent/hunyuan_world/image-to-world.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan World API Reference — Tencent World / Image To World" -description: "Hunyuan World API reference for SandBase. Use model tencent/hunyuan_world/image-to-world with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/tencent/hunyuan_world/image-to-world" -apiReferenceJson: "{\"title\":\"Hunyuan World\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan_world Image To World by Tencent - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan_world/image-to-world.\",\"default\":\"tencent/hunyuan_world/image-to-world\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to convert to a world.\"},{\"name\":\"classes\",\"type\":\"string\",\"required\":false,\"description\":\"Classes to use for the world generation.\"},{\"name\":\"labels_fg2\",\"type\":\"string\",\"required\":false,\"description\":\"Labels for the second foreground object.\"},{\"name\":\"export_drc\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to export DRC (Dynamic Resource Configuration).\",\"default\":\"false\"},{\"name\":\"labels_fg1\",\"type\":\"string\",\"required\":false,\"description\":\"Labels for the first foreground object.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan_world/image-to-world\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan_world/image-to-world/output_url_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan_world/image-to-world\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan_world/image-to-world/output_url_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan_world/image-to-world\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan_world/image-to-world/output_url_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan_world/image-to-world\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan World" - modelId: "tencent/hunyuan_world/image-to-world" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan_world/image-to-world" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-07-28T09:45:20.876Z" - capabilities: ["image-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/topaz/adjust/image.md b/model-api-reference/image-generation/topaz/adjust/image.md deleted file mode 100644 index 6b4704e8..00000000 --- a/model-api-reference/image-generation/topaz/adjust/image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Topaz Adjust Image API Reference" -description: "Topaz Adjust Image API reference for SandBase. Use model topaz/adjust/image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/topaz/adjust/image" -apiReferenceJson: "{\"title\":\"Topaz Adjust Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Adjust Image by Topaz Labs - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to topaz/adjust/image.\",\"default\":\"topaz/adjust/image\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Url of the image to process\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format of the processed image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"topaz/adjust/image\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/adjust/image/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"topaz/adjust/image\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/adjust/image/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"topaz/adjust/image\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/adjust/image/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"topaz/adjust/image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Topaz Adjust Image" - modelId: "topaz/adjust/image" - vendor: "Topaz Labs" - vendorSlug: "topaz" - modelSlug: "adjust/image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-08-17T19:51:43.374Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/topaz/denoise/image.md b/model-api-reference/image-generation/topaz/denoise/image.md deleted file mode 100644 index c29db0c1..00000000 --- a/model-api-reference/image-generation/topaz/denoise/image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Topaz Denoise Image API Reference" -description: "Topaz Denoise Image API reference for SandBase. Use model topaz/denoise/image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/topaz/denoise/image" -apiReferenceJson: "{\"title\":\"Topaz Denoise Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Denoise Image is Topaz Labs's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to topaz/denoise/image.\",\"default\":\"topaz/denoise/image\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Url of the image to process\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format of the processed image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"topaz/denoise/image\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/denoise/image/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"topaz/denoise/image\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/denoise/image/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"topaz/denoise/image\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/denoise/image/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"topaz/denoise/image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Topaz Denoise Image" - modelId: "topaz/denoise/image" - vendor: "Topaz Labs" - vendorSlug: "topaz" - modelSlug: "denoise/image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-08-17T19:51:34.289Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/topaz/restore/image.md b/model-api-reference/image-generation/topaz/restore/image.md deleted file mode 100644 index 31306597..00000000 --- a/model-api-reference/image-generation/topaz/restore/image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Topaz Restore Image API Reference" -description: "Topaz Restore Image API reference for SandBase. Use model topaz/restore/image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/topaz/restore/image" -apiReferenceJson: "{\"title\":\"Topaz Restore Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Restore Image is Topaz Labs's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to topaz/restore/image.\",\"default\":\"topaz/restore/image\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Url of the image to process\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format of the processed image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"topaz/restore/image\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/restore/image/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"topaz/restore/image\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/restore/image/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"topaz/restore/image\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/restore/image/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"topaz/restore/image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Topaz Restore Image" - modelId: "topaz/restore/image" - vendor: "Topaz Labs" - vendorSlug: "topaz" - modelSlug: "restore/image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-08-17T19:51:29.313Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/topaz/sharpen/image.md b/model-api-reference/image-generation/topaz/sharpen/image.md deleted file mode 100644 index f1facbcc..00000000 --- a/model-api-reference/image-generation/topaz/sharpen/image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Topaz Sharpen Image API Reference" -description: "Topaz Sharpen Image API reference for SandBase. Use model topaz/sharpen/image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/topaz/sharpen/image" -apiReferenceJson: "{\"title\":\"Topaz Sharpen Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sharpen Image is Topaz Labs's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to topaz/sharpen/image.\",\"default\":\"topaz/sharpen/image\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Url of the image to process\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format of the processed image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"topaz/sharpen/image\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/sharpen/image/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"topaz/sharpen/image\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/sharpen/image/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"topaz/sharpen/image\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/sharpen/image/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"topaz/sharpen/image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Topaz Sharpen Image" - modelId: "topaz/sharpen/image" - vendor: "Topaz Labs" - vendorSlug: "topaz" - modelSlug: "sharpen/image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-08-17T19:51:38.276Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/topaz/upscale/image.md b/model-api-reference/image-generation/topaz/upscale/image.md index b8e0c318..6849054f 100644 --- a/model-api-reference/image-generation/topaz/upscale/image.md +++ b/model-api-reference/image-generation/topaz/upscale/image.md @@ -4,7 +4,7 @@ description: "Topaz Upscale API reference for SandBase. Use model topaz/upscale/ aside: false outline: false apiReferenceKey: "image/topaz/upscale/image" -apiReferenceJson: "{\"title\":\"Topaz Upscale\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Upscale Image is Topaz Labs's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to topaz/upscale/image.\",\"default\":\"topaz/upscale/image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt to guide generative upscaling (max 1024 chars). Applies to Redefine model only.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to be upscaled\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"Enhancement strength (0.01-1.0). Applies to Text Refine model only.\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format of the upscaled image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"face_enhancement_creativity\",\"type\":\"number\",\"required\":false,\"description\":\"Creativity level for face enhancement. 0.0 means no creativity, 1.0 means maximum creativity. Ignored if face enhancement is disabled.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"enhancement_model\",\"type\":\"string\",\"required\":false,\"description\":\"Model to use for image enhancement.\",\"default\":\"Standard V2\",\"constraints\":\"Allowed values: Low Resolution V2, Standard V2, CGI, High Fidelity V2, Text Refine, Recovery, Redefine, Recovery V2, Standard MAX, Wonder\"},{\"name\":\"subject_detection\",\"type\":\"string\",\"required\":false,\"description\":\"Subject detection mode for the image enhancement. Applies to standard enhance and Recovery V2 models.\",\"default\":\"All\",\"constraints\":\"Allowed values: All, Foreground, Background\"},{\"name\":\"crop_to_fill\",\"type\":\"boolean\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"false\"},{\"name\":\"fix_compression\",\"type\":\"number\",\"required\":false,\"description\":\"Compression artifact removal level (0.0-1.0). Applies to Standard V2, Low Resolution V2, High Fidelity V2, and Text Refine models.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"face_enhancement_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Strength of the face enhancement. 0.0 means no enhancement, 1.0 means maximum enhancement. Ignored if face enhancement is disabled.\",\"default\":\"0.8\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"detail\",\"type\":\"number\",\"required\":false,\"description\":\"Detail recovery level (0.0-1.0). Applies to Recovery V2 model only.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"creativity\",\"type\":\"integer\",\"required\":false,\"description\":\"Creativity level for generative upscaling (1-6). Higher values produce more creative/hallucinated details. Applies to Redefine model only.\",\"constraints\":\"Range: 1 to 6\"},{\"name\":\"autoprompt\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable automatic prompt generation for generative upscaling. Applies to Redefine model only.\"},{\"name\":\"sharpen\",\"type\":\"number\",\"required\":false,\"description\":\"Sharpening level (0.0-1.0). Applies to Standard V2, Low Resolution V2, CGI, High Fidelity V2, Text Refine, and Redefine models.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"upscale_factor\",\"type\":\"number\",\"required\":false,\"description\":\"Factor to upscale the image by (e.g. 2.0 doubles width and height)\",\"default\":\"2\",\"constraints\":\"Range: 1 to 4\"},{\"name\":\"texture\",\"type\":\"integer\",\"required\":false,\"description\":\"Texture detail level for generative upscaling (1-5). Applies to Redefine model only.\",\"constraints\":\"Range: 1 to 5\"},{\"name\":\"denoise\",\"type\":\"number\",\"required\":false,\"description\":\"Denoising level (0.0-1.0). Applies to Standard V2, Low Resolution V2, CGI, High Fidelity V2, Text Refine, and Redefine models.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"face_enhancement\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to apply face enhancement to the image. Applies to standard enhance and Recovery V2 models.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"topaz/upscale/image\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/upscale/image/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"topaz/upscale/image\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/upscale/image/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"topaz/upscale/image\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/upscale/image/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"topaz/upscale/image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Topaz Upscale\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Upscale Image is Topaz Labs's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to topaz/upscale/image.\",\"default\":\"topaz/upscale/image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt to guide generative upscaling (max 1024 chars). Applies to Redefine model only.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Url of the image to be upscaled\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"Enhancement strength (0.01-1.0). Applies to Text Refine model only.\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format of the upscaled image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"face_enhancement_creativity\",\"type\":\"number\",\"required\":false,\"description\":\"Creativity level for face enhancement. 0.0 means no creativity, 1.0 means maximum creativity. Ignored if face enhancement is disabled.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"enhancement_model\",\"type\":\"string\",\"required\":false,\"description\":\"Model to use for image enhancement.\",\"default\":\"Standard V2\",\"constraints\":\"Allowed values: Low Resolution V2, Standard V2, CGI, High Fidelity V2, Text Refine, Recovery, Redefine, Recovery V2, Standard MAX, Wonder\"},{\"name\":\"subject_detection\",\"type\":\"string\",\"required\":false,\"description\":\"Subject detection mode for the image enhancement. Applies to standard enhance and Recovery V2 models.\",\"default\":\"All\",\"constraints\":\"Allowed values: All, Foreground, Background\"},{\"name\":\"crop_to_fill\",\"type\":\"boolean\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"false\"},{\"name\":\"fix_compression\",\"type\":\"number\",\"required\":false,\"description\":\"Compression artifact removal level (0.0-1.0). Applies to Standard V2, Low Resolution V2, High Fidelity V2, and Text Refine models.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"face_enhancement_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Strength of the face enhancement. 0.0 means no enhancement, 1.0 means maximum enhancement. Ignored if face enhancement is disabled.\",\"default\":\"0.8\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"detail\",\"type\":\"number\",\"required\":false,\"description\":\"Detail recovery level (0.0-1.0). Applies to Recovery V2 model only.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"creativity\",\"type\":\"integer\",\"required\":false,\"description\":\"Creativity level for generative upscaling (1-6). Higher values produce more creative/hallucinated details. Applies to Redefine model only.\",\"constraints\":\"Range: 1 to 6\"},{\"name\":\"autoprompt\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable automatic prompt generation for generative upscaling. Applies to Redefine model only.\"},{\"name\":\"sharpen\",\"type\":\"number\",\"required\":false,\"description\":\"Sharpening level (0.0-1.0). Applies to Standard V2, Low Resolution V2, CGI, High Fidelity V2, Text Refine, and Redefine models.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"upscale_factor\",\"type\":\"number\",\"required\":false,\"description\":\"Factor to upscale the image by (e.g. 2.0 doubles width and height)\",\"default\":\"2\",\"constraints\":\"Range: 1 to 4\"},{\"name\":\"texture\",\"type\":\"integer\",\"required\":false,\"description\":\"Texture detail level for generative upscaling (1-5). Applies to Redefine model only.\",\"constraints\":\"Range: 1 to 5\"},{\"name\":\"denoise\",\"type\":\"number\",\"required\":false,\"description\":\"Denoising level (0.0-1.0). Applies to Standard V2, Low Resolution V2, CGI, High Fidelity V2, Text Refine, and Redefine models.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"face_enhancement\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to apply face enhancement to the image. Applies to standard enhance and Recovery V2 models.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"topaz/upscale/image\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/upscale/image/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"topaz/upscale/image\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/upscale/image/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"topaz/upscale/image\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/upscale/image/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"topaz/upscale/image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Topaz Upscale" modelId: "topaz/upscale/image" diff --git a/model-api-reference/image-generation/topaz/upscale/image/creative.md b/model-api-reference/image-generation/topaz/upscale/image/creative.md deleted file mode 100644 index 069c276b..00000000 --- a/model-api-reference/image-generation/topaz/upscale/image/creative.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Topaz Upscale Image Creative API Reference" -description: "Topaz Upscale Image Creative API reference for SandBase. Use model topaz/upscale/image/creative with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/topaz/upscale/image/creative" -apiReferenceJson: "{\"title\":\"Topaz Upscale Image Creative\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Upscale Image Creative by Topaz Labs - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to topaz/upscale/image/creative.\",\"default\":\"topaz/upscale/image/creative\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Url of the image to be upscaled\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format of the upscaled image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"crop_to_fill\",\"type\":\"boolean\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"false\"},{\"name\":\"upscale_factor\",\"type\":\"number\",\"required\":false,\"description\":\"Factor to upscale the image by (e.g. 2.0 doubles width and height)\",\"default\":\"2\",\"constraints\":\"Range: 1 to 4\"},{\"name\":\"autoprompt\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable automatic prompt generation. Applies to Bloom 2 only; Topaz defaults it to true when omitted.\"},{\"name\":\"color_preservation\",\"type\":\"boolean\",\"required\":false,\"description\":\"Preserve the source image's colors in the output. Applies to Bloom 2 only.\"},{\"name\":\"creativity\",\"type\":\"integer\",\"required\":false,\"description\":\"Creativity level (1-9). Higher values produce more creative/hallucinated details. Applies to Bloom 2 only.\",\"constraints\":\"Range: 1 to 9\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"topaz/upscale/image/creative\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/upscale/image/creative/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"topaz/upscale/image/creative\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/upscale/image/creative/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"topaz/upscale/image/creative\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/upscale/image/creative/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"topaz/upscale/image/creative\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Topaz Upscale Image Creative" - modelId: "topaz/upscale/image/creative" - vendor: "Topaz Labs" - vendorSlug: "topaz" - modelSlug: "upscale/image/creative" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-08-17T19:51:22.517Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/topaz/upscale/image/generative.md b/model-api-reference/image-generation/topaz/upscale/image/generative.md deleted file mode 100644 index d83c8791..00000000 --- a/model-api-reference/image-generation/topaz/upscale/image/generative.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Topaz Upscale Image Generative API Reference" -description: "Topaz Upscale Image Generative API reference for SandBase. Use model topaz/upscale/image/generative with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/topaz/upscale/image/generative" -apiReferenceJson: "{\"title\":\"Topaz Upscale Image Generative\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Upscale Image Generative by Topaz Labs - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to topaz/upscale/image/generative.\",\"default\":\"topaz/upscale/image/generative\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt to guide generative upscaling (max 1024 chars). Applies to Redefine model only.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Url of the image to be upscaled\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format of the upscaled image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"detail\",\"type\":\"number\",\"required\":false,\"description\":\"Detail recovery level (0.0-1.0). Applies to Recovery V2 model only.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"subject_detection\",\"type\":\"string\",\"required\":false,\"description\":\"Subject detection mode for the image enhancement. Applies to Wonder 3, Recovery and Recovery V2 models.\",\"default\":\"All\",\"constraints\":\"Allowed values: All, Foreground, Background\"},{\"name\":\"upscale_factor\",\"type\":\"number\",\"required\":false,\"description\":\"Factor to upscale the image by (e.g. 2.0 doubles width and height)\",\"default\":\"2\",\"constraints\":\"Range: 1 to 4\"},{\"name\":\"autoprompt\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable automatic prompt generation for generative upscaling. Applies to Redefine model only.\"},{\"name\":\"face_enhancement\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to apply face enhancement to the image.\",\"default\":\"true\"},{\"name\":\"sharpen\",\"type\":\"number\",\"required\":false,\"description\":\"Sharpening level (0.0-1.0). Applies to Redefine model only.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"crop_to_fill\",\"type\":\"boolean\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"false\"},{\"name\":\"face_enhancement_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Strength of the face enhancement. 0.0 means no enhancement, 1.0 means maximum enhancement. Ignored if face enhancement is disabled.\",\"default\":\"0.8\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"creativity\",\"type\":\"integer\",\"required\":false,\"description\":\"Creativity level for generative upscaling (1-6). Higher values produce more creative/hallucinated details. Applies to Redefine model only.\",\"constraints\":\"Range: 1 to 6\"},{\"name\":\"enhancement_strength\",\"type\":\"string\",\"required\":false,\"description\":\"Enhancement strength for generative upscaling. Applies to Wonder 3 and Wonder 3.5 models. When omitted, Topaz auto-configures it.\",\"constraints\":\"Allowed values: low, medium, high\"},{\"name\":\"denoise\",\"type\":\"number\",\"required\":false,\"description\":\"Denoising level (0.0-1.0). Applies to Redefine model only.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"face_enhancement_creativity\",\"type\":\"number\",\"required\":false,\"description\":\"Creativity level for face enhancement. 0.0 means no creativity, 1.0 means maximum creativity. Ignored if face enhancement is disabled.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"texture\",\"type\":\"integer\",\"required\":false,\"description\":\"Texture detail level for generative upscaling (1-5). Applies to Redefine model only.\",\"constraints\":\"Range: 1 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"topaz/upscale/image/generative\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/upscale/image/generative/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"topaz/upscale/image/generative\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/upscale/image/generative/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"topaz/upscale/image/generative\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/upscale/image/generative/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"topaz/upscale/image/generative\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Topaz Upscale Image Generative" - modelId: "topaz/upscale/image/generative" - vendor: "Topaz Labs" - vendorSlug: "topaz" - modelSlug: "upscale/image/generative" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-08-17T19:51:18.538Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/topaz/upscale/image/precision.md b/model-api-reference/image-generation/topaz/upscale/image/precision.md deleted file mode 100644 index ee9388a6..00000000 --- a/model-api-reference/image-generation/topaz/upscale/image/precision.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Topaz Upscale Image Precision API Reference" -description: "Topaz Upscale Image Precision API reference for SandBase. Use model topaz/upscale/image/precision with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/topaz/upscale/image/precision" -apiReferenceJson: "{\"title\":\"Topaz Upscale Image Precision\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Upscale Image Precision is Topaz Labs's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to topaz/upscale/image/precision.\",\"default\":\"topaz/upscale/image/precision\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Url of the image to be upscaled\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"Enhancement strength (0.01-1.0). Applies to Text Refine model only.\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output format of the upscaled image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"denoise\",\"type\":\"number\",\"required\":false,\"description\":\"Denoising level (0.0-1.0). Default varies by model.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"face_enhancement_creativity\",\"type\":\"number\",\"required\":false,\"description\":\"Creativity level for face enhancement. 0.0 means no creativity, 1.0 means maximum creativity. Ignored if face enhancement is disabled.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"face_enhancement_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Strength of the face enhancement. 0.0 means no enhancement, 1.0 means maximum enhancement. Ignored if face enhancement is disabled.\",\"default\":\"0.8\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"fix_compression\",\"type\":\"number\",\"required\":false,\"description\":\"Compression artifact removal level (0.0-1.0). Not supported by the CGI model.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"crop_to_fill\",\"type\":\"boolean\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"false\"},{\"name\":\"upscale_factor\",\"type\":\"number\",\"required\":false,\"description\":\"Factor to upscale the image by (e.g. 2.0 doubles width and height)\",\"default\":\"2\",\"constraints\":\"Range: 1 to 4\"},{\"name\":\"face_enhancement\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to apply face enhancement to the image.\",\"default\":\"true\"},{\"name\":\"subject_detection\",\"type\":\"string\",\"required\":false,\"description\":\"Subject detection mode for the image enhancement.\",\"default\":\"All\",\"constraints\":\"Allowed values: All, Foreground, Background\"},{\"name\":\"sharpen\",\"type\":\"number\",\"required\":false,\"description\":\"Sharpening level (0.0-1.0). Default varies by model.\",\"constraints\":\"Range: 0 to 1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"topaz/upscale/image/precision\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/upscale/image/precision/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"topaz/upscale/image/precision\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/upscale/image/precision/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"topaz/upscale/image/precision\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/upscale/image/precision/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"topaz/upscale/image/precision\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Topaz Upscale Image Precision" - modelId: "topaz/upscale/image/precision" - vendor: "Topaz Labs" - vendorSlug: "topaz" - modelSlug: "upscale/image/precision" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-08-17T19:51:13.114Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/topaz/upscale/image/transparent.md b/model-api-reference/image-generation/topaz/upscale/image/transparent.md deleted file mode 100644 index 01f68394..00000000 --- a/model-api-reference/image-generation/topaz/upscale/image/transparent.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Topaz Upscale Image Transparent API Reference" -description: "Topaz Upscale Image Transparent API reference for SandBase. Use model topaz/upscale/image/transparent with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/topaz/upscale/image/transparent" -apiReferenceJson: "{\"title\":\"Topaz Upscale Image Transparent\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Upscale Image Transparent is Topaz Labs's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to topaz/upscale/image/transparent.\",\"default\":\"topaz/upscale/image/transparent\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Url of the image to process\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Transparent upscaling always outputs PNG to preserve the alpha channel.\",\"default\":\"png\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"topaz/upscale/image/transparent\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/upscale/image/transparent/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"topaz/upscale/image/transparent\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/upscale/image/transparent/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"topaz/upscale/image/transparent\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/topaz/upscale/image/transparent/input_image_0.jpeg\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"topaz/upscale/image/transparent\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Topaz Upscale Image Transparent" - modelId: "topaz/upscale/image/transparent" - vendor: "Topaz Labs" - vendorSlug: "topaz" - modelSlug: "upscale/image/transparent" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-08-17T19:51:26.535Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/trellis/trellis-2.md b/model-api-reference/image-generation/trellis/trellis-2.md deleted file mode 100644 index 1aa8133d..00000000 --- a/model-api-reference/image-generation/trellis/trellis-2.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Trellis 2 API Reference — Trellis Trellis 2 API" -description: "Trellis 2 API reference for SandBase. Use model trellis/trellis-2 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/trellis/trellis-2" -apiReferenceJson: "{\"title\":\"Trellis 2\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Trellis 2 is trellis's image-to-3D AI model. Transform photographs into production-ready 3D meshes with accurate geometry and texture mapping.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to trellis/trellis-2.\",\"default\":\"trellis/trellis-2\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image to convert to 3D\"},{\"name\":\"resolution\",\"type\":\"integer\",\"required\":false,\"description\":\"Output resolution; higher is slower but more detailed\",\"default\":\"1024\",\"constraints\":\"Allowed values: 512, 1024, 1536\"},{\"name\":\"shape_slat_guidance_rescale\",\"type\":\"number\",\"required\":false,\"description\":\"Dampens artifacts from high guidance in the shape stage. Increase if you see noisy geometry.\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"uv_unwrap_angle_threshold_deg\",\"type\":\"number\",\"required\":false,\"description\":\"Maximum angle (in degrees) between adjacent face normals allowed within a single UV chart. Lower values produce more charts with less distortion; higher values produce fewer, larger charts with potentially more stretching.\",\"default\":\"90\",\"constraints\":\"Range: 0 to 180\"},{\"name\":\"uv_unwrap_refine_iterations\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of local refinement passes during UV chart computation. Higher values produce cleaner chart boundaries at the cost of additional UV-unwrap time.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"shape_slat_guidance_strength\",\"type\":\"number\",\"required\":false,\"description\":\"How closely the detailed geometry follows the input image. Higher values add more detail but may introduce noise.\",\"default\":\"7.5\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"tex_slat_rescale_t\",\"type\":\"number\",\"required\":false,\"description\":\"Controls noise schedule sharpness for texture generation. Higher values produce sharper texture details.\",\"default\":\"3\",\"constraints\":\"Range: 1 to 6\"},{\"name\":\"tex_slat_guidance_interval_start\",\"type\":\"number\",\"required\":false,\"description\":\"Fraction of the denoising process at which classifier-free guidance starts for stage 3 (texture). Guidance is only applied between interval_start and interval_end.\",\"default\":\"0.6\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"shape_slat_sampling_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising steps for shape refinement. More steps = slower but potentially smoother geometry.\",\"default\":\"12\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"decimation_target\",\"type\":\"integer\",\"required\":false,\"description\":\"Target number of vertices in the final mesh. Lower values produce smaller files but less detail. 500k is good for most uses, reduce to 20k-50k for web/mobile.\",\"default\":\"500000\",\"constraints\":\"Range: 5000 to 2000000\"},{\"name\":\"texture_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Resolution of the texture image baked onto the mesh. Higher values capture finer surface details but produce larger files.\",\"default\":\"2048\",\"constraints\":\"Allowed values: 1024, 2048, 4096\"},{\"name\":\"ss_guidance_rescale\",\"type\":\"number\",\"required\":false,\"description\":\"Dampens artifacts from high guidance in stage 1. Lower values allow stronger guidance effects, higher values stabilize the output.\",\"default\":\"0.7\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"ss_sampling_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising steps for the initial structure. More steps = slower but potentially higher quality.\",\"default\":\"12\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"tex_slat_guidance_interval_end\",\"type\":\"number\",\"required\":false,\"description\":\"Fraction of the denoising process at which classifier-free guidance ends for stage 3 (texture). Must be >= tex_slat_guidance_interval_start.\",\"default\":\"0.9\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"uv_unwrap_global_iterations\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of global clustering passes during UV chart computation. More passes produce more balanced charts.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"remesh_band\",\"type\":\"number\",\"required\":false,\"description\":\"Controls how far remeshing can move vertices from the original surface. Higher values allow more smoothing but may lose fine details.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 4\"},{\"name\":\"shape_slat_rescale_t\",\"type\":\"number\",\"required\":false,\"description\":\"Controls noise schedule sharpness for shape refinement. Higher values produce sharper geometric details.\",\"default\":\"3\",\"constraints\":\"Range: 1 to 6\"},{\"name\":\"uv_unwrap_smooth_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Smoothing strength applied to UV chart boundaries. Higher values reduce visible seams but may introduce UV distortion.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"remesh_project\",\"type\":\"number\",\"required\":false,\"description\":\"How much to project remeshed vertices back onto the original surface. 0 = no projection (smoother), 1 = full projection (preserves detail).\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"ss_guidance_strength\",\"type\":\"number\",\"required\":false,\"description\":\"How closely the initial 3D structure follows the input image. Higher values produce more faithful but potentially noisier results.\",\"default\":\"7.5\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"ss_guidance_interval_end\",\"type\":\"number\",\"required\":false,\"description\":\"Fraction of the denoising process at which classifier-free guidance ends for stage 1 (sparse structure). Must be >= ss_guidance_interval_start.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"tex_slat_guidance_strength\",\"type\":\"number\",\"required\":false,\"description\":\"How closely the texture follows the input image colors. Higher values produce more vivid but potentially oversaturated textures.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"tex_slat_sampling_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising steps for texture generation. More steps = slower but potentially cleaner textures.\",\"default\":\"12\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"shape_slat_guidance_interval_end\",\"type\":\"number\",\"required\":false,\"description\":\"Fraction of the denoising process at which classifier-free guidance ends for stage 2 (shape refinement). Must be >= shape_slat_guidance_interval_start.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"ss_guidance_interval_start\",\"type\":\"number\",\"required\":false,\"description\":\"Fraction of the denoising process at which classifier-free guidance starts for stage 1 (sparse structure). Guidance is only applied between interval_start and interval_end; outside this window the model runs unguided. Lower values apply guidance earlier.\",\"default\":\"0.6\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"shape_slat_guidance_interval_start\",\"type\":\"number\",\"required\":false,\"description\":\"Fraction of the denoising process at which classifier-free guidance starts for stage 2 (shape refinement). Guidance is only applied between interval_start and interval_end.\",\"default\":\"0.6\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"ss_rescale_t\",\"type\":\"number\",\"required\":false,\"description\":\"Controls noise schedule sharpness for structure generation. Higher values produce sharper transitions.\",\"default\":\"5\",\"constraints\":\"Range: 1 to 6\"},{\"name\":\"tex_slat_guidance_rescale\",\"type\":\"number\",\"required\":false,\"description\":\"Dampens artifacts from high guidance in the texture stage. Increase if textures look noisy or have color banding.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"remesh\",\"type\":\"boolean\",\"required\":false,\"description\":\"Rebuild the mesh topology for cleaner triangles. Slower but usually produces better results for downstream use (animation, 3D printing, etc).\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"trellis/trellis-2\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/trellis/trellis-2/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"trellis/trellis-2\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/trellis/trellis-2/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"trellis/trellis-2\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/trellis/trellis-2/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"trellis/trellis-2\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Trellis 2" - modelId: "trellis/trellis-2" - vendor: "trellis" - vendorSlug: "trellis" - modelSlug: "trellis-2" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-17T21:49:28.133Z" - capabilities: ["image-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/trellis/trellis-2/retexture.md b/model-api-reference/image-generation/trellis/trellis-2/retexture.md deleted file mode 100644 index 5d52fd09..00000000 --- a/model-api-reference/image-generation/trellis/trellis-2/retexture.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Trellis 2 API Reference — Trellis Trellis 2 / Retexture API" -description: "Trellis 2 API reference for SandBase. Use model trellis/trellis-2/retexture with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/trellis/trellis-2/retexture" -apiReferenceJson: "{\"title\":\"Trellis 2\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Trellis 2 Retexture is trellis's image-to-3D AI model. Transform photographs into production-ready 3D meshes with accurate geometry and texture mapping.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to trellis/trellis-2/retexture.\",\"default\":\"trellis/trellis-2/retexture\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the reference image for texturing\"},{\"name\":\"resolution\",\"type\":\"integer\",\"required\":false,\"description\":\"Internal resolution for texture generation. Higher produces finer texture details but is slower.\",\"default\":\"1024\",\"constraints\":\"Allowed values: 512, 1024\"},{\"name\":\"tex_slat_guidance_strength\",\"type\":\"number\",\"required\":false,\"description\":\"How closely the texture follows the input image colors. Higher values produce more vivid but potentially oversaturated textures.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"tex_slat_sampling_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising steps for texture generation. More steps = slower but potentially cleaner textures.\",\"default\":\"12\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"tex_slat_guidance_interval_end\",\"type\":\"number\",\"required\":false,\"description\":\"Fraction of the denoising process at which classifier-free guidance ends for the texture stage. Must be >= tex_slat_guidance_interval_start.\",\"default\":\"0.9\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"tex_slat_guidance_rescale\",\"type\":\"number\",\"required\":false,\"description\":\"Dampens artifacts from high guidance in the texture stage. Increase if textures look noisy or have color banding.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"tex_slat_guidance_interval_start\",\"type\":\"number\",\"required\":false,\"description\":\"Fraction of the denoising process at which classifier-free guidance starts for the texture stage. Guidance is only applied between interval_start and interval_end.\",\"default\":\"0.6\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"tex_slat_rescale_t\",\"type\":\"number\",\"required\":false,\"description\":\"Controls noise schedule sharpness for texture generation. Higher values produce sharper texture details.\",\"default\":\"3\",\"constraints\":\"Range: 1 to 6\"},{\"name\":\"mesh_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the untextured 3D mesh to retexture. Supports GLB, OBJ, PLY, and STL formats.\"},{\"name\":\"texture_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Resolution of the texture image baked onto the mesh. Higher values capture finer surface details but produce larger files.\",\"default\":\"2048\",\"constraints\":\"Allowed values: 1024, 2048, 4096\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"trellis/trellis-2/retexture\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/trellis/trellis-2/retexture/input_image_1.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"trellis/trellis-2/retexture\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/trellis/trellis-2/retexture/input_image_1.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"trellis/trellis-2/retexture\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/trellis/trellis-2/retexture/input_image_1.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"trellis/trellis-2/retexture\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Trellis 2" - modelId: "trellis/trellis-2/retexture" - vendor: "trellis" - vendorSlug: "trellis" - modelSlug: "trellis-2/retexture" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-02T05:51:42.196Z" - capabilities: ["image-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/trellis/trellis.md b/model-api-reference/image-generation/trellis/trellis.md deleted file mode 100644 index b71b4d67..00000000 --- a/model-api-reference/image-generation/trellis/trellis.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Trellis API Reference — Trellis Trellis API" -description: "Trellis API reference for SandBase. Use model trellis/trellis with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/trellis/trellis" -apiReferenceJson: "{\"title\":\"Trellis\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Trellis is trellis's image-to-3D AI model. Transform photographs into production-ready 3D meshes with accurate geometry and texture mapping.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to trellis/trellis.\",\"default\":\"trellis/trellis\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image to convert to 3D\"},{\"name\":\"slat_sampling_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Sampling steps for structured latent generation\",\"default\":\"12\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"ss_sampling_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Sampling steps for sparse structure generation\",\"default\":\"12\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"mesh_simplify\",\"type\":\"number\",\"required\":false,\"description\":\"Mesh simplification factor\",\"default\":\"0.95\",\"constraints\":\"Range: 0.9 to 0.98\"},{\"name\":\"texture_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Texture resolution\",\"default\":\"1024\",\"constraints\":\"Allowed values: 512, 1024, 2048\"},{\"name\":\"ss_guidance_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance strength for sparse structure generation\",\"default\":\"7.5\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"slat_guidance_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance strength for structured latent generation\",\"default\":\"3\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"trellis/trellis\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/trellis/trellis/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"trellis/trellis\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/trellis/trellis/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"trellis/trellis\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/trellis/trellis/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"trellis/trellis\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Trellis" - modelId: "trellis/trellis" - vendor: "trellis" - vendorSlug: "trellis" - modelSlug: "trellis" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-12-13T00:00:00Z" - capabilities: ["image-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/trellis/trellis/multi.md b/model-api-reference/image-generation/trellis/trellis/multi.md deleted file mode 100644 index 752cb5da..00000000 --- a/model-api-reference/image-generation/trellis/trellis/multi.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Trellis API Reference — Trellis Trellis / Multi API" -description: "Trellis API reference for SandBase. Use model trellis/trellis/multi with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/trellis/trellis/multi" -apiReferenceJson: "{\"title\":\"Trellis\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Trellis Multi is trellis's image-to-3D AI model. Transform photographs into production-ready 3D meshes with accurate geometry and texture mapping.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to trellis/trellis/multi.\",\"default\":\"trellis/trellis/multi\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"List of URLs of input images to convert to 3D\"},{\"name\":\"slat_sampling_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Sampling steps for structured latent generation\",\"default\":\"12\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"ss_sampling_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Sampling steps for sparse structure generation\",\"default\":\"12\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"multiimage_algo\",\"type\":\"string\",\"required\":false,\"description\":\"Algorithm for multi-image generation\",\"default\":\"stochastic\",\"constraints\":\"Allowed values: stochastic, multidiffusion\"},{\"name\":\"mesh_simplify\",\"type\":\"number\",\"required\":false,\"description\":\"Mesh simplification factor\",\"default\":\"0.95\",\"constraints\":\"Range: 0.9 to 0.98\"},{\"name\":\"ss_guidance_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance strength for sparse structure generation\",\"default\":\"7.5\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"slat_guidance_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance strength for structured latent generation\",\"default\":\"3\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"texture_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Texture resolution\",\"default\":\"1024\",\"constraints\":\"Allowed values: 512, 1024, 2048\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"trellis/trellis/multi\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"trellis/trellis/multi\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"trellis/trellis/multi\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"trellis/trellis/multi\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Trellis" - modelId: "trellis/trellis/multi" - vendor: "trellis" - vendorSlug: "trellis" - modelSlug: "trellis/multi" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-02T01:45:42.664Z" - capabilities: ["image-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/tripo3d/tripo-h3.1/image-to-3d.md b/model-api-reference/image-generation/tripo3d/tripo-h3.1/image-to-3d.md index 2229208e..7f299471 100644 --- a/model-api-reference/image-generation/tripo3d/tripo-h3.1/image-to-3d.md +++ b/model-api-reference/image-generation/tripo3d/tripo-h3.1/image-to-3d.md @@ -4,7 +4,7 @@ description: "Tripo H3.1 Image to 3D API reference for SandBase. Use model tripo aside: false outline: false apiReferenceKey: "image/tripo3d/tripo-h3.1/image-to-3d" -apiReferenceJson: "{\"title\":\"Tripo H3.1 Image to 3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Tripo H3.1 by Tripo3D - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tripo3d/tripo-h3.1/image-to-3d.\",\"default\":\"tripo3d/tripo-h3.1/image-to-3d\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image for 3D model creation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tripo3d/tripo-h3.1/image-to-3d\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tripo3d/tripo-h3.1/image-to-3d/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tripo3d/tripo-h3.1/image-to-3d\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tripo3d/tripo-h3.1/image-to-3d/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tripo3d/tripo-h3.1/image-to-3d\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tripo3d/tripo-h3.1/image-to-3d/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tripo3d/tripo-h3.1/image-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Tripo H3.1 Image to 3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Tripo H3.1 by Tripo3D - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tripo3d/tripo-h3.1/image-to-3d.\",\"default\":\"tripo3d/tripo-h3.1/image-to-3d\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image for 3D model creation.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for reproducible geometry generation.\"},{\"name\":\"face_limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Target face count. Adaptive when unset.\",\"constraints\":\"Range: 1000 to 2000000\"},{\"name\":\"geometry_quality\",\"type\":\"string\",\"required\":false,\"description\":\"detailed geometry is billed as an add-on.\",\"default\":\"standard\",\"constraints\":\"Allowed values: standard, detailed\"},{\"name\":\"pbr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate PBR materials (also enables texture).\",\"default\":\"true\"},{\"name\":\"quad\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate quad mesh topology instead of triangles.\",\"default\":\"false\"},{\"name\":\"texture\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate textures. Set both texture and pbr to false for an untextured model.\",\"default\":\"true\"},{\"name\":\"texture_quality\",\"type\":\"string\",\"required\":false,\"description\":\"standard or detailed (HD) textures.\",\"default\":\"standard\",\"constraints\":\"Allowed values: standard, detailed\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tripo3d/tripo-h3.1/image-to-3d\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tripo3d/tripo-h3.1/image-to-3d/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tripo3d/tripo-h3.1/image-to-3d\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tripo3d/tripo-h3.1/image-to-3d/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tripo3d/tripo-h3.1/image-to-3d\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tripo3d/tripo-h3.1/image-to-3d/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tripo3d/tripo-h3.1/image-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Tripo H3.1 Image to 3D" modelId: "tripo3d/tripo-h3.1/image-to-3d" diff --git a/model-api-reference/image-generation/tripo3d/tripo-h3.1/multiview-to-3d.md b/model-api-reference/image-generation/tripo3d/tripo-h3.1/multiview-to-3d.md index d5f4b2d1..2326f63e 100644 --- a/model-api-reference/image-generation/tripo3d/tripo-h3.1/multiview-to-3d.md +++ b/model-api-reference/image-generation/tripo3d/tripo-h3.1/multiview-to-3d.md @@ -4,7 +4,7 @@ description: "Tripo H3.1 Multiview to 3D API reference for SandBase. Use model t aside: false outline: false apiReferenceKey: "image/tripo3d/tripo-h3.1/multiview-to-3d" -apiReferenceJson: "{\"title\":\"Tripo H3.1 Multiview to 3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Tripo H3.1 Multiview To 3d by Tripo3D - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tripo3d/tripo-h3.1/multiview-to-3d.\",\"default\":\"tripo3d/tripo-h3.1/multiview-to-3d\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"2 to 4 image URLs of the same object from different angles. Order: [front, left, back, right]. Front view is required.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tripo3d/tripo-h3.1/multiview-to-3d\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tripo3d/tripo-h3.1/multiview-to-3d\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tripo3d/tripo-h3.1/multiview-to-3d\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tripo3d/tripo-h3.1/multiview-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Tripo H3.1 Multiview to 3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Tripo H3.1 Multiview To 3d by Tripo3D - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tripo3d/tripo-h3.1/multiview-to-3d.\",\"default\":\"tripo3d/tripo-h3.1/multiview-to-3d\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"2 to 4 images of the same object. Order: front, left, back, right.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for reproducible geometry generation.\"},{\"name\":\"face_limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Target face count. Adaptive when unset.\",\"constraints\":\"Range: 1000 to 2000000\"},{\"name\":\"geometry_quality\",\"type\":\"string\",\"required\":false,\"description\":\"detailed geometry is billed as an add-on.\",\"default\":\"standard\",\"constraints\":\"Allowed values: standard, detailed\"},{\"name\":\"pbr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate PBR materials (also enables texture).\",\"default\":\"true\"},{\"name\":\"quad\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate quad mesh topology instead of triangles.\",\"default\":\"false\"},{\"name\":\"texture\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate textures. Set both texture and pbr to false for an untextured model.\",\"default\":\"true\"},{\"name\":\"texture_quality\",\"type\":\"string\",\"required\":false,\"description\":\"standard or detailed (HD) textures.\",\"default\":\"standard\",\"constraints\":\"Allowed values: standard, detailed\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tripo3d/tripo-h3.1/multiview-to-3d\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/tripo3d/tripo-h3.1/multiview-to-3d/input_images_0.png\\\",\\n \\\"https://static.sandbase.ai/examples/tripo3d/tripo-h3.1/multiview-to-3d/input_images_0.png\\\"\\n ]\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tripo3d/tripo-h3.1/multiview-to-3d\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/tripo3d/tripo-h3.1/multiview-to-3d/input_images_0.png\\\",\\n \\\"https://static.sandbase.ai/examples/tripo3d/tripo-h3.1/multiview-to-3d/input_images_0.png\\\"\\n ]\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tripo3d/tripo-h3.1/multiview-to-3d\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/tripo3d/tripo-h3.1/multiview-to-3d/input_images_0.png\\\",\\n \\\"https://static.sandbase.ai/examples/tripo3d/tripo-h3.1/multiview-to-3d/input_images_0.png\\\"\\n ]\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tripo3d/tripo-h3.1/multiview-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Tripo H3.1 Multiview to 3D" modelId: "tripo3d/tripo-h3.1/multiview-to-3d" diff --git a/model-api-reference/image-generation/tripo3d/tripo-h3.1/text-to-3d.md b/model-api-reference/image-generation/tripo3d/tripo-h3.1/text-to-3d.md index c8722be7..3d37ca2f 100644 --- a/model-api-reference/image-generation/tripo3d/tripo-h3.1/text-to-3d.md +++ b/model-api-reference/image-generation/tripo3d/tripo-h3.1/text-to-3d.md @@ -4,7 +4,7 @@ description: "Tripo H3.1 Text to 3D API reference for SandBase. Use model tripo3 aside: false outline: false apiReferenceKey: "image/tripo3d/tripo-h3.1/text-to-3d" -apiReferenceJson: "{\"title\":\"Tripo H3.1 Text to 3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Tripo H3.1 is Tripo3D's text-to-3D AI model. Turn written descriptions into textured 3D objects with realistic geometry and materials.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tripo3d/tripo-h3.1/text-to-3d.\",\"default\":\"tripo3d/tripo-h3.1/text-to-3d\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of the 3D object to generate. Maximum 1024 characters.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tripo3d/tripo-h3.1/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A small house with a red roof and white walls\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tripo3d/tripo-h3.1/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A small house with a red roof and white walls\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tripo3d/tripo-h3.1/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A small house with a red roof and white walls\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tripo3d/tripo-h3.1/text-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Tripo H3.1 Text to 3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Tripo H3.1 is Tripo3D's text-to-3D AI model. Turn written descriptions into textured 3D objects with realistic geometry and materials.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tripo3d/tripo-h3.1/text-to-3d.\",\"default\":\"tripo3d/tripo-h3.1/text-to-3d\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of the 3D object to generate. Maximum 1024 characters.\"},{\"name\":\"negative_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Features to avoid in the generated model.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for reproducible geometry generation.\"},{\"name\":\"face_limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Target face count. Adaptive when unset.\",\"constraints\":\"Range: 1000 to 2000000\"},{\"name\":\"geometry_quality\",\"type\":\"string\",\"required\":false,\"description\":\"detailed geometry is billed as an add-on.\",\"default\":\"standard\",\"constraints\":\"Allowed values: standard, detailed\"},{\"name\":\"pbr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate PBR materials (also enables texture).\",\"default\":\"true\"},{\"name\":\"quad\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate quad mesh topology instead of triangles.\",\"default\":\"false\"},{\"name\":\"texture\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate textures. Set both texture and pbr to false for an untextured model.\",\"default\":\"true\"},{\"name\":\"texture_quality\",\"type\":\"string\",\"required\":false,\"description\":\"standard or detailed (HD) textures.\",\"default\":\"standard\",\"constraints\":\"Allowed values: standard, detailed\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tripo3d/tripo-h3.1/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A small house with a red roof and white walls\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tripo3d/tripo-h3.1/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A small house with a red roof and white walls\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tripo3d/tripo-h3.1/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A small house with a red roof and white walls\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tripo3d/tripo-h3.1/text-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Tripo H3.1 Text to 3D" modelId: "tripo3d/tripo-h3.1/text-to-3d" diff --git a/model-api-reference/image-generation/tripo3d/tripo-p1/image-to-3d.md b/model-api-reference/image-generation/tripo3d/tripo-p1/image-to-3d.md deleted file mode 100644 index 4ab0ac64..00000000 --- a/model-api-reference/image-generation/tripo3d/tripo-p1/image-to-3d.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Tripo P1 Image to 3D API Reference" -description: "Tripo P1 Image to 3D API reference for SandBase. Use model tripo3d/tripo-p1/image-to-3d with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/tripo3d/tripo-p1/image-to-3d" -apiReferenceJson: "{\"title\":\"Tripo P1 Image to 3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Tripo P1 by Tripo3D - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tripo3d/tripo-p1/image-to-3d.\",\"default\":\"tripo3d/tripo-p1/image-to-3d\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image for 3D model creation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tripo3d/tripo-p1/image-to-3d\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tripo3d/tripo-p1/image-to-3d/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tripo3d/tripo-p1/image-to-3d\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tripo3d/tripo-p1/image-to-3d/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tripo3d/tripo-p1/image-to-3d\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tripo3d/tripo-p1/image-to-3d/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tripo3d/tripo-p1/image-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Tripo P1 Image to 3D" - modelId: "tripo3d/tripo-p1/image-to-3d" - vendor: "Tripo3D" - vendorSlug: "tripo3d" - modelSlug: "tripo-p1/image-to-3d" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-15T18:23:58.905Z" - capabilities: ["image-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/tripo3d/tripo-p1/text-to-3d.md b/model-api-reference/image-generation/tripo3d/tripo-p1/text-to-3d.md deleted file mode 100644 index a9a1db62..00000000 --- a/model-api-reference/image-generation/tripo3d/tripo-p1/text-to-3d.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Tripo P1 Text to 3D API Reference" -description: "Tripo P1 Text to 3D API reference for SandBase. Use model tripo3d/tripo-p1/text-to-3d with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/tripo3d/tripo-p1/text-to-3d" -apiReferenceJson: "{\"title\":\"Tripo P1 Text to 3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Tripo P1 is Tripo3D's text-to-3D AI model. Turn written descriptions into textured 3D objects with realistic geometry and materials.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tripo3d/tripo-p1/text-to-3d.\",\"default\":\"tripo3d/tripo-p1/text-to-3d\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of the 3D object to generate. Maximum 1024 characters.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tripo3d/tripo-p1/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A simple wooden chair\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tripo3d/tripo-p1/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A simple wooden chair\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tripo3d/tripo-p1/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A simple wooden chair\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tripo3d/tripo-p1/text-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Tripo P1 Text to 3D" - modelId: "tripo3d/tripo-p1/text-to-3d" - vendor: "Tripo3D" - vendorSlug: "tripo3d" - modelSlug: "tripo-p1/text-to-3d" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-15T18:24:09.919Z" - capabilities: ["text-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/tripo3d/tripo-p2/image-to-3d.md b/model-api-reference/image-generation/tripo3d/tripo-p2/image-to-3d.md new file mode 100644 index 00000000..79684876 --- /dev/null +++ b/model-api-reference/image-generation/tripo3d/tripo-p2/image-to-3d.md @@ -0,0 +1,21 @@ +--- +title: "Tripo P2 Image to 3D API Reference" +description: "Tripo P2 Image to 3D API reference for SandBase. Use model tripo3d/tripo-p2/image-to-3d with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/tripo3d/tripo-p2/image-to-3d" +apiReferenceJson: "{\"title\":\"Tripo P2 Image to 3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Tripo P2 is Tripo3D's current flagship 3D generation model. It reconstructs a production-ready mesh with optional PBR textures from a single image.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tripo3d/tripo-p2/image-to-3d.\",\"default\":\"tripo3d/tripo-p2/image-to-3d\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image URL for 3D model creation.\"},{\"name\":\"face_limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum faces (quad meshes up to 25,000).\",\"constraints\":\"Range: 48 to 50000\"},{\"name\":\"pbr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate PBR materials (also enables texture).\",\"default\":\"true\"},{\"name\":\"quad\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate quad mesh topology instead of triangles.\",\"default\":\"false\"},{\"name\":\"texture\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate textures. Set both texture and pbr to false for an untextured model.\",\"default\":\"true\"},{\"name\":\"texture_quality\",\"type\":\"string\",\"required\":false,\"description\":\"Texture quality tier.\",\"default\":\"standard\",\"constraints\":\"Allowed values: fast, standard, detailed, extreme\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for reproducible geometry generation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tripo3d/tripo-p2/image-to-3d\\\",\\n \\\"image\\\": \\\"https://v3b.fal.media/files/b/zebra/3osHJDI8IZ2wl6sGtEUeB_image.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tripo3d/tripo-p2/image-to-3d\\\",\\n \\\"image\\\": \\\"https://v3b.fal.media/files/b/zebra/3osHJDI8IZ2wl6sGtEUeB_image.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tripo3d/tripo-p2/image-to-3d\\\",\\n \\\"image\\\": \\\"https://v3b.fal.media/files/b/zebra/3osHJDI8IZ2wl6sGtEUeB_image.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tripo3d/tripo-p2/image-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Tripo P2 Image to 3D" + modelId: "tripo3d/tripo-p2/image-to-3d" + vendor: "Tripo3D" + vendorSlug: "tripo3d" + modelSlug: "tripo-p2/image-to-3d" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-09-21T20:52:00.285Z" + capabilities: ["image-to-3d"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/tripo3d/tripo-p2/text-to-3d.md b/model-api-reference/image-generation/tripo3d/tripo-p2/text-to-3d.md new file mode 100644 index 00000000..24a73344 --- /dev/null +++ b/model-api-reference/image-generation/tripo3d/tripo-p2/text-to-3d.md @@ -0,0 +1,21 @@ +--- +title: "Tripo P2 Text to 3D API Reference" +description: "Tripo P2 Text to 3D API reference for SandBase. Use model tripo3d/tripo-p2/text-to-3d with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/tripo3d/tripo-p2/text-to-3d" +apiReferenceJson: "{\"title\":\"Tripo P2 Text to 3D\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Tripo P2 is Tripo3D's current flagship 3D generation model. It turns a text description into a production-ready mesh with optional PBR textures.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tripo3d/tripo-p2/text-to-3d.\",\"default\":\"tripo3d/tripo-p2/text-to-3d\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of the 3D object to generate. Maximum 1024 characters.\"},{\"name\":\"texture\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate textures. Set both texture and pbr to false for an untextured model.\",\"default\":\"true\"},{\"name\":\"pbr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate PBR materials (also enables texture).\",\"default\":\"true\"},{\"name\":\"quad\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate quad mesh topology instead of triangles.\",\"default\":\"false\"},{\"name\":\"face_limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum faces (quad meshes up to 25,000).\",\"constraints\":\"Range: 48 to 50000\"},{\"name\":\"texture_quality\",\"type\":\"string\",\"required\":false,\"description\":\"Texture quality tier.\",\"default\":\"standard\",\"constraints\":\"Allowed values: fast, standard, detailed, extreme\"},{\"name\":\"negative_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Features to avoid in the generated model.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for reproducible geometry generation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tripo3d/tripo-p2/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A low-poly wooden chair\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tripo3d/tripo-p2/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A low-poly wooden chair\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tripo3d/tripo-p2/text-to-3d\\\",\\n \\\"prompt\\\": \\\"A low-poly wooden chair\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tripo3d/tripo-p2/text-to-3d\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Tripo P2 Text to 3D" + modelId: "tripo3d/tripo-p2/text-to-3d" + vendor: "Tripo3D" + vendorSlug: "tripo3d" + modelSlug: "tripo-p2/text-to-3d" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-09-21T20:52:05.873Z" + capabilities: ["text-to-3d"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/tripo3d/triposplat.md b/model-api-reference/image-generation/tripo3d/triposplat.md deleted file mode 100644 index 13c28147..00000000 --- a/model-api-reference/image-generation/tripo3d/triposplat.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Triposplat API Reference" -description: "Triposplat API reference for SandBase. Use model tripo3d/triposplat with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/tripo3d/triposplat" -apiReferenceJson: "{\"title\":\"Triposplat\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Triposplat by Tripo3D - convert 2D images into 3D models with AI. Generate textured 3D assets from single photos for games, AR/VR, e-commerce, and digital content creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tripo3d/triposplat.\",\"default\":\"tripo3d/triposplat\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image to convert into a 3D Gaussian splat.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Classifier-free guidance strength. Values at or below 1.0 disable guidance; higher values increase detail and adherence to the input image, but too high can oversaturate colors.\",\"default\":\"3\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of flow-matching sampler steps. More steps improve fidelity with a roughly linear runtime cost.\",\"default\":\"20\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"File format for the generated Gaussian splat.\",\"default\":\"ply\",\"constraints\":\"Allowed values: ply, splat\"},{\"name\":\"num_gaussians\",\"type\":\"integer\",\"required\":false,\"description\":\"Target number of Gaussians in the output splat. Higher means more detail but larger files and slower rendering. Rounded to the nearest multiple of 32 internally.\",\"default\":\"262144\",\"constraints\":\"Range: 32768 to 262144\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is generated.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-3d\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tripo3d/triposplat\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/VAST-AI-Research/TripoSplat/36b6deb0a1613e43c6910de441cb57d50352e44a/static/example_inputs/building_stone_house.webp\\\",\\n \\\"output_format\\\": \\\"ply\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tripo3d/triposplat\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/VAST-AI-Research/TripoSplat/36b6deb0a1613e43c6910de441cb57d50352e44a/static/example_inputs/building_stone_house.webp\\\",\\n \\\"output_format\\\": \\\"ply\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tripo3d/triposplat\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/VAST-AI-Research/TripoSplat/36b6deb0a1613e43c6910de441cb57d50352e44a/static/example_inputs/building_stone_house.webp\\\",\\n \\\"output_format\\\": \\\"ply\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tripo3d/triposplat\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Triposplat" - modelId: "tripo3d/triposplat" - vendor: "Tripo3D" - vendorSlug: "tripo3d" - modelSlug: "triposplat" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-03T21:25:03.135Z" - capabilities: ["image-to-3d"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/veed/subtitles.md b/model-api-reference/image-generation/veed/subtitles.md deleted file mode 100644 index 2644b624..00000000 --- a/model-api-reference/image-generation/veed/subtitles.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Subtitles reference moved" -description: "The veed/subtitles reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/veed/subtitles -robots: noindex,follow ---- - -# This page has moved - -`veed/subtitles` is a video model. Its API reference now lives at [Subtitles](/model-api-reference/video-generation/veed/subtitles) under Video Generation. diff --git a/model-api-reference/image-generation/vidu/2.0/reference-to-image.md b/model-api-reference/image-generation/vidu/2.0/reference-to-image.md deleted file mode 100644 index 630d289f..00000000 --- a/model-api-reference/image-generation/vidu/2.0/reference-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Vidu 2.0 Reference to Image API Reference" -description: "Vidu 2.0 Reference to Image API reference for SandBase. Use model vidu/2.0/reference-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/vidu/2.0/reference-to-image" -apiReferenceJson: "{\"title\":\"Vidu 2.0 Reference to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Vidu 2.0 Reference To Image is Shengshu's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to vidu/2.0/reference-to-image.\",\"default\":\"vidu/2.0/reference-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation, max 1500 characters\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for generation\"},{\"name\":\"reference_image_urls\",\"type\":\"array\",\"required\":false,\"description\":\"URLs of the reference images to use for consistent subject appearance\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"vidu/2.0/reference-to-image\\\",\\n \\\"prompt\\\": \\\"The little devil is looking at the apple on the beach and walking around it.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"vidu/2.0/reference-to-image\\\",\\n \\\"prompt\\\": \\\"The little devil is looking at the apple on the beach and walking around it.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"vidu/2.0/reference-to-image\\\",\\n \\\"prompt\\\": \\\"The little devil is looking at the apple on the beach and walking around it.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"vidu/2.0/reference-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Vidu 2.0 Reference to Image" - modelId: "vidu/2.0/reference-to-image" - vendor: "Vidu" - vendorSlug: "vidu" - modelSlug: "2.0/reference-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-09T11:42:32.318Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/vidu/q2/reference-to-image.md b/model-api-reference/image-generation/vidu/q2/reference-to-image.md deleted file mode 100644 index 69c97445..00000000 --- a/model-api-reference/image-generation/vidu/q2/reference-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Vidu Q2 Reference to Image API Reference" -description: "Vidu Q2 Reference to Image API reference for SandBase. Use model vidu/q2/reference-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/vidu/q2/reference-to-image" -apiReferenceJson: "{\"title\":\"Vidu Q2 Reference to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Vidu Q2 Reference To Image by Shengshu - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to vidu/q2/reference-to-image.\",\"default\":\"vidu/q2/reference-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation, max 1500 characters\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for generation\"},{\"name\":\"reference_image_urls\",\"type\":\"array\",\"required\":false,\"description\":\"URLs of the reference images to use for consistent subject appearance\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"vidu/q2/reference-to-image\\\",\\n \\\"prompt\\\": \\\"The little devil is looking at the apple on the beach and walking around it.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"vidu/q2/reference-to-image\\\",\\n \\\"prompt\\\": \\\"The little devil is looking at the apple on the beach and walking around it.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"vidu/q2/reference-to-image\\\",\\n \\\"prompt\\\": \\\"The little devil is looking at the apple on the beach and walking around it.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"vidu/q2/reference-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Vidu Q2 Reference to Image" - modelId: "vidu/q2/reference-to-image" - vendor: "Vidu" - vendorSlug: "vidu" - modelSlug: "q2/reference-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-02T15:15:16.476Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/vidu/q2/text-to-image.md b/model-api-reference/image-generation/vidu/q2/text-to-image.md deleted file mode 100644 index e6e33e6e..00000000 --- a/model-api-reference/image-generation/vidu/q2/text-to-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Vidu Q2 Text to Image API Reference" -description: "Vidu Q2 Text to Image API reference for SandBase. Use model vidu/q2/text-to-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/vidu/q2/text-to-image" -apiReferenceJson: "{\"title\":\"Vidu Q2 Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Vidu Q2 is Shengshu's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to vidu/q2/text-to-image.\",\"default\":\"vidu/q2/text-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation, max 1500 characters\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for generation\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"vidu/q2/text-to-image\\\",\\n \\\"prompt\\\": \\\"A majestic dragon perches on the mountaintop, its eyes fixed intently on a small baby dragon.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"vidu/q2/text-to-image\\\",\\n \\\"prompt\\\": \\\"A majestic dragon perches on the mountaintop, its eyes fixed intently on a small baby dragon.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"vidu/q2/text-to-image\\\",\\n \\\"prompt\\\": \\\"A majestic dragon perches on the mountaintop, its eyes fixed intently on a small baby dragon.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"vidu/q2/text-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Vidu Q2 Text to Image" - modelId: "vidu/q2/text-to-image" - vendor: "Vidu" - vendorSlug: "vidu" - modelSlug: "q2/text-to-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-02T15:12:08.03Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/xai/grok-imagine-image/2.0/edit.md b/model-api-reference/image-generation/xai/grok-imagine-image/2.0/edit.md new file mode 100644 index 00000000..93e5221c --- /dev/null +++ b/model-api-reference/image-generation/xai/grok-imagine-image/2.0/edit.md @@ -0,0 +1,21 @@ +--- +title: "Grok Imagine Image 2.0 Edit API Reference" +description: "Grok Imagine Image 2.0 Edit API reference for SandBase. Use model xai/grok-imagine-image/2.0/edit with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/xai/grok-imagine-image/2.0/edit" +apiReferenceJson: "{\"title\":\"Grok Imagine Image 2.0 Edit\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Grok Imagine Image 2.0 Edit is xAI's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xai/grok-imagine-image/2.0/edit.\",\"default\":\"xai/grok-imagine-image/2.0/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of the desired image.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"List of URLs of the images to edit. A maximum of 3 images are supported.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated image. `1k` for standard resolution, `2k` for high resolution.\",\"default\":\"1k\",\"constraints\":\"Allowed values: 1k, 2k\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Quality level of the edited image.\",\"default\":\"medium\",\"constraints\":\"Allowed values: low, medium\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xai/grok-imagine-image/2.0/edit\\\",\\n \\\"prompt\\\": \\\"Make this scene more realistic but still keep the game vibes\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"xai/grok-imagine-image/2.0/edit\\\",\\n \\\"prompt\\\": \\\"Make this scene more realistic but still keep the game vibes\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"xai/grok-imagine-image/2.0/edit\\\",\\n \\\"prompt\\\": \\\"Make this scene more realistic but still keep the game vibes\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"xai/grok-imagine-image/2.0/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Grok Imagine Image 2.0 Edit" + modelId: "xai/grok-imagine-image/2.0/edit" + vendor: "xAI" + vendorSlug: "xai" + modelSlug: "grok-imagine-image/2.0/edit" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-08-11T20:13:26.854Z" + capabilities: ["image-to-image"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/xai/grok-imagine-image/2.0/text-to-image.md b/model-api-reference/image-generation/xai/grok-imagine-image/2.0/text-to-image.md new file mode 100644 index 00000000..80d3ca3f --- /dev/null +++ b/model-api-reference/image-generation/xai/grok-imagine-image/2.0/text-to-image.md @@ -0,0 +1,21 @@ +--- +title: "Grok Imagine Image 2.0 Text to Image API Reference" +description: "Grok Imagine Image 2.0 Text to Image API reference for SandBase. Use model xai/grok-imagine-image/2.0/text-to-image with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "image/xai/grok-imagine-image/2.0/text-to-image" +apiReferenceJson: "{\"title\":\"Grok Imagine Image 2.0 Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Grok Imagine Image 2.0 by xAI - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xai/grok-imagine-image/2.0/text-to-image.\",\"default\":\"xai/grok-imagine-image/2.0/text-to-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of the desired image.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated image. `1k` for standard resolution, `2k` for high resolution.\",\"default\":\"1k\",\"constraints\":\"Allowed values: 1k, 2k\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"quality\",\"type\":\"string\",\"required\":false,\"description\":\"Quality level of the generated image.\",\"default\":\"medium\",\"constraints\":\"Allowed values: low, medium\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xai/grok-imagine-image/2.0/text-to-image\\\",\\n \\\"prompt\\\": \\\"Abstract human silhouette, golden particles ready to burst outward representing joy, data visualization style, emotional expression through particles, artistic scientific\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"xai/grok-imagine-image/2.0/text-to-image\\\",\\n \\\"prompt\\\": \\\"Abstract human silhouette, golden particles ready to burst outward representing joy, data visualization style, emotional expression through particles, artistic scientific\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"xai/grok-imagine-image/2.0/text-to-image\\\",\\n \\\"prompt\\\": \\\"Abstract human silhouette, golden particles ready to burst outward representing joy, data visualization style, emotional expression through particles, artistic scientific\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"xai/grok-imagine-image/2.0/text-to-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Grok Imagine Image 2.0 Text to Image" + modelId: "xai/grok-imagine-image/2.0/text-to-image" + vendor: "xAI" + vendorSlug: "xai" + modelSlug: "grok-imagine-image/2.0/text-to-image" + protocol: "Image Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-08-11T20:13:21.281Z" + capabilities: ["text-to-image"] + category: "Image Generation" +--- + + diff --git a/model-api-reference/image-generation/xai/grok-imagine-image/quality.md b/model-api-reference/image-generation/xai/grok-imagine-image/quality.md index 86726c56..2542c09a 100644 --- a/model-api-reference/image-generation/xai/grok-imagine-image/quality.md +++ b/model-api-reference/image-generation/xai/grok-imagine-image/quality.md @@ -1,12 +1,12 @@ --- -title: "Grok Imagine Image Quality API Reference" -description: "Grok Imagine Image Quality API reference for SandBase. Use model xai/grok-imagine-image/quality with /v1/run; see request and response examples." +title: "Grok Imagine Image Quality Text to Image API Reference" +description: "Grok Imagine Image Quality Text to Image API reference for SandBase. Use model xai/grok-imagine-image/quality with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/xai/grok-imagine-image/quality" -apiReferenceJson: "{\"title\":\"Grok Imagine Image Quality\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Grok Imagine Image Quality by xAI - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xai/grok-imagine-image/quality.\",\"default\":\"xai/grok-imagine-image/quality\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of the desired image.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated image. `1k` for standard resolution, `2k` for high resolution.\",\"default\":\"1k\",\"constraints\":\"Allowed values: 1k, 2k\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xai/grok-imagine-image/quality\\\",\\n \\\"prompt\\\": \\\"Abstract human silhouette, golden particles ready to burst outward representing joy, data visualization style, emotional expression through particles, artistic scientific\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"xai/grok-imagine-image/quality\\\",\\n \\\"prompt\\\": \\\"Abstract human silhouette, golden particles ready to burst outward representing joy, data visualization style, emotional expression through particles, artistic scientific\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"xai/grok-imagine-image/quality\\\",\\n \\\"prompt\\\": \\\"Abstract human silhouette, golden particles ready to burst outward representing joy, data visualization style, emotional expression through particles, artistic scientific\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"xai/grok-imagine-image/quality\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Grok Imagine Image Quality Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Grok Imagine Image Quality by xAI - generate stunning images from text prompts with state-of-the-art AI. Supports multiple aspect ratios, styles, and high-resolution output for creative and commercial use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xai/grok-imagine-image/quality.\",\"default\":\"xai/grok-imagine-image/quality\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of the desired image.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated image. `1k` for standard resolution, `2k` for high resolution.\",\"default\":\"1k\",\"constraints\":\"Allowed values: 1k, 2k\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xai/grok-imagine-image/quality\\\",\\n \\\"prompt\\\": \\\"Abstract human silhouette, golden particles ready to burst outward representing joy, data visualization style, emotional expression through particles, artistic scientific\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"xai/grok-imagine-image/quality\\\",\\n \\\"prompt\\\": \\\"Abstract human silhouette, golden particles ready to burst outward representing joy, data visualization style, emotional expression through particles, artistic scientific\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"xai/grok-imagine-image/quality\\\",\\n \\\"prompt\\\": \\\"Abstract human silhouette, golden particles ready to burst outward representing joy, data visualization style, emotional expression through particles, artistic scientific\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"xai/grok-imagine-image/quality\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Grok Imagine Image Quality" + modelName: "Grok Imagine Image Quality Text to Image" modelId: "xai/grok-imagine-image/quality" vendor: "xAI" vendorSlug: "xai" diff --git a/model-api-reference/image-generation/xai/grok-imagine-video/edit.md b/model-api-reference/image-generation/xai/grok-imagine-video/edit.md deleted file mode 100644 index 31a16f58..00000000 --- a/model-api-reference/image-generation/xai/grok-imagine-video/edit.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Grok Imagine Video Edit reference moved" -description: "The xai/grok-imagine-video/edit reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/xai/grok-imagine-video/edit -robots: noindex,follow ---- - -# This page has moved - -`xai/grok-imagine-video/edit` is a video model. Its API reference now lives at [Grok Imagine Video Edit](/model-api-reference/video-generation/xai/grok-imagine-video/edit) under Video Generation. diff --git a/model-api-reference/image-generation/xai/grok-imagine-video/extend.md b/model-api-reference/image-generation/xai/grok-imagine-video/extend.md deleted file mode 100644 index f05a754d..00000000 --- a/model-api-reference/image-generation/xai/grok-imagine-video/extend.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Grok Imagine Video Extend reference moved" -description: "The xai/grok-imagine-video/extend reference now lives under Video Generation." -canonical: /docs/model-api-reference/video-generation/xai/grok-imagine-video/extend -robots: noindex,follow ---- - -# This page has moved - -`xai/grok-imagine-video/extend` is a video model. Its API reference now lives at [Grok Imagine Video Extend](/model-api-reference/video-generation/xai/grok-imagine-video/extend) under Video Generation. diff --git a/model-api-reference/image-generation/z-image/turbo.md b/model-api-reference/image-generation/z-image/turbo.md index cabec20e..e9e01ba8 100644 --- a/model-api-reference/image-generation/z-image/turbo.md +++ b/model-api-reference/image-generation/z-image/turbo.md @@ -1,12 +1,12 @@ --- -title: "Z-Image Turbo API Reference — Z Image Turbo API" -description: "Z-Image Turbo API reference for SandBase. Use model z-image/turbo with /v1/run; see request and response examples." +title: "Z-Image Turbo Text to Image API Reference" +description: "Z-Image Turbo Text to Image API reference for SandBase. Use model z-image/turbo with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "image/z-image/turbo" -apiReferenceJson: "{\"title\":\"Z-Image Turbo\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Turbo is Z-Image's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to z-image/turbo.\",\"default\":\"z-image/turbo\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to perform.\",\"default\":\"8\",\"constraints\":\"Range: 1 to 8\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"z-image/turbo\\\",\\n \\\"prompt\\\": \\\"A hyper-realistic, close-up portrait of a tribal elder from the Omo Valley, painted with intricate white chalk patterns and adorned with a headdress made of dried flowers, seed pods, and rusted bottle caps. The focus is razor-sharp on the texture of the skin, showing every pore, wrinkle, and scar that tells a story of survival. The background is a blurred, smoky hut interior, with the warm glow of a cooking fire reflecting in the subject's dark, soulful eyes. Shot on a Leica M6 with Kodak Portra 400 film grain aesthetic.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"z-image/turbo\\\",\\n \\\"prompt\\\": \\\"A hyper-realistic, close-up portrait of a tribal elder from the Omo Valley, painted with intricate white chalk patterns and adorned with a headdress made of dried flowers, seed pods, and rusted bottle caps. The focus is razor-sharp on the texture of the skin, showing every pore, wrinkle, and scar that tells a story of survival. The background is a blurred, smoky hut interior, with the warm glow of a cooking fire reflecting in the subject's dark, soulful eyes. Shot on a Leica M6 with Kodak Portra 400 film grain aesthetic.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"z-image/turbo\\\",\\n \\\"prompt\\\": \\\"A hyper-realistic, close-up portrait of a tribal elder from the Omo Valley, painted with intricate white chalk patterns and adorned with a headdress made of dried flowers, seed pods, and rusted bottle caps. The focus is razor-sharp on the texture of the skin, showing every pore, wrinkle, and scar that tells a story of survival. The background is a blurred, smoky hut interior, with the warm glow of a cooking fire reflecting in the subject's dark, soulful eyes. Shot on a Leica M6 with Kodak Portra 400 film grain aesthetic.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"z-image/turbo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Z-Image Turbo Text to Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Turbo is Z-Image's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to z-image/turbo.\",\"default\":\"z-image/turbo\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate an image from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the generated image.\",\"default\":\"png\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"z-image/turbo\\\",\\n \\\"prompt\\\": \\\"A hyper-realistic, close-up portrait of a tribal elder from the Omo Valley, painted with intricate white chalk patterns and adorned with a headdress made of dried flowers, seed pods, and rusted bottle caps. The focus is razor-sharp on the texture of the skin, showing every pore, wrinkle, and scar that tells a story of survival. The background is a blurred, smoky hut interior, with the warm glow of a cooking fire reflecting in the subject's dark, soulful eyes. Shot on a Leica M6 with Kodak Portra 400 film grain aesthetic.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"z-image/turbo\\\",\\n \\\"prompt\\\": \\\"A hyper-realistic, close-up portrait of a tribal elder from the Omo Valley, painted with intricate white chalk patterns and adorned with a headdress made of dried flowers, seed pods, and rusted bottle caps. The focus is razor-sharp on the texture of the skin, showing every pore, wrinkle, and scar that tells a story of survival. The background is a blurred, smoky hut interior, with the warm glow of a cooking fire reflecting in the subject's dark, soulful eyes. Shot on a Leica M6 with Kodak Portra 400 film grain aesthetic.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"z-image/turbo\\\",\\n \\\"prompt\\\": \\\"A hyper-realistic, close-up portrait of a tribal elder from the Omo Valley, painted with intricate white chalk patterns and adorned with a headdress made of dried flowers, seed pods, and rusted bottle caps. The focus is razor-sharp on the texture of the skin, showing every pore, wrinkle, and scar that tells a story of survival. The background is a blurred, smoky hut interior, with the warm glow of a cooking fire reflecting in the subject's dark, soulful eyes. Shot on a Leica M6 with Kodak Portra 400 film grain aesthetic.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"output_format\\\": \\\"png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"z-image/turbo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Z-Image Turbo" + modelName: "Z-Image Turbo Text to Image" modelId: "z-image/turbo" vendor: "Z-Image" vendorSlug: "z-image" diff --git a/model-api-reference/image-generation/zhipu/glm-image.md b/model-api-reference/image-generation/zhipu/glm-image.md deleted file mode 100644 index 06869577..00000000 --- a/model-api-reference/image-generation/zhipu/glm-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Glm Image API Reference — Zhipu Glm Image API" -description: "Glm Image API reference for SandBase. Use model zhipu/glm-image with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/zhipu/glm-image" -apiReferenceJson: "{\"title\":\"Glm Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Glm Image is zhipu's advanced text-to-image AI model. Create photorealistic images, illustrations, and concept art from natural language descriptions with exceptional detail and prompt adherence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to zhipu/glm-image.\",\"default\":\"zhipu/glm-image\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for image generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Classifier-free guidance scale. Higher values make the model follow the prompt more closely.\",\"default\":\"1.5\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of diffusion denoising steps. More steps generally produce higher quality images.\",\"default\":\"30\",\"constraints\":\"Range: 10 to 100\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output image format.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. The same seed with the same prompt will produce the same image.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"zhipu/glm-image\\\",\\n \\\"prompt\\\": \\\"An elegant close-up photograph of hands holding a beautifully illustrated watercolor menu card. The hands have natural sun-kissed skin with a delicate gold ring, gripping the menu gently and refined.\\\\n\\\\nThe menu is a work of art—hand-painted watercolor illustration on textured cream watercolor paper with soft deckled edges:\\\\n\\\\n- Top: \\\\\\\"AZURE\\\\\\\" painted in flowing navy blue watercolor calligraphy with organic brushstroke texture and slight color bleeding\\\\n- Watercolor illustration border: delicate tropical elements painted in soft washes—translucent turquoise waves flowing along the edges, loose coral and pink hibiscus flowers in the corners, gentle green palm leaf strokes, and small golden paint splatters suggesting sunlight\\\\n- Center menu items in elegant hand-lettered watercolor script with slight variations in ink density:\\\\n\\\\n \\\\\\\"Tuna Tartare — 24\\\\\\\"\\\\n \\\\\\\"Sea Bass — 32\\\\\\\"\\\\n \\\\\\\"Mango Pavlova — 14\\\\\\\"\\\\n\\\\n- Bottom: \\\\\\\"Koh Samui\\\\\\\" in small watercolor lettering with a tiny painted wave\\\\n\\\\nThe watercolor has beautiful organic qualities—soft color gradients, natural paper texture visible through transparent washes, slight bleeding at edges of brushstrokes, layered translucent blues and greens creating depth. The paint has a luminous, fresh quality with white paper showing through in places.\\\\n\\\\nBackground: dreamy out-of-focus turquoise ocean with sparkling bokeh lights reflecting off water, creating soft circular light spots in aqua and gold tones. The blurred background complements the watercolor aesthetic perfectly.\\\\n\\\\nLighting: warm natural golden hour sunlight from upper left, illuminating the watercolor pigments and making them glow. The light catches the textured watercolor paper beautifully, showing subtle shadows in the paint layers and paper grain.\\\\n\\\\nPhotography style: shot on 85mm f/1.4, shallow depth of field with only the menu in sharp focus. High-end editorial aesthetic that celebrates the handmade, artistic quality of the watercolor. Color palette: cream paper, translucent turquoise and teal watercolors, soft coral pink, navy blue, gentle greens, golden accents, warm skin tones.\\\\n\\\\nThe overall mood is artistic, luxurious, handcrafted—like a boutique resort that values artistry and craftsmanship. The watercolor style feels fresh, organic, and elevated.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"zhipu/glm-image\\\",\\n \\\"prompt\\\": \\\"An elegant close-up photograph of hands holding a beautifully illustrated watercolor menu card. The hands have natural sun-kissed skin with a delicate gold ring, gripping the menu gently and refined.\\\\n\\\\nThe menu is a work of art—hand-painted watercolor illustration on textured cream watercolor paper with soft deckled edges:\\\\n\\\\n- Top: \\\\\\\"AZURE\\\\\\\" painted in flowing navy blue watercolor calligraphy with organic brushstroke texture and slight color bleeding\\\\n- Watercolor illustration border: delicate tropical elements painted in soft washes—translucent turquoise waves flowing along the edges, loose coral and pink hibiscus flowers in the corners, gentle green palm leaf strokes, and small golden paint splatters suggesting sunlight\\\\n- Center menu items in elegant hand-lettered watercolor script with slight variations in ink density:\\\\n\\\\n \\\\\\\"Tuna Tartare — 24\\\\\\\"\\\\n \\\\\\\"Sea Bass — 32\\\\\\\"\\\\n \\\\\\\"Mango Pavlova — 14\\\\\\\"\\\\n\\\\n- Bottom: \\\\\\\"Koh Samui\\\\\\\" in small watercolor lettering with a tiny painted wave\\\\n\\\\nThe watercolor has beautiful organic qualities—soft color gradients, natural paper texture visible through transparent washes, slight bleeding at edges of brushstrokes, layered translucent blues and greens creating depth. The paint has a luminous, fresh quality with white paper showing through in places.\\\\n\\\\nBackground: dreamy out-of-focus turquoise ocean with sparkling bokeh lights reflecting off water, creating soft circular light spots in aqua and gold tones. The blurred background complements the watercolor aesthetic perfectly.\\\\n\\\\nLighting: warm natural golden hour sunlight from upper left, illuminating the watercolor pigments and making them glow. The light catches the textured watercolor paper beautifully, showing subtle shadows in the paint layers and paper grain.\\\\n\\\\nPhotography style: shot on 85mm f/1.4, shallow depth of field with only the menu in sharp focus. High-end editorial aesthetic that celebrates the handmade, artistic quality of the watercolor. Color palette: cream paper, translucent turquoise and teal watercolors, soft coral pink, navy blue, gentle greens, golden accents, warm skin tones.\\\\n\\\\nThe overall mood is artistic, luxurious, handcrafted—like a boutique resort that values artistry and craftsmanship. The watercolor style feels fresh, organic, and elevated.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"zhipu/glm-image\\\",\\n \\\"prompt\\\": \\\"An elegant close-up photograph of hands holding a beautifully illustrated watercolor menu card. The hands have natural sun-kissed skin with a delicate gold ring, gripping the menu gently and refined.\\\\n\\\\nThe menu is a work of art—hand-painted watercolor illustration on textured cream watercolor paper with soft deckled edges:\\\\n\\\\n- Top: \\\\\\\"AZURE\\\\\\\" painted in flowing navy blue watercolor calligraphy with organic brushstroke texture and slight color bleeding\\\\n- Watercolor illustration border: delicate tropical elements painted in soft washes—translucent turquoise waves flowing along the edges, loose coral and pink hibiscus flowers in the corners, gentle green palm leaf strokes, and small golden paint splatters suggesting sunlight\\\\n- Center menu items in elegant hand-lettered watercolor script with slight variations in ink density:\\\\n\\\\n \\\\\\\"Tuna Tartare — 24\\\\\\\"\\\\n \\\\\\\"Sea Bass — 32\\\\\\\"\\\\n \\\\\\\"Mango Pavlova — 14\\\\\\\"\\\\n\\\\n- Bottom: \\\\\\\"Koh Samui\\\\\\\" in small watercolor lettering with a tiny painted wave\\\\n\\\\nThe watercolor has beautiful organic qualities—soft color gradients, natural paper texture visible through transparent washes, slight bleeding at edges of brushstrokes, layered translucent blues and greens creating depth. The paint has a luminous, fresh quality with white paper showing through in places.\\\\n\\\\nBackground: dreamy out-of-focus turquoise ocean with sparkling bokeh lights reflecting off water, creating soft circular light spots in aqua and gold tones. The blurred background complements the watercolor aesthetic perfectly.\\\\n\\\\nLighting: warm natural golden hour sunlight from upper left, illuminating the watercolor pigments and making them glow. The light catches the textured watercolor paper beautifully, showing subtle shadows in the paint layers and paper grain.\\\\n\\\\nPhotography style: shot on 85mm f/1.4, shallow depth of field with only the menu in sharp focus. High-end editorial aesthetic that celebrates the handmade, artistic quality of the watercolor. Color palette: cream paper, translucent turquoise and teal watercolors, soft coral pink, navy blue, gentle greens, golden accents, warm skin tones.\\\\n\\\\nThe overall mood is artistic, luxurious, handcrafted—like a boutique resort that values artistry and craftsmanship. The watercolor style feels fresh, organic, and elevated.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"output_format\\\": \\\"jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"zhipu/glm-image\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Glm Image" - modelId: "zhipu/glm-image" - vendor: "zhipu" - vendorSlug: "zhipu" - modelSlug: "glm-image" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-14T02:17:38.633Z" - capabilities: ["text-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/image-generation/zhipu/glm-image/edit.md b/model-api-reference/image-generation/zhipu/glm-image/edit.md deleted file mode 100644 index efd78d13..00000000 --- a/model-api-reference/image-generation/zhipu/glm-image/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Glm Image API Reference — Zhipu Glm Image / Edit API" -description: "Glm Image API reference for SandBase. Use model zhipu/glm-image/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "image/zhipu/glm-image/edit" -apiReferenceJson: "{\"title\":\"Glm Image\",\"operation\":\"Image Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Glm Image Edit by zhipu - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effortlessly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to zhipu/glm-image/edit.\",\"default\":\"zhipu/glm-image/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for image generation.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"URL(s) of the condition image(s) for image-to-image generation. Supports up to 4 URLs for multi-image references.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Classifier-free guidance scale. Higher values make the model follow the prompt more closely.\",\"default\":\"1.5\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of diffusion denoising steps. More steps generally produce higher quality images.\",\"default\":\"30\",\"constraints\":\"Range: 10 to 100\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output image format.\",\"default\":\"jpeg\",\"constraints\":\"Allowed values: jpeg, png\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. The same seed with the same prompt will produce the same image.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-image\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"zhipu/glm-image/edit\\\",\\n \\\"prompt\\\": \\\"Make the dress red.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"zhipu/glm-image/edit\\\",\\n \\\"prompt\\\": \\\"Make the dress red.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"zhipu/glm-image/edit\\\",\\n \\\"prompt\\\": \\\"Make the dress red.\\\",\\n \\\"output_format\\\": \\\"jpeg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"zhipu/glm-image/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Glm Image" - modelId: "zhipu/glm-image/edit" - vendor: "zhipu" - vendorSlug: "zhipu" - modelSlug: "glm-image/edit" - protocol: "Image Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-14T02:44:07.704Z" - capabilities: ["image-to-image"] - category: "Image Generation" ---- - - diff --git a/model-api-reference/llm-models.md b/model-api-reference/llm-models.md index b9ce89f4..1a8d34be 100644 --- a/model-api-reference/llm-models.md +++ b/model-api-reference/llm-models.md @@ -13,414 +13,129 @@ Claude / Anthropic models use the SandBase-compatible `/v1/messages` protocol. O ### OpenAI -- [GPT-6 Astra](/model-api-reference/llm-models/openai/gpt-6-astra) — GPT-6 Astra is OpenAI's flagship model for demanding end-to-end work. It is suited for advanced analysis, software engineering, deep research, scientific work, computer use, and document creation. -- [GPT-5.6 Luna Pro](/model-api-reference/llm-models/openai/gpt-5.6-luna-pro) — GPT-5.6 Luna Pro is the same underlying model as GPT-5.6 Luna, served with `reasoning.mode` set to `pro` for higher-quality responses on complex tasks. -- [GPT-5.6 Luna](/model-api-reference/llm-models/openai/gpt-5.6-luna) — GPT-5.6 Luna is a fast, cost-efficient model in OpenAI's GPT-5.6 series. It is suited for high-volume, latency-sensitive tasks such as chat, classification, and lightweight agentic workflows, providing capable reasoning for... -- [GPT-5.6 Terra Pro](/model-api-reference/llm-models/openai/gpt-5.6-terra-pro) — GPT-5.6 Terra Pro is the same underlying model as GPT-5.6 Terra, served with `reasoning.mode` set to `pro` for higher-quality responses on complex tasks. -- [GPT-5.6 Terra](/model-api-reference/llm-models/openai/gpt-5.6-terra) — GPT-5.6 Terra is a balanced model in OpenAI's GPT-5.6 series, positioned between the flagship Sol tier and the cost-efficient Luna tier. It is suited for everyday coding, reasoning, and agentic... -- [GPT-5.6 Sol Pro](/model-api-reference/llm-models/openai/gpt-5.6-sol-pro) — GPT-5.6 Sol Pro is the same underlying model as GPT-5.6 Sol, served with `reasoning.mode` set to `pro` for higher-quality responses on complex tasks. -- [GPT-5.6 Sol](/model-api-reference/llm-models/openai/gpt-5.6-sol) — GPT-5.6 Sol is the flagship model in OpenAI's GPT-5.6 series. It is suited for complex reasoning, coding, and agentic workflows, and is particularly strong at command-line and multi-step coding tasks... -- [GPT Chat Latest](/model-api-reference/llm-models/openai/gpt-chat-latest) — GPT Chat available points to OpenAI's stable API alias `chat-available` that always resolves to the available Instant chat model used in ChatGPT. As OpenAI rolls out new Instant model updates in the future, they are routed behind this slug automatically. -- [GPT-5.5 Pro](/model-api-reference/llm-models/openai/gpt-5.5-pro) — GPT-5.5 Pro is OpenAI’s high-capability model optimized for deep reasoning and accuracy on complex, high-stakes workloads. It features a 1M+ token context window (922K input, 128K output) with support for text and image inputs, and is designed for long-horizon problem solving, agentic coding, and precise execution across multi-step workflows. -- [GPT-5.5](/model-api-reference/llm-models/openai/gpt-5.5) — GPT-5.5 is OpenAI’s frontier model designed for complex professional workloads, building on GPT-5.4 with stronger reasoning, higher reliability, and improved token efficiency on hard tasks. It features a 1M+ token context window (922K input, 128K output) with support for text and image inputs, enabling large-scale reasoning, coding, and multimodal workflows within a single system. -- [GPT-5.4 Image 2](/model-api-reference/llm-models/openai/gpt-5.4-image-2) — GPT-5.4 Image 2 combines OpenAI's GPT-5.4 model with state-of-the-art image generation capabilities from GPT Image 2. It enables rich multimodal workflows, allowing users to seamlessly move between reasoning, coding, and visual generation within the same interaction. -- [GPT-5.4 Nano](/model-api-reference/llm-models/openai/gpt-5.4-nano) — GPT-5.4 nano is the most lightweight and cost-efficient variant of the GPT-5.4 family, optimized for speed-critical and high-volume tasks. It supports text and image inputs and is designed for low-latency use cases such as classification, data extraction, ranking, and sub-agent execution. -- …and 58 more models in the sidebar. +- [GPT-6.1 Sol Pro](/model-api-reference/llm-models/openai/gpt-6.1-sol-pro) — GPT-6.1 Sol Pro is the same GPT-6.1 Sol model, OpenAI's near-Astra GPT-6 tier, served in OpenAI's pro reasoning mode rather than as different weights. Pro mode spends more model work on each request before returning a single final answer, which OpenAI says can improve reliability on difficult tasks such as complex optimization, high-value code review and deep analysis. It increases latency and token usage, so standard GPT-6.1 Sol remains the default for routine work. +- [GPT-6.1 Sol](/model-api-reference/llm-models/openai/gpt-6.1-sol) — GPT-6.1 Sol is OpenAI's upgrade to GPT-6 Sol, introduced at DevDay 2026 and positioned between GPT-6 Astra and GPT-6 Luna, with text and image input. OpenAI says it delivers near-Astra performance for complex coding, computer use and professional work, and recommends comparing it with Astra on your own tasks. Pick it for demanding agentic work at scale when Astra's full depth is not required; it always reasons at least at a low level and has no reasoning-off option. +- [GPT-6 Luna Pro](/model-api-reference/llm-models/openai/gpt-6-luna-pro) — GPT-6 Luna Pro is the same GPT-6 Luna model, OpenAI's most efficient GPT-6 tier, served in OpenAI's pro reasoning mode instead of standard mode. Pro mode spends more model work per request and returns one final answer, which OpenAI says can improve reliability on difficult tasks while raising latency and token usage. It suits occasional hard requests in a Luna-based workload; for routine, latency-sensitive or high-volume traffic, OpenAI recommends standard mode. +- [GPT-6 Luna](/model-api-reference/llm-models/openai/gpt-6-luna) — GPT-6 Luna is the smallest, fastest tier of OpenAI's GPT-6 reasoning family, described by OpenAI as its most efficient model for focused, high-volume tasks, with text and image input. It was trained with methods similar to GPT-6 Astra to carry much of that model's strengths into a faster tier. Choose it for high-throughput chat, extraction and lightweight agent steps, and move to GPT-6.1 Sol or GPT-6 Astra when work needs deeper reasoning. +- [GPT-6 Sol Pro](/model-api-reference/llm-models/openai/gpt-6-sol-pro) — GPT-6 Sol Pro is the same GPT-6 Sol model, the middle tier of OpenAI's GPT-6 family, served in OpenAI's pro reasoning mode rather than as a separate model. Pro mode does more model work on each request before returning a single final answer, which OpenAI suggests for difficult coding, review and deep analysis where quality outweighs speed. It adds latency and token usage compared with standard GPT-6 Sol, and OpenAI's docs point to GPT-6.1 Sol as the updated Sol model. +- [GPT-6 Sol](/model-api-reference/llm-models/openai/gpt-6-sol) — GPT-6 Sol is the middle tier of OpenAI's GPT-6 reasoning family, released in September 2026 alongside GPT-6 Luna and built, according to OpenAI, for complex coding and agentic workflows, with text and image input. It was trained with methods similar to GPT-6 Astra to bring much of Astra's capability to a faster tier. OpenAI's docs now point to GPT-6.1 Sol as the updated Sol model, so this entry mainly suits workloads already validated on GPT-6 Sol. +- [GPT-6 Astra](/model-api-reference/llm-models/openai/gpt-6-astra) — GPT-6 Astra is OpenAI's flagship GPT-6 reasoning model, described by OpenAI as its most capable model for the most demanding work, with text and image input. OpenAI recommends it for complex reasoning, coding, computer use, research and document creation, including multi-step workflows across code, browsers and professional software. It is the top tier above GPT-6.1 Sol and GPT-6 Luna; choose it when quality matters most, or the Astra Pro variant for the hardest requests. +- [GPT-6 Astra Pro](/model-api-reference/llm-models/openai/gpt-6-astra-pro) — GPT-6 Astra Pro is the same GPT-6 Astra model, OpenAI's most capable GPT-6 tier, served in OpenAI's pro reasoning mode rather than as different weights. In pro mode the model does more work on each request before returning one final answer, which OpenAI suggests for complex optimization, high-value coding or review, and deep analysis. Expect higher latency and token usage than standard Astra, so reserve it for problems where a marginal quality gain changes the outcome. +- [GPT-5.6 Luna Pro](/model-api-reference/llm-models/openai/gpt-5.6-luna-pro) — GPT-5.6 Luna Pro is the same GPT-5.6 Luna model, OpenAI's smallest GPT-5.6 tier, served in OpenAI's pro reasoning mode rather than as different weights. In pro mode the model performs more work on each request before returning a single final answer, which OpenAI says can improve reliability on difficult tasks at the expense of higher latency and token usage. Use it when Luna's speed tier is preferred but a particular request is hard; keep standard Luna for routine, high-volume traffic. +- [GPT-5.6 Luna](/model-api-reference/llm-models/openai/gpt-5.6-luna) — GPT-5.6 Luna is the smallest, fastest tier of OpenAI's GPT-5.6 reasoning family, with text and image input; OpenAI says it roughly corresponds to the nano tier of earlier GPT-5 families. It is designed for high-volume workloads such as classification, extraction, routing, chat and lightweight agent steps where throughput and latency matter. Pick GPT-5.6 Terra or GPT-5.6 Sol when tasks need more capability, and the pro variant when a hard request needs more reasoning work. +- [GPT-5.6 Terra Pro](/model-api-reference/llm-models/openai/gpt-5.6-terra-pro) — GPT-5.6 Terra Pro is the same GPT-5.6 Terra model, the balanced middle tier of OpenAI's GPT-5.6 family, served in OpenAI's pro reasoning mode instead of standard mode. Pro mode applies more model work to each request and returns a single final answer, which OpenAI says can improve reliability on difficult problems while increasing latency and token usage. It fits harder coding, review or analysis tasks where Terra's tier is preferred but extra quality on a single answer matters. +- [GPT-5.6 Terra](/model-api-reference/llm-models/openai/gpt-5.6-terra) — GPT-5.6 Terra is the middle tier of OpenAI's GPT-5.6 reasoning family, with text and image input, and is described by OpenAI as a balanced model for everyday work; it roughly corresponds to the mini tier of earlier GPT-5 families. It suits day-to-day coding, analysis and agentic tasks that need solid reasoning without flagship-level depth. Choose GPT-5.6 Sol for the most demanding work, GPT-5.6 Luna for the highest-volume tasks, or Terra Pro for hard individual requests. +- …and 22 more models in the sidebar. ### Anthropic +- [Claude Haiku 5.5](/model-api-reference/llm-models/anthropic/claude-haiku-5.5) — Claude Haiku 5.5 is Anthropic's small, fast model for high-volume, cost-sensitive work such as summarization, classification, compaction, subagents, and browser use. It succeeds Claude Haiku 4.5 with stronger coding, computer use, and knowledge work, adds an adjustable effort setting, and accepts text, image, and file input with a 1M-token context window. +- [Claude Sonnet 5.5](/model-api-reference/llm-models/anthropic/claude-sonnet-5.5) — Claude Sonnet 5.5 is Anthropic's Sonnet-class model for well-scoped everyday work, succeeding Claude Sonnet 5 as a direct upgrade. It is especially strong at building features and fixing bugs, with a 1M-token context window and text, image, and file input. +- [Claude Opus 5.5](/model-api-reference/llm-models/anthropic/claude-opus-5.5) — Claude Opus 5.5 is the most powerful model in the Claude 5 family from Anthropic. It excels at complex reasoning, analysis, and creative tasks with superior accuracy and nuance. It supports text, image, and file inputs with text output, reasoning support and a 1M-token context window. - [Claude Fable 5.1](/model-api-reference/llm-models/anthropic/claude-fable-5.1) — Claude Fable 5.1 improves on Claude Fable 5 across the board, with the biggest gains in agentic coding, long-running agentic workflows, and knowledge work: long code refactors, front-end and visual... - [Claude Opus 5](/model-api-reference/llm-models/anthropic/claude-opus-5) — Claude Opus 5 is the most powerful model in the Claude 5 family from Anthropic. It excels at complex reasoning, analysis, and creative tasks with superior accuracy and nuance. It supports text, image, and file inputs with text output, reasoning support and a 1M-token context window. - [Claude Sonnet 5](/model-api-reference/llm-models/anthropic/claude-sonnet-5) — Claude Sonnet 5 is a Sonnet-class model for high-quality coding, agentic workflows, reasoning, vision, structured outputs, and tool use. - [Claude Fable 5](/model-api-reference/llm-models/anthropic/claude-fable-5) — Claude Fable 5 is a Mythos-class model from Anthropic, built for autonomous knowledge work and coding. It supports text, image, and file inputs with text output, with reasoning support and a 1M-token context window. It is suited for long-running, complex, and asynchronous tasks that previously required frequent human check-ins. -- [Claude Opus 4.8 (Fast)](/model-api-reference/llm-models/anthropic/claude-opus-4.8-fast) — Fast-mode variant of Opus 4.8 - identical capabilities with higher output speed at 2x pricing relative to regular Opus 4.8. - [Claude Opus 4.8](/model-api-reference/llm-models/anthropic/claude-opus-4.8) — Claude Opus 4.8 is Anthropic's most capable generally available model in the Opus family. It supports text, image, and file inputs with text output, with reasoning support and a 1M-token context window. It is suited for highly autonomous agents, long-horizon agentic work, knowledge work, and memory-driven tasks where coherence over extended sessions matters. -- [Claude Opus 4.7 (Fast)](/model-api-reference/llm-models/anthropic/claude-opus-4.7-fast) — Fast-mode variant of Opus 4.7 - identical capabilities with higher output speed at premium 6x pricing. - [Claude Opus 4.7](/model-api-reference/llm-models/anthropic/claude-opus-4.7) — Opus 4.7 is the next generation of Anthropic's Opus family, built for long-running, asynchronous agents. Building on the coding and agentic strengths of Opus 4.6, it delivers stronger performance on complex, multi-step tasks and more reliable agentic execution across extended workflows. It is especially effective for asynchronous agent pipelines where tasks unfold over time - large codebases, multi-stage debugging, and end-to-end project orchestration. -- [Claude Opus 4.6 (Fast)](/model-api-reference/llm-models/anthropic/claude-opus-4.6-fast) — Fast-mode variant of Opus 4.6 - identical capabilities with higher output speed at premium 6x pricing. - [Claude Sonnet 4.6](/model-api-reference/llm-models/anthropic/claude-sonnet-4.6) — Sonnet 4.6 is Anthropic's most capable Sonnet-class model yet, with frontier performance across coding, agents, and professional work. It excels at iterative development, complex codebase navigation, end-to-end project management with memory, polished document creation, and confident computer use for web QA and workflow automation. - [Claude Opus 4.6](/model-api-reference/llm-models/anthropic/claude-opus-4.6) — Opus 4.6 is Anthropic’s strongest model for coding and long-running professional tasks. It is built for agents that operate across entire workflows rather than single prompts, making it especially effective for large codebases, complex refactors, and multi-step debugging that unfolds over time. The model shows deeper contextual understanding, stronger problem decomposition, and greater reliability on hard engineering tasks than prior generations. - [Claude Opus 4.5](/model-api-reference/llm-models/anthropic/claude-opus-4.5) — Claude Opus 4.5 is Anthropic’s frontier reasoning model optimized for complex software engineering, agentic workflows, and long-horizon computer use. It offers strong multimodal capabilities, competitive performance across real-world coding and reasoning benchmarks, and improved robustness to prompt injection. The model is designed to operate efficiently across varied effort levels, enabling developers to trade off speed, depth, and token usage depending on task requirements. It comes with a new parameter to control token efficiency, which can be accessed using the OpenRouter Verbosity parameter with low, medium, or high. -- …and 9 more models in the sidebar. +- …and 4 more models in the sidebar. ### Google -- [Gemini 3.8 Flash](/model-api-reference/llm-models/google/gemini-3.8-flash) — Gemini 3.8 Flash is Google's most intelligent Flash model with significant gains from 3.7 Flash across software engineering, agentic tasks, and multi-step reasoning. -- [Gemini 3.7 Flash](/model-api-reference/llm-models/google/gemini-3.7-flash) — Gemini 3.7 Flash is a multimodal model from Google for fast agentic workflows, coding, and complex multi-step reasoning. It is designed for responsive performance and reliable multi-step execution. -- [Gemini 3.5 Flash Lite](/model-api-reference/llm-models/google/gemini-3.5-flash-lite) — Gemini 3.5 Flash Lite is a high-efficiency multimodal model from Google with upgraded agentic capabilities. It is suited for focused subagent tasks in complex multi-agent workflows. -- [Gemini 3.6 Flash](/model-api-reference/llm-models/google/gemini-3.6-flash) — Gemini 3.6 Flash is a high-efficiency multimodal model from Google for coding, agentic workflows, and web and app development. It produces polished outputs with fewer unnecessary edits. -- [Nano Banana 2 (Gemini 3.1 Flash Image)](/model-api-reference/llm-models/google/gemini-3.1-flash-image) — Gemini 3.1 Flash Image, a.k.a. "Nano Banana 2," is Google’s available state of the art image generation and editing model, delivering Pro-level visual quality at Flash speed. It combines advanced... -- [Nano Banana Pro (Gemini 3 Pro Image)](/model-api-reference/llm-models/google/gemini-3-pro-image) — Nano Banana Pro is Google’s most advanced image-generation and editing model, built on Gemini 3 Pro. It extends the original Nano Banana with significantly improved multimodal reasoning, real-world grounding, and... -- [Gemini 3.5 Flash](/model-api-reference/llm-models/google/gemini-3.5-flash) — Gemini 3.5 Flash is Google's high-efficiency multimodal model, bringing near-Pro level coding and reasoning at Flash-tier cost and speed. It is highly optimized for coding proficiency and parallel agentic execution loops, supporting text, image, video, audio, and PDF inputs. -- [Gemini 3.1 Flash Lite](/model-api-reference/llm-models/google/gemini-3.1-flash-lite) — Gemini 3.1 Flash Lite is Google’s GA high-efficiency multimodal model optimized for low-latency, high-volume workloads. It supports text, image, video, audio, and PDF inputs, and is designed for lightweight agentic workflows, simple data extraction, and applications where responsiveness and API cost are the primary constraints. -- [Gemma 4 26B A4B](/model-api-reference/llm-models/google/gemma-4-26b-a4b-it) — Gemma 4 26B A4B IT is an instruction-tuned Mixture-of-Experts (MoE) model from Google DeepMind. Despite 25.2B total parameters, only 3.8B activate per token during inference — delivering near-31B quality at a fraction of the compute cost. Supports multimodal input including text, images, and video (up to 60s at 1fps). Features a 256K token context window, native function calling, configurable thinking/reasoning mode, and structured output support. Released under Apache 2.0. -- [Gemma 4 31B](/model-api-reference/llm-models/google/gemma-4-31b-it) — Gemma 4 31B Instruct is Google DeepMind's 30.7B dense multimodal model supporting text and image input with text output. Features a 256K token context window, configurable thinking/reasoning mode, native function calling, and multilingual support across 140+ languages. Strong on coding, reasoning, and document understanding tasks. Apache 2.0 license. -- [Lyria 3 Pro Preview](/model-api-reference/llm-models/google/lyria-3-pro-preview) — Full-length songs are priced at $0.08 per song. Lyria 3 is Google's family of music generation models, available through the Gemini API. With Lyria 3, you can generate high-quality, 48kHz stereo audio from text prompts or from images. These models deliver structural coherence, including vocals, timed lyrics, and full instrumental arrangements. Lyria 3 Pro can generate full-length songs with verses, choruses, bridges. -- [Lyria 3 Clip Preview](/model-api-reference/llm-models/google/lyria-3-clip-preview) — 30 second duration clips are priced at $0.04 per clip. Lyria 3 is Google's family of music generation models, available through the Gemini API. With Lyria 3, you can generate high-quality, 48kHz stereo audio from text prompts or from images. These models deliver structural coherence, including vocals, timed lyrics, and full instrumental arrangements. Lyria 3 Clip can generate short clips, loops, previews. -- …and 19 more models in the sidebar. +- [Nano Banana 2.1 (Gemini Nano Banana 2.1)](/model-api-reference/llm-models/google/gemini-nano-banana-2.1) — Nano Banana 2.1 (Gemini Nano Banana 2.1) is Google's Flash-tier image generation and editing model, succeeding Nano Banana 2 and producing images alongside text through the native Gemini generateContent API. It improves prompt adherence, text rendering, product recontextualization and multi-turn editing consistency, supports extreme aspect ratios and 1K to 4K output, and can ground generation with Google web and image search. Pick Nano Banana Pro instead for the most demanding professional design work. +- [Gemini 4 Argon](/model-api-reference/llm-models/google/gemini-4-argon) — Gemini 4 Argon is Google's frontier reasoning model announced on September 30, 2026; it is not yet generally available on SandBase, and specifications and pricing will be confirmed at launch. Google built it to sustain deep reasoning across long-horizon work in software engineering, enterprise knowledge work such as legal and finance, and cybersecurity defense, and announced an output token limit of up to 1M tokens. It is currently rolling out only to trusted cyber defenders and testers, with developer API access to follow. +- [Gemini 3.8 Flash](/model-api-reference/llm-models/google/gemini-3.8-flash) — Gemini 3.8 Flash is a Flash-tier reasoning model in Google's Gemini 3 series, released in September 2026 and described by Google as its most intelligent Flash model as of release. Google positions it for long-horizon software engineering, autonomous agents and complex enterprise workflows, with significant gains over 3.7 Flash in coding, agentic tasks and multi-step reasoning in specialized domains. It accepts text, image, video, audio and PDF input with text output, and suits demanding agentic and coding work. +- [Gemini 3.7 Flash](/model-api-reference/llm-models/google/gemini-3.7-flash) — Gemini 3.7 Flash is a natively multimodal reasoning model in Google's Gemini 3 Flash line, released in August 2026, three weeks after 3.6 Flash. Google positions it as an everyday driver for developers, with improvements in software engineering, knowledge work, web development, instruction following and tool calling. It takes text, image, video, audio and PDF input and returns text; Gemini 3.8 Flash, released in September 2026, has since succeeded it as Google's top Flash model. +- [Gemini 3.6 Flash](/model-api-reference/llm-models/google/gemini-3.6-flash) — Gemini 3.6 Flash is a multimodal reasoning model in Google's Gemini 3 Flash line, released in July 2026 alongside 3.5 Flash-Lite. Google describes it as delivering frontier-level intelligence at higher speed for real-world agentic work, excelling at code generation, agentic execution and spatial reasoning, and particularly effective in rapid agentic loops with repeated coding iterations. It is Google's recommended replacement for the Gemini 3 Flash preview; 3.7 Flash and 3.8 Flash followed it. +- [Gemini 3.5 Flash Lite](/model-api-reference/llm-models/google/gemini-3.5-flash-lite) — Gemini 3.5 Flash-Lite is the low-latency, high-throughput tier of Google's Gemini 3.5 family, released in July 2026 and described by Google as its fastest 3.5-class model. It is optimized for subagent tasks, document parsing, high-volume agentic workflows and simple data extraction where latency and throughput matter most. It accepts text, image, video, audio and PDF input, supports thinking and tool use, and is Google's recommended successor to Gemini 3.1 Flash-Lite. +- [Nano Banana 2 (Gemini 3.1 Flash Image)](/model-api-reference/llm-models/google/gemini-3.1-flash-image) — Nano Banana 2 (Gemini 3.1 Flash Image) is Google's image generation and conversational image editing model in the Gemini 3 series, producing images alongside text from text, image, video and PDF input. Google positions it as the high-efficiency, low-latency counterpart to Nano Banana Pro for high-volume developer use, adding output resolutions from 0.5K to 4K, extra wide and tall aspect ratios, image search grounding and improved multilingual text rendering. Choose Nano Banana Pro for complex, precision design work. +- [Nano Banana Pro (Gemini 3 Pro Image)](/model-api-reference/llm-models/google/gemini-3-pro-image) — Nano Banana Pro (Gemini 3 Pro Image) is the Pro-tier image generation and editing model of Google's Gemini 3 line, using a reasoning core and producing images alongside text. Google positions it for professional work such as complex graphic design, high-fidelity product mockups and factual data visualizations that need accurate text rendering, with real-world grounding via Google Search and studio-quality visuals up to 4K. Pick Nano Banana 2 instead for faster, higher-volume generation. +- [Gemini 3.5 Flash](/model-api-reference/llm-models/google/gemini-3.5-flash) — Gemini 3.5 Flash is the Flash model of Google's Gemini 3.5 family, introduced at Google I/O in May 2026. Google positions it as delivering frontier-level intelligence at Flash speed, built for sub-agent deployment, multi-step workflows and long-horizon tasks at scale, and particularly effective in rapid agentic loops with complex coding iterations. It takes text, image, video, audio and PDF input with text output; Google's model list now labels it a legacy Flash model behind 3.6, 3.7 and 3.8 Flash. +- [Gemini 3.1 Flash Lite](/model-api-reference/llm-models/google/gemini-3.1-flash-lite) — Gemini 3.1 Flash-Lite is the generally available, low-latency Flash-Lite tier of Google's Gemini 3 series, released in May 2026 as the stable successor to the 3.1 Flash-Lite preview. Google targets it at high-frequency, lightweight tasks such as high-volume translation, transcription, entity extraction, document summarization and routing queries between larger models. Google has scheduled its shutdown for May 7, 2027 and recommends Gemini 3.5 Flash-Lite as the replacement. +- [Gemini 3.1 Flash Lite Preview](/model-api-reference/llm-models/google/gemini-3.1-flash-lite-preview) — Gemini 3.1 Flash Lite Preview is Google's high-efficiency model optimized for high-volume use cases. It outperforms Gemini 2.5 Flash Lite on overall quality and approaches Gemini 2.5 Flash performance across key capabilities. Improvements span audio input/ASR, RAG snippet ranking, translation, data extraction, and code completion. Supports full thinking levels (minimal, low, medium, high) for fine-grained cost/performance trade-offs. Priced at half the cost of Gemini 3 Flash. +- [Gemini 3.1 Pro Preview Custom Tools](/model-api-reference/llm-models/google/gemini-3.1-pro-preview-customtools) — Gemini 3.1 Pro Preview Custom Tools is a separate endpoint of Google's Gemini 3.1 Pro Preview, the Pro-tier reasoning model of the Gemini 3 series, tuned for agentic workflows that mix bash with custom tools. Google says it is better at prioritizing user-defined functions, such as file viewing or code search tools, over a general bash tool. Pick it for coding agents built on custom tools; Google notes quality may fluctuate in use cases that do not benefit from such tools, where the standard 3.1 Pro Preview fits better. +- …and 5 more models in the sidebar. ### DeepSeek -- [DeepSeek V4.1 Flash](/model-api-reference/llm-models/deepseek/deepseek-v4.1-flash) — DeepSeek V4.1 Flash is a sparse mixture-of-experts model from DeepSeek, and the first built on the company's Causal Encoder-Decoder (CED) architecture. It activates 8B parameters on input and 16B on output from a 552B-parameter backbone, an asymmetric split that keeps per-token compute low relative to the model's total size. Image understanding is native to the architecture, with visual and text embeddings trained jointly from the start of pre-training rather than added afterward as in the earlier experimental V4 Flash Vision Exp. +- [DeepSeek V4.1 Flash](/model-api-reference/llm-models/deepseek/deepseek-v4.1-flash) — DeepSeek V4.1 Flash is the smallest model in DeepSeek's V4.1 architecture family, released in September 2026 with native visual understanding. It is a 552B-parameter mixture-of-experts model using a Causal Encoder-Decoder design that activates 8B parameters for input and 16B for output, with a KV cache about a quarter the size of the previous Flash generation. DeepSeek positions it for agentic coding and long-context work and reports it ahead of V4 Pro, replacing V4 Flash and V4 Flash Vision Exp on its API. - [DeepSeek V4 Flash Vision Exp (Experimental)](/model-api-reference/llm-models/deepseek/deepseek-v4-flash-vision-exp) — DeepSeek V4 Flash Vision Exp is an experimental multimodal understanding model that accepts mixed text and image input and produces text output. It supports OpenAI-compatible image URL and base64 data URL content parts while retaining the text, reasoning, tool-calling, and JSON-output capabilities of DeepSeek V4 Flash. +- [DeepSeek V4 Pro 0813](/model-api-reference/llm-models/deepseek/deepseek-v4-pro-0813) — DeepSeek V4 Pro 0813 is the pinned GA release of DeepSeek V4 Pro from August 2026, for workloads that need a fixed version. It keeps V4 Pro's 1.6T-parameter mixture-of-experts design and 1M-token context, with thinking and non-thinking modes, tool calls and JSON output, and DeepSeek reports much stronger agent performance than the April preview, especially in production. DeepSeek has said it will keep serving V4 Pro alongside V4.1 Flash. - [DeepSeek V4 Flash 0731](/model-api-reference/llm-models/deepseek/deepseek-v4-flash-0731) — DeepSeek V4 Flash 0731 is a sparse mixture-of-experts model from DeepSeek, with 13B active parameters out of 284B total. This re-post-trained revision is suited for coding, reasoning, and agent workflows. -- [DeepSeek V4 Pro](/model-api-reference/llm-models/deepseek/deepseek-v4-pro) — DeepSeek V4 Pro is a large-scale Mixture-of-Experts model from DeepSeek with 1.6T total parameters and 49B activated parameters, supporting a 1M-token context window. It is designed for advanced reasoning, coding, and long-horizon agent workflows, with strong performance across knowledge, math, and software engineering benchmarks. +- [DeepSeek V4 Pro](/model-api-reference/llm-models/deepseek/deepseek-v4-pro) — DeepSeek V4 Pro is the large tier of DeepSeek's V4 family, a 1.6T-parameter mixture-of-experts model with 49B active parameters, introduced as an open-weight preview in April 2026 with a 1M-token context. It combines token-wise compression with DeepSeek Sparse Attention and supports thinking and non-thinking modes, aimed at agentic coding, advanced reasoning and knowledge-heavy work. On DeepSeek's API this name now serves the August 2026 GA revision; use the 0813 entry to pin that version. - [DeepSeek V4 Flash](/model-api-reference/llm-models/deepseek/deepseek-v4-flash) — DeepSeek V4 Flash is an efficiency-optimized Mixture-of-Experts model from DeepSeek with 284B total parameters and 13B activated parameters, supporting a 1M-token context window. It is designed for fast inference and high-throughput workloads, while maintaining strong reasoning and coding performance. -- [DeepSeek V3.2 Speciale](/model-api-reference/llm-models/deepseek/deepseek-v3.2-speciale) — DeepSeek-V3.2-Speciale is a high-compute variant of DeepSeek-V3.2 optimized for maximum reasoning and agentic performance. It builds on DeepSeek Sparse Attention (DSA) for efficient long-context processing, then scales post-training reinforcement learning to push capability beyond the base model. Reported evaluations place Speciale ahead of GPT-5 on difficult reasoning workloads, with proficiency comparable to Gemini-3.0-Pro, while retaining strong coding and tool-use reliability. Like V3.2, it benefits from a large-scale agentic task synthesis pipeline that improves compliance and generalization in interactive environments. -- [DeepSeek V3.2](/model-api-reference/llm-models/deepseek/deepseek-v3.2) — DeepSeek-V3.2 is a large language model designed to harmonize high computational efficiency with strong reasoning and agentic tool-use performance. It introduces DeepSeek Sparse Attention (DSA), a fine-grained sparse attention mechanism that reduces training and inference cost while preserving quality in long-context scenarios. A scalable reinforcement learning post-training framework further improves reasoning, with reported performance in the GPT-5 class, and the model has demonstrated gold-medal results on the 2025 IMO and IOI. V3.2 also uses a large-scale agentic task synthesis pipeline to better integrate reasoning into tool-use settings, boosting compliance and generalization in interactive environments. -- [DeepSeek V3.2 Exp](/model-api-reference/llm-models/deepseek/deepseek-v3.2-exp) — DeepSeek-V3.2-Exp is an experimental large language model released by DeepSeek as an intermediate step between V3.1 and future architectures. It introduces DeepSeek Sparse Attention (DSA), a fine-grained sparse attention mechanism designed to improve training and inference efficiency in long-context scenarios while maintaining output quality. Users can control the reasoning behaviour with the `reasoning` `enabled` boolean. Learn more in our docs -- [DeepSeek V3.1 Terminus](/model-api-reference/llm-models/deepseek/deepseek-v3.1-terminus) — DeepSeek-V3.1 Terminus is an update to DeepSeek V3.1 that maintains the model's original capabilities while addressing issues reported by users, including language consistency and agent capabilities, further optimizing the model's performance in coding and search agents. It is a large hybrid reasoning model (671B parameters, 37B active) that supports both thinking and non-thinking modes. It extends the DeepSeek-V3 base with a two-phase long-context training process, reaching up to 128K tokens, and uses FP8 microscaling for efficient inference. Users can control the reasoning behaviour with the `reasoning` `enabled` boolean. Learn more in our docs -- [DeepSeek V3.1](/model-api-reference/llm-models/deepseek/deepseek-chat-v3.1) — DeepSeek-V3.1 is a large hybrid reasoning model (671B parameters, 37B active) that supports both thinking and non-thinking modes via prompt templates. It extends the DeepSeek-V3 base with a two-phase long-context training process, reaching up to 128K tokens, and uses FP8 microscaling for efficient inference. Users can control the reasoning behaviour with the `reasoning` `enabled` boolean. Learn more in our docs -- [R1 0528](/model-api-reference/llm-models/deepseek/deepseek-r1-0528) — May 28th update to the original DeepSeek R1 Performance on par with OpenAI o1, but open-sourced and with fully open reasoning tokens. It's 671B parameters in size, with 37B active in an inference pass. -- [DeepSeek V3 0324](/model-api-reference/llm-models/deepseek/deepseek-chat-v3-0324) — DeepSeek V3, a 685B-parameter, mixture-of-experts model, is the available iteration of the flagship chat model family from the DeepSeek team. -- …and 4 more models in the sidebar. +- [DeepSeek V3.2](/model-api-reference/llm-models/deepseek/deepseek-v3.2) — DeepSeek-V3.2 is DeepSeek's open-weight, reasoning-first model released in December 2025 as the official successor to V3.2-Exp. It introduces DeepSeek Sparse Attention to reduce long-context training and inference compute and is DeepSeek's first model to integrate thinking directly into tool use, trained on agent data synthesized across more than 1,800 environments. It supports tool calling in both thinking and non-thinking modes, suiting agents and general reasoning. +- [DeepSeek V3](/model-api-reference/llm-models/deepseek/deepseek-chat) — DeepSeek-V3 is the available model from the DeepSeek team, building upon the instruction following and coding abilities of the previous versions. Pre-trained on nearly 15 trillion tokens, the reported evaluations reveal that the model outperforms other open-source models and rivals leading closed-source models. ### Alibaba -- [Qwen: Qwen3.8 27B](/model-api-reference/llm-models/alibaba/qwen3.8-27b) — The Qwen3.8 27B native vision-language dense model builds upon the 3.6-27B version, with key improvements in coding and office productivity capabilities across both text and visual modalities. It enables more reliable end-to-end completion of complex tasks, delivering consistently trustworthy results. -- [Qwen: Qwen3.8 2.4T A95B](/model-api-reference/llm-models/alibaba/qwen3.8-2.4t-a95b) — Qwen3.8 2.4T A95B is an open-weight sparse mixture-of-experts model from Qwen, with 95 billion active parameters out of 2.4 trillion total. It is the open-weight variant of Qwen3.8 Max. -- [Qwen: Qwen3.8 Max](/model-api-reference/llm-models/alibaba/qwen3.8-max) — Qwen3.8 Max is the flagship model in Alibaba's Qwen3.8 series and the general-availability successor to Qwen3.8 Max Preview. It is a multimodal reasoning model intended for complex reasoning and visual understanding. -- [Qwen: Qwen3.7 Plus](/model-api-reference/llm-models/alibaba/qwen3.7-plus) — Qwen3.7-Plus is a cost-effective model in Alibaba's Qwen3.7 series. It supports text and image input with text output, building on the series' text capabilities with a comprehensive upgrade to its... -- [Qwen: Qwen3.7 Max](/model-api-reference/llm-models/alibaba/qwen3.7-max) — Qwen3.7-Max is the flagship model in Alibaba's Qwen3.7 series. It supports text input and output and is designed for agent-centric workloads, with particular strengths in coding, office and productivity tasks,... -- [Qwen: Qwen3.5 Plus 2026-04-20](/model-api-reference/llm-models/alibaba/qwen3.5-plus-20260420) — Qwen3.5 Plus (April 2026) is a large-scale multimodal language model from Alibaba. It accepts text, image, and video input and produces text output, with a 1M token context window. This... -- [Qwen: Qwen3.6 Flash](/model-api-reference/llm-models/alibaba/qwen3.6-flash) — Qwen3.6 Flash is a fast, efficient language model from Alibaba's Qwen 3.6 series. It supports text, image, and video input with a 1M token context window. Tiered pricing kicks in... -- [Qwen: Qwen3.6 35B A3B](/model-api-reference/llm-models/alibaba/qwen3.6-35b-a3b) — Qwen3.6-35B-A3B is an open-weight multimodal model from Alibaba Cloud with 35 billion total parameters and 3 billion active parameters per token. It uses a hybrid sparse mixture-of-experts architecture combining Gated... -- [Qwen: Qwen3.6 Max Preview](/model-api-reference/llm-models/alibaba/qwen3.6-max-preview) — Qwen3.6-Max-Preview is a proprietary frontier model from Alibaba Cloud built on a sparse mixture-of-experts architecture with approximately 1 trillion total parameters. It is optimized for agentic coding, tool use, and... -- [Qwen: Qwen3.6 27B](/model-api-reference/llm-models/alibaba/qwen3.6-27b) — Qwen3.6 27B is a dense 27-billion-parameter language model from the Qwen Team at Alibaba, released in April 2026. It features hybrid multimodal capabilities — accepting text, image, and video inputs... -- [Qwen: Qwen3.6 Plus](/model-api-reference/llm-models/alibaba/qwen3.6-plus) — Qwen 3.6 Plus builds on a hybrid architecture that combines efficient linear attention with sparse mixture-of-experts routing, enabling strong scalability and high-performance inference. Compared to the 3.5 series, it delivers... -- [Qwen: Qwen3.5-9B](/model-api-reference/llm-models/alibaba/qwen3.5-9b) — Qwen3.5-9B is a multimodal foundation model from the Qwen3.5 family, designed to deliver strong reasoning, coding, and visual understanding in an efficient 9B-parameter architecture. It uses a unified vision-language design... -- …and 43 more models in the sidebar. +- [Qwen: Qwen3.8 Max Prime](/model-api-reference/llm-models/alibaba/qwen3.8-max-prime) — Qwen3.8 Max Prime is the Fast mode (Prime) serving option for Alibaba's Qwen3.8 Max: the same model with the same vision input and reasoning, delivered at higher output speed. Alibaba states Fast mode raises tokens per second to about 1.5 to 2 times the standard API, aimed at latency-sensitive uses such as AI coding assistants, multi-step agent reasoning and real-time conversation. Pick it over standard Qwen3.8 Max when response speed matters; it adds no new capabilities. +- [Qwen: Qwen3.8 Omni Flash](/model-api-reference/llm-models/alibaba/qwen3.8-omni-flash) — Qwen3.8 Omni Flash is Alibaba's omni-modal reasoning model in the Qwen3.8 family, accepting text, image, audio and video input and returning text, with a 1M-token context window. Alibaba positions it for audio and video understanding and content analysis, including transcription-aware summarization, meeting and lecture review, and multimodal agent steps, with tool calling and adjustable reasoning effort. Pick Qwen3.8 Flash for text and image workloads that do not need audio or video input. +- [Qwen: Qwen3.8 Max (0902)](/model-api-reference/llm-models/alibaba/qwen3.8-max-0902) — Qwen3.8 Max (0902) is the pinned snapshot of Alibaba's Qwen3.8 Max dated September 2, 2026, intended for workloads that need a fixed version. Alibaba describes it as an upgraded snapshot with stronger engineering-scale coding and long-horizon autonomous development, steadier multi-tool orchestration and end-to-end task delivery, and refined chart reasoning, document parsing and multimodal perception. It keeps the flagship's vision input, thinking mode and full tool support. +- [Qwen: Qwen3.8 27B](/model-api-reference/llm-models/alibaba/qwen3.8-27b) — Qwen3.8 27B is the compact dense member of Alibaba's Qwen3.8 family, an open-weight native vision-language model that understands images and video, with thinking mode on by default. Compared with Qwen3.6 27B, Alibaba focuses the upgrade on coding and office tasks across text and visual inputs, aiming for more reliable end-to-end completion of complex multi-step work. It suits teams that want Qwen3.8-generation agent skills in a smaller, deployment-friendly model. +- [Qwen: Qwen3.8 2.4T A95B](/model-api-reference/llm-models/alibaba/qwen3.8-2.4t-a95b) — Qwen3.8 2.4T A95B is the open-weight release of Alibaba's Qwen3.8 Max-class model, a sparse Mixture-of-Experts with 2.4 trillion total and about 95 billion active parameters, published in August 2026 as the first Qwen-Max-class open model. It targets coding, professional work, research and long-horizon agentic tasks, with tunable reasoning depth. Alibaba's hosted Qwen3.8 Max builds on it and adds vision input, a non-thinking mode and official built-in tools. +- [Qwen: Qwen3.8 Max](/model-api-reference/llm-models/alibaba/qwen3.8-max) — Qwen3.8 Max is Alibaba's flagship Qwen3.8 model, a 2.4-trillion-parameter Mixture-of-Experts reasoning model with native vision understanding, released in August 2026. Alibaba positions it for long-horizon coding and office work, from multi-day autonomous development to professional legal, financial and design tasks, with vision used across planning, execution and verification. Model Studio recommends it when the strongest reasoning in the Qwen lineup is needed. +- [Qwen: Qwen3.7 Flash](/model-api-reference/llm-models/alibaba/qwen3.7-flash) — Qwen3.7 Flash is the Flash tier of Alibaba's Qwen3.7 series, a native vision-language reasoning model that accepts text, images and video, released in July 2026. Alibaba describes it as an upgrade over Qwen3.6 Flash in multimodal understanding, object recognition, spatial perception and agent execution, with more stable search and multimodal coding agents. Choose it over Qwen3.7 Plus or Max when speed and high-volume throughput matter more than peak capability. +- [Qwen: Qwen3.7 Plus](/model-api-reference/llm-models/alibaba/qwen3.7-plus) — Qwen3.7 Plus is the balanced Plus tier of Alibaba's Qwen3.7 series, a reasoning model with text and image input released in June 2026. Alibaba highlights its multimodal hybrid agent abilities: perceiving real-world scenes, reading screens and operating GUIs, generating code from visual references and navigating mobile apps end to end, alongside coding, tool use and productivity work. Model Studio recommends it as its default for general and coding workloads, with Qwen3.8 Max for harder reasoning. +- [Qwen: Qwen3.7 Max](/model-api-reference/llm-models/alibaba/qwen3.7-max) — Qwen3.7 Max is the largest and most capable model in Alibaba's Qwen3.7 series as of its May 2026 release, a reasoning model built for agent-centric work and offered here with text input and output. Alibaba highlights its strengths in programming, office and productivity tasks, and long-running autonomous execution. Model Studio now lists the Qwen3.7 line as legacy and recommends Qwen3.8 Max for the strongest reasoning, so it fits workloads already validated on Qwen3.7 Max. +- [Qwen: Qwen3.6 27B](/model-api-reference/llm-models/alibaba/qwen3.6-27b) — Qwen3.6 27B is an open-weight dense 27-billion-parameter vision-language model in Alibaba's Qwen3.6 family, released in April 2026 with thinking and non-thinking modes. Qwen positions it for agentic coding, including front-end workflows and repository-level reasoning, plus STEM reasoning, spatial understanding, object localization, document OCR and video understanding. Its dense design is simple to deploy, and it can retain reasoning context across turns for iterative development. +- [Qwen: Qwen3.6 Plus](/model-api-reference/llm-models/alibaba/qwen3.6-plus) — Qwen3.6 Plus is the Plus tier of Alibaba's Qwen3.6 series, a hosted native vision-language reasoning model released in April 2026. Alibaba reports marked gains over the Qwen3.5 series in agentic coding, front-end development and vibe coding, along with multimodal object recognition, OCR and object localization. Model Studio now lists it as a legacy model, with Qwen3.7 Plus as the recommended Plus-tier option, so it fits workloads already validated on this version. +- [Qwen: Qwen3.5-35B-A3B](/model-api-reference/llm-models/alibaba/qwen3.5-35b-a3b) — Qwen3.5 35B A3B is an open-weight native vision-language model from Alibaba's Qwen3.5 series, released in February 2026, pairing linear attention with a sparse Mixture-of-Experts design that activates about 3 billion of its 35 billion parameters. Alibaba describes its overall performance as comparable to Qwen3.5 27B with higher inference efficiency. It supports thinking mode, tool calling and image and video understanding, and is the open-weight counterpart of the hosted Qwen3.5 Flash. +- …and 6 more models in the sidebar. ### Meta -- [Llama Guard 4 12B](/model-api-reference/llm-models/meta/llama-guard-4-12b) — Llama Guard 4 is a Llama 4 Scout-derived multimodal pretrained model, fine-tuned for content safety classification. Similar to previous versions, it can be used to classify content in both LLM... -- [Llama 4 Maverick](/model-api-reference/llm-models/meta/llama-4-maverick) — Llama 4 Maverick 17B Instruct (128E) is a high-capacity multimodal language model from Meta, built on a mixture-of-experts (MoE) architecture with 128 experts and 17 billion active parameters per forward... -- [Llama 4 Scout](/model-api-reference/llm-models/meta/llama-4-scout) — Llama 4 Scout 17B Instruct (16E) is a mixture-of-experts (MoE) language model developed by Meta, activating 17 billion parameters out of a total of 109B. It supports native multimodal input... -- [Llama 3.3 70B Instruct](/model-api-reference/llm-models/meta/llama-3.3-70b-instruct) — The Meta Llama 3.3 multilingual large language model (LLM) is a pretrained and instruction tuned generative model in 70B (text in/text out). The Llama 3.3 instruction tuned text only model... -- [Llama 3.2 11B Vision Instruct](/model-api-reference/llm-models/meta/llama-3.2-11b-vision-instruct) — Llama 3.2 11B Vision is a multimodal model with 11 billion parameters, designed to handle tasks combining visual and textual data. It excels in tasks such as image captioning and... -- [Llama 3.2 1B Instruct](/model-api-reference/llm-models/meta/llama-3.2-1b-instruct) — Llama 3.2 1B is a 1-billion-parameter language model focused on efficiently performing natural language tasks, such as summarization, dialogue, and multilingual text analysis. Its smaller size allows it to operate... -- [Llama 3.2 3B Instruct](/model-api-reference/llm-models/meta/llama-3.2-3b-instruct) — Llama 3.2 3B is a 3-billion-parameter multilingual large language model, optimized for advanced natural language processing tasks like dialogue generation, reasoning, and summarization. Designed with the available transformer architecture, it... -- [Llama 3.1 70B Instruct](/model-api-reference/llm-models/meta/llama-3.1-70b-instruct) — Meta's available class of model (Llama 3.1) launched with a variety of sizes & flavors. This 70B instruct-tuned version is optimized for high quality dialogue usecases. It has demonstrated strong... -- [Llama 3.1 8B Instruct](/model-api-reference/llm-models/meta/llama-3.1-8b-instruct) — Meta's available class of model (Llama 3.1) launched with a variety of sizes & flavors. This 8B instruct-tuned version is fast and efficient. It has demonstrated strong performance compared to... -- [Llama Guard 3 8B](/model-api-reference/llm-models/meta/llama-guard-3-8b) — Llama Guard 3 is a Llama-3.1-8B pretrained model, fine-tuned for content safety classification. Similar to previous versions, it can be used to classify content in both LLM inputs (prompt classification)... -- [Llama 3 70B Instruct](/model-api-reference/llm-models/meta/llama-3-70b-instruct) — Meta's available class of model (Llama 3) launched with a variety of sizes & flavors. This 70B instruct-tuned version was optimized for high quality dialogue usecases. It has demonstrated strong... -- [Llama 3 8B Instruct](/model-api-reference/llm-models/meta/llama-3-8b-instruct) — Meta's available class of model (Llama 3) launched with a variety of sizes & flavors. This 8B instruct-tuned version was optimized for high quality dialogue usecases. It has demonstrated strong... +- [Llama 3.3 70B Instruct](/model-api-reference/llm-models/meta/llama-3.3-70b-instruct) — Llama 3.3 70B Instruct is Meta's instruction-tuned, text-only multilingual model released on December 6, 2024, built on an optimized transformer with grouped-query attention and a 128K-token context. It is optimized for assistant-style multilingual dialogue in eight officially supported languages, including English, German, French, Spanish, Hindi and Thai. It is a static open-weight model with a December 2023 knowledge cutoff, and its license also permits synthetic data generation and distillation. ### ByteDance -- [ByteDance: Seed-2.1-Pro](/model-api-reference/llm-models/bytedance/seed-2.1-pro) — Doubao-Seed-2.1-Pro is ByteDance's flagship Seed 2.1 model, built for coding and agentic workloads with strong reasoning, tool use and multimodal understanding. It supports a long input window of up to 1M tokens and is served through Volcengine Ark. -- [ByteDance: Seed-2.1-Turbo](/model-api-reference/llm-models/bytedance/seed-2.1-turbo) — Doubao-Seed-2.1-Turbo is the latency-optimized member of ByteDance's Seed 2.1 family, built for high-throughput interactive and agentic workloads. It supports tool use and multimodal understanding with an input window of up to 256K tokens, and is served through Volcengine Ark. -- [ByteDance: UI-TARS 7B](/model-api-reference/llm-models/bytedance/ui-tars-1.5-7b) — UI-TARS-1.5 is a multimodal vision-language agent optimized for GUI-based environments, including desktop interfaces, web browsers, mobile systems, and games. Built by ByteDance, it builds upon the UI-TARS framework with reinforcement learning-based reasoning, enabling robust action planning and execution across virtual interfaces. - -### ByteDance Seed - -- [ByteDance Seed: Seed-2.0-Lite](/model-api-reference/llm-models/bytedance-seed/seed-2.0-lite) — Seed-2.0-Lite is a versatile, cost‑efficient enterprise workhorse that delivers strong multimodal and agent capabilities while offering noticeably lower latency, making it a practical default choice for most production workloads across text, vision, and tools. Engineered for high-frequency visual understanding and agentic workflows, it's an ideal choice for deployment at scale with minimal latency. -- [ByteDance Seed: Seed-2.0-Mini](/model-api-reference/llm-models/bytedance-seed/seed-2.0-mini) — Seed-2.0-mini targets latency-sensitive, high-concurrency, and cost-sensitive scenarios, emphasizing fast response and flexible inference deployment. It delivers performance comparable to ByteDance-Seed-1.6, supports 256k context, four reasoning effort modes (minimal/low/medium/high), multimodal understanding, and is optimized for lightweight tasks where cost and speed take priority. -- [ByteDance Seed: Seed 1.6 Flash](/model-api-reference/llm-models/bytedance-seed/seed-1.6-flash) — Seed 1.6 Flash is an ultra-fast multimodal deep thinking model by ByteDance Seed, supporting both text and visual understanding. It features a 256k context window and can generate outputs of up to 16k tokens. -- [ByteDance Seed: Seed 1.6](/model-api-reference/llm-models/bytedance-seed/seed-1.6) — Seed 1.6 is a general-purpose model released by the ByteDance Seed team. It incorporates multimodal capabilities and adaptive deep thinking with a 256K context window. +- [ByteDance: Seed-2.1-Pro](/model-api-reference/llm-models/bytedance/seed-2.1-pro) — Seed 2.1 Pro is the larger of the two models in ByteDance Seed's Seed2.1 family, offered as Doubao-Seed-2.1-Pro through Doubao and Volcano Engine. ByteDance built Seed2.1 for real-world productivity: multi-step general agent work such as planning, document processing and tool use, end-to-end coding from requirement analysis to validation, and computer-use tasks. It also brings strong image, document and long-video understanding, and Seed 2.1 Turbo is the smaller sibling. ### xAI -- [Grok 4.6](/model-api-reference/llm-models/x-ai/grok-4.6) — Grok 4.6 is xAI's frontier reasoning model for coding, knowledge work, and STEM. It accepts text, image, and file inputs and returns text. -- [Grok Build 0.1](/model-api-reference/llm-models/x-ai/grok-build-0.1) — Grok Build 0.1 is xAI’s fast coding model trained specifically for agentic software engineering workflows. It supports text and image inputs with text output, and is optimized for interactive coding agents, tool use, and multi-step development tasks. The model powers xAI’s Grok Build CLI and features a 256K context window with no text output limit, making it well suited for long-horizon coding and automation workflows. Currently in early access. -- [Grok 4.3](/model-api-reference/llm-models/x-ai/grok-4.3) — Grok 4.3 is a reasoning model from xAI. It accepts text and image inputs with text output, and is suited for agentic workflows, instruction-following tasks, and applications requiring high factual accuracy. Reasoning can be configured between none/low/medium/high (default low) effort levels. -- [Grok 4.20 Multi-Agent](/model-api-reference/llm-models/x-ai/grok-4.20-multi-agent) — Grok 4.20 Multi-Agent is a variant of xAI’s Grok 4.20 designed for collaborative, agent-based workflows. Multiple agents operate in parallel to conduct deep research, coordinate tool use, and synthesize information across complex tasks. -- [Grok 4.20](/model-api-reference/llm-models/x-ai/grok-4.20) — Grok 4.20 is a reasoning model from xAI with industry-leading speed and agentic tool calling capabilities. It combines the lowest hallucination rate on the market with strict prompt adherance, delivering consistently precise and truthful responses. -- [Grok Code Fast 1](/model-api-reference/llm-models/x-ai/grok-code-fast-1) — Grok Code Fast 1 is a speedy and economical reasoning model that excels at agentic coding. With reasoning traces visible in the response, developers can steer Grok Code for high-quality work flows. -- [Grok 4](/model-api-reference/llm-models/x-ai/grok-4) — Grok 4 is xAI's available reasoning model with a 256k context window. It supports parallel tool calling, structured outputs, and both image and text inputs. Note that reasoning is not exposed, reasoning cannot be disabled, and the reasoning effort cannot be specified. Pricing increases once the total tokens in a given request is greater than 128k tokens. See more details on the xAI docs -- [Grok 3 Mini](/model-api-reference/llm-models/x-ai/grok-3-mini) — A lightweight model that thinks before responding. Fast, smart, and great for logic-based tasks that do not require deep domain knowledge. The raw thinking traces are accessible. -- [Grok 3](/model-api-reference/llm-models/x-ai/grok-3) — Grok 3 is the available model from xAI. It's their flagship model that excels at enterprise use cases like data extraction, coding, and text summarization. Possesses deep domain knowledge in finance, healthcare, law, and science. -- [Grok 3 Mini Beta](/model-api-reference/llm-models/x-ai/grok-3-mini-beta) — Grok 3 Mini is a lightweight, smaller thinking model. Unlike traditional models that generate answers immediately, Grok 3 Mini thinks before responding. It’s ideal for reasoning-heavy tasks that don’t demand extensive domain knowledge, and shines in math-specific and quantitative use cases, such as solving challenging puzzles or math problems. -- [Grok 3 Beta](/model-api-reference/llm-models/x-ai/grok-3-beta) — Grok 3 is the available model from xAI. It's their flagship model that excels at enterprise use cases like data extraction, coding, and text summarization. Possesses deep domain knowledge in finance, healthcare, law, and science. - -### Mistral - -- [Mistral Medium 3.5](/model-api-reference/llm-models/mistral/mistral-medium-3-5) — Mistral Medium 3.5 is a dense 128B instruction-following model from Mistral AI. It supports text and image inputs with text output, and is designed for agentic workflows, coding, and complex... -- [Mistral Small 4](/model-api-reference/llm-models/mistral/mistral-small-2603) — Mistral Small 4 is the next major release in the Mistral Small family, unifying the capabilities of several flagship Mistral models into a single system. It combines strong reasoning from... -- [Devstral 2 2512](/model-api-reference/llm-models/mistral/devstral-2512) — Devstral 2 is a state-of-the-art open-source model by Mistral AI specializing in agentic coding. It is a 123B-parameter dense transformer model supporting a 256K context window. Devstral 2 supports exploring... -- [Ministral 3 14B 2512](/model-api-reference/llm-models/mistral/ministral-14b-2512) — The largest model in the Ministral 3 family, Ministral 3 14B offers frontier capabilities and performance comparable to its larger Mistral Small 3.2 24B counterpart. A powerful and efficient language... -- [Ministral 3 8B 2512](/model-api-reference/llm-models/mistral/ministral-8b-2512) — A balanced model in the Ministral 3 family, Ministral 3 8B is a powerful, efficient tiny language model with vision capabilities. -- [Ministral 3 3B 2512](/model-api-reference/llm-models/mistral/ministral-3b-2512) — The smallest model in the Ministral 3 family, Ministral 3 3B is a powerful, efficient tiny language model with vision capabilities. -- [Mistral Large 3 2512](/model-api-reference/llm-models/mistral/mistral-large-2512) — Mistral Large 3 2512 is Mistral’s most capable model to date, featuring a sparse mixture-of-experts architecture with 41B active parameters (675B total), and released under the Apache 2.0 license. -- [Voxtral Small 24B 2507](/model-api-reference/llm-models/mistral/voxtral-small-24b-2507) — Voxtral Small is an enhancement of Mistral Small 3, incorporating state-of-the-art audio input capabilities while retaining best-in-class text performance. It excels at speech transcription, translation and audio understanding. Input audio... -- [Mistral Medium 3.1](/model-api-reference/llm-models/mistral/mistral-medium-3.1) — Mistral Medium 3.1 is an updated version of Mistral Medium 3, which is a high-performance enterprise-grade language model designed to deliver frontier-level capabilities at significantly reduced operational cost. It balances... -- [Codestral 2508](/model-api-reference/llm-models/mistral/codestral-2508) — Mistral's cutting-edge language model for coding released end of July 2025. Codestral specializes in low-latency, high-frequency tasks such as fill-in-the-middle (FIM), code correction and test generation. -- [Devstral Medium](/model-api-reference/llm-models/mistral/devstral-medium) — Devstral Medium is a high-performance code generation and agentic reasoning model developed jointly by Mistral AI and All Hands AI. Positioned as a step up from Devstral Small, it achieves... -- [Mistral Small 3.2 24B](/model-api-reference/llm-models/mistral/mistral-small-3.2-24b-instruct) — Mistral-Small-3.2-24B-Instruct-2506 is an updated 24B parameter model from Mistral optimized for instruction following, repetition reduction, and improved function calling. Compared to the 3.1 release, version 3.2 significantly improves accuracy on... -- …and 12 more models in the sidebar. - -### Perplexity - -- [Sonar Pro Search](/model-api-reference/llm-models/perplexity/sonar-pro-search) — Exclusively available on the OpenRouter API, Sonar Pro's new Pro Search mode is Perplexity's most advanced agentic search system. It is designed for deeper reasoning and analysis. Pricing is based on tokens plus $18 per thousand requests. This model powers the Pro Search mode on the Perplexity platform. -- [Sonar Reasoning Pro](/model-api-reference/llm-models/perplexity/sonar-reasoning-pro) — Note: Sonar Pro pricing includes Perplexity search pricing. See details here -- [Sonar Pro](/model-api-reference/llm-models/perplexity/sonar-pro) — Note: Sonar Pro pricing includes Perplexity search pricing. See details here -- [Sonar Deep Research](/model-api-reference/llm-models/perplexity/sonar-deep-research) — Sonar Deep Research is a research-focused model designed for multi-step retrieval, synthesis, and reasoning across complex topics. It autonomously searches, reads, and evaluates sources, refining its approach as it gathers information. This enables comprehensive report generation across domains like finance, technology, health, and current events. -- [Sonar](/model-api-reference/llm-models/perplexity/sonar) — Sonar is lightweight, affordable, fast, and simple to use — now featuring citations and the ability to customize sources. It is designed for companies seeking to integrate lightweight question-and-answer features optimized for speed. - -### Cohere - -- [Command A](/model-api-reference/llm-models/cohere/command-a) — Command A is an open-weights 111B parameter model with a 256k context window focused on delivering great performance across agentic, multilingual, and coding use cases. Compared to other leading proprietary and open-weights models Command A delivers maximum performance with minimum hardware costs, excelling on business-critical agentic and multilingual tasks. -- [Command R7B (12-2024)](/model-api-reference/llm-models/cohere/command-r7b-12-2024) — Command R7B (12-2024) is a small, fast update of the Command R+ model, delivered in December 2024. It excels at RAG, tool use, agents, and similar tasks requiring complex reasoning and multiple steps. -- [Command R (08-2024)](/model-api-reference/llm-models/cohere/command-r-08-2024) — command-r-08-2024 is an update of the Command R with improved performance for multilingual retrieval-augmented generation (RAG) and tool use. More broadly, it is better at math, code and reasoning and is competitive with the previous version of the larger Command R+ model. -- [Command R+ (08-2024)](/model-api-reference/llm-models/cohere/command-r-plus-08-2024) — command-r-plus-08-2024 is an update of the Command R+ with roughly 50% higher throughput and 25% lower latencies as compared to the previous Command R+ version, while keeping the hardware footprint the same. - -### Ai21 - -- [AI21: Jamba Large 1.7](/model-api-reference/llm-models/ai21/jamba-large-1.7) — Jamba Large 1.7 is the available model in the Jamba open family, offering improvements in grounding, instruction-following, and overall efficiency. Built on a hybrid SSM-Transformer architecture with a 256K context window, it delivers more accurate, contextually grounded responses and better steerability than previous versions. - -### Aion-Labs - -- [AionLabs: Aion-2.0](/model-api-reference/llm-models/aion-labs/aion-2.0) — Aion-2.0 is a variant of DeepSeek V3.2 optimized for immersive roleplaying and storytelling. It is particularly strong at introducing tension, crises, and conflict into stories, making narratives feel more engaging. It also handles mature and darker themes with more nuance and depth. -- [AionLabs: Aion-1.0](/model-api-reference/llm-models/aion-labs/aion-1.0) — Aion-1.0 is a multi-model system designed for high performance across various tasks, including reasoning and coding. It is built on DeepSeek-R1, augmented with additional models and techniques such as Tree of Thoughts (ToT) and Mixture of Experts (MoE). It is Aion Lab's most powerful reasoning model. -- [AionLabs: Aion-1.0-Mini](/model-api-reference/llm-models/aion-labs/aion-1.0-mini) — Aion-1.0-Mini 32B parameter model is a distilled version of the DeepSeek-R1 model, designed for strong performance in reasoning domains such as mathematics, coding, and logic. It is a modified variant of a FuseAI model that outperforms R1-Distill-Qwen-32B and R1-Distill-Llama-70B, with benchmark results available on its Hugging Face page, independently replicated for verification. -- [AionLabs: Aion-RP 1.0 (8B)](/model-api-reference/llm-models/aion-labs/aion-rp-llama-3.1-8b) — Aion-RP-Llama-3.1-8B ranks the highest in the character evaluation portion of the RPBench-Auto benchmark, a roleplaying-specific variant of Arena-Hard-Auto, where LLMs evaluate each other’s responses. It is a fine-tuned base model rather than an instruct model, designed to produce more natural and varied writing. - -### Alfredpros - -- [AlfredPros: CodeLLaMa 7B Instruct Solidity](/model-api-reference/llm-models/alfredpros/codellama-7b-instruct-solidity) — A finetuned 7 billion parameters Code LLaMA - Instruct model to generate Solidity smart contract using 4-bit QLoRA finetuning provided by PEFT library. - -### Allenai - -- [AllenAI: Olmo 3 32B Think](/model-api-reference/llm-models/allenai/olmo-3-32b-think) — Olmo 3 32B Think is a large-scale, 32-billion-parameter model purpose-built for deep reasoning, complex logic chains and advanced instruction-following scenarios. Its capacity enables strong performance on demanding evaluation tasks and highly nuanced conversational reasoning. Developed by Ai2 under the Apache 2.0 license, Olmo 3 32B Think embodies the Olmo initiative’s commitment to openness, offering full transparency across weights, code and training methodology. - -### Alpindale - -- [Goliath 120B](/model-api-reference/llm-models/alpindale/goliath-120b) — A large LLM created by combining two fine-tuned Llama 70B models into one 120B model. Combines Xwin and Euryale. - -### Amazon - -- [Nova 2 Lite](/model-api-reference/llm-models/amazon/nova-2-lite-v1) — Nova 2 Lite is a fast, cost-effective reasoning model for everyday workloads that can process text, images, and videos to generate text. -- [Nova Premier 1.0](/model-api-reference/llm-models/amazon/nova-premier-v1) — Amazon Nova Premier is the most capable of Amazon’s multimodal models for complex reasoning tasks and for use as the best teacher for distilling custom models. -- [Nova Lite 1.0](/model-api-reference/llm-models/amazon/nova-lite-v1) — Amazon Nova Lite 1.0 is a very low-cost multimodal model from Amazon that focused on fast processing of image, video, and text inputs to generate text output. Amazon Nova Lite can handle real-time customer interactions, document analysis, and visual question-answering tasks with high accuracy. -- [Nova Micro 1.0](/model-api-reference/llm-models/amazon/nova-micro-v1) — Amazon Nova Micro 1.0 is a text-only model that delivers the lowest latency responses in the Amazon Nova family of models at a very low cost. With a context length of 128K tokens and optimized for speed and cost, Amazon Nova Micro excels at tasks such as text summarization, translation, content classification, interactive chat, and brainstorming. It has simple mathematical reasoning and coding abilities. -- [Nova Pro 1.0](/model-api-reference/llm-models/amazon/nova-pro-v1) — Amazon Nova Pro 1.0 is a capable multimodal model from Amazon focused on providing a combination of accuracy, speed, and cost for a wide range of tasks. As of December 2024, it achieves state-of-the-art performance on key benchmarks including visual question answering (TextVQA) and video understanding (VATEX). - -### Anthracite-Org - -- [Magnum v4 72B](/model-api-reference/llm-models/anthracite-org/magnum-v4-72b) — This is a series of models designed to replicate the prose quality of the Claude 3 models, specifically Sonnet(https://openrouter.ai/anthropic/claude-3.5-sonnet) and Opus(https://openrouter.ai/anthropic/claude-3-opus). - -### Arcee-Ai - -- [Arcee AI: Trinity Large Thinking](/model-api-reference/llm-models/arcee-ai/trinity-large-thinking) — Trinity Large Thinking is a powerful open source reasoning model from the team at Arcee AI. It shows strong performance in PinchBench, agentic workloads, and reasoning tasks. Launch video: https://youtu.be/Gc82AXLa0Rg?si=4RLn6WBz33qT--B7 -- [Arcee AI: Trinity Large Preview](/model-api-reference/llm-models/arcee-ai/trinity-large-preview) — Trinity-Large-Preview is a frontier-scale open-weight language model from Arcee, built as a 400B-parameter sparse Mixture-of-Experts with 13B active parameters per token using 4-of-256 expert routing. -- [Arcee AI: Trinity Mini](/model-api-reference/llm-models/arcee-ai/trinity-mini) — Trinity Mini is a 26B-parameter (3B active) sparse mixture-of-experts language model featuring 128 experts with 8 active per token. Engineered for efficient reasoning over long contexts (131k) with robust function calling and multi-step agent workflows. -- [Arcee AI: Spotlight](/model-api-reference/llm-models/arcee-ai/spotlight) — Spotlight is a 7‑billion‑parameter vision‑language model derived from Qwen 2.5‑VL and fine‑tuned by Arcee AI for tight image‑text grounding tasks. It offers a 32 k‑token context window, enabling rich multimodal conversations that combine lengthy documents with one or more images. Training emphasized fast inference on consumer GPUs while retaining strong captioning, visual‐question‑answering, and diagram‑analysis accuracy. As a result, Spotlight slots neatly into agent workflows where screenshots, charts or UI mock‑ups need to be interpreted on the fly. Early benchmarks show it matching or out‑scoring larger VLMs such as LLaVA‑1.6 13 B on popular VQA and POPE alignment tests. -- [Arcee AI: Maestro Reasoning](/model-api-reference/llm-models/arcee-ai/maestro-reasoning) — Maestro Reasoning is Arcee's flagship analysis model: a 32 B‑parameter derivative of Qwen 2.5‑32 B tuned with DPO and chain‑of‑thought RL for step‑by‑step logic. Compared to the earlier 7 B preview, the production 32 B release widens the context window to 128 k tokens and doubles pass‑rate on MATH and GSM‑8K, while also lifting code completion accuracy. Its instruction style encourages structured "thought → answer" traces that can be parsed or hidden according to user preference. That transparency pairs well with audit‑focused industries like finance or healthcare where seeing the reasoning path matters. In Arcee Conductor, Maestro is automatically selected for complex, multi‑constraint queries that smaller SLMs bounce. -- [Arcee AI: Virtuoso Large](/model-api-reference/llm-models/arcee-ai/virtuoso-large) — Virtuoso‑Large is Arcee's top‑tier general‑purpose LLM at 72 B parameters, tuned to tackle cross‑domain reasoning, creative writing and enterprise QA. Unlike many 70 B peers, it retains the 128 k context inherited from Qwen 2.5, letting it ingest books, codebases or financial filings wholesale. Training blended DeepSeek R1 distillation, multi‑epoch supervised fine‑tuning and a final DPO/RLHF alignment stage, yielding strong performance on BIG‑Bench‑Hard, GSM‑8K and long‑context Needle‑In‑Haystack tests. Enterprises use Virtuoso‑Large as the "fallback" brain in Conductor pipelines when other SLMs flag low confidence. Despite its size, aggressive KV‑cache optimizations keep first‑token latency in the low‑second range on 8× H100 nodes, making it a practical production‑grade powerhouse. -- [Arcee AI: Coder Large](/model-api-reference/llm-models/arcee-ai/coder-large) — Coder‑Large is a 32 B‑parameter offspring of Qwen 2.5‑Instruct that has been further trained on permissively‑licensed GitHub, CodeSearchNet and synthetic bug‑fix corpora. It supports a 32k context window, enabling multi‑file refactoring or long diff review in a single call, and understands 30‑plus programming languages with special attention to TypeScript, Go and Terraform. Internal benchmarks show 5–8 pt gains over CodeLlama‑34 B‑Python on HumanEval and competitive BugFix scores thanks to a reinforcement pass that rewards compilable output. The model emits structured explanations alongside code blocks by default, making it suitable for educational tooling as well as production copilot scenarios. Cost‑wise, Together AI prices it well below proprietary incumbents, so teams can scale interactive coding without runaway spend. - -### Baidu - -- [Qianfan-OCR-Fast](/model-api-reference/llm-models/baidu/qianfan-ocr-fast) — Qianfan-OCR-Fast is a domain-specific multimodal large model purpose-built for OCR. By leveraging specialized OCR training data while preserving versatile multimodal intelligence, it provides a powerful performance upgrade over Qianfan-OCR. -- [ERNIE 4.5 21B A3B Thinking](/model-api-reference/llm-models/baidu/ernie-4.5-21b-a3b-thinking) — ERNIE-4.5-21B-A3B-Thinking is Baidu's upgraded lightweight MoE model, refined to boost reasoning depth and quality for top-tier performance in logical puzzles, math, science, coding, text generation, and expert-level academic benchmarks. -- [ERNIE 4.5 21B A3B](/model-api-reference/llm-models/baidu/ernie-4.5-21b-a3b) — A sophisticated text-based Mixture-of-Experts (MoE) model featuring 21B total parameters with 3B activated per token, delivering exceptional multimodal understanding and generation through heterogeneous MoE structures and modality-isolated routing. Supporting an extensive 131K token context length, the model achieves efficient inference via multi-expert parallel collaboration and quantization, while advanced post-training techniques including SFT, DPO, and UPO ensure optimized performance across diverse applications with specialized routing and balancing losses for superior task handling. -- [ERNIE 4.5 VL 28B A3B](/model-api-reference/llm-models/baidu/ernie-4.5-vl-28b-a3b) — A powerful multimodal Mixture-of-Experts chat model featuring 28B total parameters with 3B activated per token, delivering exceptional text and vision understanding through its innovative heterogeneous MoE structure with modality-isolated routing. Built with scaling-efficient infrastructure for high-throughput training and inference, the model leverages advanced post-training techniques including SFT, DPO, and UPO for optimized performance, while supporting an impressive 131K context length and RLVR alignment for superior cross-modal reasoning and generation capabilities. -- [ERNIE 4.5 VL 424B A47B](/model-api-reference/llm-models/baidu/ernie-4.5-vl-424b-a47b) — ERNIE-4.5-VL-424B-A47B is a multimodal Mixture-of-Experts (MoE) model from Baidu’s ERNIE 4.5 series, featuring 424B total parameters with 47B active per token. It is trained jointly on text and image data using a heterogeneous MoE architecture and modality-isolated routing to enable high-fidelity cross-modal reasoning, image understanding, and long-context generation (up to 131k tokens). Fine-tuned with techniques like SFT, DPO, UPO, and RLVR, this model supports both “thinking” and non-thinking inference modes. Designed for vision-language tasks in English and Chinese, it is optimized for efficient scaling and can operate under 4-bit/8-bit quantization. -- [ERNIE 4.5 300B A47B](/model-api-reference/llm-models/baidu/ernie-4.5-300b-a47b) — ERNIE-4.5-300B-A47B is a 300B parameter Mixture-of-Experts (MoE) language model developed by Baidu as part of the ERNIE 4.5 series. It activates 47B parameters per token and supports text generation in both English and Chinese. Optimized for high-throughput inference and efficient scaling, it uses a heterogeneous MoE structure with advanced routing and quantization strategies, including FP8 and 2-bit formats. This version is fine-tuned for language-only tasks and supports reasoning, tool parameters, and extended context lengths up to 131k tokens. Suitable for general-purpose LLM applications with high reasoning and throughput demands. - -### cc - -- [CC: Claude Fable 5](/model-api-reference/llm-models/cc/claude-fable-5) — Claude Fable 5 is a Mythos-class model from Anthropic, built for autonomous knowledge work and coding. It supports text, image, and file inputs with text output, with reasoning support and a 1M-token context window. It is suited for long-running, complex, and asynchronous tasks that previously required frequent human check-ins. -- [CC: Claude Opus 4.6](/model-api-reference/llm-models/cc/claude-opus-4.6) — Opus 4.6 is Anthropic's strongest model for coding and long-running professional tasks. It is built for agents that operate across entire workflows rather than single prompts, making it especially effective for large codebases, complex refactors, and multi-step debugging that unfolds over time. The model shows deeper contextual understanding, stronger problem decomposition, and greater reliability on hard engineering tasks than prior generations. - -### Deepcogito - -- [Deep Cogito: Cogito v2.1 671B](/model-api-reference/llm-models/deepcogito/cogito-v2.1-671b) — Cogito v2.1 671B MoE represents one of the strongest open models globally, matching performance of frontier closed and open models. This model is trained using self play with reinforcement learning to reach state-of-the-art performance on multiple categories (instruction following, coding, longer queries and creative writing). This advanced system demonstrates significant progress toward scalable superintelligence through policy improvement. - -### Essentialai - -- [EssentialAI: Rnj 1 Instruct](/model-api-reference/llm-models/essentialai/rnj-1-instruct) — Rnj-1 is an 8B-parameter, dense, open-weight model family developed by Essential AI and trained from scratch with a focus on programming, math, and scientific reasoning. The model demonstrates strong performance across multiple programming languages, tool-use workflows, and agentic execution environments (e.g., mini-SWE-agent). - -### Gryphe - -- [MythoMax 13B](/model-api-reference/llm-models/gryphe/mythomax-l2-13b) — One of the highest performing and most popular fine-tunes of Llama 2 13B, with rich descriptions and roleplay. #merge - -### Ibm-Granite - -- [IBM: Granite 4.1 8B](/model-api-reference/llm-models/ibm-granite/granite-4.1-8b) — Granite 4.1 8B is a dense, decoder-only 8-billion-parameter language model from IBM, part of the Granite 4.1 family. It supports a 131K-token context window and is designed for enterprise tasks including tool calling, retrieval-augmented generation (RAG), code generation with fill-in-the-middle support, text summarization, classification, and extraction. -- [IBM: Granite 4.0 Micro](/model-api-reference/llm-models/ibm-granite/granite-4.0-h-micro) — Granite-4.0-H-Micro is a 3B parameter from the Granite 4 family of models. These models are the available in a series of models released by IBM. They are fine-tuned for long context tool calling. - -### Inception - -- [Mercury 2](/model-api-reference/llm-models/inception/mercury-2) — Mercury 2 is an extremely fast reasoning LLM, and the first reasoning diffusion LLM (dLLM). Instead of generating tokens sequentially, Mercury 2 produces and refines multiple tokens in parallel, achieving >1,000 tokens/sec on standard GPUs. Mercury 2 is 5x+ faster than leading speed-optimized LLMs like Claude 4.5 Haiku and GPT 5 Mini, at a fraction of the cost. Mercury 2 supports tunable reasoning levels, 128K context, native tool use, and schema-aligned JSON output. Built for coding workflows where latency compounds, real-time voice/search, and agent loops. OpenAI API compatible. Read more in the blog post. - -### Inclusionai - -- [inclusionAI: Ring-2.6-1T](/model-api-reference/llm-models/inclusionai/ring-2.6-1t) — Ring-2.6-1T is a 1T-parameter-scale thinking model with 63B active parameters, built for real-world agent workflows that require both strong capability and operational efficiency. It is optimized for coding agents, tool use, and long-horizon task execution, delivering leading results on benchmarks including PinchBench, ClawEval, TAU2-Bench, and GAIA2-search. -- [inclusionAI: Ling-2.6-1T](/model-api-reference/llm-models/inclusionai/ling-2.6-1t) — Ling-2.6-1T is an instant (instruct) model from inclusionAI and the company’s trillion-parameter flagship, designed for real-world agents that require fast execution and high efficiency at scale. It uses a “fast thinking” approach to reduce costs to roughly a quarter of comparable models while maintaining top-tier performance. -- [inclusionAI: Ling-2.6-flash](/model-api-reference/llm-models/inclusionai/ling-2.6-flash) — Ling-2.6-flash is an instant (instruct) model from inclusionAI with 104B total parameters and 7.4B active parameters, designed for real-world agents that require fast responses, strong execution, and high token efficiency. It delivers performance comparable to state-of-the-art models at a similar scale while significantly reducing token usage across coding, document processing, and lightweight agent workflows. - -### Inflection - -- [Inflection 3 Productivity](/model-api-reference/llm-models/inflection/inflection-3-productivity) — Inflection 3 Productivity is optimized for following instructions. It is better for tasks requiring JSON output or precise adherence to provided guidelines. It has access to recent news. -- [Inflection 3 Pi](/model-api-reference/llm-models/inflection/inflection-3-pi) — Inflection 3 Pi powers Inflection's Pi chatbot, including backstory, emotional intelligence, productivity, and safety. It has access to recent news, and excels in scenarios like customer support and roleplay. - -### Kwaipilot - -- [KAT-Coder-Pro V2](/model-api-reference/llm-models/kwaipilot/kat-coder-pro-v2) — KAT-Coder-Pro V2 is the available high-performance model in KwaiKAT’s KAT-Coder series, designed for complex enterprise-grade software engineering and SaaS integration. It builds on the agentic coding strengths of earlier versions, with a focus on large-scale production environments, multi-system coordination, and seamless integration across modern software stacks, while also supporting web aesthetics generation to produce production-grade landing pages and presentation decks. - -### Liquid - -- [LiquidAI: LFM2-24B-A2B](/model-api-reference/llm-models/liquid/lfm-2-24b-a2b) — LFM2-24B-A2B is the largest model in the LFM2 family of hybrid architectures designed for efficient on-device deployment. Built as a 24B parameter Mixture-of-Experts model with only 2B active parameters per token, it delivers high-quality generation while maintaining low inference costs. The model fits within 32 GB of RAM, making it practical to run on consumer laptops and desktops without sacrificing capability. - -### Mancer - -- [Weaver (alpha)](/model-api-reference/llm-models/mancer/weaver) — An attempt to recreate Claude-style verbosity, but don't expect the same level of coherence or memory. Meant for use in roleplay/narrative situations. - -### Microsoft - -- [Phi 4 Mini Instruct](/model-api-reference/llm-models/microsoft/phi-4-mini-instruct) — Phi-4-mini-instruct is a lightweight open model built upon synthetic data and filtered publicly available websites - with a focus on high-quality, reasoning dense data. The model belongs to the Phi-4 model family and supports 128K token context length. The model underwent an enhancement process, incorporating both supervised fine-tuning and direct preference optimization to support precise instruction adherence and robust safety measures. -- [Phi 4](/model-api-reference/llm-models/microsoft/phi-4) — Microsoft Research Phi-4 is designed to perform well in complex reasoning tasks and can operate efficiently in situations with limited memory or where quick responses are needed. -- [WizardLM-2 8x22B](/model-api-reference/llm-models/microsoft/wizardlm-2-8x22b) — WizardLM-2 8x22B is Microsoft AI's most advanced Wizard model. It demonstrates highly competitive performance compared to leading proprietary models, and it consistently outperforms all existing state-of-the-art opensource models. +- [Grok 4.7](/model-api-reference/llm-models/x-ai/grok-4.7) — Grok 4.7 is xAI's flagship reasoning model for coding, agentic tasks and knowledge work, released on the xAI API in September 2026 as the successor to Grok 4.6. xAI says it uses a larger base model and a longer reinforcement learning run weighted toward multi-hour problems, making it better at checking its own work, managing long context and producing documents and presentations. It accepts text and image input, returns text, and supports configurable reasoning effort. +- [Grok 4.6](/model-api-reference/llm-models/x-ai/grok-4.6) — Grok 4.6 is xAI's frontier reasoning model for coding, agentic tasks and knowledge work, released in August 2026 as the successor to Grok 4.5. xAI focused it on long-running agents and ambitious interactive and visual projects, such as turning a broad product idea into a working first version and refining it over several rounds. It accepts text and image input with text output and configurable reasoning effort; Grok 4.7 succeeded it in September 2026. +- [Grok 4.5](/model-api-reference/llm-models/x-ai/grok-4.5) — Grok 4.5 is an xAI reasoning model for coding, agentic tasks and knowledge work, released on the xAI API in July 2026 and trained alongside Cursor. xAI emphasizes token-efficient reasoning on real engineering tasks, fast serving, and office work such as building Excel models, PowerPoint diagrams and Word documents. It accepts text and image input with configurable reasoning effort; Grok 4.6 and Grok 4.7 later succeeded it as xAI's flagship. +- [Grok 4.3](/model-api-reference/llm-models/x-ai/grok-4.3) — Grok 4.3 is an xAI reasoning model that xAI describes as fast and reliable, with strong tool calling and instruction following. It accepts text and image input with text output, offers a 1M-token context window, and supports configurable reasoning effort that can be switched off or raised, defaulting to low. It suits agentic workflows, long-document analysis and high-volume instruction-following tasks, while Grok 4.5 through 4.7 later took over as xAI's flagship for coding. ### Minimax -- [MiniMax: MiniMax M3](/model-api-reference/llm-models/minimax/minimax-m3) — MiniMax-M3 is a multimodal foundation model from MiniMax. It supports text, image, and video inputs with text output, a 1M-token context window, and is suited for long-horizon agentic work, coding, and tool use. It is built on MiniMax Sparse Attention (MSA), which replaces full attention with KV-block selection to cut per-token compute at long context — roughly 1/20 the cost of the previous generation at 1M tokens, with substantially faster prefill and decode while retaining quality across most tasks. -- [MiniMax: MiniMax M2.7](/model-api-reference/llm-models/minimax/minimax-m2.7) — MiniMax-M2.7 is a next-generation large language model designed for autonomous, real-world productivity and continuous improvement. Built to actively participate in its own evolution, M2.7 integrates advanced agentic capabilities through multi-agent collaboration, enabling it to plan, execute, and refine complex tasks across dynamic environments. -- [MiniMax: MiniMax M2.5](/model-api-reference/llm-models/minimax/minimax-m2.5) — MiniMax-M2.5 is a SOTA large language model designed for real-world productivity. Trained in a diverse range of complex real-world digital working environments, M2.5 builds upon the coding expertise of M2.1 to extend into general office work, reaching fluency in generating and operating Word, Excel, and Powerpoint files, context switching between diverse software environments, and working across different agent and human teams. Scoring 80.2% on SWE-Bench Verified, 51.3% on Multi-SWE-Bench, and 76.3% on BrowseComp, M2.5 is also more token efficient than previous generations, having been trained to optimize its actions and output through planning. -- [MiniMax: MiniMax M2-her](/model-api-reference/llm-models/minimax/minimax-m2-her) — MiniMax M2-her is a dialogue-first large language model built for immersive roleplay, character-driven chat, and expressive multi-turn conversations. Designed to stay consistent in tone and personality, it supports rich message roles (user_system, group, sample_message_user, sample_message_ai) and can learn from example dialogue to better match the style and pacing of your scenario, making it a strong choice for storytelling, companions, and conversational experiences where natural flow and vivid interaction matter most. -- [MiniMax: MiniMax M2.1](/model-api-reference/llm-models/minimax/minimax-m2.1) — MiniMax-M2.1 is a lightweight, state-of-the-art large language model optimized for coding, agentic workflows, and modern application development. With only 10 billion activated parameters, it delivers a major jump in real-world capability while maintaining exceptional latency, scalability, and cost efficiency. -- [MiniMax: MiniMax M2](/model-api-reference/llm-models/minimax/minimax-m2) — MiniMax-M2 is a compact, high-efficiency large language model optimized for end-to-end coding and agentic workflows. With 10 billion activated parameters (230 billion total), it delivers near-frontier intelligence across general reasoning, tool use, and multi-step task execution while maintaining low latency and deployment efficiency. -- [MiniMax: MiniMax M1](/model-api-reference/llm-models/minimax/minimax-m1) — MiniMax-M1 is a large-scale, open-weight reasoning model designed for extended context and high-efficiency inference. It leverages a hybrid Mixture-of-Experts (MoE) architecture paired with a custom "lightning attention" mechanism, allowing it to process long sequences—up to 1 million tokens—while maintaining competitive FLOP efficiency. With 456 billion total parameters and 45.9B active per token, this variant is optimized for complex, multi-step reasoning tasks. -- [MiniMax: MiniMax-01](/model-api-reference/llm-models/minimax/minimax-01) — MiniMax-01 is a combines MiniMax-Text-01 for text generation and MiniMax-VL-01 for image understanding. It has 456 billion parameters, with 45.9 billion parameters activated per inference, and can handle a context of up to 4 million tokens. +- [MiniMax: MiniMax M3](/model-api-reference/llm-models/minimax/minimax-m3) — MiniMax-M3 is MiniMax's flagship multimodal foundation model, which MiniMax describes as open-weight. It is built on MiniMax Sparse Attention, which selects key-value blocks to cut long-context compute and supports up to a 1M-token context, and it was trained natively on text and visual data for image and video understanding. MiniMax positions it for long-horizon coding, agentic tool use and autonomous multi-step work such as research paper reproduction and GPU kernel optimization. +- [MiniMax: MiniMax M2.7](/model-api-reference/llm-models/minimax/minimax-m2.7) — MiniMax-M2.7 is a MiniMax M2-series language model that MiniMax describes as its first model to take part in its own development, building agent harnesses, skills and memory for reinforcement learning experiments. It is positioned for end-to-end software engineering including log analysis, bug troubleshooting and code security, high-fidelity editing in Excel, PowerPoint and Word, and character-consistent interaction. A faster highspeed variant exists, and MiniMax-M3 adds multimodality and longer context. +- [MiniMax: MiniMax M2.5](/model-api-reference/llm-models/minimax/minimax-m2.5) — MiniMax-M2.5 is a MiniMax M2-series language model released in February 2026 for real-world productivity, trained with reinforcement learning across hundreds of thousands of complex real-world environments. MiniMax highlights coding across more than ten languages and the full development lifecycle, planning projects like a software architect before writing code, plus agentic search, tool use and office work. MiniMax now lists it as a legacy model behind M2.7 and M3. ### Moonshotai -- [MoonshotAI: Kimi K3](/model-api-reference/llm-models/moonshotai/kimi-k3) — Kimi K3 is Moonshot AI's available generation model with advanced coding, reasoning, and multi-agent capabilities. -- [MoonshotAI: Kimi K2.7 Code](/model-api-reference/llm-models/moonshotai/kimi-k2.7-code) — MoonshotAI: Kimi K2.7 Code is a coding-focused model in Moonshot AI's Kimi K2 family, built to complete end-to-end programming tasks reliably over long contexts. It uses a native multimodal mixture-of-experts... -- [MoonshotAI: Kimi K2.6](/model-api-reference/llm-models/moonshotai/kimi-k2.6) — Kimi K2.6 is Moonshot AI's next-generation multimodal model, designed for long-horizon coding, coding-driven UI/UX generation, and multi-agent orchestration. It handles complex end-to-end coding tasks across Python, Rust, and Go, and can convert prompts and visual inputs into production-ready interfaces. Its agent swarm architecture scales to hundreds of parallel sub-agents for autonomous task decomposition - delivering documents, websites, and spreadsheets in a single run without human oversight. -- [MoonshotAI: Kimi K2.5](/model-api-reference/llm-models/moonshotai/kimi-k2.5) — Kimi K2.5 is Moonshot AI's native multimodal model, delivering state-of-the-art visual coding capability and a self-directed agent swarm paradigm. Built on Kimi K2 with continued pretraining over approximately 15T mixed visual and text tokens, it delivers strong performance in general reasoning, visual coding, and agentic tool-calling. -- [MoonshotAI: Kimi K2 Thinking](/model-api-reference/llm-models/moonshotai/kimi-k2-thinking) — Kimi K2 Thinking is Moonshot AI’s most advanced open reasoning model to date, extending the K2 series into agentic, long-horizon reasoning. Built on the trillion-parameter Mixture-of-Experts (MoE) architecture introduced in Kimi K2, it activates 32 billion parameters per forward pass and supports 256 k-token context windows. The model is optimized for persistent step-by-step thought, dynamic tool invocation, and complex reasoning workflows that span hundreds of turns. It interleaves step-by-step reasoning with tool use, enabling autonomous research, coding, and writing that can persist for hundreds of sequential actions without drift. -- [MoonshotAI: Kimi K2 0905](/model-api-reference/llm-models/moonshotai/kimi-k2-0905) — Kimi K2 0905 is the September update of Kimi K2 0711. It is a large-scale Mixture-of-Experts (MoE) language model developed by Moonshot AI, featuring 1 trillion total parameters with 32 billion active per forward pass. It supports long-context inference up to 256k tokens, extended from the previous 128k. -- [MoonshotAI: Kimi K2 0711](/model-api-reference/llm-models/moonshotai/kimi-k2) — Kimi K2 Instruct is a large-scale Mixture-of-Experts (MoE) language model developed by Moonshot AI, featuring 1 trillion total parameters with 32 billion active per forward pass. It is optimized for agentic capabilities, including advanced tool use, reasoning, and code synthesis. Kimi K2 excels across a broad range of benchmarks, particularly in coding (LiveCodeBench, SWE-bench), reasoning (ZebraLogic, GPQA), and tool-use (Tau2, AceBench) tasks. It supports long-context inference up to 128K tokens and is designed with a novel training stack that includes the MuonClip optimizer for stable large-scale MoE training. - -### Morph - -- [Morph V3 Large](/model-api-reference/llm-models/morph/morph-v3-large) — Morph's high-accuracy apply model for complex code edits. ~4,500 tokens/sec with 98% accuracy for precise code transformations. -- [Morph V3 Fast](/model-api-reference/llm-models/morph/morph-v3-fast) — Morph's fastest apply model for code edits. ~10,500 tokens/sec with 96% accuracy for rapid code transformations. - -### Nex-Agi - -- [Nex AGI: Nex-N2-Pro](/model-api-reference/llm-models/nex-agi/nex-n2-pro) — Nex-N2-Pro is an agentic mixture-of-experts model from Nex AGI, with 17B active parameters out of 397B total. Built on the Qwen3.5 architecture, it accepts text and image input and produces... -- [Nex AGI: DeepSeek V3.1 Nex N1](/model-api-reference/llm-models/nex-agi/deepseek-v3.1-nex-n1) — DeepSeek V3.1 Nex-N1 is the flagship release of the Nex-N1 series — a post-trained model designed to highlight agent autonomy, tool use, and real-world productivity. - -### Nousresearch - -- [Nous: Hermes 4 70B](/model-api-reference/llm-models/nousresearch/hermes-4-70b) — Hermes 4 70B is a hybrid reasoning model from Nous Research, built on Meta-Llama-3.1-70B. It introduces the same hybrid mode as the larger 405B release, allowing the model to either respond directly or generate explicit <think>...</think> reasoning traces before answering. Users can control the reasoning behaviour with the `reasoning` `enabled` boolean. Learn more in our docs -- [Nous: Hermes 4 405B](/model-api-reference/llm-models/nousresearch/hermes-4-405b) — Hermes 4 is a large-scale reasoning model built on Meta-Llama-3.1-405B and released by Nous Research. It introduces a hybrid reasoning mode, where the model can choose to deliberate internally with <think>...</think> traces or respond directly, offering flexibility between speed and depth. Users can control the reasoning behaviour with the `reasoning` `enabled` boolean. Learn more in our docs -- [Nous: Hermes 3 70B Instruct](/model-api-reference/llm-models/nousresearch/hermes-3-llama-3.1-70b) — Hermes 3 is a generalist language model with many improvements over Hermes 2, including advanced agentic capabilities, much better roleplaying, reasoning, multi-turn conversation, long context coherence, and improvements across the board. -- [Nous: Hermes 3 405B Instruct](/model-api-reference/llm-models/nousresearch/hermes-3-llama-3.1-405b) — Hermes 3 is a generalist language model with many improvements over Hermes 2, including advanced agentic capabilities, much better roleplaying, reasoning, multi-turn conversation, long context coherence, and improvements across the board. -- [NousResearch: Hermes 2 Pro - Llama-3 8B](/model-api-reference/llm-models/nousresearch/hermes-2-pro-llama-3-8b) — Hermes 2 Pro is an upgraded, retrained version of Nous Hermes 2, consisting of an updated and cleaned version of the OpenHermes 2.5 Dataset, as well as a newly introduced Function Calling and JSON Mode dataset developed in-house. - -### NVIDIA - -- [Nemotron 3 Ultra](/model-api-reference/llm-models/nvidia/nemotron-3-ultra-550b-a55b) — NVIDIA Nemotron 3 Ultra is an open frontier-reasoning and orchestration model from NVIDIA, with 55B active parameters out of 550B total (MoE). Built on a hybrid Transformer-Mamba mixture-of-experts architecture, it supports text input and output with a context window of up to 1M tokens. It is suited for long-running agentic workflows, including agent orchestration, coding agents, deep research, and complex enterprise tasks. -- [Nemotron 3 Super](/model-api-reference/llm-models/nvidia/nemotron-3-super-120b-a12b) — NVIDIA Nemotron 3 Super is a 120B-parameter open hybrid MoE model, activating just 12B parameters for maximum compute efficiency and accuracy in complex multi-agent applications. Built on a hybrid Mamba-Transformer Mixture-of-Experts architecture with multi-token prediction (MTP), it delivers over 50% higher token generation compared to leading open models. -- [Nemotron 3 Nano 30B A3B](/model-api-reference/llm-models/nvidia/nemotron-3-nano-30b-a3b) — NVIDIA Nemotron 3 Nano 30B A3B is a small language MoE model with highest compute efficiency and accuracy for developers to build specialized agentic AI systems. -- [Llama 3.3 Nemotron Super 49B V1.5](/model-api-reference/llm-models/nvidia/llama-3.3-nemotron-super-49b-v1.5) — Llama-3.3-Nemotron-Super-49B-v1.5 is a 49B-parameter, English-centric reasoning/chat model derived from Meta’s Llama-3.3-70B-Instruct with a 128K context. It’s post-trained for agentic workflows (RAG, tool calling) via SFT across math, code, science, and multi-turn chat, followed by multiple RL stages; Reward-aware Preference Optimization (RPO) for alignment, RL with Verifiable Rewards (RLVR) for step-wise reasoning, and iterative DPO to refine tool-use behavior. A distillation-driven Neural Architecture Search (“Puzzle”) replaces some attention blocks and varies FFN widths to shrink memory footprint and improve throughput, enabling single-GPU (H100/H200) deployment while preserving instruction following and CoT quality. -- [Nemotron Nano 9B V2](/model-api-reference/llm-models/nvidia/nemotron-nano-9b-v2) — NVIDIA-Nemotron-Nano-9B-v2 is a large language model (LLM) trained from scratch by NVIDIA, and designed as a unified model for both reasoning and non-reasoning tasks. It responds to user queries and tasks by first generating a reasoning trace and then concluding with a final response. - -### Openrouter - -- [OpenRouter: Fusion](/model-api-reference/llm-models/openrouter/fusion) — Fusion turns your prompt into a small multi-model deliberation. A panel of expert models (see below) analyzes your prompt in parallel with web search and web fetch enabled, then a judge model synthesizes their responses into a structured analysis — consensus, contradictions, partial coverage, unique insights, and blind spots — and writes the final answer from it. -- [Pareto Code Router](/model-api-reference/llm-models/openrouter/pareto-code) — The Pareto Router maintains a tiered shortlist of strong coding models, ranked by Artificial Analysis coding percentiles. Set min_coding_score between 0 and 1 on the pareto-router plugin to control how strong a coder you need; higher scores select stronger (and typically more expensive) models. If you omit min_coding_score, the router defaults to the High tier. -- [Body Builder (beta)](/model-api-reference/llm-models/openrouter/bodybuilder) — Transform your natural language requests into structured OpenRouter API request objects. Describe what you want to accomplish with AI models, and Body Builder will construct the appropriate API calls. Example: "count to 10 using gemini and opus." -- [Auto Router](/model-api-reference/llm-models/openrouter/auto) — Your prompt will be processed by a meta-model and routed to one of dozens of models (see below), optimizing for the best possible output. - -### Perceptron - -- [Perceptron Mk1](/model-api-reference/llm-models/perceptron/perceptron-mk1) — Perceptron Mk1 (Mark One) is Perceptron's highest-quality vision-language model for video and embodied reasoning. It accepts image and video inputs paired with natural language queries, and produces detailed visual understanding responses, either structured or natural language. It excels at video understanding tasks like video QA, summarization, and event detection. On image inputs, it advances point-by-example grounding from multimodal prompts, OCR and document parsing on messy real-world inputs, open vocabulary object detection and counting, and hand pose estimation. - -### Poolside - -- [Laguna M.1](/model-api-reference/llm-models/poolside/laguna-m.1) — Laguna M.1 is the flagship coding agent model from Poolside, optimized for complex software engineering tasks. Designed for agentic coding workflows, it supports tool calling and reasoning, with a 256K... -- [Laguna XS.2](/model-api-reference/llm-models/poolside/laguna-xs.2) — Laguna XS.2 is the second-generation model in the XS size class from Poolside, their efficient coding agent series. It combines tool calling and reasoning capabilities with a compact footprint, offering... - -### Prime-Intellect - -- [Prime Intellect: INTELLECT-3](/model-api-reference/llm-models/prime-intellect/intellect-3) — INTELLECT-3 is a 106B-parameter Mixture-of-Experts model (12B active) post-trained from GLM-4.5-Air-Base using supervised fine-tuning (SFT) followed by large-scale reinforcement learning (RL). It offers state-of-the-art performance for its size across math, code, science, and general reasoning, consistently outperforming many larger frontier models. Designed for strong multi-step problem solving, it maintains high accuracy on structured tasks while remaining efficient at inference thanks to its MoE architecture. - -### Rekaai - -- [Reka Edge](/model-api-reference/llm-models/rekaai/reka-edge) — Reka Edge is an extremely efficient 7B multimodal vision-language model that accepts image/video+text inputs and generates text outputs. This model is optimized specifically to deliver industry-leading performance in image understanding, video analysis, object detection, and agentic tool-use. -- [Reka Flash 3](/model-api-reference/llm-models/rekaai/reka-flash-3) — Reka Flash 3 is a general-purpose, instruction-tuned large language model with 21 billion parameters, developed by Reka. It excels at general chat, coding tasks, instruction-following, and function calling. Featuring a 32K context length and optimized through reinforcement learning (RLOO), it provides competitive performance comparable to proprietary models within a smaller parameter footprint. Ideal for low-latency, local, or on-device deployments, Reka Flash 3 is compact, supports efficient quantization (down to 11GB at 4-bit precision), and employs explicit reasoning tags ("<reasoning>") to indicate its internal thought process. - -### Relace - -- [Relace Search](/model-api-reference/llm-models/relace/relace-search) — The relace-search model uses 4-12 `view_file` and `grep` tools in parallel to explore a codebase and return relevant files to the user request. -- [Relace Apply 3](/model-api-reference/llm-models/relace/relace-apply-3) — Relace Apply 3 is a specialized code-patching LLM that merges AI-suggested edits straight into your source files. It can apply updates from GPT-4o, Claude, and others into your files at 10,000 tokens/sec on average. - -### Sao10k - -- [Sao10K: Llama 3.1 70B Hanami x1](/model-api-reference/llm-models/sao10k/l3.1-70b-hanami-x1) — This is Sao10K's experiment over Euryale v2.2. -- [Sao10K: Llama 3.3 Euryale 70B](/model-api-reference/llm-models/sao10k/l3.3-euryale-70b) — Euryale L3.3 70B is a model focused on creative roleplay from Sao10k. It is the successor of Euryale L3 70B v2.2. -- [Sao10K: Llama 3.1 Euryale 70B v2.2](/model-api-reference/llm-models/sao10k/l3.1-euryale-70b) — Euryale L3.1 70B v2.2 is a model focused on creative roleplay from Sao10k. It is the successor of Euryale L3 70B v2.1. -- [Sao10K: Llama 3 8B Lunaris](/model-api-reference/llm-models/sao10k/l3-lunaris-8b) — Lunaris 8B is a versatile generalist and roleplaying model based on Llama 3. It's a strategic merge of multiple models, designed to balance creativity with improved logic and general knowledge. -- [Llama 3 Euryale 70B v2.1](/model-api-reference/llm-models/sao10k/l3-euryale-70b) — Euryale 70B v2.1 is a model focused on creative roleplay from Sao10k. - -### Stepfun - -- [StepFun: Step 3.7 Flash](/model-api-reference/llm-models/stepfun/step-3.7-flash) — Step 3.7 Flash is StepFun's available high-efficiency multimodal Mixture-of-Experts model. It pairs a 196B-parameter language backbone with a vision encoder for native image and video understanding, activating roughly 11B parameters per token. The model supports a 256K context window and exposes selectable reasoning levels (high/medium/low), letting callers trade off speed, cost, and depth of reasoning. -- [StepFun: Step 3.5 Flash](/model-api-reference/llm-models/stepfun/step-3.5-flash) — Step 3.5 Flash is StepFun's most capable open-source foundation model. Built on a sparse Mixture of Experts (MoE) architecture, it selectively activates only 11B of its 196B parameters per token. It is a reasoning model that is incredibly speed efficient even at long contexts. - -### Switchpoint - -- [Switchpoint Router](/model-api-reference/llm-models/switchpoint/router) — Switchpoint AI's router instantly analyzes your request and directs it to the optimal AI from an ever-evolving library. +- [MoonshotAI: Kimi K3](/model-api-reference/llm-models/moonshotai/kimi-k3) — Kimi K3 is Moonshot AI's flagship model, a 2.8-trillion-parameter open-weight mixture-of-experts model with native visual understanding and a 1M-token context. It is built on Kimi Delta Attention, a hybrid linear attention, plus Attention Residuals, and always runs in thinking mode with selectable effort. Moonshot positions it for long-horizon coding across large codebases and terminal tools, visual software tasks such as frontend and game work, and end-to-end knowledge work. +- [MoonshotAI: Kimi K2.6](/model-api-reference/llm-models/moonshotai/kimi-k2.6) — Kimi K2.6 is Moonshot AI's general-purpose multimodal model, taking text, image and video input with both thinking and non-thinking modes and a 256K-token context. Moonshot highlights more reliable long-horizon coding across languages such as Rust, Go and Python and tasks like frontend, DevOps and performance optimization, along with stronger instruction following, self-correction and autonomous agent execution. Choose Kimi K3 for flagship-level work with a 1M context. +- [MoonshotAI: Kimi K2.5](/model-api-reference/llm-models/moonshotai/kimi-k2.5) — Kimi K2.5 is Moonshot AI's open-source native multimodal agentic model, built by continuing pretraining of Kimi K2 on about 15 trillion mixed visual and text tokens. It is a 1T-parameter mixture-of-experts model with 32B active parameters and a 256K-token context, offering instant and thinking modes. Moonshot highlights coding from visual specifications such as UI designs and an agent swarm mode that splits complex tasks across parallel sub-agents; Kimi K2.6 later succeeded it. ### Tencent -- [Hy4 preview](/model-api-reference/llm-models/tencent/hy4-preview) — Tencent: Hy4 preview is a mixture-of-experts model from Tencent, with 49B active parameters out of 770B total. It is designed for coding agents, complex tool-use workflows, and productivity tasks that... +- [Hy4 preview](/model-api-reference/llm-models/tencent/hy4-preview) — Hy4 preview is Tencent Hunyuan's open-source preview of its Hy4 generation, a mixture-of-experts language model with 770B total and 49B active parameters and a context window exceeding 1M tokens. Tencent built it for real-world productivity: long-context software development and front-end work, office and financial analysis, game prototyping and scientific research. Tencent follows a preview-first approach, with official Hy4 releases to come after this model. - [Hy3](/model-api-reference/llm-models/tencent/hy3) — Hy3 is a 295B-parameter Mixture-of-Experts model from Tencent (21B active, 192 experts with top-8 routing) built for reasoning, agentic workflows, and real-world production use. It supports configurable reasoning effort. -- [Hy3 preview](/model-api-reference/llm-models/tencent/hy3-preview) — Hy3 preview is a high-efficiency Mixture-of-Experts model from Tencent designed for agentic workflows and production use. It supports configurable reasoning levels across disabled, low, and high modes, allowing it to balance speed and depth depending on the task, while delivering strong code generation and reliable performance across multi-step, real-world workflows. -- [Hunyuan A13B Instruct](/model-api-reference/llm-models/tencent/hunyuan-a13b-instruct) — Hunyuan-A13B is a 13B active parameter Mixture-of-Experts (MoE) language model developed by Tencent, with a total parameter count of 80B and support for reasoning via Chain-of-Thought. It offers competitive benchmark performance across mathematics, science, coding, and multi-turn reasoning tasks, while maintaining high inference efficiency via Grouped Query Attention (GQA) and quantization support (FP8, GPTQ, etc.). - -### Thedrummer - -- [TheDrummer: Cydonia 24B V4.1](/model-api-reference/llm-models/thedrummer/cydonia-24b-v4.1) — Uncensored and creative writing model based on Mistral Small 3.2 24B with good recall, prompt adherence, and intelligence. -- [TheDrummer: Skyfall 36B V2](/model-api-reference/llm-models/thedrummer/skyfall-36b-v2) — Skyfall 36B v2 is an enhanced iteration of Mistral Small 2501, specifically fine-tuned for improved creativity, nuanced writing, role-playing, and coherent storytelling. -- [TheDrummer: UnslopNemo 12B](/model-api-reference/llm-models/thedrummer/unslopnemo-12b) — UnslopNemo v4.1 is the available addition from the creator of Rocinante, designed for adventure writing and role-play scenarios. -- [TheDrummer: Rocinante 12B](/model-api-reference/llm-models/thedrummer/rocinante-12b) — Rocinante 12B is designed for engaging storytelling and rich prose. ### TypeSafe -- [Jev 1.13](/model-api-reference/llm-models/typesafe/jev-1.13) — Jev 1.13 is TypeSafe's System One model for structured decisions from state and typed questions. - -### Undi95 - -- [ReMM SLERP 13B](/model-api-reference/llm-models/undi95/remm-slerp-l2-13b) — A recreation trial of the original MythoMax-L2-B13 but with updated models. #merge - -### Upstage - -- [Solar Pro 4](/model-api-reference/llm-models/upstage/solar-pro4) — Solar Pro 4 is Upstage's cost-efficient large language model, featuring a 524K context window. It is built for long-horizon tasks and agentic workflows, with strong capabilities in office productivity, document-intensive... -- [Solar Pro 3](/model-api-reference/llm-models/upstage/solar-pro-3) — Solar Pro 3 is Upstage's powerful Mixture-of-Experts (MoE) language model. With 102B total parameters and 12B active parameters per forward pass, it delivers exceptional performance while maintaining computational efficiency. Optimized for Korean with English and Japanese support. - -### Writer - -- [Palmyra X5](/model-api-reference/llm-models/writer/palmyra-x5) — Palmyra X5 is Writer's most advanced model, purpose-built for building and scaling AI agents across the enterprise. It delivers industry-leading speed and efficiency on context windows up to 1 million tokens, powered by a novel transformer architecture and hybrid attention mechanisms. This enables faster inference and expanded memory for processing large volumes of enterprise data, critical for scaling AI agents. +- [Jev 1.13](/model-api-reference/llm-models/typesafe/jev-1.13) — Jev 1.13 is a version of Jev, TypeSafe AI's flagship and first public System One model, which makes structured decisions for software instead of generating text. Given a state and typed questions, it returns a chosen option, a rubric score or the probability that a statement is true, with confidence estimates that code can threshold. TypeSafe positions it for automated decision points that software can branch on, sort or route with, with complex judgments split into atomic questions combined in code. ### Xiaomi -- [MiMo-V2.5-Pro](/model-api-reference/llm-models/xiaomi/mimo-v2.5-pro) — MiMo-V2.5-Pro is Xiaomi’s flagship model, delivering strong performance in general agentic capabilities, complex software engineering, and long-horizon tasks, with top rankings on benchmarks such as ClawEval, GDPVal, and SWE-bench Pro. It can independently and autonomously complete professional tasks that would take human experts days or weeks, involving more than a thousand tool calls. Its context length of up to 1M makes it well suited for integration with a wide range of agent frameworks. -- [MiMo-V2.5](/model-api-reference/llm-models/xiaomi/mimo-v2.5) — MiMo-V2.5 is a native omnimodal model by Xiaomi. It delivers Pro-level agentic performance at roughly half the inference cost, while surpassing MiMo-V2-Omni in multimodal perception across image and video understanding tasks. Its 1M context window supports complete documents, extended conversations, and complex task contexts in a single pass, making it ideal for integration with agent frameworks where strong reasoning, rich perception, and cost efficiency all matter. -- [MiMo-V2-Omni](/model-api-reference/llm-models/xiaomi/mimo-v2-omni) — MiMo-V2-Omni is a frontier omni-modal model that natively processes image, video, and audio inputs within a unified architecture. It combines strong multimodal perception with agentic capability - visual grounding, multi-step planning, tool use, and code execution - making it well-suited for complex real-world tasks that span modalities, 256K context window. -- [MiMo-V2-Pro](/model-api-reference/llm-models/xiaomi/mimo-v2-pro) — MiMo-V2-Pro is Xiaomi's flagship foundation model, featuring over 1T total parameters and a 1M context length, deeply optimized for agentic scenarios. It is highly adaptable to general agent frameworks like OpenClaw. It ranks among the global top tier in the standard PinchBench and ClawBench benchmarks, with perceived performance approaching that of Opus 4.6. MiMo-V2-Pro is designed to serve as the brain of agent systems, orchestrating complex workflows, driving production engineering tasks, and delivering results reliably. +- [MiMo-V2.6-Flash](/model-api-reference/llm-models/xiaomi/mimo-v2.6-flash) — MiMo-V2.6-Flash is the efficiency tier of Xiaomi's open-source MiMo-V2.6 series, released in September 2026 as a natively omni-modal reasoning model that takes text, image, video and audio input and returns text. Xiaomi positions it as the balance of intelligence and efficiency for high-frequency calls and large-scale professional workflows, with a 1M-token context, tool calling and structured output. Xiaomi reports it surpasses MiMo-V2.5-Pro; choose MiMo-V2.6-Pro for the hardest tasks. +- [MiMo-V2.6-Pro](/model-api-reference/llm-models/xiaomi/mimo-v2.6-pro) — MiMo-V2.6-Pro is the flagship of Xiaomi's open-source MiMo-V2.6 series, a trillion-parameter, natively omni-modal reasoning model released in September 2026 that takes text, image, video and audio input. Xiaomi built it for complex projects, long-horizon agents, coding, office and design work, cybersecurity, computer operation and research, with a 1M-token context. Pick it over MiMo-V2.6-Flash when task difficulty matters more than speed and volume. ### Z-Ai -- [Z.ai: GLM 5.3](/model-api-reference/llm-models/z-ai/glm-5.3) — GLM-5.3 is a large-scale reasoning model from Z.ai, built for complex software engineering and long-horizon agent tasks. It supports text input and output with a 1M-token context window, and improves... -- [Z.ai: GLM 5.2](/model-api-reference/llm-models/z-ai/glm-5.2) — GLM 5.2 is a large-scale reasoning model from Z.ai. It supports text input and output with a 1M-token context window, and is suited for long-horizon agent workflows, project-level software engineering,... -- [Z.ai: GLM 5.1](/model-api-reference/llm-models/z-ai/glm-5.1) — GLM-5.1 delivers a major leap in coding capability, with particularly significant gains in handling long-horizon tasks. Unlike previous models built around minute-level interactions, GLM-5.1 can work independently and continuously on a single task for more than 8 hours, autonomously planning, executing, and improving itself throughout the process, ultimately delivering complete, engineering-grade results. -- [Z.ai: GLM 5V Turbo](/model-api-reference/llm-models/z-ai/glm-5v-turbo) — GLM-5V-Turbo is Z.ai’s first native multimodal agent foundation model, built for vision-based coding and agent-driven tasks. It natively handles image, video, and text inputs, excels at long-horizon planning, complex coding, and task execution, and works seamlessly with agents to complete the full loop of “perceive → plan → execute“. -- [Z.ai: GLM 5 Turbo](/model-api-reference/llm-models/z-ai/glm-5-turbo) — GLM-5 Turbo is a new model from Z.ai designed for fast inference and strong performance in agent-driven environments such as OpenClaw scenarios. It is deeply optimized for real-world agent workflows involving long execution chains, with improved complex instruction decomposition, tool use, scheduled and persistent execution, and overall stability across extended tasks. -- [Z.ai: GLM 5](/model-api-reference/llm-models/z-ai/glm-5) — GLM-5 is Z.ai’s flagship open-source foundation model engineered for complex systems design and long-horizon agent workflows. Built for expert developers, it delivers production-grade performance on large-scale programming tasks, rivaling leading closed-source models. With advanced agentic planning, deep backend reasoning, and iterative self-correction, GLM-5 moves beyond code generation to full-system construction and autonomous execution. -- [Z.ai: GLM 4.7 Flash](/model-api-reference/llm-models/z-ai/glm-4.7-flash) — As a 30B-class SOTA model, GLM-4.7-Flash offers a new option that balances performance and efficiency. It is further optimized for agentic coding use cases, strengthening coding capabilities, long-horizon task planning, and tool collaboration, and has achieved leading performance among open-source models of the same size on several current public benchmark leaderboards. -- [Z.ai: GLM 4.7](/model-api-reference/llm-models/z-ai/glm-4.7) — GLM-4.7 is Z.ai’s available flagship model, featuring upgrades in two key areas: enhanced programming capabilities and more stable multi-step reasoning/execution. It demonstrates significant improvements in executing complex agent tasks while delivering more natural conversational experiences and superior front-end aesthetics. -- [Z.ai: GLM 4.6V](/model-api-reference/llm-models/z-ai/glm-4.6v) — GLM-4.6V is a large multimodal model designed for high-fidelity visual understanding and long-context reasoning across images, documents, and mixed media. It supports up to 128K tokens, processes complex page layouts and charts directly as visual inputs, and integrates native multimodal function calling to connect perception with downstream tool execution. The model also enables interleaved image-text generation and UI reconstruction workflows, including screenshot-to-HTML synthesis and iterative visual editing. -- [Z.ai: GLM 4.6](/model-api-reference/llm-models/z-ai/glm-4.6) — Compared with GLM-4.5, this generation brings several key improvements: -- [Z.ai: GLM 4.5V](/model-api-reference/llm-models/z-ai/glm-4.5v) — GLM-4.5V is a vision-language foundation model for multimodal agent applications. Built on a Mixture-of-Experts (MoE) architecture with 106B parameters and 12B activated parameters, it achieves state-of-the-art results in video understanding, image Q&A, OCR, and document parsing, with strong gains in front-end web coding, grounding, and spatial reasoning. It offers a hybrid inference mode: a "thinking mode" for deep reasoning and a "non-thinking mode" for fast responses. Reasoning behavior can be toggled via the `reasoning` `enabled` boolean. Learn more in our docs -- [Z.ai: GLM 4.5](/model-api-reference/llm-models/z-ai/glm-4.5) — GLM-4.5 is our available flagship foundation model, purpose-built for agent-based applications. It leverages a Mixture-of-Experts (MoE) architecture and supports a context length of up to 128k tokens. GLM-4.5 delivers significantly enhanced capabilities in reasoning, code generation, and agent alignment. It supports a hybrid inference mode with two options, a "thinking mode" designed for complex reasoning and tool use, and a "non-thinking mode" optimized for instant responses. Users can control the reasoning behaviour with the `reasoning` `enabled` boolean. Learn more in our docs -- …and 2 more models in the sidebar. +- [Z.ai: GLM 5.3 FlashX](/model-api-reference/llm-models/z-ai/glm-5.3-flashx) — GLM-5.3-FlashX is the high-speed tier of Z.ai's GLM-5.3-Flash, documented together with Flash and delivering inference speeds of up to 200 tokens per second. It shares Flash's native multimodal design and hybrid sparse-plus-linear attention, with image, video and file input, always-on reasoning, tool calling and structured output. Pick it over standard Flash for latency-sensitive coding agents, GUI and browser tasks, and interactive chat. +- [Z.ai: GLM 5.3 Flash](/model-api-reference/llm-models/z-ai/glm-5.3-flash) — GLM-5.3-Flash is the first native multimodal model in Z.ai's GLM-5 series, a 320B-parameter mixture-of-experts model with 18B active parameters that combines sparse and linear attention to cut long-context compute and KV cache. Vision is built into its coding loop, letting it inspect rendered interfaces and GUI feedback for frontend, game and computer-use work, and it also handles office documents and financial research. Z.ai reports it outperforms GLM-5.2; GLM-5.3-FlashX serves it at higher speed. +- [Z.ai: GLM 5.3](/model-api-reference/llm-models/z-ai/glm-5.3) — GLM-5.3 is Z.ai's flagship text model for complex software engineering and long-horizon agent work, built on the same base model as GLM-5.2 with all gains coming from expanded post-training. Z.ai highlights stronger agentic coding, terminal operation, and vulnerability discovery and exploitation analysis for security work. It always runs with reasoning enabled at selectable effort levels and accepts text only; choose GLM-5.3-Flash for image input or lighter, faster serving. +- [Z.ai: GLM 5.2](/model-api-reference/llm-models/z-ai/glm-5.2) — GLM-5.2 is Z.ai's open-weight flagship text model released in June 2026 for long-horizon tasks, and the first GLM model to deliver that capability on a usable 1M-token context. Z.ai positions it for project-scale software engineering, deep debugging and full development workflows from requirements to deployable products, with steadier long-task execution and closer adherence to engineering standards. GLM-5.3 builds on the same base model with further post-training for coding. +- [Z.ai: GLM 4.5 Air](/model-api-reference/llm-models/z-ai/glm-4.5-air) — GLM-4.5-Air is the lightweight member of Z.ai's GLM-4.5 family, a mixture-of-experts model with 106B total and 12B active parameters built as a foundation model for agent-oriented applications. It offers hybrid reasoning, with a thinking mode for complex reasoning and tool use and a non-thinking mode for instant replies, and is tuned for tool calling, web browsing, software engineering and front-end development. Choose GLM-4.5 for more capacity. +- [Z.ai: GLM 5.5](/model-api-reference/llm-models/z-ai/glm-5.5) — GLM 5.5 is listed on SandBase as an upcoming model in Z.ai's GLM series and is not yet available on SandBase. As of early October 2026, Z.ai has not officially announced GLM 5.5 or published its capabilities, specifications or release date. Specifications and pricing will be confirmed at launch, once Z.ai publishes official details. ## Capability coverage -`audio_input`, `chat`, `decisions`, `function_calling`, `reasoning`, `structured_output`, `vision` +`audio_input`, `chat`, `coming-soon`, `decisions`, `function_calling`, `image_output`, `reasoning`, `structured_output`, `vision` diff --git a/model-api-reference/llm-models/ai21/jamba-large-1.7.md b/model-api-reference/llm-models/ai21/jamba-large-1.7.md deleted file mode 100644 index 7e5efced..00000000 --- a/model-api-reference/llm-models/ai21/jamba-large-1.7.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "AI21: Jamba Large 1.7 API Reference" -description: "AI21: Jamba Large 1.7 API reference for SandBase. Use model ai21/jamba-large-1.7 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/ai21/jamba-large-1.7" -apiReferenceJson: "{\"title\":\"AI21: Jamba Large 1.7\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Jamba Large 1.7 is the available model in the Jamba open family, offering improvements in grounding, instruction-following, and overall efficiency. Built on a hybrid SSM-Transformer architecture with a 256K context window, it delivers more accurate, contextually grounded responses and better steerability than previous versions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ai21/jamba-large-1.7.\",\"default\":\"ai21/jamba-large-1.7\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 4096\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"256000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ai21/jamba-large-1.7\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"ai21/jamba-large-1.7\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "AI21: Jamba Large 1.7" - modelId: "ai21/jamba-large-1.7" - vendor: "Ai21" - vendorSlug: "ai21" - modelSlug: "jamba-large-1.7" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-08-08T16:03:40.335Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/aion-labs/aion-1.0-mini.md b/model-api-reference/llm-models/aion-labs/aion-1.0-mini.md deleted file mode 100644 index 53e4b1ee..00000000 --- a/model-api-reference/llm-models/aion-labs/aion-1.0-mini.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "AionLabs: Aion-1.0-Mini API Reference" -description: "AionLabs: Aion-1.0-Mini API reference for SandBase. Use model aion-labs/aion-1.0-mini with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/aion-labs/aion-1.0-mini" -apiReferenceJson: "{\"title\":\"AionLabs: Aion-1.0-Mini\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Aion-1.0-Mini 32B parameter model is a distilled version of the DeepSeek-R1 model, designed for strong performance in reasoning domains such as mathematics, coding, and logic. It is a modified variant of a FuseAI model that outperforms R1-Distill-Qwen-32B and R1-Distill-Llama-70B, with benchmark results available on its Hugging Face page, independently replicated for verification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to aion-labs/aion-1.0-mini.\",\"default\":\"aion-labs/aion-1.0-mini\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"aion-labs/aion-1.0-mini\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"aion-labs/aion-1.0-mini\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "AionLabs: Aion-1.0-Mini" - modelId: "aion-labs/aion-1.0-mini" - vendor: "Aion-Labs" - vendorSlug: "aion-labs" - modelSlug: "aion-1.0-mini" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-02-04T19:25:07.903Z" - capabilities: ["chat","reasoning"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/aion-labs/aion-1.0.md b/model-api-reference/llm-models/aion-labs/aion-1.0.md deleted file mode 100644 index a50da913..00000000 --- a/model-api-reference/llm-models/aion-labs/aion-1.0.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "AionLabs: Aion-1.0 API Reference" -description: "AionLabs: Aion-1.0 API reference for SandBase. Use model aion-labs/aion-1.0 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/aion-labs/aion-1.0" -apiReferenceJson: "{\"title\":\"AionLabs: Aion-1.0\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Aion-1.0 is a multi-model system designed for high performance across various tasks, including reasoning and coding. It is built on DeepSeek-R1, augmented with additional models and techniques such as Tree of Thoughts (ToT) and Mixture of Experts (MoE). It is Aion Lab's most powerful reasoning model.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to aion-labs/aion-1.0.\",\"default\":\"aion-labs/aion-1.0\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"aion-labs/aion-1.0\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"aion-labs/aion-1.0\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "AionLabs: Aion-1.0" - modelId: "aion-labs/aion-1.0" - vendor: "Aion-Labs" - vendorSlug: "aion-labs" - modelSlug: "aion-1.0" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-02-04T19:32:37Z" - capabilities: ["chat","reasoning"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/aion-labs/aion-2.0.md b/model-api-reference/llm-models/aion-labs/aion-2.0.md deleted file mode 100644 index 93667b34..00000000 --- a/model-api-reference/llm-models/aion-labs/aion-2.0.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "AionLabs: Aion-2.0 API Reference" -description: "AionLabs: Aion-2.0 API reference for SandBase. Use model aion-labs/aion-2.0 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/aion-labs/aion-2.0" -apiReferenceJson: "{\"title\":\"AionLabs: Aion-2.0\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Aion-2.0 is a variant of DeepSeek V3.2 optimized for immersive roleplaying and storytelling. It is particularly strong at introducing tension, crises, and conflict into stories, making narratives feel more engaging. It also handles mature and darker themes with more nuance and depth.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to aion-labs/aion-2.0.\",\"default\":\"aion-labs/aion-2.0\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"aion-labs/aion-2.0\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"aion-labs/aion-2.0\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "AionLabs: Aion-2.0" - modelId: "aion-labs/aion-2.0" - vendor: "Aion-Labs" - vendorSlug: "aion-labs" - modelSlug: "aion-2.0" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-02-23T21:15:06.199Z" - capabilities: ["chat","reasoning"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/aion-labs/aion-rp-llama-3.1-8b.md b/model-api-reference/llm-models/aion-labs/aion-rp-llama-3.1-8b.md deleted file mode 100644 index d304c8be..00000000 --- a/model-api-reference/llm-models/aion-labs/aion-rp-llama-3.1-8b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "AionLabs: Aion-RP 1.0 (8B) API Reference" -description: "AionLabs: Aion-RP 1.0 (8B) API reference for SandBase. Use model aion-labs/aion-rp-llama-3.1-8b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/aion-labs/aion-rp-llama-3.1-8b" -apiReferenceJson: "{\"title\":\"AionLabs: Aion-RP 1.0 (8B)\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Aion-RP-Llama-3.1-8B ranks the highest in the character evaluation portion of the RPBench-Auto benchmark, a roleplaying-specific variant of Arena-Hard-Auto, where LLMs evaluate each other’s responses. It is a fine-tuned base model rather than an instruct model, designed to produce more natural and varied writing.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to aion-labs/aion-rp-llama-3.1-8b.\",\"default\":\"aion-labs/aion-rp-llama-3.1-8b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"32768 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"aion-labs/aion-rp-llama-3.1-8b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"aion-labs/aion-rp-llama-3.1-8b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "AionLabs: Aion-RP 1.0 (8B)" - modelId: "aion-labs/aion-rp-llama-3.1-8b" - vendor: "Aion-Labs" - vendorSlug: "aion-labs" - modelSlug: "aion-rp-llama-3.1-8b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-02-04T19:18:38.521Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alfredpros/codellama-7b-instruct-solidity.md b/model-api-reference/llm-models/alfredpros/codellama-7b-instruct-solidity.md deleted file mode 100644 index ae75ecbd..00000000 --- a/model-api-reference/llm-models/alfredpros/codellama-7b-instruct-solidity.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "AlfredPros: CodeLLaMa 7B Instruct Solidity API Reference" -description: "SandBase API reference for model alfredpros/codellama-7b-instruct-solidity. Call /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alfredpros/codellama-7b-instruct-solidity" -apiReferenceJson: "{\"title\":\"AlfredPros: CodeLLaMa 7B Instruct Solidity\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"A finetuned 7 billion parameters Code LLaMA - Instruct model to generate Solidity smart contract using 4-bit QLoRA finetuning provided by PEFT library.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alfredpros/codellama-7b-instruct-solidity.\",\"default\":\"alfredpros/codellama-7b-instruct-solidity\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 4096\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"4096 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alfredpros/codellama-7b-instruct-solidity\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alfredpros/codellama-7b-instruct-solidity\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "AlfredPros: CodeLLaMa 7B Instruct Solidity" - modelId: "alfredpros/codellama-7b-instruct-solidity" - vendor: "Alfredpros" - vendorSlug: "alfredpros" - modelSlug: "codellama-7b-instruct-solidity" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-04-14T14:44:34.216Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen-2.5-72b-instruct.md b/model-api-reference/llm-models/alibaba/qwen-2.5-72b-instruct.md deleted file mode 100644 index 68674a3a..00000000 --- a/model-api-reference/llm-models/alibaba/qwen-2.5-72b-instruct.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen2.5 72B Instruct API Reference" -description: "Qwen2.5 72B Instruct API reference for SandBase. Use model alibaba/qwen-2.5-72b-instruct with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen-2.5-72b-instruct" -apiReferenceJson: "{\"title\":\"Qwen2.5 72B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen2.5 72B is the available series of Qwen large language models. Qwen2.5 brings the following improvements upon Qwen2: - Significantly more knowledge and has greatly improved capabilities in coding and...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-2.5-72b-instruct.\",\"default\":\"alibaba/qwen-2.5-72b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-2.5-72b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen-2.5-72b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen2.5 72B Instruct" - modelId: "alibaba/qwen-2.5-72b-instruct" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-2.5-72b-instruct" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-09-19T00:00:00Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen-2.5-7b-instruct.md b/model-api-reference/llm-models/alibaba/qwen-2.5-7b-instruct.md deleted file mode 100644 index a2ebd9a8..00000000 --- a/model-api-reference/llm-models/alibaba/qwen-2.5-7b-instruct.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen2.5 7B Instruct API Reference" -description: "Qwen: Qwen2.5 7B Instruct API reference for SandBase. Use model alibaba/qwen-2.5-7b-instruct with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen-2.5-7b-instruct" -apiReferenceJson: "{\"title\":\"Qwen: Qwen2.5 7B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen2.5 7B is the available series of Qwen large language models. Qwen2.5 brings the following improvements upon Qwen2: - Significantly more knowledge and has greatly improved capabilities in coding and...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-2.5-7b-instruct.\",\"default\":\"alibaba/qwen-2.5-7b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-2.5-7b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen-2.5-7b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen2.5 7B Instruct" - modelId: "alibaba/qwen-2.5-7b-instruct" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-2.5-7b-instruct" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-10-16T00:00:00Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen-2.5-coder-32b-instruct.md b/model-api-reference/llm-models/alibaba/qwen-2.5-coder-32b-instruct.md deleted file mode 100644 index b02c09d0..00000000 --- a/model-api-reference/llm-models/alibaba/qwen-2.5-coder-32b-instruct.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen2.5 Coder 32B Instruct API Reference" -description: "Qwen2.5 Coder 32B Instruct API reference for SandBase. Use model alibaba/qwen-2.5-coder-32b-instruct with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen-2.5-coder-32b-instruct" -apiReferenceJson: "{\"title\":\"Qwen2.5 Coder 32B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen2.5-Coder is the available series of Code-Specific Qwen large language models (formerly known as CodeQwen). Qwen2.5-Coder brings the following improvements upon CodeQwen1.5: - Significantly improvements in code generation, code reasoning...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-2.5-coder-32b-instruct.\",\"default\":\"alibaba/qwen-2.5-coder-32b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-2.5-coder-32b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen-2.5-coder-32b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen2.5 Coder 32B Instruct" - modelId: "alibaba/qwen-2.5-coder-32b-instruct" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-2.5-coder-32b-instruct" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-11-11T23:40:00Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen-max.md b/model-api-reference/llm-models/alibaba/qwen-max.md deleted file mode 100644 index 191f191b..00000000 --- a/model-api-reference/llm-models/alibaba/qwen-max.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen-Max API Reference" -description: "Qwen: Qwen-Max API reference for SandBase. Use model alibaba/qwen-max with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen-max" -apiReferenceJson: "{\"title\":\"Qwen: Qwen-Max\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen-Max, based on Qwen2.5, provides the best inference performance among Qwen models, especially for complex multi-step tasks. It's a large-scale MoE model that has been pretrained on over 20 trillion...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-max.\",\"default\":\"alibaba/qwen-max\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 8192\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"32768 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-max\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen-max\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen-Max" - modelId: "alibaba/qwen-max" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-max" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-10-15T00:00:00Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen-plus-2025-07-28-thinking.md b/model-api-reference/llm-models/alibaba/qwen-plus-2025-07-28-thinking.md deleted file mode 100644 index ec9a6a12..00000000 --- a/model-api-reference/llm-models/alibaba/qwen-plus-2025-07-28-thinking.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen Plus 0728 (thinking) API Reference" -description: "Qwen: Qwen Plus 0728 (thinking) API reference for SandBase. Use model alibaba/qwen-plus-2025-07-28:thinking with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen-plus-2025-07-28:thinking" -apiReferenceJson: "{\"title\":\"Qwen: Qwen Plus 0728 (thinking)\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen Plus 0728, based on the Qwen3 foundation model, is a 1 million context hybrid reasoning model with a balanced performance, speed, and cost combination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-plus-2025-07-28:thinking.\",\"default\":\"alibaba/qwen-plus-2025-07-28:thinking\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-plus-2025-07-28:thinking\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen-plus-2025-07-28:thinking\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen Plus 0728 (thinking)" - modelId: "alibaba/qwen-plus-2025-07-28:thinking" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-plus-2025-07-28-thinking" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-09-08T16:06:39Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen-plus-2025-07-28.md b/model-api-reference/llm-models/alibaba/qwen-plus-2025-07-28.md deleted file mode 100644 index 9e2a45db..00000000 --- a/model-api-reference/llm-models/alibaba/qwen-plus-2025-07-28.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen Plus 0728 API Reference" -description: "Qwen: Qwen Plus 0728 API reference for SandBase. Use model alibaba/qwen-plus-2025-07-28 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen-plus-2025-07-28" -apiReferenceJson: "{\"title\":\"Qwen: Qwen Plus 0728\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen Plus 0728, based on the Qwen3 foundation model, is a 1 million context hybrid reasoning model with a balanced performance, speed, and cost combination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-plus-2025-07-28.\",\"default\":\"alibaba/qwen-plus-2025-07-28\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-plus-2025-07-28\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen-plus-2025-07-28\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen Plus 0728" - modelId: "alibaba/qwen-plus-2025-07-28" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-plus-2025-07-28" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-09-08T16:06:39Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen-plus.md b/model-api-reference/llm-models/alibaba/qwen-plus.md deleted file mode 100644 index 7f01b093..00000000 --- a/model-api-reference/llm-models/alibaba/qwen-plus.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen-Plus API Reference" -description: "Qwen: Qwen-Plus API reference for SandBase. Use model alibaba/qwen-plus with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen-plus" -apiReferenceJson: "{\"title\":\"Qwen: Qwen-Plus\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen-Plus, based on the Qwen2.5 foundation model, is a 131K context model with a balanced performance, speed, and cost combination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-plus.\",\"default\":\"alibaba/qwen-plus\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-plus\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen-plus\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen-Plus" - modelId: "alibaba/qwen-plus" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-plus" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-02-01T11:37:20Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen-turbo.md b/model-api-reference/llm-models/alibaba/qwen-turbo.md deleted file mode 100644 index 793ee47d..00000000 --- a/model-api-reference/llm-models/alibaba/qwen-turbo.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen-Turbo API Reference" -description: "Qwen: Qwen-Turbo API reference for SandBase. Use model alibaba/qwen-turbo with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen-turbo" -apiReferenceJson: "{\"title\":\"Qwen: Qwen-Turbo\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen-Turbo, based on Qwen2.5, is a 1M context model that provides fast speed and low cost, suitable for simple tasks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-turbo.\",\"default\":\"alibaba/qwen-turbo\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 8192\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-turbo\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen-turbo\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen-Turbo" - modelId: "alibaba/qwen-turbo" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-turbo" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-11-15T00:00:00Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen-vl-max.md b/model-api-reference/llm-models/alibaba/qwen-vl-max.md deleted file mode 100644 index 530bad7e..00000000 --- a/model-api-reference/llm-models/alibaba/qwen-vl-max.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen VL Max API Reference" -description: "Qwen: Qwen VL Max API reference for SandBase. Use model alibaba/qwen-vl-max with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen-vl-max" -apiReferenceJson: "{\"title\":\"Qwen: Qwen VL Max\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen VL Max is a visual understanding model with 7500 tokens context length. It excels in delivering optimal performance for a broader spectrum of complex tasks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-vl-max.\",\"default\":\"alibaba/qwen-vl-max\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-vl-max\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen-vl-max\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen VL Max" - modelId: "alibaba/qwen-vl-max" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-vl-max" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-05-26T00:00:00Z" - capabilities: ["chat","vision","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen-vl-plus.md b/model-api-reference/llm-models/alibaba/qwen-vl-plus.md deleted file mode 100644 index 0dd02cf1..00000000 --- a/model-api-reference/llm-models/alibaba/qwen-vl-plus.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen VL Plus API Reference" -description: "Qwen: Qwen VL Plus API reference for SandBase. Use model alibaba/qwen-vl-plus with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen-vl-plus" -apiReferenceJson: "{\"title\":\"Qwen: Qwen VL Plus\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen's Enhanced Large Visual Language Model. Significantly upgraded for detailed recognition capabilities and text recognition abilities, supporting ultra-high pixel resolutions up to millions of pixels and extreme aspect ratios for...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen-vl-plus.\",\"default\":\"alibaba/qwen-vl-plus\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 8192\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen-vl-plus\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen-vl-plus\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen VL Plus" - modelId: "alibaba/qwen-vl-plus" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen-vl-plus" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-06-13T00:00:00Z" - capabilities: ["chat","vision","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen2.5-vl-72b-instruct.md b/model-api-reference/llm-models/alibaba/qwen2.5-vl-72b-instruct.md index 2e932363..5d5bc419 100644 --- a/model-api-reference/llm-models/alibaba/qwen2.5-vl-72b-instruct.md +++ b/model-api-reference/llm-models/alibaba/qwen2.5-vl-72b-instruct.md @@ -4,7 +4,7 @@ description: "Qwen: Qwen2.5 VL 72B Instruct API reference for SandBase. Use mode aside: false outline: false apiReferenceKey: "llm/alibaba/qwen2.5-vl-72b-instruct" -apiReferenceJson: "{\"title\":\"Qwen: Qwen2.5 VL 72B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen2.5-VL is proficient in recognizing common objects such as flowers, birds, fish, and insects. It is also highly capable of analyzing texts, charts, icons, graphics, and layouts within images.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen2.5-vl-72b-instruct.\",\"default\":\"alibaba/qwen2.5-vl-72b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen2.5-vl-72b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen2.5-vl-72b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Qwen: Qwen2.5 VL 72B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen2.5-VL 72B Instruct is the largest instruction-tuned model in Alibaba's open-weight Qwen2.5-VL vision-language family, released in early 2025. Qwen highlights recognition of common objects and analysis of text, charts, icons and layouts in images, visual localization with bounding boxes or points, structured extraction from invoices, forms and tables, visual agent use and understanding of videos over an hour long. It predates the Qwen3-VL line and suits workloads validated on it.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen2.5-vl-72b-instruct.\",\"default\":\"alibaba/qwen2.5-vl-72b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen2.5-vl-72b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen2.5-vl-72b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Qwen: Qwen2.5 VL 72B Instruct" modelId: "alibaba/qwen2.5-vl-72b-instruct" diff --git a/model-api-reference/llm-models/alibaba/qwen3-14b.md b/model-api-reference/llm-models/alibaba/qwen3-14b.md deleted file mode 100644 index a71223e0..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3-14b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3 14B API Reference" -description: "Qwen: Qwen3 14B API reference for SandBase. Use model alibaba/qwen3-14b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3-14b" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3 14B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3-14B is a dense 14.8B parameter causal language model from the Qwen3 series, designed for both complex reasoning and efficient dialogue. It supports seamless switching between a \\\"thinking\\\" mode for...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-14b.\",\"default\":\"alibaba/qwen3-14b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 40960\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131702 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-14b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-14b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3 14B" - modelId: "alibaba/qwen3-14b" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3-14b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-04-28T21:41:18Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3-235b-a22b-2507.md b/model-api-reference/llm-models/alibaba/qwen3-235b-a22b-2507.md deleted file mode 100644 index 2613d933..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3-235b-a22b-2507.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3 235B A22B Instruct 2507 API Reference" -description: "Qwen: Qwen3 235B A22B Instruct 2507 API reference for SandBase. Use model alibaba/qwen3-235b-a22b-2507 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3-235b-a22b-2507" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3 235B A22B Instruct 2507\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3-235B-A22B-Instruct-2507 is a multilingual, instruction-tuned mixture-of-experts language model based on the Qwen3-235B architecture, with 22B active parameters per forward pass. It is optimized for general-purpose text generation, including instruction following,...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-235b-a22b-2507.\",\"default\":\"alibaba/qwen3-235b-a22b-2507\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-235b-a22b-2507\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-235b-a22b-2507\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3 235B A22B Instruct 2507" - modelId: "alibaba/qwen3-235b-a22b-2507" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3-235b-a22b-2507" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-07-21T17:39:15Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3-235b-a22b-thinking-2507.md b/model-api-reference/llm-models/alibaba/qwen3-235b-a22b-thinking-2507.md deleted file mode 100644 index 4dcd4459..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3-235b-a22b-thinking-2507.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3 235B A22B Thinking 2507 API Reference" -description: "SandBase API reference for model alibaba/qwen3-235b-a22b-thinking-2507. Call /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3-235b-a22b-thinking-2507" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3 235B A22B Thinking 2507\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3-235B-A22B-Thinking-2507 is a high-performance, open-weight Mixture-of-Experts (MoE) language model optimized for complex reasoning tasks. It activates 22B of its 235B parameters per forward pass and natively supports up to 262,144...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-235b-a22b-thinking-2507.\",\"default\":\"alibaba/qwen3-235b-a22b-thinking-2507\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 262144\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-235b-a22b-thinking-2507\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-235b-a22b-thinking-2507\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3 235B A22B Thinking 2507" - modelId: "alibaba/qwen3-235b-a22b-thinking-2507" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3-235b-a22b-thinking-2507" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-07-25T13:19:17Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3-235b-a22b.md b/model-api-reference/llm-models/alibaba/qwen3-235b-a22b.md deleted file mode 100644 index 9636bf15..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3-235b-a22b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3 235B A22B API Reference" -description: "Qwen: Qwen3 235B A22B API reference for SandBase. Use model alibaba/qwen3-235b-a22b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3-235b-a22b" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3 235B A22B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3-235B-A22B is a 235B parameter mixture-of-experts (MoE) model developed by Qwen, activating 22B parameters per forward pass. It supports seamless switching between a \\\"thinking\\\" mode for complex reasoning, math, and...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-235b-a22b.\",\"default\":\"alibaba/qwen3-235b-a22b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 8192\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-235b-a22b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-235b-a22b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3 235B A22B" - modelId: "alibaba/qwen3-235b-a22b" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3-235b-a22b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-04-28T21:29:17Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3-30b-a3b-instruct-2507.md b/model-api-reference/llm-models/alibaba/qwen3-30b-a3b-instruct-2507.md deleted file mode 100644 index d49b835d..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3-30b-a3b-instruct-2507.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3 30B A3B Instruct 2507 API Reference" -description: "Qwen: Qwen3 30B A3B Instruct 2507 API reference for SandBase. Use model alibaba/qwen3-30b-a3b-instruct-2507 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3-30b-a3b-instruct-2507" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3 30B A3B Instruct 2507\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3-30B-A3B-Instruct-2507 is a 30.5B-parameter mixture-of-experts language model from Qwen, with 3.3B active parameters per inference. It operates in non-thinking mode and is designed for high-quality instruction following, multilingual understanding, and...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-30b-a3b-instruct-2507.\",\"default\":\"alibaba/qwen3-30b-a3b-instruct-2507\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-30b-a3b-instruct-2507\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-30b-a3b-instruct-2507\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3 30B A3B Instruct 2507" - modelId: "alibaba/qwen3-30b-a3b-instruct-2507" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3-30b-a3b-instruct-2507" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-07-29T16:36:05Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3-30b-a3b-thinking-2507.md b/model-api-reference/llm-models/alibaba/qwen3-30b-a3b-thinking-2507.md deleted file mode 100644 index 4929313a..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3-30b-a3b-thinking-2507.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3 30B A3B Thinking 2507 API Reference" -description: "Qwen: Qwen3 30B A3B Thinking 2507 API reference for SandBase. Use model alibaba/qwen3-30b-a3b-thinking-2507 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3-30b-a3b-thinking-2507" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3 30B A3B Thinking 2507\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3-30B-A3B-Thinking-2507 is a 30B parameter Mixture-of-Experts reasoning model optimized for complex tasks requiring extended multi-step thinking. The model is designed specifically for “thinking mode,” where internal reasoning traces are separated...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-30b-a3b-thinking-2507.\",\"default\":\"alibaba/qwen3-30b-a3b-thinking-2507\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-30b-a3b-thinking-2507\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-30b-a3b-thinking-2507\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3 30B A3B Thinking 2507" - modelId: "alibaba/qwen3-30b-a3b-thinking-2507" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3-30b-a3b-thinking-2507" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-08-28T16:39:52Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3-30b-a3b.md b/model-api-reference/llm-models/alibaba/qwen3-30b-a3b.md deleted file mode 100644 index 079784dd..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3-30b-a3b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3 30B A3B API Reference" -description: "Qwen: Qwen3 30B A3B API reference for SandBase. Use model alibaba/qwen3-30b-a3b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3-30b-a3b" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3 30B A3B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3, the available generation in the Qwen large language model series, features both dense and mixture-of-experts (MoE) architectures to excel in reasoning, multilingual support, and advanced agent tasks. Its unique...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-30b-a3b.\",\"default\":\"alibaba/qwen3-30b-a3b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-30b-a3b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-30b-a3b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3 30B A3B" - modelId: "alibaba/qwen3-30b-a3b" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3-30b-a3b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-04-28T22:16:44Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3-32b.md b/model-api-reference/llm-models/alibaba/qwen3-32b.md index 1afbe916..db2f0ad0 100644 --- a/model-api-reference/llm-models/alibaba/qwen3-32b.md +++ b/model-api-reference/llm-models/alibaba/qwen3-32b.md @@ -4,7 +4,7 @@ description: "Qwen: Qwen3 32B API reference for SandBase. Use model alibaba/qwen aside: false outline: false apiReferenceKey: "llm/alibaba/qwen3-32b" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3 32B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3-32B is a dense 32.8B parameter causal language model from the Qwen3 series, optimized for both complex reasoning and efficient dialogue. It supports seamless switching between a \\\"thinking\\\" mode for...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-32b.\",\"default\":\"alibaba/qwen3-32b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-32b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-32b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Qwen: Qwen3 32B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3 32B is the largest dense model in Alibaba's open-weight Qwen3 family, released in April 2025 with 32.8 billion parameters. One model switches between a thinking mode for complex logic, math and coding and a non-thinking mode for fast general dialogue. Qwen highlights tool integration in both modes, creative writing, role-play, multi-turn conversation and support for more than 100 languages and dialects. It suits text workloads that want a mid-size open model with optional reasoning.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-32b.\",\"default\":\"alibaba/qwen3-32b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-32b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-32b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Qwen: Qwen3 32B" modelId: "alibaba/qwen3-32b" diff --git a/model-api-reference/llm-models/alibaba/qwen3-8b.md b/model-api-reference/llm-models/alibaba/qwen3-8b.md index 9293dde4..607b818e 100644 --- a/model-api-reference/llm-models/alibaba/qwen3-8b.md +++ b/model-api-reference/llm-models/alibaba/qwen3-8b.md @@ -4,7 +4,7 @@ description: "Qwen: Qwen3 8B API reference for SandBase. Use model alibaba/qwen3 aside: false outline: false apiReferenceKey: "llm/alibaba/qwen3-8b" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3 8B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3-8B is a dense 8.2B parameter causal language model from the Qwen3 series, designed for both reasoning-heavy tasks and efficient dialogue. It supports seamless switching between \\\"thinking\\\" mode for math,...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-8b.\",\"default\":\"alibaba/qwen3-8b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 8192\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-8b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-8b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Qwen: Qwen3 8B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3 8B is a compact dense model in Alibaba's open-weight Qwen3 family, released in April 2025 with 8.2 billion parameters. Like its siblings, it switches between a thinking mode for math, coding and logical reasoning and a non-thinking mode for efficient dialogue, with tool use in both modes and coverage of more than 100 languages and dialects. Choose it for lightweight text reasoning and chat where Qwen3 32B is more than the task needs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-8b.\",\"default\":\"alibaba/qwen3-8b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 8192\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-8b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-8b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Qwen: Qwen3 8B" modelId: "alibaba/qwen3-8b" diff --git a/model-api-reference/llm-models/alibaba/qwen3-coder-30b-a3b-instruct.md b/model-api-reference/llm-models/alibaba/qwen3-coder-30b-a3b-instruct.md deleted file mode 100644 index a1b7bd09..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3-coder-30b-a3b-instruct.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3 Coder 30B A3B Instruct API Reference" -description: "SandBase API reference for model alibaba/qwen3-coder-30b-a3b-instruct. Call /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3-coder-30b-a3b-instruct" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3 Coder 30B A3B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3-Coder-30B-A3B-Instruct is a 30.5B parameter Mixture-of-Experts (MoE) model with 128 experts (8 active per forward pass), designed for advanced code generation, repository-scale understanding, and agentic tool use. Built on the...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-coder-30b-a3b-instruct.\",\"default\":\"alibaba/qwen3-coder-30b-a3b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"160000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-coder-30b-a3b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-coder-30b-a3b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3 Coder 30B A3B Instruct" - modelId: "alibaba/qwen3-coder-30b-a3b-instruct" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3-coder-30b-a3b-instruct" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-07-31T14:32:59Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3-coder-flash.md b/model-api-reference/llm-models/alibaba/qwen3-coder-flash.md deleted file mode 100644 index 1a620e17..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3-coder-flash.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3 Coder Flash API Reference" -description: "Qwen: Qwen3 Coder Flash API reference for SandBase. Use model alibaba/qwen3-coder-flash with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3-coder-flash" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3 Coder Flash\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3 Coder Flash is Alibaba's fast and cost efficient version of their proprietary Qwen3 Coder Plus. It is a powerful coding agent model specializing in autonomous programming via tool calling...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-coder-flash.\",\"default\":\"alibaba/qwen3-coder-flash\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-coder-flash\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-coder-flash\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3 Coder Flash" - modelId: "alibaba/qwen3-coder-flash" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3-coder-flash" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-09-17T13:25:36Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3-coder-next.md b/model-api-reference/llm-models/alibaba/qwen3-coder-next.md deleted file mode 100644 index 4176d4b9..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3-coder-next.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3 Coder Next API Reference" -description: "Qwen: Qwen3 Coder Next API reference for SandBase. Use model alibaba/qwen3-coder-next with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3-coder-next" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3 Coder Next\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3-Coder-Next is an open-weight causal language model optimized for coding agents and local development workflows. It uses a sparse MoE design with 80B total parameters and only 3B activated per...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-coder-next.\",\"default\":\"alibaba/qwen3-coder-next\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 262144\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-coder-next\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-coder-next\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3 Coder Next" - modelId: "alibaba/qwen3-coder-next" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3-coder-next" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-02-04T00:15:01Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3-coder-plus.md b/model-api-reference/llm-models/alibaba/qwen3-coder-plus.md deleted file mode 100644 index 49332e9f..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3-coder-plus.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3 Coder Plus API Reference" -description: "Qwen: Qwen3 Coder Plus API reference for SandBase. Use model alibaba/qwen3-coder-plus with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3-coder-plus" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3 Coder Plus\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3 Coder Plus is Alibaba's proprietary version of the Open Source Qwen3 Coder 480B A35B. It is a powerful coding agent model specializing in autonomous programming via tool calling and...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-coder-plus.\",\"default\":\"alibaba/qwen3-coder-plus\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-coder-plus\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-coder-plus\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3 Coder Plus" - modelId: "alibaba/qwen3-coder-plus" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3-coder-plus" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-09-23T21:25:07Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3-coder.md b/model-api-reference/llm-models/alibaba/qwen3-coder.md deleted file mode 100644 index 520872d1..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3-coder.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3 Coder 480B A35B API Reference" -description: "Qwen: Qwen3 Coder 480B A35B API reference for SandBase. Use model alibaba/qwen3-coder with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3-coder" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3 Coder 480B A35B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3-Coder-480B-A35B-Instruct is a Mixture-of-Experts (MoE) code generation model developed by the Qwen team. It is optimized for agentic coding tasks such as function calling, tool use, and long-context reasoning over...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-coder.\",\"default\":\"alibaba/qwen3-coder\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-coder\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-coder\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3 Coder 480B A35B" - modelId: "alibaba/qwen3-coder" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3-coder" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-07-23T00:29:06Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3-max-thinking.md b/model-api-reference/llm-models/alibaba/qwen3-max-thinking.md deleted file mode 100644 index 8ec547a4..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3-max-thinking.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3 Max Thinking API Reference" -description: "Qwen: Qwen3 Max Thinking API reference for SandBase. Use model alibaba/qwen3-max-thinking with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3-max-thinking" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3 Max Thinking\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3-Max-Thinking is the flagship reasoning model in the Qwen3 series, designed for high-stakes cognitive tasks that require deep, multi-step reasoning. By significantly scaling model capacity and reinforcement learning compute, it...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-max-thinking.\",\"default\":\"alibaba/qwen3-max-thinking\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-max-thinking\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-max-thinking\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3 Max Thinking" - modelId: "alibaba/qwen3-max-thinking" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3-max-thinking" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-02-09T21:18:21Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3-max.md b/model-api-reference/llm-models/alibaba/qwen3-max.md deleted file mode 100644 index 5bda62b7..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3-max.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3 Max API Reference" -description: "Qwen: Qwen3 Max API reference for SandBase. Use model alibaba/qwen3-max with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3-max" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3 Max\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3-Max is an updated release built on the Qwen3 series, offering major improvements in reasoning, instruction following, multilingual support, and long-tail knowledge coverage compared to the January 2025 version. It...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-max.\",\"default\":\"alibaba/qwen3-max\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-max\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-max\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3 Max" - modelId: "alibaba/qwen3-max" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3-max" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-09-23T21:26:48Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3-next-80b-a3b-instruct.md b/model-api-reference/llm-models/alibaba/qwen3-next-80b-a3b-instruct.md deleted file mode 100644 index e50fd348..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3-next-80b-a3b-instruct.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3 Next 80B A3B Instruct API Reference" -description: "Qwen: Qwen3 Next 80B A3B Instruct API reference for SandBase. Use model alibaba/qwen3-next-80b-a3b-instruct with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3-next-80b-a3b-instruct" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3 Next 80B A3B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3-Next-80B-A3B-Instruct is an instruction-tuned chat model in the Qwen3-Next series optimized for fast, stable responses without “thinking” traces. It targets complex tasks across reasoning, code generation, knowledge QA, and multilingual...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-next-80b-a3b-instruct.\",\"default\":\"alibaba/qwen3-next-80b-a3b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-next-80b-a3b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-next-80b-a3b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3 Next 80B A3B Instruct" - modelId: "alibaba/qwen3-next-80b-a3b-instruct" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3-next-80b-a3b-instruct" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-09-11T17:36:53Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3-next-80b-a3b-thinking.md b/model-api-reference/llm-models/alibaba/qwen3-next-80b-a3b-thinking.md deleted file mode 100644 index 5fd7cfd7..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3-next-80b-a3b-thinking.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3 Next 80B A3B Thinking API Reference" -description: "Qwen: Qwen3 Next 80B A3B Thinking API reference for SandBase. Use model alibaba/qwen3-next-80b-a3b-thinking with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3-next-80b-a3b-thinking" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3 Next 80B A3B Thinking\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3-Next-80B-A3B-Thinking is a reasoning-first chat model in the Qwen3-Next line that outputs structured “thinking” traces by default. It’s designed for hard multi-step problems; math proofs, code synthesis/debugging, logic, and agentic...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-next-80b-a3b-thinking.\",\"default\":\"alibaba/qwen3-next-80b-a3b-thinking\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-next-80b-a3b-thinking\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-next-80b-a3b-thinking\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3 Next 80B A3B Thinking" - modelId: "alibaba/qwen3-next-80b-a3b-thinking" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3-next-80b-a3b-thinking" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-09-11T17:38:04Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3-vl-235b-a22b-instruct.md b/model-api-reference/llm-models/alibaba/qwen3-vl-235b-a22b-instruct.md index e34f0e38..fb0f08a4 100644 --- a/model-api-reference/llm-models/alibaba/qwen3-vl-235b-a22b-instruct.md +++ b/model-api-reference/llm-models/alibaba/qwen3-vl-235b-a22b-instruct.md @@ -4,7 +4,7 @@ description: "Qwen: Qwen3 VL 235B A22B Instruct API reference for SandBase. Use aside: false outline: false apiReferenceKey: "llm/alibaba/qwen3-vl-235b-a22b-instruct" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3 VL 235B A22B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3-VL-235B-A22B Instruct is an open-weight multimodal model that unifies strong text generation with visual understanding across images and video. The Instruct model targets general vision-language use (VQA, document parsing, chart/table...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-vl-235b-a22b-instruct.\",\"default\":\"alibaba/qwen3-vl-235b-a22b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-vl-235b-a22b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-vl-235b-a22b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Qwen: Qwen3 VL 235B A22B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3-VL 235B A22B Instruct is the largest Mixture-of-Experts model in Alibaba's open-weight Qwen3-VL vision-language family, in its non-thinking Instruct edition, released in September 2025. Qwen positions it for visual agents that operate PC and mobile GUIs, generating HTML, CSS or diagrams from images and video, 2D and 3D grounding, long-video understanding and OCR in 32 languages. Choose it for direct answers; a separate Thinking edition targets multimodal STEM reasoning.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-vl-235b-a22b-instruct.\",\"default\":\"alibaba/qwen3-vl-235b-a22b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-vl-235b-a22b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-vl-235b-a22b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Qwen: Qwen3 VL 235B A22B Instruct" modelId: "alibaba/qwen3-vl-235b-a22b-instruct" diff --git a/model-api-reference/llm-models/alibaba/qwen3-vl-235b-a22b-thinking.md b/model-api-reference/llm-models/alibaba/qwen3-vl-235b-a22b-thinking.md deleted file mode 100644 index bd780437..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3-vl-235b-a22b-thinking.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3 VL 235B A22B Thinking API Reference" -description: "Qwen: Qwen3 VL 235B A22B Thinking API reference for SandBase. Use model alibaba/qwen3-vl-235b-a22b-thinking with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3-vl-235b-a22b-thinking" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3 VL 235B A22B Thinking\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3-VL-235B-A22B Thinking is a multimodal model that unifies strong text generation with visual understanding across images and video. The Thinking model is optimized for multimodal reasoning in STEM and math....\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-vl-235b-a22b-thinking.\",\"default\":\"alibaba/qwen3-vl-235b-a22b-thinking\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-vl-235b-a22b-thinking\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-vl-235b-a22b-thinking\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3 VL 235B A22B Thinking" - modelId: "alibaba/qwen3-vl-235b-a22b-thinking" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3-vl-235b-a22b-thinking" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-09-23T23:04:50Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3-vl-30b-a3b-instruct.md b/model-api-reference/llm-models/alibaba/qwen3-vl-30b-a3b-instruct.md index 0c2cb1a7..8aa9aa66 100644 --- a/model-api-reference/llm-models/alibaba/qwen3-vl-30b-a3b-instruct.md +++ b/model-api-reference/llm-models/alibaba/qwen3-vl-30b-a3b-instruct.md @@ -4,7 +4,7 @@ description: "Qwen: Qwen3 VL 30B A3B Instruct API reference for SandBase. Use mo aside: false outline: false apiReferenceKey: "llm/alibaba/qwen3-vl-30b-a3b-instruct" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3 VL 30B A3B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3-VL-30B-A3B-Instruct is a multimodal model that unifies strong text generation with visual understanding for images and videos. Its Instruct variant optimizes instruction-following for general multimodal tasks. It excels in perception...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-vl-30b-a3b-instruct.\",\"default\":\"alibaba/qwen3-vl-30b-a3b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-vl-30b-a3b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-vl-30b-a3b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Qwen: Qwen3 VL 30B A3B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3-VL 30B A3B Instruct is the mid-size Mixture-of-Experts, non-thinking edition of Alibaba's open-weight Qwen3-VL vision-language family, activating about 3 billion parameters per token. Alibaba positions it for fast responses with upgraded image and video understanding, long videos and documents, spatial awareness, object recognition, multilingual OCR and visual agents that operate GUIs. It sits between Qwen3-VL 8B and 235B A22B in size and capability.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-vl-30b-a3b-instruct.\",\"default\":\"alibaba/qwen3-vl-30b-a3b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-vl-30b-a3b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-vl-30b-a3b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Qwen: Qwen3 VL 30B A3B Instruct" modelId: "alibaba/qwen3-vl-30b-a3b-instruct" diff --git a/model-api-reference/llm-models/alibaba/qwen3-vl-30b-a3b-thinking.md b/model-api-reference/llm-models/alibaba/qwen3-vl-30b-a3b-thinking.md deleted file mode 100644 index 12c16e82..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3-vl-30b-a3b-thinking.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3 VL 30B A3B Thinking API Reference" -description: "Qwen: Qwen3 VL 30B A3B Thinking API reference for SandBase. Use model alibaba/qwen3-vl-30b-a3b-thinking with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3-vl-30b-a3b-thinking" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3 VL 30B A3B Thinking\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3-VL-30B-A3B-Thinking is a multimodal model that unifies strong text generation with visual understanding for images and videos. Its Thinking variant enhances reasoning in STEM, math, and complex tasks. It excels...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-vl-30b-a3b-thinking.\",\"default\":\"alibaba/qwen3-vl-30b-a3b-thinking\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-vl-30b-a3b-thinking\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-vl-30b-a3b-thinking\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3 VL 30B A3B Thinking" - modelId: "alibaba/qwen3-vl-30b-a3b-thinking" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3-vl-30b-a3b-thinking" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-10-06T23:47:59Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3-vl-32b-instruct.md b/model-api-reference/llm-models/alibaba/qwen3-vl-32b-instruct.md deleted file mode 100644 index ed804384..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3-vl-32b-instruct.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3 VL 32B Instruct API Reference" -description: "Qwen: Qwen3 VL 32B Instruct API reference for SandBase. Use model alibaba/qwen3-vl-32b-instruct with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3-vl-32b-instruct" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3 VL 32B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3-VL-32B-Instruct is a large-scale multimodal vision-language model designed for high-precision understanding and reasoning across text, images, and video. With 32 billion parameters, it combines deep visual perception with advanced text...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-vl-32b-instruct.\",\"default\":\"alibaba/qwen3-vl-32b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-vl-32b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-vl-32b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3 VL 32B Instruct" - modelId: "alibaba/qwen3-vl-32b-instruct" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3-vl-32b-instruct" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-10-23T14:55:32Z" - capabilities: ["chat","vision","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3-vl-8b-instruct.md b/model-api-reference/llm-models/alibaba/qwen3-vl-8b-instruct.md index 92b1e9a4..e4bf2f0a 100644 --- a/model-api-reference/llm-models/alibaba/qwen3-vl-8b-instruct.md +++ b/model-api-reference/llm-models/alibaba/qwen3-vl-8b-instruct.md @@ -4,7 +4,7 @@ description: "Qwen: Qwen3 VL 8B Instruct API reference for SandBase. Use model a aside: false outline: false apiReferenceKey: "llm/alibaba/qwen3-vl-8b-instruct" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3 VL 8B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3-VL-8B-Instruct is a multimodal vision-language model from the Qwen3-VL series, built for high-fidelity understanding and reasoning across text, images, and video. It features improved multimodal fusion with Interleaved-MRoPE for long-horizon...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-vl-8b-instruct.\",\"default\":\"alibaba/qwen3-vl-8b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"256000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-vl-8b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-vl-8b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Qwen: Qwen3 VL 8B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3-VL 8B Instruct is the 8-billion-parameter dense, non-thinking edition of Alibaba's open-weight Qwen3-VL vision-language family. Alibaba notes it needs less GPU memory while keeping the series' upgraded image and video understanding, long-document and long-video handling, spatial awareness, object recognition, multilingual OCR and GUI agent abilities. Pick it for lighter multimodal deployments; the 30B A3B and 235B A22B models trade size for more capability.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-vl-8b-instruct.\",\"default\":\"alibaba/qwen3-vl-8b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-vl-8b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-vl-8b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Qwen: Qwen3 VL 8B Instruct" modelId: "alibaba/qwen3-vl-8b-instruct" diff --git a/model-api-reference/llm-models/alibaba/qwen3.5-122b-a10b.md b/model-api-reference/llm-models/alibaba/qwen3.5-122b-a10b.md deleted file mode 100644 index 54c90aa8..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3.5-122b-a10b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3.5-122B-A10B API Reference" -description: "Qwen: Qwen3.5-122B-A10B API reference for SandBase. Use model alibaba/qwen3.5-122b-a10b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3.5-122b-a10b" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3.5-122B-A10B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"The Qwen3.5 122B-A10B native vision-language model is built on a hybrid architecture that integrates a linear attention mechanism with a sparse mixture-of-experts model, achieving higher inference efficiency. In terms of...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.5-122b-a10b.\",\"default\":\"alibaba/qwen3.5-122b-a10b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 262144\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.5-122b-a10b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.5-122b-a10b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3.5-122B-A10B" - modelId: "alibaba/qwen3.5-122b-a10b" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3.5-122b-a10b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-02-25T21:09:49Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3.5-27b.md b/model-api-reference/llm-models/alibaba/qwen3.5-27b.md deleted file mode 100644 index 1eaae3a9..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3.5-27b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3.5-27B API Reference" -description: "Qwen: Qwen3.5-27B API reference for SandBase. Use model alibaba/qwen3.5-27b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3.5-27b" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3.5-27B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"The Qwen3.5 27B native vision-language Dense model incorporates a linear attention mechanism, delivering fast response times while balancing inference speed and performance. Its overall capabilities are comparable to those of...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.5-27b.\",\"default\":\"alibaba/qwen3.5-27b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.5-27b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.5-27b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3.5-27B" - modelId: "alibaba/qwen3.5-27b" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3.5-27b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-02-25T21:10:10Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3.5-35b-a3b.md b/model-api-reference/llm-models/alibaba/qwen3.5-35b-a3b.md index 708c01b6..adbcd469 100644 --- a/model-api-reference/llm-models/alibaba/qwen3.5-35b-a3b.md +++ b/model-api-reference/llm-models/alibaba/qwen3.5-35b-a3b.md @@ -4,7 +4,7 @@ description: "Qwen: Qwen3.5-35B-A3B API reference for SandBase. Use model alibab aside: false outline: false apiReferenceKey: "llm/alibaba/qwen3.5-35b-a3b" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3.5-35B-A3B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"The Qwen3.5 Series 35B-A3B is a native vision-language model designed with a hybrid architecture that integrates linear attention mechanisms and a sparse mixture-of-experts model, achieving higher inference efficiency. Its overall...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.5-35b-a3b.\",\"default\":\"alibaba/qwen3.5-35b-a3b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 262144\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.5-35b-a3b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.5-35b-a3b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Qwen: Qwen3.5-35B-A3B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3.5 35B A3B is an open-weight native vision-language model from Alibaba's Qwen3.5 series, released in February 2026, pairing linear attention with a sparse Mixture-of-Experts design that activates about 3 billion of its 35 billion parameters. Alibaba describes its overall performance as comparable to Qwen3.5 27B with higher inference efficiency. It supports thinking mode, tool calling and image and video understanding, and is the open-weight counterpart of the hosted Qwen3.5 Flash.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.5-35b-a3b.\",\"default\":\"alibaba/qwen3.5-35b-a3b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 262144\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.5-35b-a3b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.5-35b-a3b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Qwen: Qwen3.5-35B-A3B" modelId: "alibaba/qwen3.5-35b-a3b" diff --git a/model-api-reference/llm-models/alibaba/qwen3.5-397b-a17b.md b/model-api-reference/llm-models/alibaba/qwen3.5-397b-a17b.md deleted file mode 100644 index b0773945..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3.5-397b-a17b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3.5 397B A17B API Reference" -description: "Qwen: Qwen3.5 397B A17B API reference for SandBase. Use model alibaba/qwen3.5-397b-a17b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3.5-397b-a17b" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3.5 397B A17B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"The Qwen3.5 series 397B-A17B native vision-language model is built on a hybrid architecture that integrates a linear attention mechanism with a sparse mixture-of-experts model, achieving higher inference efficiency. It delivers...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.5-397b-a17b.\",\"default\":\"alibaba/qwen3.5-397b-a17b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.5-397b-a17b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.5-397b-a17b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3.5 397B A17B" - modelId: "alibaba/qwen3.5-397b-a17b" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3.5-397b-a17b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-02-16T06:23:38Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3.5-9b.md b/model-api-reference/llm-models/alibaba/qwen3.5-9b.md deleted file mode 100644 index 26c60a6a..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3.5-9b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3.5-9B API Reference" -description: "Qwen: Qwen3.5-9B API reference for SandBase. Use model alibaba/qwen3.5-9b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3.5-9b" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3.5-9B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3.5-9B is a multimodal foundation model from the Qwen3.5 family, designed to deliver strong reasoning, coding, and visual understanding in an efficient 9B-parameter architecture. It uses a unified vision-language design...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.5-9b.\",\"default\":\"alibaba/qwen3.5-9b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 262144\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.5-9b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.5-9b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3.5-9B" - modelId: "alibaba/qwen3.5-9b" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3.5-9b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-03-10T14:19:56Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3.5-flash-02-23.md b/model-api-reference/llm-models/alibaba/qwen3.5-flash-02-23.md deleted file mode 100644 index 800d223c..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3.5-flash-02-23.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3.5-Flash API Reference" -description: "Qwen: Qwen3.5-Flash API reference for SandBase. Use model alibaba/qwen3.5-flash-02-23 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3.5-flash-02-23" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3.5-Flash\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"The Qwen3.5 native vision-language Flash models are built on a hybrid architecture that integrates a linear attention mechanism with a sparse mixture-of-experts model, achieving higher inference efficiency. Compared to the...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.5-flash-02-23.\",\"default\":\"alibaba/qwen3.5-flash-02-23\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.5-flash-02-23\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.5-flash-02-23\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3.5-Flash" - modelId: "alibaba/qwen3.5-flash-02-23" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3.5-flash-02-23" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-02-25T21:09:36Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3.5-plus-02-15.md b/model-api-reference/llm-models/alibaba/qwen3.5-plus-02-15.md deleted file mode 100644 index b62d20f9..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3.5-plus-02-15.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3.5 Plus 2026-02-15 API Reference" -description: "Qwen: Qwen3.5 Plus 2026-02-15 API reference for SandBase. Use model alibaba/qwen3.5-plus-02-15 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3.5-plus-02-15" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3.5 Plus 2026-02-15\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"The Qwen3.5 native vision-language series Plus models are built on a hybrid architecture that integrates linear attention mechanisms with sparse mixture-of-experts models, achieving higher inference efficiency. In a variety of...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.5-plus-02-15.\",\"default\":\"alibaba/qwen3.5-plus-02-15\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.5-plus-02-15\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.5-plus-02-15\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3.5 Plus 2026-02-15" - modelId: "alibaba/qwen3.5-plus-02-15" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3.5-plus-02-15" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-02-16T08:10:16Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3.5-plus-20260420.md b/model-api-reference/llm-models/alibaba/qwen3.5-plus-20260420.md deleted file mode 100644 index 84376424..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3.5-plus-20260420.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3.5 Plus 2026-04-20 API Reference" -description: "Qwen: Qwen3.5 Plus 2026-04-20 API reference for SandBase. Use model alibaba/qwen3.5-plus-20260420 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3.5-plus-20260420" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3.5 Plus 2026-04-20\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3.5 Plus (April 2026) is a large-scale multimodal language model from Alibaba. It accepts text, image, and video input and produces text output, with a 1M token context window. This...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.5-plus-20260420.\",\"default\":\"alibaba/qwen3.5-plus-20260420\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.5-plus-20260420\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.5-plus-20260420\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3.5 Plus 2026-04-20" - modelId: "alibaba/qwen3.5-plus-20260420" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3.5-plus-20260420" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-04-27T03:42:48Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3.6-27b.md b/model-api-reference/llm-models/alibaba/qwen3.6-27b.md index b1e7cc0f..983dafde 100644 --- a/model-api-reference/llm-models/alibaba/qwen3.6-27b.md +++ b/model-api-reference/llm-models/alibaba/qwen3.6-27b.md @@ -4,7 +4,7 @@ description: "Qwen: Qwen3.6 27B API reference for SandBase. Use model alibaba/qw aside: false outline: false apiReferenceKey: "llm/alibaba/qwen3.6-27b" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3.6 27B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3.6 27B is a dense 27-billion-parameter language model from the Qwen Team at Alibaba, released in April 2026. It features hybrid multimodal capabilities — accepting text, image, and video inputs...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.6-27b.\",\"default\":\"alibaba/qwen3.6-27b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.6-27b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.6-27b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Qwen: Qwen3.6 27B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3.6 27B is an open-weight dense 27-billion-parameter vision-language model in Alibaba's Qwen3.6 family, released in April 2026 with thinking and non-thinking modes. Qwen positions it for agentic coding, including front-end workflows and repository-level reasoning, plus STEM reasoning, spatial understanding, object localization, document OCR and video understanding. Its dense design is simple to deploy, and it can retain reasoning context across turns for iterative development.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.6-27b.\",\"default\":\"alibaba/qwen3.6-27b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.6-27b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.6-27b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Qwen: Qwen3.6 27B" modelId: "alibaba/qwen3.6-27b" diff --git a/model-api-reference/llm-models/alibaba/qwen3.6-35b-a3b.md b/model-api-reference/llm-models/alibaba/qwen3.6-35b-a3b.md deleted file mode 100644 index 4dd1a7e8..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3.6-35b-a3b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3.6 35B A3B API Reference" -description: "Qwen: Qwen3.6 35B A3B API reference for SandBase. Use model alibaba/qwen3.6-35b-a3b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3.6-35b-a3b" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3.6 35B A3B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3.6-35B-A3B is an open-weight multimodal model from Alibaba Cloud with 35 billion total parameters and 3 billion active parameters per token. It uses a hybrid sparse mixture-of-experts architecture combining Gated...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.6-35b-a3b.\",\"default\":\"alibaba/qwen3.6-35b-a3b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 262140\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.6-35b-a3b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.6-35b-a3b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3.6 35B A3B" - modelId: "alibaba/qwen3.6-35b-a3b" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3.6-35b-a3b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-04-27T03:24:15Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3.6-flash.md b/model-api-reference/llm-models/alibaba/qwen3.6-flash.md deleted file mode 100644 index 0098395d..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3.6-flash.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3.6 Flash API Reference" -description: "Qwen: Qwen3.6 Flash API reference for SandBase. Use model alibaba/qwen3.6-flash with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3.6-flash" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3.6 Flash\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3.6 Flash is a fast, efficient language model from Alibaba's Qwen 3.6 series. It supports text, image, and video input with a 1M token context window. Tiered pricing kicks in...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.6-flash.\",\"default\":\"alibaba/qwen3.6-flash\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.6-flash\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.6-flash\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3.6 Flash" - modelId: "alibaba/qwen3.6-flash" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3.6-flash" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-04-27T03:42:42Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3.6-max-preview.md b/model-api-reference/llm-models/alibaba/qwen3.6-max-preview.md deleted file mode 100644 index cd59ab2f..00000000 --- a/model-api-reference/llm-models/alibaba/qwen3.6-max-preview.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qwen: Qwen3.6 Max Preview API Reference" -description: "Qwen: Qwen3.6 Max Preview API reference for SandBase. Use model alibaba/qwen3.6-max-preview with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/qwen3.6-max-preview" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3.6 Max Preview\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3.6-Max-Preview is a proprietary frontier model from Alibaba Cloud built on a sparse mixture-of-experts architecture with approximately 1 trillion total parameters. It is optimized for agentic coding, tool use, and...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.6-max-preview.\",\"default\":\"alibaba/qwen3.6-max-preview\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.6-max-preview\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.6-max-preview\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qwen: Qwen3.6 Max Preview" - modelId: "alibaba/qwen3.6-max-preview" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "qwen3.6-max-preview" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-04-27T03:24:02Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alibaba/qwen3.6-plus.md b/model-api-reference/llm-models/alibaba/qwen3.6-plus.md index 31d4c73a..bb1840b9 100644 --- a/model-api-reference/llm-models/alibaba/qwen3.6-plus.md +++ b/model-api-reference/llm-models/alibaba/qwen3.6-plus.md @@ -4,7 +4,7 @@ description: "Qwen: Qwen3.6 Plus API reference for SandBase. Use model alibaba/q aside: false outline: false apiReferenceKey: "llm/alibaba/qwen3.6-plus" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3.6 Plus\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen 3.6 Plus builds on a hybrid architecture that combines efficient linear attention with sparse mixture-of-experts routing, enabling strong scalability and high-performance inference. Compared to the 3.5 series, it delivers...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.6-plus.\",\"default\":\"alibaba/qwen3.6-plus\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.6-plus\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.6-plus\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Qwen: Qwen3.6 Plus\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3.6 Plus is the Plus tier of Alibaba's Qwen3.6 series, a hosted native vision-language reasoning model released in April 2026. Alibaba reports marked gains over the Qwen3.5 series in agentic coding, front-end development and vibe coding, along with multimodal object recognition, OCR and object localization. Model Studio now lists it as a legacy model, with Qwen3.7 Plus as the recommended Plus-tier option, so it fits workloads already validated on this version.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.6-plus.\",\"default\":\"alibaba/qwen3.6-plus\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.6-plus\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.6-plus\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Qwen: Qwen3.6 Plus" modelId: "alibaba/qwen3.6-plus" diff --git a/model-api-reference/llm-models/alibaba/qwen3-vl-8b-thinking.md b/model-api-reference/llm-models/alibaba/qwen3.7-flash.md similarity index 53% rename from model-api-reference/llm-models/alibaba/qwen3-vl-8b-thinking.md rename to model-api-reference/llm-models/alibaba/qwen3.7-flash.md index fb86028f..057e36d0 100644 --- a/model-api-reference/llm-models/alibaba/qwen3-vl-8b-thinking.md +++ b/model-api-reference/llm-models/alibaba/qwen3.7-flash.md @@ -1,19 +1,19 @@ --- -title: "Qwen: Qwen3 VL 8B Thinking API Reference" -description: "Qwen: Qwen3 VL 8B Thinking API reference for SandBase. Use model alibaba/qwen3-vl-8b-thinking with /v1/chat/completions; see request and response examples." +title: "Qwen: Qwen3.7 Flash API Reference" +description: "Qwen: Qwen3.7 Flash API reference for SandBase. Use model alibaba/qwen3.7-flash with /v1/chat/completions; see request and response examples." aside: false outline: false -apiReferenceKey: "llm/alibaba/qwen3-vl-8b-thinking" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3 VL 8B Thinking\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3-VL-8B-Thinking is the reasoning-optimized variant of the Qwen3-VL-8B multimodal model, designed for advanced visual and textual reasoning across complex scenes, documents, and temporal sequences. It integrates enhanced multimodal alignment and...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3-vl-8b-thinking.\",\"default\":\"alibaba/qwen3-vl-8b-thinking\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"256000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3-vl-8b-thinking\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3-vl-8b-thinking\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceKey: "llm/alibaba/qwen3.7-flash" +apiReferenceJson: "{\"title\":\"Qwen: Qwen3.7 Flash\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3.7 Flash is the Flash tier of Alibaba's Qwen3.7 series, a native vision-language reasoning model that accepts text, images and video, released in July 2026. Alibaba describes it as an upgrade over Qwen3.6 Flash in multimodal understanding, object recognition, spatial perception and agent execution, with more stable search and multimodal coding agents. Choose it over Qwen3.7 Plus or Max when speed and high-volume throughput matter more than peak capability.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.7-flash.\",\"default\":\"alibaba/qwen3.7-flash\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.7-flash\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.7-flash\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: - modelName: "Qwen: Qwen3 VL 8B Thinking" - modelId: "alibaba/qwen3-vl-8b-thinking" + modelName: "Qwen: Qwen3.7 Flash" + modelId: "alibaba/qwen3.7-flash" vendor: "Alibaba" vendorSlug: "alibaba" - modelSlug: "qwen3-vl-8b-thinking" + modelSlug: "qwen3.7-flash" protocol: "Chat Completions API" endpoint: "/v1/chat/completions" - publishedAt: "2025-10-14T17:42:26Z" + publishedAt: "2026-07-27T22:16:01Z" capabilities: ["chat","vision","reasoning","structured_output","function_calling"] category: "LLM Models" --- diff --git a/model-api-reference/llm-models/alibaba/qwen3.7-max.md b/model-api-reference/llm-models/alibaba/qwen3.7-max.md index c9f069dd..2e138e62 100644 --- a/model-api-reference/llm-models/alibaba/qwen3.7-max.md +++ b/model-api-reference/llm-models/alibaba/qwen3.7-max.md @@ -4,7 +4,7 @@ description: "Qwen: Qwen3.7 Max API reference for SandBase. Use model alibaba/qw aside: false outline: false apiReferenceKey: "llm/alibaba/qwen3.7-max" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3.7 Max\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3.7-Max is the flagship model in Alibaba's Qwen3.7 series. It supports text input and output and is designed for agent-centric workloads, with particular strengths in coding, office and productivity tasks,...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.7-max.\",\"default\":\"alibaba/qwen3.7-max\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.7-max\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.7-max\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Qwen: Qwen3.7 Max\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3.7 Max is the largest and most capable model in Alibaba's Qwen3.7 series as of its May 2026 release, a reasoning model built for agent-centric work and offered here with text input and output. Alibaba highlights its strengths in programming, office and productivity tasks, and long-running autonomous execution. Model Studio now lists the Qwen3.7 line as legacy and recommends Qwen3.8 Max for the strongest reasoning, so it fits workloads already validated on Qwen3.7 Max.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.7-max.\",\"default\":\"alibaba/qwen3.7-max\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.7-max\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.7-max\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Qwen: Qwen3.7 Max" modelId: "alibaba/qwen3.7-max" diff --git a/model-api-reference/llm-models/alibaba/qwen3.7-plus.md b/model-api-reference/llm-models/alibaba/qwen3.7-plus.md index d1aed8e8..c6ce6114 100644 --- a/model-api-reference/llm-models/alibaba/qwen3.7-plus.md +++ b/model-api-reference/llm-models/alibaba/qwen3.7-plus.md @@ -4,7 +4,7 @@ description: "Qwen: Qwen3.7 Plus API reference for SandBase. Use model alibaba/q aside: false outline: false apiReferenceKey: "llm/alibaba/qwen3.7-plus" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3.7 Plus\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3.7-Plus is a cost-effective model in Alibaba's Qwen3.7 series. It supports text and image input with text output, building on the series' text capabilities with a comprehensive upgrade to its...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.7-plus.\",\"default\":\"alibaba/qwen3.7-plus\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.7-plus\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.7-plus\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Qwen: Qwen3.7 Plus\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3.7 Plus is the balanced Plus tier of Alibaba's Qwen3.7 series, a reasoning model with text and image input released in June 2026. Alibaba highlights its multimodal hybrid agent abilities: perceiving real-world scenes, reading screens and operating GUIs, generating code from visual references and navigating mobile apps end to end, alongside coding, tool use and productivity work. Model Studio recommends it as its default for general and coding workloads, with Qwen3.8 Max for harder reasoning.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.7-plus.\",\"default\":\"alibaba/qwen3.7-plus\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.7-plus\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.7-plus\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Qwen: Qwen3.7 Plus" modelId: "alibaba/qwen3.7-plus" diff --git a/model-api-reference/llm-models/alibaba/qwen3.8-2.4t-a95b.md b/model-api-reference/llm-models/alibaba/qwen3.8-2.4t-a95b.md index a9782217..5044bfe8 100644 --- a/model-api-reference/llm-models/alibaba/qwen3.8-2.4t-a95b.md +++ b/model-api-reference/llm-models/alibaba/qwen3.8-2.4t-a95b.md @@ -4,7 +4,7 @@ description: "Qwen: Qwen3.8 2.4T A95B API reference for SandBase. Use model alib aside: false outline: false apiReferenceKey: "llm/alibaba/qwen3.8-2.4t-a95b" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3.8 2.4T A95B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3.8 2.4T A95B is an open-weight sparse mixture-of-experts model from Qwen, with 95 billion active parameters out of 2.4 trillion total. It is the open-weight variant of Qwen3.8 Max.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.8-2.4t-a95b.\",\"default\":\"alibaba/qwen3.8-2.4t-a95b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 52429\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.8-2.4t-a95b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.8-2.4t-a95b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Qwen: Qwen3.8 2.4T A95B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3.8 2.4T A95B is the open-weight release of Alibaba's Qwen3.8 Max-class model, a sparse Mixture-of-Experts with 2.4 trillion total and about 95 billion active parameters, published in August 2026 as the first Qwen-Max-class open model. It targets coding, professional work, research and long-horizon agentic tasks, with tunable reasoning depth. Alibaba's hosted Qwen3.8 Max builds on it and adds vision input, a non-thinking mode and official built-in tools.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.8-2.4t-a95b.\",\"default\":\"alibaba/qwen3.8-2.4t-a95b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 52429\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.8-2.4t-a95b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.8-2.4t-a95b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Qwen: Qwen3.8 2.4T A95B" modelId: "alibaba/qwen3.8-2.4t-a95b" diff --git a/model-api-reference/llm-models/alibaba/qwen3.8-27b.md b/model-api-reference/llm-models/alibaba/qwen3.8-27b.md index 7885d09d..616d190c 100644 --- a/model-api-reference/llm-models/alibaba/qwen3.8-27b.md +++ b/model-api-reference/llm-models/alibaba/qwen3.8-27b.md @@ -4,7 +4,7 @@ description: "Qwen: Qwen3.8 27B API reference for SandBase. Use model alibaba/qw aside: false outline: false apiReferenceKey: "llm/alibaba/qwen3.8-27b" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3.8 27B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"The Qwen3.8 27B native vision-language dense model builds upon the 3.6-27B version, with key improvements in coding and office productivity capabilities across both text and visual modalities. It enables more reliable end-to-end completion of complex tasks, delivering consistently trustworthy results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.8-27b.\",\"default\":\"alibaba/qwen3.8-27b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.8-27b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.8-27b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Qwen: Qwen3.8 27B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3.8 27B is the compact dense member of Alibaba's Qwen3.8 family, an open-weight native vision-language model that understands images and video, with thinking mode on by default. Compared with Qwen3.6 27B, Alibaba focuses the upgrade on coding and office tasks across text and visual inputs, aiming for more reliable end-to-end completion of complex multi-step work. It suits teams that want Qwen3.8-generation agent skills in a smaller, deployment-friendly model.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.8-27b.\",\"default\":\"alibaba/qwen3.8-27b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.8-27b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.8-27b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Qwen: Qwen3.8 27B" modelId: "alibaba/qwen3.8-27b" diff --git a/model-api-reference/llm-models/alibaba/qwen3.8-max-0902.md b/model-api-reference/llm-models/alibaba/qwen3.8-max-0902.md new file mode 100644 index 00000000..19f60ef3 --- /dev/null +++ b/model-api-reference/llm-models/alibaba/qwen3.8-max-0902.md @@ -0,0 +1,21 @@ +--- +title: "Qwen: Qwen3.8 Max (0902) API Reference" +description: "Qwen: Qwen3.8 Max (0902) API reference for SandBase. Use model alibaba/qwen3.8-max-0902 with /v1/chat/completions; see request and response examples." +aside: false +outline: false +apiReferenceKey: "llm/alibaba/qwen3.8-max-0902" +apiReferenceJson: "{\"title\":\"Qwen: Qwen3.8 Max (0902)\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3.8 Max (0902) is the pinned snapshot of Alibaba's Qwen3.8 Max dated September 2, 2026, intended for workloads that need a fixed version. Alibaba describes it as an upgraded snapshot with stronger engineering-scale coding and long-horizon autonomous development, steadier multi-tool orchestration and end-to-end task delivery, and refined chart reasoning, document parsing and multimodal perception. It keeps the flagship's vision input, thinking mode and full tool support.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.8-max-0902.\",\"default\":\"alibaba/qwen3.8-max-0902\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.8-max-0902\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.8-max-0902\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +seo: + modelName: "Qwen: Qwen3.8 Max (0902)" + modelId: "alibaba/qwen3.8-max-0902" + vendor: "Alibaba" + vendorSlug: "alibaba" + modelSlug: "qwen3.8-max-0902" + protocol: "Chat Completions API" + endpoint: "/v1/chat/completions" + publishedAt: "2026-09-03T21:08:24Z" + capabilities: ["chat","vision","reasoning","structured_output","function_calling"] + category: "LLM Models" +--- + + diff --git a/model-api-reference/llm-models/alibaba/qwen3.8-max-prime.md b/model-api-reference/llm-models/alibaba/qwen3.8-max-prime.md new file mode 100644 index 00000000..4e594473 --- /dev/null +++ b/model-api-reference/llm-models/alibaba/qwen3.8-max-prime.md @@ -0,0 +1,21 @@ +--- +title: "Qwen: Qwen3.8 Max Prime API Reference" +description: "Qwen: Qwen3.8 Max Prime API reference for SandBase. Use model alibaba/qwen3.8-max-prime with /v1/chat/completions; see request and response examples." +aside: false +outline: false +apiReferenceKey: "llm/alibaba/qwen3.8-max-prime" +apiReferenceJson: "{\"title\":\"Qwen: Qwen3.8 Max Prime\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3.8 Max Prime is the Fast mode (Prime) serving option for Alibaba's Qwen3.8 Max: the same model with the same vision input and reasoning, delivered at higher output speed. Alibaba states Fast mode raises tokens per second to about 1.5 to 2 times the standard API, aimed at latency-sensitive uses such as AI coding assistants, multi-step agent reasoning and real-time conversation. Pick it over standard Qwen3.8 Max when response speed matters; it adds no new capabilities.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.8-max-prime.\",\"default\":\"alibaba/qwen3.8-max-prime\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.8-max-prime\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.8-max-prime\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +seo: + modelName: "Qwen: Qwen3.8 Max Prime" + modelId: "alibaba/qwen3.8-max-prime" + vendor: "Alibaba" + vendorSlug: "alibaba" + modelSlug: "qwen3.8-max-prime" + protocol: "Chat Completions API" + endpoint: "/v1/chat/completions" + publishedAt: "2026-09-23T19:20:28Z" + capabilities: ["chat","vision","reasoning","structured_output","function_calling"] + category: "LLM Models" +--- + + diff --git a/model-api-reference/llm-models/alibaba/qwen3.8-max.md b/model-api-reference/llm-models/alibaba/qwen3.8-max.md index a498cdd3..8f501e6a 100644 --- a/model-api-reference/llm-models/alibaba/qwen3.8-max.md +++ b/model-api-reference/llm-models/alibaba/qwen3.8-max.md @@ -4,7 +4,7 @@ description: "Qwen: Qwen3.8 Max API reference for SandBase. Use model alibaba/qw aside: false outline: false apiReferenceKey: "llm/alibaba/qwen3.8-max" -apiReferenceJson: "{\"title\":\"Qwen: Qwen3.8 Max\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3.8 Max is the flagship model in Alibaba's Qwen3.8 series and the general-availability successor to Qwen3.8 Max Preview. It is a multimodal reasoning model intended for complex reasoning and visual understanding.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.8-max.\",\"default\":\"alibaba/qwen3.8-max\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.8-max\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.8-max\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Qwen: Qwen3.8 Max\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3.8 Max is Alibaba's flagship Qwen3.8 model, a 2.4-trillion-parameter Mixture-of-Experts reasoning model with native vision understanding, released in August 2026. Alibaba positions it for long-horizon coding and office work, from multi-day autonomous development to professional legal, financial and design tasks, with vision used across planning, execution and verification. Model Studio recommends it when the strongest reasoning in the Qwen lineup is needed.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.8-max.\",\"default\":\"alibaba/qwen3.8-max\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.8-max\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.8-max\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Qwen: Qwen3.8 Max" modelId: "alibaba/qwen3.8-max" diff --git a/model-api-reference/llm-models/alibaba/qwen3.8-omni-flash.md b/model-api-reference/llm-models/alibaba/qwen3.8-omni-flash.md new file mode 100644 index 00000000..45424887 --- /dev/null +++ b/model-api-reference/llm-models/alibaba/qwen3.8-omni-flash.md @@ -0,0 +1,21 @@ +--- +title: "Qwen: Qwen3.8 Omni Flash API Reference" +description: "Qwen: Qwen3.8 Omni Flash API reference for SandBase. Use model alibaba/qwen3.8-omni-flash with /v1/chat/completions; see request and response examples." +aside: false +outline: false +apiReferenceKey: "llm/alibaba/qwen3.8-omni-flash" +apiReferenceJson: "{\"title\":\"Qwen: Qwen3.8 Omni Flash\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qwen3.8 Omni Flash is Alibaba's omni-modal reasoning model in the Qwen3.8 family, accepting text, image, audio and video input and returning text, with a 1M-token context window. Alibaba positions it for audio and video understanding and content analysis, including transcription-aware summarization, meeting and lecture review, and multimodal agent steps, with tool calling and adjustable reasoning effort. Pick Qwen3.8 Flash for text and image workloads that do not need audio or video input.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/qwen3.8-omni-flash.\",\"default\":\"alibaba/qwen3.8-omni-flash\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/qwen3.8-omni-flash\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/qwen3.8-omni-flash\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +seo: + modelName: "Qwen: Qwen3.8 Omni Flash" + modelId: "alibaba/qwen3.8-omni-flash" + vendor: "Alibaba" + vendorSlug: "alibaba" + modelSlug: "qwen3.8-omni-flash" + protocol: "Chat Completions API" + endpoint: "/v1/chat/completions" + publishedAt: "2026-09-18T00:00:00Z" + capabilities: ["chat","vision","audio_input","reasoning","structured_output","function_calling"] + category: "LLM Models" +--- + + diff --git a/model-api-reference/llm-models/alibaba/tongyi-deepresearch-30b-a3b.md b/model-api-reference/llm-models/alibaba/tongyi-deepresearch-30b-a3b.md deleted file mode 100644 index ac20e14a..00000000 --- a/model-api-reference/llm-models/alibaba/tongyi-deepresearch-30b-a3b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Tongyi DeepResearch 30B A3B API Reference" -description: "Tongyi DeepResearch 30B A3B API reference for SandBase. Use model alibaba/tongyi-deepresearch-30b-a3b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alibaba/tongyi-deepresearch-30b-a3b" -apiReferenceJson: "{\"title\":\"Tongyi DeepResearch 30B A3B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Tongyi DeepResearch is an agentic large language model developed by Tongyi Lab, with 30 billion total parameters activating only 3 billion per token. It's optimized for long-horizon, deep information-seeking tasks and delivers state-of-the-art performance on benchmarks like Humanity's Last Exam, BrowserComp, BrowserComp-ZH, WebWalkerQA, GAIA, xbench-DeepSearch, and FRAMES. This makes it superior for complex agentic search, reasoning, and multi-step problem-solving compared to prior models.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/tongyi-deepresearch-30b-a3b.\",\"default\":\"alibaba/tongyi-deepresearch-30b-a3b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/tongyi-deepresearch-30b-a3b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alibaba/tongyi-deepresearch-30b-a3b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Tongyi DeepResearch 30B A3B" - modelId: "alibaba/tongyi-deepresearch-30b-a3b" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "tongyi-deepresearch-30b-a3b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-09-18T15:53:24.337Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/allenai/olmo-3-32b-think.md b/model-api-reference/llm-models/allenai/olmo-3-32b-think.md deleted file mode 100644 index 87587be4..00000000 --- a/model-api-reference/llm-models/allenai/olmo-3-32b-think.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "AllenAI: Olmo 3 32B Think API Reference" -description: "AllenAI: Olmo 3 32B Think API reference for SandBase. Use model allenai/olmo-3-32b-think with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/allenai/olmo-3-32b-think" -apiReferenceJson: "{\"title\":\"AllenAI: Olmo 3 32B Think\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Olmo 3 32B Think is a large-scale, 32-billion-parameter model purpose-built for deep reasoning, complex logic chains and advanced instruction-following scenarios. Its capacity enables strong performance on demanding evaluation tasks and highly nuanced conversational reasoning. Developed by Ai2 under the Apache 2.0 license, Olmo 3 32B Think embodies the Olmo initiative’s commitment to openness, offering full transparency across weights, code and training methodology.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to allenai/olmo-3-32b-think.\",\"default\":\"allenai/olmo-3-32b-think\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"65536 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"allenai/olmo-3-32b-think\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"allenai/olmo-3-32b-think\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "AllenAI: Olmo 3 32B Think" - modelId: "allenai/olmo-3-32b-think" - vendor: "Allenai" - vendorSlug: "allenai" - modelSlug: "olmo-3-32b-think" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-11-21T20:51:16.304Z" - capabilities: ["chat","reasoning","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/alpindale/goliath-120b.md b/model-api-reference/llm-models/alpindale/goliath-120b.md deleted file mode 100644 index dab1576c..00000000 --- a/model-api-reference/llm-models/alpindale/goliath-120b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Goliath 120B API Reference" -description: "Goliath 120B API reference for SandBase. Use model alpindale/goliath-120b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/alpindale/goliath-120b" -apiReferenceJson: "{\"title\":\"Goliath 120B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"A large LLM created by combining two fine-tuned Llama 70B models into one 120B model. Combines Xwin and Euryale.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alpindale/goliath-120b.\",\"default\":\"alpindale/goliath-120b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 1024\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"6144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alpindale/goliath-120b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"alpindale/goliath-120b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Goliath 120B" - modelId: "alpindale/goliath-120b" - vendor: "Alpindale" - vendorSlug: "alpindale" - modelSlug: "goliath-120b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2023-11-10T00:00:00Z" - capabilities: ["chat","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/amazon/nova-2-lite-v1.md b/model-api-reference/llm-models/amazon/nova-2-lite-v1.md deleted file mode 100644 index c885983f..00000000 --- a/model-api-reference/llm-models/amazon/nova-2-lite-v1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Nova 2 Lite API Reference" -description: "Nova 2 Lite API reference for SandBase. Use model amazon/nova-2-lite-v1 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/amazon/nova-2-lite-v1" -apiReferenceJson: "{\"title\":\"Nova 2 Lite\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Nova 2 Lite is a fast, cost-effective reasoning model for everyday workloads that can process text, images, and videos to generate text.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to amazon/nova-2-lite-v1.\",\"default\":\"amazon/nova-2-lite-v1\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65535\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"amazon/nova-2-lite-v1\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"amazon/nova-2-lite-v1\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Nova 2 Lite" - modelId: "amazon/nova-2-lite-v1" - vendor: "Amazon" - vendorSlug: "amazon" - modelSlug: "nova-2-lite-v1" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-12-02T17:31:12Z" - capabilities: ["chat","vision","reasoning","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/amazon/nova-lite-v1.md b/model-api-reference/llm-models/amazon/nova-lite-v1.md deleted file mode 100644 index c2741d9a..00000000 --- a/model-api-reference/llm-models/amazon/nova-lite-v1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Nova Lite 1.0 API Reference" -description: "Nova Lite 1.0 API reference for SandBase. Use model amazon/nova-lite-v1 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/amazon/nova-lite-v1" -apiReferenceJson: "{\"title\":\"Nova Lite 1.0\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Amazon Nova Lite 1.0 is a very low-cost multimodal model from Amazon that focused on fast processing of image, video, and text inputs to generate text output. Amazon Nova Lite can handle real-time customer interactions, document analysis, and visual question-answering tasks with high accuracy.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to amazon/nova-lite-v1.\",\"default\":\"amazon/nova-lite-v1\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 5120\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"300000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"amazon/nova-lite-v1\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"amazon/nova-lite-v1\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Nova Lite 1.0" - modelId: "amazon/nova-lite-v1" - vendor: "Amazon" - vendorSlug: "amazon" - modelSlug: "nova-lite-v1" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-12-05T22:22:43.403Z" - capabilities: ["chat","vision","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/amazon/nova-micro-v1.md b/model-api-reference/llm-models/amazon/nova-micro-v1.md deleted file mode 100644 index 557a9d84..00000000 --- a/model-api-reference/llm-models/amazon/nova-micro-v1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Nova Micro 1.0 API Reference" -description: "Nova Micro 1.0 API reference for SandBase. Use model amazon/nova-micro-v1 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/amazon/nova-micro-v1" -apiReferenceJson: "{\"title\":\"Nova Micro 1.0\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Amazon Nova Micro 1.0 is a text-only model that delivers the lowest latency responses in the Amazon Nova family of models at a very low cost. With a context length of 128K tokens and optimized for speed and cost, Amazon Nova Micro excels at tasks such as text summarization, translation, content classification, interactive chat, and brainstorming. It has simple mathematical reasoning and coding abilities.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to amazon/nova-micro-v1.\",\"default\":\"amazon/nova-micro-v1\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 5120\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"amazon/nova-micro-v1\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"amazon/nova-micro-v1\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Nova Micro 1.0" - modelId: "amazon/nova-micro-v1" - vendor: "Amazon" - vendorSlug: "amazon" - modelSlug: "nova-micro-v1" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-12-05T22:20:37.903Z" - capabilities: ["chat","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/amazon/nova-premier-v1.md b/model-api-reference/llm-models/amazon/nova-premier-v1.md deleted file mode 100644 index dce51b2a..00000000 --- a/model-api-reference/llm-models/amazon/nova-premier-v1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Nova Premier 1.0 API Reference" -description: "Nova Premier 1.0 API reference for SandBase. Use model amazon/nova-premier-v1 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/amazon/nova-premier-v1" -apiReferenceJson: "{\"title\":\"Nova Premier 1.0\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Amazon Nova Premier is the most capable of Amazon’s multimodal models for complex reasoning tasks and for use as the best teacher for distilling custom models.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to amazon/nova-premier-v1.\",\"default\":\"amazon/nova-premier-v1\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"amazon/nova-premier-v1\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"amazon/nova-premier-v1\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Nova Premier 1.0" - modelId: "amazon/nova-premier-v1" - vendor: "Amazon" - vendorSlug: "amazon" - modelSlug: "nova-premier-v1" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-10-31T22:38:52.074Z" - capabilities: ["chat","vision","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/amazon/nova-pro-v1.md b/model-api-reference/llm-models/amazon/nova-pro-v1.md deleted file mode 100644 index 0cbe3cd2..00000000 --- a/model-api-reference/llm-models/amazon/nova-pro-v1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Nova Pro 1.0 API Reference" -description: "Nova Pro 1.0 API reference for SandBase. Use model amazon/nova-pro-v1 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/amazon/nova-pro-v1" -apiReferenceJson: "{\"title\":\"Nova Pro 1.0\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Amazon Nova Pro 1.0 is a capable multimodal model from Amazon focused on providing a combination of accuracy, speed, and cost for a wide range of tasks. As of December 2024, it achieves state-of-the-art performance on key benchmarks including visual question answering (TextVQA) and video understanding (VATEX).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to amazon/nova-pro-v1.\",\"default\":\"amazon/nova-pro-v1\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 5120\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"300000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"amazon/nova-pro-v1\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"amazon/nova-pro-v1\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Nova Pro 1.0" - modelId: "amazon/nova-pro-v1" - vendor: "Amazon" - vendorSlug: "amazon" - modelSlug: "nova-pro-v1" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-12-05T22:05:03.587Z" - capabilities: ["chat","vision","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/anthracite-org/magnum-v4-72b.md b/model-api-reference/llm-models/anthracite-org/magnum-v4-72b.md deleted file mode 100644 index 9bb30930..00000000 --- a/model-api-reference/llm-models/anthracite-org/magnum-v4-72b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Magnum v4 72B API Reference" -description: "Magnum v4 72B API reference for SandBase. Use model anthracite-org/magnum-v4-72b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/anthracite-org/magnum-v4-72b" -apiReferenceJson: "{\"title\":\"Magnum v4 72B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"This is a series of models designed to replicate the prose quality of the Claude 3 models, specifically Sonnet(https://openrouter.ai/anthropic/claude-3.5-sonnet) and Opus(https://openrouter.ai/anthropic/claude-3-opus).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to anthracite-org/magnum-v4-72b.\",\"default\":\"anthracite-org/magnum-v4-72b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 2048\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"16384 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"anthracite-org/magnum-v4-72b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"anthracite-org/magnum-v4-72b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Magnum v4 72B" - modelId: "anthracite-org/magnum-v4-72b" - vendor: "Anthracite-Org" - vendorSlug: "anthracite-org" - modelSlug: "magnum-v4-72b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-10-22T00:00:00Z" - capabilities: ["chat","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/anthropic/claude-3-haiku.md b/model-api-reference/llm-models/anthropic/claude-3-haiku.md deleted file mode 100644 index 87f77313..00000000 --- a/model-api-reference/llm-models/anthropic/claude-3-haiku.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Claude 3 Haiku API Reference" -description: "Claude 3 Haiku API reference for SandBase. Use model anthropic/claude-3-haiku with /v1/messages; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/anthropic/claude-3-haiku" -apiReferenceJson: "{\"title\":\"Claude 3 Haiku\",\"operation\":\"Anthropic Messages\",\"method\":\"POST\",\"path\":\"/v1/messages\",\"description\":\"Claude 3 Haiku is Anthropic's fastest and most compact model for near-instant responsiveness. Quick and accurate targeted performance.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to anthropic/claude-3-haiku.\",\"default\":\"anthropic/claude-3-haiku\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 4096\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"content\",\"type\":\"array\",\"required\":true,\"description\":\"Assistant content blocks.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique message identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the message.\"},{\"name\":\"role\",\"type\":\"string\",\"required\":true,\"description\":\"Message role returned by the assistant.\"},{\"name\":\"stop_reason\",\"type\":\"string\",\"required\":false,\"description\":\"Reason generation stopped.\"},{\"name\":\"type\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"200000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/messages \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"anthropic/claude-3-haiku\\\",\\n \\\"max_tokens\\\": 1024,\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"msg_abc123\\\",\\n \\\"type\\\": \\\"message\\\",\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"model\\\": \\\"anthropic/claude-3-haiku\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ],\\n \\\"stop_reason\\\": \\\"end_turn\\\"\\n}\"}}" -seo: - modelName: "Claude 3 Haiku" - modelId: "anthropic/claude-3-haiku" - vendor: "Anthropic" - vendorSlug: "anthropic" - modelSlug: "claude-3-haiku" - protocol: "Messages API" - endpoint: "/v1/messages" - publishedAt: "2024-03-13T00:00:00Z" - capabilities: ["chat","vision","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/anthropic/claude-3.5-haiku.md b/model-api-reference/llm-models/anthropic/claude-3.5-haiku.md deleted file mode 100644 index 6d392ce0..00000000 --- a/model-api-reference/llm-models/anthropic/claude-3.5-haiku.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Claude 3.5 Haiku API Reference" -description: "Claude 3.5 Haiku API reference for SandBase. Use model anthropic/claude-3.5-haiku with /v1/messages; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/anthropic/claude-3.5-haiku" -apiReferenceJson: "{\"title\":\"Claude 3.5 Haiku\",\"operation\":\"Anthropic Messages\",\"method\":\"POST\",\"path\":\"/v1/messages\",\"description\":\"Claude 3.5 Haiku features offers enhanced capabilities in speed, coding accuracy, and tool use. Engineered to excel in real-time applications, it delivers quick response times that are essential for dynamic tasks such as chat interactions and immediate coding suggestions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to anthropic/claude-3.5-haiku.\",\"default\":\"anthropic/claude-3.5-haiku\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 8192\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"content\",\"type\":\"array\",\"required\":true,\"description\":\"Assistant content blocks.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique message identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the message.\"},{\"name\":\"role\",\"type\":\"string\",\"required\":true,\"description\":\"Message role returned by the assistant.\"},{\"name\":\"stop_reason\",\"type\":\"string\",\"required\":false,\"description\":\"Reason generation stopped.\"},{\"name\":\"type\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"200000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/messages \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"anthropic/claude-3.5-haiku\\\",\\n \\\"max_tokens\\\": 1024,\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"msg_abc123\\\",\\n \\\"type\\\": \\\"message\\\",\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"model\\\": \\\"anthropic/claude-3.5-haiku\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ],\\n \\\"stop_reason\\\": \\\"end_turn\\\"\\n}\"}}" -seo: - modelName: "Claude 3.5 Haiku" - modelId: "anthropic/claude-3.5-haiku" - vendor: "Anthropic" - vendorSlug: "anthropic" - modelSlug: "claude-3.5-haiku" - protocol: "Messages API" - endpoint: "/v1/messages" - publishedAt: "2024-11-04T00:00:00Z" - capabilities: ["chat","vision","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/anthropic/claude-3.7-sonnet-thinking.md b/model-api-reference/llm-models/anthropic/claude-3.7-sonnet-thinking.md deleted file mode 100644 index 0e24e36e..00000000 --- a/model-api-reference/llm-models/anthropic/claude-3.7-sonnet-thinking.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Claude 3.7 Sonnet (thinking) API Reference" -description: "Claude 3.7 Sonnet (thinking) API reference for SandBase. Use model anthropic/claude-3.7-sonnet:thinking with /v1/messages; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/anthropic/claude-3.7-sonnet:thinking" -apiReferenceJson: "{\"title\":\"Claude 3.7 Sonnet (thinking)\",\"operation\":\"Anthropic Messages\",\"method\":\"POST\",\"path\":\"/v1/messages\",\"description\":\"Claude 3.7 Sonnet is an advanced large language model with improved reasoning, coding, and problem-solving capabilities. It introduces a hybrid reasoning approach, allowing users to choose between rapid responses and...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to anthropic/claude-3.7-sonnet:thinking.\",\"default\":\"anthropic/claude-3.7-sonnet:thinking\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 64000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"content\",\"type\":\"array\",\"required\":true,\"description\":\"Assistant content blocks.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique message identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the message.\"},{\"name\":\"role\",\"type\":\"string\",\"required\":true,\"description\":\"Message role returned by the assistant.\"},{\"name\":\"stop_reason\",\"type\":\"string\",\"required\":false,\"description\":\"Reason generation stopped.\"},{\"name\":\"type\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"200000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/messages \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"anthropic/claude-3.7-sonnet:thinking\\\",\\n \\\"max_tokens\\\": 1024,\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"msg_abc123\\\",\\n \\\"type\\\": \\\"message\\\",\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"model\\\": \\\"anthropic/claude-3.7-sonnet:thinking\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ],\\n \\\"stop_reason\\\": \\\"end_turn\\\"\\n}\"}}" -seo: - modelName: "Claude 3.7 Sonnet (thinking)" - modelId: "anthropic/claude-3.7-sonnet:thinking" - vendor: "Anthropic" - vendorSlug: "anthropic" - modelSlug: "claude-3.7-sonnet-thinking" - protocol: "Messages API" - endpoint: "/v1/messages" - publishedAt: "2025-02-24T00:00:00Z" - capabilities: ["chat","vision","reasoning","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/anthropic/claude-3.7-sonnet.md b/model-api-reference/llm-models/anthropic/claude-3.7-sonnet.md deleted file mode 100644 index 122a98d9..00000000 --- a/model-api-reference/llm-models/anthropic/claude-3.7-sonnet.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Claude 3.7 Sonnet API Reference" -description: "Claude 3.7 Sonnet API reference for SandBase. Use model anthropic/claude-3.7-sonnet with /v1/messages; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/anthropic/claude-3.7-sonnet" -apiReferenceJson: "{\"title\":\"Claude 3.7 Sonnet\",\"operation\":\"Anthropic Messages\",\"method\":\"POST\",\"path\":\"/v1/messages\",\"description\":\"Claude 3.7 Sonnet is an advanced large language model with improved reasoning, coding, and problem-solving capabilities. It introduces a hybrid reasoning approach, allowing users to choose between rapid responses and extended, step-by-step processing for complex tasks. The model demonstrates notable improvements in coding, particularly in front-end development and full-stack updates, and excels in agentic workflows, where it can autonomously navigate multi-step processes.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to anthropic/claude-3.7-sonnet.\",\"default\":\"anthropic/claude-3.7-sonnet\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 64000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"content\",\"type\":\"array\",\"required\":true,\"description\":\"Assistant content blocks.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique message identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the message.\"},{\"name\":\"role\",\"type\":\"string\",\"required\":true,\"description\":\"Message role returned by the assistant.\"},{\"name\":\"stop_reason\",\"type\":\"string\",\"required\":false,\"description\":\"Reason generation stopped.\"},{\"name\":\"type\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"200000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/messages \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"anthropic/claude-3.7-sonnet\\\",\\n \\\"max_tokens\\\": 1024,\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"msg_abc123\\\",\\n \\\"type\\\": \\\"message\\\",\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"model\\\": \\\"anthropic/claude-3.7-sonnet\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ],\\n \\\"stop_reason\\\": \\\"end_turn\\\"\\n}\"}}" -seo: - modelName: "Claude 3.7 Sonnet" - modelId: "anthropic/claude-3.7-sonnet" - vendor: "Anthropic" - vendorSlug: "anthropic" - modelSlug: "claude-3.7-sonnet" - protocol: "Messages API" - endpoint: "/v1/messages" - publishedAt: "2025-02-24T18:35:10Z" - capabilities: ["chat","vision","reasoning","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/anthropic/claude-fable-5.5.md b/model-api-reference/llm-models/anthropic/claude-fable-5.5.md new file mode 100644 index 00000000..b82319ac --- /dev/null +++ b/model-api-reference/llm-models/anthropic/claude-fable-5.5.md @@ -0,0 +1,21 @@ +--- +title: "Claude Fable 5.5 API Reference" +description: "Claude Fable 5.5 API reference for SandBase. Use model anthropic/claude-fable-5.5 with /v1/messages; see request and response examples." +aside: false +outline: false +apiReferenceKey: "llm/anthropic/claude-fable-5.5" +apiReferenceJson: "{\"title\":\"Claude Fable 5.5\",\"operation\":\"Anthropic Messages\",\"method\":\"POST\",\"path\":\"/v1/messages\",\"description\":\"Claude Fable 5.5 is the expected successor to Claude Fable 5.1, Anthropic's tier above Opus for repository-scale coding, long-running agents and high-stakes review. Anthropic has not officially released it yet; specifications, pricing and API availability will be confirmed at launch.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to anthropic/claude-fable-5.5.\",\"default\":\"anthropic/claude-fable-5.5\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"content\",\"type\":\"array\",\"required\":true,\"description\":\"Assistant content blocks.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique message identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the message.\"},{\"name\":\"role\",\"type\":\"string\",\"required\":true,\"description\":\"Message role returned by the assistant.\"},{\"name\":\"stop_reason\",\"type\":\"string\",\"required\":false,\"description\":\"Reason generation stopped.\"},{\"name\":\"type\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling, coming-soon\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/messages \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"anthropic/claude-fable-5.5\\\",\\n \\\"max_tokens\\\": 1024,\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"msg_abc123\\\",\\n \\\"type\\\": \\\"message\\\",\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"model\\\": \\\"anthropic/claude-fable-5.5\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ],\\n \\\"stop_reason\\\": \\\"end_turn\\\"\\n}\"}}" +seo: + modelName: "Claude Fable 5.5" + modelId: "anthropic/claude-fable-5.5" + vendor: "Anthropic" + vendorSlug: "anthropic" + modelSlug: "claude-fable-5.5" + protocol: "Messages API" + endpoint: "/v1/messages" + publishedAt: "" + capabilities: ["chat","vision","reasoning","structured_output","function_calling","coming-soon"] + category: "LLM Models" +--- + + diff --git a/model-api-reference/llm-models/anthropic/claude-haiku-5.5.md b/model-api-reference/llm-models/anthropic/claude-haiku-5.5.md new file mode 100644 index 00000000..15a1b90e --- /dev/null +++ b/model-api-reference/llm-models/anthropic/claude-haiku-5.5.md @@ -0,0 +1,21 @@ +--- +title: "Claude Haiku 5.5 API Reference" +description: "Claude Haiku 5.5 API reference for SandBase. Use model anthropic/claude-haiku-5.5 with /v1/messages; see request and response examples." +aside: false +outline: false +apiReferenceKey: "llm/anthropic/claude-haiku-5.5" +apiReferenceJson: "{\"title\":\"Claude Haiku 5.5\",\"operation\":\"Anthropic Messages\",\"method\":\"POST\",\"path\":\"/v1/messages\",\"description\":\"Claude Haiku 5.5 is Anthropic's small, fast model for high-volume, cost-sensitive work such as summarization, classification, compaction, subagents, and browser use. It succeeds Claude Haiku 4.5 with stronger coding, computer use, and knowledge work, adds an adjustable effort setting, and accepts text, image, and file input with a 1M-token context window.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to anthropic/claude-haiku-5.5.\",\"default\":\"anthropic/claude-haiku-5.5\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"content\",\"type\":\"array\",\"required\":true,\"description\":\"Assistant content blocks.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique message identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the message.\"},{\"name\":\"role\",\"type\":\"string\",\"required\":true,\"description\":\"Message role returned by the assistant.\"},{\"name\":\"stop_reason\",\"type\":\"string\",\"required\":false,\"description\":\"Reason generation stopped.\"},{\"name\":\"type\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/messages \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"anthropic/claude-haiku-5.5\\\",\\n \\\"max_tokens\\\": 1024,\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"msg_abc123\\\",\\n \\\"type\\\": \\\"message\\\",\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"model\\\": \\\"anthropic/claude-haiku-5.5\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ],\\n \\\"stop_reason\\\": \\\"end_turn\\\"\\n}\"}}" +seo: + modelName: "Claude Haiku 5.5" + modelId: "anthropic/claude-haiku-5.5" + vendor: "Anthropic" + vendorSlug: "anthropic" + modelSlug: "claude-haiku-5.5" + protocol: "Messages API" + endpoint: "/v1/messages" + publishedAt: "2026-10-07T18:31:23Z" + capabilities: ["chat","vision","reasoning","structured_output","function_calling"] + category: "LLM Models" +--- + + diff --git a/model-api-reference/llm-models/anthropic/claude-opus-4.6-fast.md b/model-api-reference/llm-models/anthropic/claude-opus-4.6-fast.md deleted file mode 100644 index 6c74f81f..00000000 --- a/model-api-reference/llm-models/anthropic/claude-opus-4.6-fast.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Claude Opus 4.6 (Fast) API Reference" -description: "Claude Opus 4.6 (Fast) API reference for SandBase. Use model anthropic/claude-opus-4.6-fast with /v1/messages; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/anthropic/claude-opus-4.6-fast" -apiReferenceJson: "{\"title\":\"Claude Opus 4.6 (Fast)\",\"operation\":\"Anthropic Messages\",\"method\":\"POST\",\"path\":\"/v1/messages\",\"description\":\"Fast-mode variant of Opus 4.6 - identical capabilities with higher output speed at premium 6x pricing.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to anthropic/claude-opus-4.6-fast.\",\"default\":\"anthropic/claude-opus-4.6-fast\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"content\",\"type\":\"array\",\"required\":true,\"description\":\"Assistant content blocks.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique message identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the message.\"},{\"name\":\"role\",\"type\":\"string\",\"required\":true,\"description\":\"Message role returned by the assistant.\"},{\"name\":\"stop_reason\",\"type\":\"string\",\"required\":false,\"description\":\"Reason generation stopped.\"},{\"name\":\"type\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/messages \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"anthropic/claude-opus-4.6-fast\\\",\\n \\\"max_tokens\\\": 1024,\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"msg_abc123\\\",\\n \\\"type\\\": \\\"message\\\",\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"model\\\": \\\"anthropic/claude-opus-4.6-fast\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ],\\n \\\"stop_reason\\\": \\\"end_turn\\\"\\n}\"}}" -seo: - modelName: "Claude Opus 4.6 (Fast)" - modelId: "anthropic/claude-opus-4.6-fast" - vendor: "Anthropic" - vendorSlug: "anthropic" - modelSlug: "claude-opus-4.6-fast" - protocol: "Messages API" - endpoint: "/v1/messages" - publishedAt: "2026-04-07T20:07:52.818Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/anthropic/claude-opus-4.7-fast.md b/model-api-reference/llm-models/anthropic/claude-opus-4.7-fast.md deleted file mode 100644 index e9a2079a..00000000 --- a/model-api-reference/llm-models/anthropic/claude-opus-4.7-fast.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Claude Opus 4.7 (Fast) API Reference" -description: "Claude Opus 4.7 (Fast) API reference for SandBase. Use model anthropic/claude-opus-4.7-fast with /v1/messages; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/anthropic/claude-opus-4.7-fast" -apiReferenceJson: "{\"title\":\"Claude Opus 4.7 (Fast)\",\"operation\":\"Anthropic Messages\",\"method\":\"POST\",\"path\":\"/v1/messages\",\"description\":\"Fast-mode variant of Opus 4.7 - identical capabilities with higher output speed at premium 6x pricing.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to anthropic/claude-opus-4.7-fast.\",\"default\":\"anthropic/claude-opus-4.7-fast\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"content\",\"type\":\"array\",\"required\":true,\"description\":\"Assistant content blocks.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique message identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the message.\"},{\"name\":\"role\",\"type\":\"string\",\"required\":true,\"description\":\"Message role returned by the assistant.\"},{\"name\":\"stop_reason\",\"type\":\"string\",\"required\":false,\"description\":\"Reason generation stopped.\"},{\"name\":\"type\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/messages \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"anthropic/claude-opus-4.7-fast\\\",\\n \\\"max_tokens\\\": 1024,\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"msg_abc123\\\",\\n \\\"type\\\": \\\"message\\\",\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"model\\\": \\\"anthropic/claude-opus-4.7-fast\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ],\\n \\\"stop_reason\\\": \\\"end_turn\\\"\\n}\"}}" -seo: - modelName: "Claude Opus 4.7 (Fast)" - modelId: "anthropic/claude-opus-4.7-fast" - vendor: "Anthropic" - vendorSlug: "anthropic" - modelSlug: "claude-opus-4.7-fast" - protocol: "Messages API" - endpoint: "/v1/messages" - publishedAt: "2026-05-12T19:10:11.422Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/anthropic/claude-opus-4.8-fast.md b/model-api-reference/llm-models/anthropic/claude-opus-4.8-fast.md deleted file mode 100644 index b76d9526..00000000 --- a/model-api-reference/llm-models/anthropic/claude-opus-4.8-fast.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Claude Opus 4.8 (Fast) API Reference" -description: "Claude Opus 4.8 (Fast) API reference for SandBase. Use model anthropic/claude-opus-4.8-fast with /v1/messages; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/anthropic/claude-opus-4.8-fast" -apiReferenceJson: "{\"title\":\"Claude Opus 4.8 (Fast)\",\"operation\":\"Anthropic Messages\",\"method\":\"POST\",\"path\":\"/v1/messages\",\"description\":\"Fast-mode variant of Opus 4.8 - identical capabilities with higher output speed at 2x pricing relative to regular Opus 4.8.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to anthropic/claude-opus-4.8-fast.\",\"default\":\"anthropic/claude-opus-4.8-fast\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"content\",\"type\":\"array\",\"required\":true,\"description\":\"Assistant content blocks.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique message identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the message.\"},{\"name\":\"role\",\"type\":\"string\",\"required\":true,\"description\":\"Message role returned by the assistant.\"},{\"name\":\"stop_reason\",\"type\":\"string\",\"required\":false,\"description\":\"Reason generation stopped.\"},{\"name\":\"type\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/messages \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"anthropic/claude-opus-4.8-fast\\\",\\n \\\"max_tokens\\\": 1024,\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"msg_abc123\\\",\\n \\\"type\\\": \\\"message\\\",\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"model\\\": \\\"anthropic/claude-opus-4.8-fast\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ],\\n \\\"stop_reason\\\": \\\"end_turn\\\"\\n}\"}}" -seo: - modelName: "Claude Opus 4.8 (Fast)" - modelId: "anthropic/claude-opus-4.8-fast" - vendor: "Anthropic" - vendorSlug: "anthropic" - modelSlug: "claude-opus-4.8-fast" - protocol: "Messages API" - endpoint: "/v1/messages" - publishedAt: "2026-05-27T20:28:23.711Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/anthropic/claude-opus-4.md b/model-api-reference/llm-models/anthropic/claude-opus-4.md deleted file mode 100644 index b2fbb27a..00000000 --- a/model-api-reference/llm-models/anthropic/claude-opus-4.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Claude Opus 4 API Reference" -description: "Claude Opus 4 API reference for SandBase. Use model anthropic/claude-opus-4 with /v1/messages; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/anthropic/claude-opus-4" -apiReferenceJson: "{\"title\":\"Claude Opus 4\",\"operation\":\"Anthropic Messages\",\"method\":\"POST\",\"path\":\"/v1/messages\",\"description\":\"Claude Opus 4 is benchmarked as the world’s best coding model, at time of release, bringing sustained performance on complex, long-running tasks and agent workflows. It sets new benchmarks in software engineering, achieving leading results on SWE-bench (72.5%) and Terminal-bench (43.2%). Opus 4 supports extended, agentic workflows, handling thousands of task steps continuously for hours without degradation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to anthropic/claude-opus-4.\",\"default\":\"anthropic/claude-opus-4\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"content\",\"type\":\"array\",\"required\":true,\"description\":\"Assistant content blocks.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique message identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the message.\"},{\"name\":\"role\",\"type\":\"string\",\"required\":true,\"description\":\"Message role returned by the assistant.\"},{\"name\":\"stop_reason\",\"type\":\"string\",\"required\":false,\"description\":\"Reason generation stopped.\"},{\"name\":\"type\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"200000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/messages \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"anthropic/claude-opus-4\\\",\\n \\\"max_tokens\\\": 1024,\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"msg_abc123\\\",\\n \\\"type\\\": \\\"message\\\",\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"model\\\": \\\"anthropic/claude-opus-4\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ],\\n \\\"stop_reason\\\": \\\"end_turn\\\"\\n}\"}}" -seo: - modelName: "Claude Opus 4" - modelId: "anthropic/claude-opus-4" - vendor: "Anthropic" - vendorSlug: "anthropic" - modelSlug: "claude-opus-4" - protocol: "Messages API" - endpoint: "/v1/messages" - publishedAt: "2025-05-22T16:27:25.029Z" - capabilities: ["chat","vision","reasoning","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/anthropic/claude-opus-5.5.md b/model-api-reference/llm-models/anthropic/claude-opus-5.5.md new file mode 100644 index 00000000..2e5e8c95 --- /dev/null +++ b/model-api-reference/llm-models/anthropic/claude-opus-5.5.md @@ -0,0 +1,21 @@ +--- +title: "Claude Opus 5.5 API Reference" +description: "Claude Opus 5.5 API reference for SandBase. Use model anthropic/claude-opus-5.5 with /v1/messages; see request and response examples." +aside: false +outline: false +apiReferenceKey: "llm/anthropic/claude-opus-5.5" +apiReferenceJson: "{\"title\":\"Claude Opus 5.5\",\"operation\":\"Anthropic Messages\",\"method\":\"POST\",\"path\":\"/v1/messages\",\"description\":\"Claude Opus 5.5 is the most powerful model in the Claude 5 family from Anthropic. It excels at complex reasoning, analysis, and creative tasks with superior accuracy and nuance. It supports text, image, and file inputs with text output, reasoning support and a 1M-token context window.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to anthropic/claude-opus-5.5.\",\"default\":\"anthropic/claude-opus-5.5\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"content\",\"type\":\"array\",\"required\":true,\"description\":\"Assistant content blocks.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique message identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the message.\"},{\"name\":\"role\",\"type\":\"string\",\"required\":true,\"description\":\"Message role returned by the assistant.\"},{\"name\":\"stop_reason\",\"type\":\"string\",\"required\":false,\"description\":\"Reason generation stopped.\"},{\"name\":\"type\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/messages \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"anthropic/claude-opus-5.5\\\",\\n \\\"max_tokens\\\": 1024,\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"msg_abc123\\\",\\n \\\"type\\\": \\\"message\\\",\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"model\\\": \\\"anthropic/claude-opus-5.5\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ],\\n \\\"stop_reason\\\": \\\"end_turn\\\"\\n}\"}}" +seo: + modelName: "Claude Opus 5.5" + modelId: "anthropic/claude-opus-5.5" + vendor: "Anthropic" + vendorSlug: "anthropic" + modelSlug: "claude-opus-5.5" + protocol: "Messages API" + endpoint: "/v1/messages" + publishedAt: "2026-09-22T16:32:12Z" + capabilities: ["chat","vision","reasoning","structured_output","function_calling"] + category: "LLM Models" +--- + + diff --git a/model-api-reference/llm-models/anthropic/claude-sonnet-4.5.md b/model-api-reference/llm-models/anthropic/claude-sonnet-4.5.md index 19c0ffdd..50ebaaee 100644 --- a/model-api-reference/llm-models/anthropic/claude-sonnet-4.5.md +++ b/model-api-reference/llm-models/anthropic/claude-sonnet-4.5.md @@ -4,7 +4,7 @@ description: "Claude Sonnet 4.5 API reference for SandBase. Use model anthropic/ aside: false outline: false apiReferenceKey: "llm/anthropic/claude-sonnet-4.5" -apiReferenceJson: "{\"title\":\"Claude Sonnet 4.5\",\"operation\":\"Anthropic Messages\",\"method\":\"POST\",\"path\":\"/v1/messages\",\"description\":\"Claude Sonnet 4.5 is Anthropic’s most advanced Sonnet model to date, optimized for real-world agents and coding workflows. It delivers state-of-the-art performance on coding benchmarks such as SWE-bench Verified, with improvements across system design, code security, and specification adherence. The model is designed for extended autonomous operation, maintaining task continuity across sessions and providing fact-based progress tracking.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to anthropic/claude-sonnet-4.5.\",\"default\":\"anthropic/claude-sonnet-4.5\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 64000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"content\",\"type\":\"array\",\"required\":true,\"description\":\"Assistant content blocks.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique message identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the message.\"},{\"name\":\"role\",\"type\":\"string\",\"required\":true,\"description\":\"Message role returned by the assistant.\"},{\"name\":\"stop_reason\",\"type\":\"string\",\"required\":false,\"description\":\"Reason generation stopped.\"},{\"name\":\"type\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/messages \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"anthropic/claude-sonnet-4.5\\\",\\n \\\"max_tokens\\\": 1024,\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"msg_abc123\\\",\\n \\\"type\\\": \\\"message\\\",\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"model\\\": \\\"anthropic/claude-sonnet-4.5\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ],\\n \\\"stop_reason\\\": \\\"end_turn\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Claude Sonnet 4.5\",\"operation\":\"Anthropic Messages\",\"method\":\"POST\",\"path\":\"/v1/messages\",\"description\":\"Claude Sonnet 4.5 is Anthropic’s most advanced Sonnet model to date, optimized for real-world agents and coding workflows. It delivers state-of-the-art performance on coding benchmarks such as SWE-bench Verified, with improvements across system design, code security, and specification adherence. The model is designed for extended autonomous operation, maintaining task continuity across sessions and providing fact-based progress tracking.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to anthropic/claude-sonnet-4.5.\",\"default\":\"anthropic/claude-sonnet-4.5\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 64000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"content\",\"type\":\"array\",\"required\":true,\"description\":\"Assistant content blocks.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique message identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the message.\"},{\"name\":\"role\",\"type\":\"string\",\"required\":true,\"description\":\"Message role returned by the assistant.\"},{\"name\":\"stop_reason\",\"type\":\"string\",\"required\":false,\"description\":\"Reason generation stopped.\"},{\"name\":\"type\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"200000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/messages \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"anthropic/claude-sonnet-4.5\\\",\\n \\\"max_tokens\\\": 1024,\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"msg_abc123\\\",\\n \\\"type\\\": \\\"message\\\",\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"model\\\": \\\"anthropic/claude-sonnet-4.5\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ],\\n \\\"stop_reason\\\": \\\"end_turn\\\"\\n}\"}}" seo: modelName: "Claude Sonnet 4.5" modelId: "anthropic/claude-sonnet-4.5" diff --git a/model-api-reference/llm-models/anthropic/claude-sonnet-4.md b/model-api-reference/llm-models/anthropic/claude-sonnet-4.md deleted file mode 100644 index 358aafc6..00000000 --- a/model-api-reference/llm-models/anthropic/claude-sonnet-4.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Claude Sonnet 4 API Reference" -description: "Claude Sonnet 4 API reference for SandBase. Use model anthropic/claude-sonnet-4 with /v1/messages; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/anthropic/claude-sonnet-4" -apiReferenceJson: "{\"title\":\"Claude Sonnet 4\",\"operation\":\"Anthropic Messages\",\"method\":\"POST\",\"path\":\"/v1/messages\",\"description\":\"Claude Sonnet 4 significantly enhances the capabilities of its predecessor, Sonnet 3.7, excelling in both coding and reasoning tasks with improved precision and controllability. Achieving state-of-the-art performance on SWE-bench (72.7%), Sonnet 4 balances capability and computational efficiency, making it suitable for a broad range of applications from routine coding tasks to complex software development projects. Key enhancements include improved autonomous codebase navigation, reduced error rates in agent-driven workflows, and increased reliability in following intricate instructions. Sonnet 4 is optimized for practical everyday use, providing advanced reasoning capabilities while maintaining efficiency and responsiveness in diverse internal and external scenarios.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to anthropic/claude-sonnet-4.\",\"default\":\"anthropic/claude-sonnet-4\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 64000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"content\",\"type\":\"array\",\"required\":true,\"description\":\"Assistant content blocks.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique message identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the message.\"},{\"name\":\"role\",\"type\":\"string\",\"required\":true,\"description\":\"Message role returned by the assistant.\"},{\"name\":\"stop_reason\",\"type\":\"string\",\"required\":false,\"description\":\"Reason generation stopped.\"},{\"name\":\"type\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/messages \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"anthropic/claude-sonnet-4\\\",\\n \\\"max_tokens\\\": 1024,\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"msg_abc123\\\",\\n \\\"type\\\": \\\"message\\\",\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"model\\\": \\\"anthropic/claude-sonnet-4\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ],\\n \\\"stop_reason\\\": \\\"end_turn\\\"\\n}\"}}" -seo: - modelName: "Claude Sonnet 4" - modelId: "anthropic/claude-sonnet-4" - vendor: "Anthropic" - vendorSlug: "anthropic" - modelSlug: "claude-sonnet-4" - protocol: "Messages API" - endpoint: "/v1/messages" - publishedAt: "2025-05-22T16:12:51.381Z" - capabilities: ["chat","vision","reasoning","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/anthropic/claude-sonnet-5.5.md b/model-api-reference/llm-models/anthropic/claude-sonnet-5.5.md new file mode 100644 index 00000000..faedd3b3 --- /dev/null +++ b/model-api-reference/llm-models/anthropic/claude-sonnet-5.5.md @@ -0,0 +1,21 @@ +--- +title: "Claude Sonnet 5.5 API Reference" +description: "Claude Sonnet 5.5 API reference for SandBase. Use model anthropic/claude-sonnet-5.5 with /v1/messages; see request and response examples." +aside: false +outline: false +apiReferenceKey: "llm/anthropic/claude-sonnet-5.5" +apiReferenceJson: "{\"title\":\"Claude Sonnet 5.5\",\"operation\":\"Anthropic Messages\",\"method\":\"POST\",\"path\":\"/v1/messages\",\"description\":\"Claude Sonnet 5.5 is Anthropic's Sonnet-class model for well-scoped everyday work, succeeding Claude Sonnet 5 as a direct upgrade. It is especially strong at building features and fixing bugs, with a 1M-token context window and text, image, and file input.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to anthropic/claude-sonnet-5.5.\",\"default\":\"anthropic/claude-sonnet-5.5\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"content\",\"type\":\"array\",\"required\":true,\"description\":\"Assistant content blocks.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique message identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the message.\"},{\"name\":\"role\",\"type\":\"string\",\"required\":true,\"description\":\"Message role returned by the assistant.\"},{\"name\":\"stop_reason\",\"type\":\"string\",\"required\":false,\"description\":\"Reason generation stopped.\"},{\"name\":\"type\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/messages \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"anthropic/claude-sonnet-5.5\\\",\\n \\\"max_tokens\\\": 1024,\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"msg_abc123\\\",\\n \\\"type\\\": \\\"message\\\",\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"model\\\": \\\"anthropic/claude-sonnet-5.5\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ],\\n \\\"stop_reason\\\": \\\"end_turn\\\"\\n}\"}}" +seo: + modelName: "Claude Sonnet 5.5" + modelId: "anthropic/claude-sonnet-5.5" + vendor: "Anthropic" + vendorSlug: "anthropic" + modelSlug: "claude-sonnet-5.5" + protocol: "Messages API" + endpoint: "/v1/messages" + publishedAt: "2026-09-28T18:04:46Z" + capabilities: ["chat","vision","reasoning","structured_output","function_calling"] + category: "LLM Models" +--- + + diff --git a/model-api-reference/llm-models/arcee-ai/coder-large.md b/model-api-reference/llm-models/arcee-ai/coder-large.md deleted file mode 100644 index 5543f26d..00000000 --- a/model-api-reference/llm-models/arcee-ai/coder-large.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Arcee AI: Coder Large API Reference" -description: "Arcee AI: Coder Large API reference for SandBase. Use model arcee-ai/coder-large with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/arcee-ai/coder-large" -apiReferenceJson: "{\"title\":\"Arcee AI: Coder Large\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Coder‑Large is a 32 B‑parameter offspring of Qwen 2.5‑Instruct that has been further trained on permissively‑licensed GitHub, CodeSearchNet and synthetic bug‑fix corpora. It supports a 32k context window, enabling multi‑file refactoring or long diff review in a single call, and understands 30‑plus programming languages with special attention to TypeScript, Go and Terraform. Internal benchmarks show 5–8 pt gains over CodeLlama‑34 B‑Python on HumanEval and competitive BugFix scores thanks to a reinforcement pass that rewards compilable output. The model emits structured explanations alongside code blocks by default, making it suitable for educational tooling as well as production copilot scenarios. Cost‑wise, Together AI prices it well below proprietary incumbents, so teams can scale interactive coding without runaway spend.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to arcee-ai/coder-large.\",\"default\":\"arcee-ai/coder-large\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"32768 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"arcee-ai/coder-large\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"arcee-ai/coder-large\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Arcee AI: Coder Large" - modelId: "arcee-ai/coder-large" - vendor: "Arcee-Ai" - vendorSlug: "arcee-ai" - modelSlug: "coder-large" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-05-05T20:57:43.438Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/arcee-ai/maestro-reasoning.md b/model-api-reference/llm-models/arcee-ai/maestro-reasoning.md deleted file mode 100644 index 1ddb26c7..00000000 --- a/model-api-reference/llm-models/arcee-ai/maestro-reasoning.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Arcee AI: Maestro Reasoning API Reference" -description: "Arcee AI: Maestro Reasoning API reference for SandBase. Use model arcee-ai/maestro-reasoning with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/arcee-ai/maestro-reasoning" -apiReferenceJson: "{\"title\":\"Arcee AI: Maestro Reasoning\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Maestro Reasoning is Arcee's flagship analysis model: a 32 B‑parameter derivative of Qwen 2.5‑32 B tuned with DPO and chain‑of‑thought RL for step‑by‑step logic. Compared to the earlier 7 B preview, the production 32 B release widens the context window to 128 k tokens and doubles pass‑rate on MATH and GSM‑8K, while also lifting code completion accuracy. Its instruction style encourages structured \\\"thought → answer\\\" traces that can be parsed or hidden according to user preference. That transparency pairs well with audit‑focused industries like finance or healthcare where seeing the reasoning path matters. In Arcee Conductor, Maestro is automatically selected for complex, multi‑constraint queries that smaller SLMs bounce.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to arcee-ai/maestro-reasoning.\",\"default\":\"arcee-ai/maestro-reasoning\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"arcee-ai/maestro-reasoning\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"arcee-ai/maestro-reasoning\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Arcee AI: Maestro Reasoning" - modelId: "arcee-ai/maestro-reasoning" - vendor: "Arcee-Ai" - vendorSlug: "arcee-ai" - modelSlug: "maestro-reasoning" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-05-05T21:41:09.235Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/arcee-ai/spotlight.md b/model-api-reference/llm-models/arcee-ai/spotlight.md deleted file mode 100644 index f2040788..00000000 --- a/model-api-reference/llm-models/arcee-ai/spotlight.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Arcee AI: Spotlight API Reference" -description: "Arcee AI: Spotlight API reference for SandBase. Use model arcee-ai/spotlight with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/arcee-ai/spotlight" -apiReferenceJson: "{\"title\":\"Arcee AI: Spotlight\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Spotlight is a 7‑billion‑parameter vision‑language model derived from Qwen 2.5‑VL and fine‑tuned by Arcee AI for tight image‑text grounding tasks. It offers a 32 k‑token context window, enabling rich multimodal conversations that combine lengthy documents with one or more images. Training emphasized fast inference on consumer GPUs while retaining strong captioning, visual‐question‑answering, and diagram‑analysis accuracy. As a result, Spotlight slots neatly into agent workflows where screenshots, charts or UI mock‑ups need to be interpreted on the fly. Early benchmarks show it matching or out‑scoring larger VLMs such as LLaVA‑1.6 13 B on popular VQA and POPE alignment tests.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to arcee-ai/spotlight.\",\"default\":\"arcee-ai/spotlight\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65537\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"arcee-ai/spotlight\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"arcee-ai/spotlight\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Arcee AI: Spotlight" - modelId: "arcee-ai/spotlight" - vendor: "Arcee-Ai" - vendorSlug: "arcee-ai" - modelSlug: "spotlight" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-05-05T21:45:52.249Z" - capabilities: ["chat","vision"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/arcee-ai/trinity-large-preview.md b/model-api-reference/llm-models/arcee-ai/trinity-large-preview.md deleted file mode 100644 index 710db5a2..00000000 --- a/model-api-reference/llm-models/arcee-ai/trinity-large-preview.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Arcee AI: Trinity Large Preview API Reference" -description: "Arcee AI: Trinity Large Preview API reference for SandBase. Use model arcee-ai/trinity-large-preview with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/arcee-ai/trinity-large-preview" -apiReferenceJson: "{\"title\":\"Arcee AI: Trinity Large Preview\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Trinity-Large-Preview is a frontier-scale open-weight language model from Arcee, built as a 400B-parameter sparse Mixture-of-Experts with 13B active parameters per token using 4-of-256 expert routing.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to arcee-ai/trinity-large-preview.\",\"default\":\"arcee-ai/trinity-large-preview\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"arcee-ai/trinity-large-preview\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"arcee-ai/trinity-large-preview\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Arcee AI: Trinity Large Preview" - modelId: "arcee-ai/trinity-large-preview" - vendor: "Arcee-Ai" - vendorSlug: "arcee-ai" - modelSlug: "trinity-large-preview" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-01-27T22:24:30Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/arcee-ai/trinity-large-thinking.md b/model-api-reference/llm-models/arcee-ai/trinity-large-thinking.md deleted file mode 100644 index 470b5e12..00000000 --- a/model-api-reference/llm-models/arcee-ai/trinity-large-thinking.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Arcee AI: Trinity Large Thinking API Reference" -description: "Arcee AI: Trinity Large Thinking API reference for SandBase. Use model arcee-ai/trinity-large-thinking with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/arcee-ai/trinity-large-thinking" -apiReferenceJson: "{\"title\":\"Arcee AI: Trinity Large Thinking\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Trinity Large Thinking is a powerful open source reasoning model from the team at Arcee AI. It shows strong performance in PinchBench, agentic workloads, and reasoning tasks. Launch video: https://youtu.be/Gc82AXLa0Rg?si=4RLn6WBz33qT--B7\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to arcee-ai/trinity-large-thinking.\",\"default\":\"arcee-ai/trinity-large-thinking\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 262144\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"arcee-ai/trinity-large-thinking\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"arcee-ai/trinity-large-thinking\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Arcee AI: Trinity Large Thinking" - modelId: "arcee-ai/trinity-large-thinking" - vendor: "Arcee-Ai" - vendorSlug: "arcee-ai" - modelSlug: "trinity-large-thinking" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-04-01T15:45:18.036Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/arcee-ai/trinity-mini.md b/model-api-reference/llm-models/arcee-ai/trinity-mini.md deleted file mode 100644 index dfcad4e4..00000000 --- a/model-api-reference/llm-models/arcee-ai/trinity-mini.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Arcee AI: Trinity Mini API Reference" -description: "Arcee AI: Trinity Mini API reference for SandBase. Use model arcee-ai/trinity-mini with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/arcee-ai/trinity-mini" -apiReferenceJson: "{\"title\":\"Arcee AI: Trinity Mini\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Trinity Mini is a 26B-parameter (3B active) sparse mixture-of-experts language model featuring 128 experts with 8 active per token. Engineered for efficient reasoning over long contexts (131k) with robust function calling and multi-step agent workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to arcee-ai/trinity-mini.\",\"default\":\"arcee-ai/trinity-mini\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"arcee-ai/trinity-mini\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"arcee-ai/trinity-mini\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Arcee AI: Trinity Mini" - modelId: "arcee-ai/trinity-mini" - vendor: "Arcee-Ai" - vendorSlug: "arcee-ai" - modelSlug: "trinity-mini" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-12-01T15:08:40Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/arcee-ai/virtuoso-large.md b/model-api-reference/llm-models/arcee-ai/virtuoso-large.md deleted file mode 100644 index d810724f..00000000 --- a/model-api-reference/llm-models/arcee-ai/virtuoso-large.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Arcee AI: Virtuoso Large API Reference" -description: "Arcee AI: Virtuoso Large API reference for SandBase. Use model arcee-ai/virtuoso-large with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/arcee-ai/virtuoso-large" -apiReferenceJson: "{\"title\":\"Arcee AI: Virtuoso Large\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Virtuoso‑Large is Arcee's top‑tier general‑purpose LLM at 72 B parameters, tuned to tackle cross‑domain reasoning, creative writing and enterprise QA. Unlike many 70 B peers, it retains the 128 k context inherited from Qwen 2.5, letting it ingest books, codebases or financial filings wholesale. Training blended DeepSeek R1 distillation, multi‑epoch supervised fine‑tuning and a final DPO/RLHF alignment stage, yielding strong performance on BIG‑Bench‑Hard, GSM‑8K and long‑context Needle‑In‑Haystack tests. Enterprises use Virtuoso‑Large as the \\\"fallback\\\" brain in Conductor pipelines when other SLMs flag low confidence. Despite its size, aggressive KV‑cache optimizations keep first‑token latency in the low‑second range on 8× H100 nodes, making it a practical production‑grade powerhouse.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to arcee-ai/virtuoso-large.\",\"default\":\"arcee-ai/virtuoso-large\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 64000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"arcee-ai/virtuoso-large\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"arcee-ai/virtuoso-large\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Arcee AI: Virtuoso Large" - modelId: "arcee-ai/virtuoso-large" - vendor: "Arcee-Ai" - vendorSlug: "arcee-ai" - modelSlug: "virtuoso-large" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-05-05T21:01:25.294Z" - capabilities: ["chat","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/baidu/ernie-4.5-21b-a3b-thinking.md b/model-api-reference/llm-models/baidu/ernie-4.5-21b-a3b-thinking.md deleted file mode 100644 index 51eb58c6..00000000 --- a/model-api-reference/llm-models/baidu/ernie-4.5-21b-a3b-thinking.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "ERNIE 4.5 21B A3B Thinking API Reference" -description: "ERNIE 4.5 21B A3B Thinking API reference for SandBase. Use model baidu/ernie-4.5-21b-a3b-thinking with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/baidu/ernie-4.5-21b-a3b-thinking" -apiReferenceJson: "{\"title\":\"ERNIE 4.5 21B A3B Thinking\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"ERNIE-4.5-21B-A3B-Thinking is Baidu's upgraded lightweight MoE model, refined to boost reasoning depth and quality for top-tier performance in logical puzzles, math, science, coding, text generation, and expert-level academic benchmarks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to baidu/ernie-4.5-21b-a3b-thinking.\",\"default\":\"baidu/ernie-4.5-21b-a3b-thinking\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"baidu/ernie-4.5-21b-a3b-thinking\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"baidu/ernie-4.5-21b-a3b-thinking\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "ERNIE 4.5 21B A3B Thinking" - modelId: "baidu/ernie-4.5-21b-a3b-thinking" - vendor: "Baidu" - vendorSlug: "baidu" - modelSlug: "ernie-4.5-21b-a3b-thinking" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-10-09T22:28:07.216Z" - capabilities: ["chat","reasoning"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/baidu/ernie-4.5-21b-a3b.md b/model-api-reference/llm-models/baidu/ernie-4.5-21b-a3b.md deleted file mode 100644 index 599238a5..00000000 --- a/model-api-reference/llm-models/baidu/ernie-4.5-21b-a3b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "ERNIE 4.5 21B A3B API Reference" -description: "ERNIE 4.5 21B A3B API reference for SandBase. Use model baidu/ernie-4.5-21b-a3b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/baidu/ernie-4.5-21b-a3b" -apiReferenceJson: "{\"title\":\"ERNIE 4.5 21B A3B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"A sophisticated text-based Mixture-of-Experts (MoE) model featuring 21B total parameters with 3B activated per token, delivering exceptional multimodal understanding and generation through heterogeneous MoE structures and modality-isolated routing. Supporting an extensive 131K token context length, the model achieves efficient inference via multi-expert parallel collaboration and quantization, while advanced post-training techniques including SFT, DPO, and UPO ensure optimized performance across diverse applications with specialized routing and balancing losses for superior task handling.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to baidu/ernie-4.5-21b-a3b.\",\"default\":\"baidu/ernie-4.5-21b-a3b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 8000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"120000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"baidu/ernie-4.5-21b-a3b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"baidu/ernie-4.5-21b-a3b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "ERNIE 4.5 21B A3B" - modelId: "baidu/ernie-4.5-21b-a3b" - vendor: "Baidu" - vendorSlug: "baidu" - modelSlug: "ernie-4.5-21b-a3b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-08-12T21:29:27.753Z" - capabilities: ["chat","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/baidu/ernie-4.5-300b-a47b.md b/model-api-reference/llm-models/baidu/ernie-4.5-300b-a47b.md deleted file mode 100644 index 6ad1a751..00000000 --- a/model-api-reference/llm-models/baidu/ernie-4.5-300b-a47b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "ERNIE 4.5 300B A47B API Reference" -description: "ERNIE 4.5 300B A47B API reference for SandBase. Use model baidu/ernie-4.5-300b-a47b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/baidu/ernie-4.5-300b-a47b" -apiReferenceJson: "{\"title\":\"ERNIE 4.5 300B A47B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"ERNIE-4.5-300B-A47B is a 300B parameter Mixture-of-Experts (MoE) language model developed by Baidu as part of the ERNIE 4.5 series. It activates 47B parameters per token and supports text generation in both English and Chinese. Optimized for high-throughput inference and efficient scaling, it uses a heterogeneous MoE structure with advanced routing and quantization strategies, including FP8 and 2-bit formats. This version is fine-tuned for language-only tasks and supports reasoning, tool parameters, and extended context lengths up to 131k tokens. Suitable for general-purpose LLM applications with high reasoning and throughput demands.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to baidu/ernie-4.5-300b-a47b.\",\"default\":\"baidu/ernie-4.5-300b-a47b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 12000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"123000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"baidu/ernie-4.5-300b-a47b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"baidu/ernie-4.5-300b-a47b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "ERNIE 4.5 300B A47B" - modelId: "baidu/ernie-4.5-300b-a47b" - vendor: "Baidu" - vendorSlug: "baidu" - modelSlug: "ernie-4.5-300b-a47b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-06-30T16:15:39.588Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/baidu/ernie-4.5-vl-28b-a3b.md b/model-api-reference/llm-models/baidu/ernie-4.5-vl-28b-a3b.md deleted file mode 100644 index c207a13e..00000000 --- a/model-api-reference/llm-models/baidu/ernie-4.5-vl-28b-a3b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "ERNIE 4.5 VL 28B A3B API Reference" -description: "ERNIE 4.5 VL 28B A3B API reference for SandBase. Use model baidu/ernie-4.5-vl-28b-a3b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/baidu/ernie-4.5-vl-28b-a3b" -apiReferenceJson: "{\"title\":\"ERNIE 4.5 VL 28B A3B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"A powerful multimodal Mixture-of-Experts chat model featuring 28B total parameters with 3B activated per token, delivering exceptional text and vision understanding through its innovative heterogeneous MoE structure with modality-isolated routing. Built with scaling-efficient infrastructure for high-throughput training and inference, the model leverages advanced post-training techniques including SFT, DPO, and UPO for optimized performance, while supporting an impressive 131K context length and RLVR alignment for superior cross-modal reasoning and generation capabilities.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to baidu/ernie-4.5-vl-28b-a3b.\",\"default\":\"baidu/ernie-4.5-vl-28b-a3b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 8000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"30000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"baidu/ernie-4.5-vl-28b-a3b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"baidu/ernie-4.5-vl-28b-a3b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "ERNIE 4.5 VL 28B A3B" - modelId: "baidu/ernie-4.5-vl-28b-a3b" - vendor: "Baidu" - vendorSlug: "baidu" - modelSlug: "ernie-4.5-vl-28b-a3b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-08-12T21:07:16.565Z" - capabilities: ["chat","vision","reasoning","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/baidu/ernie-4.5-vl-424b-a47b.md b/model-api-reference/llm-models/baidu/ernie-4.5-vl-424b-a47b.md deleted file mode 100644 index 68394970..00000000 --- a/model-api-reference/llm-models/baidu/ernie-4.5-vl-424b-a47b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "ERNIE 4.5 VL 424B A47B API Reference" -description: "ERNIE 4.5 VL 424B A47B API reference for SandBase. Use model baidu/ernie-4.5-vl-424b-a47b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/baidu/ernie-4.5-vl-424b-a47b" -apiReferenceJson: "{\"title\":\"ERNIE 4.5 VL 424B A47B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"ERNIE-4.5-VL-424B-A47B is a multimodal Mixture-of-Experts (MoE) model from Baidu’s ERNIE 4.5 series, featuring 424B total parameters with 47B active per token. It is trained jointly on text and image data using a heterogeneous MoE architecture and modality-isolated routing to enable high-fidelity cross-modal reasoning, image understanding, and long-context generation (up to 131k tokens). Fine-tuned with techniques like SFT, DPO, UPO, and RLVR, this model supports both “thinking” and non-thinking inference modes. Designed for vision-language tasks in English and Chinese, it is optimized for efficient scaling and can operate under 4-bit/8-bit quantization.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to baidu/ernie-4.5-vl-424b-a47b.\",\"default\":\"baidu/ernie-4.5-vl-424b-a47b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"123000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"baidu/ernie-4.5-vl-424b-a47b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"baidu/ernie-4.5-vl-424b-a47b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "ERNIE 4.5 VL 424B A47B" - modelId: "baidu/ernie-4.5-vl-424b-a47b" - vendor: "Baidu" - vendorSlug: "baidu" - modelSlug: "ernie-4.5-vl-424b-a47b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-06-30T16:28:23.022Z" - capabilities: ["chat","vision","reasoning"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/baidu/qianfan-ocr-fast.md b/model-api-reference/llm-models/baidu/qianfan-ocr-fast.md deleted file mode 100644 index 4ff5c913..00000000 --- a/model-api-reference/llm-models/baidu/qianfan-ocr-fast.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Qianfan-OCR-Fast API Reference" -description: "Qianfan-OCR-Fast API reference for SandBase. Use model baidu/qianfan-ocr-fast with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/baidu/qianfan-ocr-fast" -apiReferenceJson: "{\"title\":\"Qianfan-OCR-Fast\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Qianfan-OCR-Fast is a domain-specific multimodal large model purpose-built for OCR. By leveraging specialized OCR training data while preserving versatile multimodal intelligence, it provides a powerful performance upgrade over Qianfan-OCR.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to baidu/qianfan-ocr-fast.\",\"default\":\"baidu/qianfan-ocr-fast\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 28672\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"65536 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"baidu/qianfan-ocr-fast\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"baidu/qianfan-ocr-fast\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Qianfan-OCR-Fast" - modelId: "baidu/qianfan-ocr-fast" - vendor: "Baidu" - vendorSlug: "baidu" - modelSlug: "qianfan-ocr-fast" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-04-20T17:51:12.864Z" - capabilities: ["chat","vision","reasoning"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/bytedance-seed/seed-1.6-flash.md b/model-api-reference/llm-models/bytedance-seed/seed-1.6-flash.md deleted file mode 100644 index 2823b6ac..00000000 --- a/model-api-reference/llm-models/bytedance-seed/seed-1.6-flash.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "ByteDance Seed: Seed 1.6 Flash API Reference" -description: "ByteDance Seed: Seed 1.6 Flash API reference for SandBase. Use model bytedance-seed/seed-1.6-flash with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/bytedance-seed/seed-1.6-flash" -apiReferenceJson: "{\"title\":\"ByteDance Seed: Seed 1.6 Flash\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Seed 1.6 Flash is an ultra-fast multimodal deep thinking model by ByteDance Seed, supporting both text and visual understanding. It features a 256k context window and can generate outputs of up to 16k tokens.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance-seed/seed-1.6-flash.\",\"default\":\"bytedance-seed/seed-1.6-flash\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance-seed/seed-1.6-flash\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"bytedance-seed/seed-1.6-flash\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "ByteDance Seed: Seed 1.6 Flash" - modelId: "bytedance-seed/seed-1.6-flash" - vendor: "ByteDance-Seed" - vendorSlug: "bytedance-seed" - modelSlug: "seed-1.6-flash" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-12-23T15:50:11Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/bytedance-seed/seed-1.6.md b/model-api-reference/llm-models/bytedance-seed/seed-1.6.md deleted file mode 100644 index 7b5cbaaf..00000000 --- a/model-api-reference/llm-models/bytedance-seed/seed-1.6.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "ByteDance Seed: Seed 1.6 API Reference" -description: "ByteDance Seed: Seed 1.6 API reference for SandBase. Use model bytedance-seed/seed-1.6 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/bytedance-seed/seed-1.6" -apiReferenceJson: "{\"title\":\"ByteDance Seed: Seed 1.6\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Seed 1.6 is a general-purpose model released by the ByteDance Seed team. It incorporates multimodal capabilities and adaptive deep thinking with a 256K context window.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance-seed/seed-1.6.\",\"default\":\"bytedance-seed/seed-1.6\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance-seed/seed-1.6\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"bytedance-seed/seed-1.6\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "ByteDance Seed: Seed 1.6" - modelId: "bytedance-seed/seed-1.6" - vendor: "ByteDance-Seed" - vendorSlug: "bytedance-seed" - modelSlug: "seed-1.6" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-12-23T15:49:57Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/bytedance-seed/seed-2.0-lite.md b/model-api-reference/llm-models/bytedance-seed/seed-2.0-lite.md deleted file mode 100644 index 71abca4a..00000000 --- a/model-api-reference/llm-models/bytedance-seed/seed-2.0-lite.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "ByteDance Seed: Seed-2.0-Lite API Reference" -description: "ByteDance Seed: Seed-2.0-Lite API reference for SandBase. Use model bytedance-seed/seed-2.0-lite with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/bytedance-seed/seed-2.0-lite" -apiReferenceJson: "{\"title\":\"ByteDance Seed: Seed-2.0-Lite\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Seed-2.0-Lite is a versatile, cost‑efficient enterprise workhorse that delivers strong multimodal and agent capabilities while offering noticeably lower latency, making it a practical default choice for most production workloads across text, vision, and tools. Engineered for high-frequency visual understanding and agentic workflows, it's an ideal choice for deployment at scale with minimal latency.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance-seed/seed-2.0-lite.\",\"default\":\"bytedance-seed/seed-2.0-lite\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance-seed/seed-2.0-lite\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"bytedance-seed/seed-2.0-lite\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "ByteDance Seed: Seed-2.0-Lite" - modelId: "bytedance-seed/seed-2.0-lite" - vendor: "ByteDance-Seed" - vendorSlug: "bytedance-seed" - modelSlug: "seed-2.0-lite" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-03-10T15:40:31Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/bytedance-seed/seed-2.0-mini.md b/model-api-reference/llm-models/bytedance-seed/seed-2.0-mini.md deleted file mode 100644 index 17bfe606..00000000 --- a/model-api-reference/llm-models/bytedance-seed/seed-2.0-mini.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "ByteDance Seed: Seed-2.0-Mini API Reference" -description: "ByteDance Seed: Seed-2.0-Mini API reference for SandBase. Use model bytedance-seed/seed-2.0-mini with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/bytedance-seed/seed-2.0-mini" -apiReferenceJson: "{\"title\":\"ByteDance Seed: Seed-2.0-Mini\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Seed-2.0-mini targets latency-sensitive, high-concurrency, and cost-sensitive scenarios, emphasizing fast response and flexible inference deployment. It delivers performance comparable to ByteDance-Seed-1.6, supports 256k context, four reasoning effort modes (minimal/low/medium/high), multimodal understanding, and is optimized for lightweight tasks where cost and speed take priority.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance-seed/seed-2.0-mini.\",\"default\":\"bytedance-seed/seed-2.0-mini\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance-seed/seed-2.0-mini\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"bytedance-seed/seed-2.0-mini\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "ByteDance Seed: Seed-2.0-Mini" - modelId: "bytedance-seed/seed-2.0-mini" - vendor: "ByteDance-Seed" - vendorSlug: "bytedance-seed" - modelSlug: "seed-2.0-mini" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-02-26T18:38:27Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/bytedance/seed-2.1-pro.md b/model-api-reference/llm-models/bytedance/seed-2.1-pro.md index f93350f0..2eab2753 100644 --- a/model-api-reference/llm-models/bytedance/seed-2.1-pro.md +++ b/model-api-reference/llm-models/bytedance/seed-2.1-pro.md @@ -4,7 +4,7 @@ description: "ByteDance: Seed-2.1-Pro API reference for SandBase. Use model byte aside: false outline: false apiReferenceKey: "llm/bytedance/seed-2.1-pro" -apiReferenceJson: "{\"title\":\"ByteDance: Seed-2.1-Pro\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Doubao-Seed-2.1-Pro is ByteDance's flagship Seed 2.1 model, built for coding and agentic workloads with strong reasoning, tool use and multimodal understanding. It supports a long input window of up to 1M tokens and is served through Volcengine Ark.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seed-2.1-pro.\",\"default\":\"bytedance/seed-2.1-pro\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 262144\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seed-2.1-pro\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"bytedance/seed-2.1-pro\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"ByteDance: Seed-2.1-Pro\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Seed 2.1 Pro is the larger of the two models in ByteDance Seed's Seed2.1 family, offered as Doubao-Seed-2.1-Pro through Doubao and Volcano Engine. ByteDance built Seed2.1 for real-world productivity: multi-step general agent work such as planning, document processing and tool use, end-to-end coding from requirement analysis to validation, and computer-use tasks. It also brings strong image, document and long-video understanding, and Seed 2.1 Turbo is the smaller sibling.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seed-2.1-pro.\",\"default\":\"bytedance/seed-2.1-pro\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 262144\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seed-2.1-pro\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"bytedance/seed-2.1-pro\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "ByteDance: Seed-2.1-Pro" modelId: "bytedance/seed-2.1-pro" diff --git a/model-api-reference/llm-models/bytedance/seed-2.1-turbo.md b/model-api-reference/llm-models/bytedance/seed-2.1-turbo.md deleted file mode 100644 index d44c6800..00000000 --- a/model-api-reference/llm-models/bytedance/seed-2.1-turbo.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "ByteDance: Seed-2.1-Turbo API Reference" -description: "ByteDance: Seed-2.1-Turbo API reference for SandBase. Use model bytedance/seed-2.1-turbo with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/bytedance/seed-2.1-turbo" -apiReferenceJson: "{\"title\":\"ByteDance: Seed-2.1-Turbo\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Doubao-Seed-2.1-Turbo is the latency-optimized member of ByteDance's Seed 2.1 family, built for high-throughput interactive and agentic workloads. It supports tool use and multimodal understanding with an input window of up to 256K tokens, and is served through Volcengine Ark.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seed-2.1-turbo.\",\"default\":\"bytedance/seed-2.1-turbo\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seed-2.1-turbo\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"bytedance/seed-2.1-turbo\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "ByteDance: Seed-2.1-Turbo" - modelId: "bytedance/seed-2.1-turbo" - vendor: "Bytedance" - vendorSlug: "bytedance" - modelSlug: "seed-2.1-turbo" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-06-23T00:00:00Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/bytedance/ui-tars-1.5-7b.md b/model-api-reference/llm-models/bytedance/ui-tars-1.5-7b.md deleted file mode 100644 index 7ca53eed..00000000 --- a/model-api-reference/llm-models/bytedance/ui-tars-1.5-7b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "ByteDance: UI-TARS 7B API Reference" -description: "ByteDance: UI-TARS 7B API reference for SandBase. Use model bytedance/ui-tars-1.5-7b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/bytedance/ui-tars-1.5-7b" -apiReferenceJson: "{\"title\":\"ByteDance: UI-TARS 7B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"UI-TARS-1.5 is a multimodal vision-language agent optimized for GUI-based environments, including desktop interfaces, web browsers, mobile systems, and games. Built by ByteDance, it builds upon the UI-TARS framework with reinforcement learning-based reasoning, enabling robust action planning and execution across virtual interfaces.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/ui-tars-1.5-7b.\",\"default\":\"bytedance/ui-tars-1.5-7b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 2048\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/ui-tars-1.5-7b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"bytedance/ui-tars-1.5-7b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "ByteDance: UI-TARS 7B" - modelId: "bytedance/ui-tars-1.5-7b" - vendor: "ByteDance" - vendorSlug: "bytedance" - modelSlug: "ui-tars-1.5-7b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-07-22T17:24:16.947Z" - capabilities: ["chat","vision"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/cc/claude-fable-5.md b/model-api-reference/llm-models/cc/claude-fable-5.md deleted file mode 100644 index d9507a97..00000000 --- a/model-api-reference/llm-models/cc/claude-fable-5.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "CC: Claude Fable 5 API Reference" -description: "CC: Claude Fable 5 API reference for SandBase. Use model cc/claude-fable-5 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/cc/claude-fable-5" -apiReferenceJson: "{\"title\":\"CC: Claude Fable 5\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Claude Fable 5 is a Mythos-class model from Anthropic, built for autonomous knowledge work and coding. It supports text, image, and file inputs with text output, with reasoning support and a 1M-token context window. It is suited for long-running, complex, and asynchronous tasks that previously required frequent human check-ins.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to cc/claude-fable-5.\",\"default\":\"cc/claude-fable-5\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"cc/claude-fable-5\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"cc/claude-fable-5\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "CC: Claude Fable 5" - modelId: "cc/claude-fable-5" - vendor: "cc" - vendorSlug: "cc" - modelSlug: "claude-fable-5" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-07-08T00:00:00.000Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/cc/claude-opus-4.6.md b/model-api-reference/llm-models/cc/claude-opus-4.6.md deleted file mode 100644 index 5a45dceb..00000000 --- a/model-api-reference/llm-models/cc/claude-opus-4.6.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "CC: Claude Opus 4.6 API Reference" -description: "CC: Claude Opus 4.6 API reference for SandBase. Use model cc/claude-opus-4.6 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/cc/claude-opus-4.6" -apiReferenceJson: "{\"title\":\"CC: Claude Opus 4.6\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Opus 4.6 is Anthropic's strongest model for coding and long-running professional tasks. It is built for agents that operate across entire workflows rather than single prompts, making it especially effective for large codebases, complex refactors, and multi-step debugging that unfolds over time. The model shows deeper contextual understanding, stronger problem decomposition, and greater reliability on hard engineering tasks than prior generations.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to cc/claude-opus-4.6.\",\"default\":\"cc/claude-opus-4.6\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"cc/claude-opus-4.6\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"cc/claude-opus-4.6\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "CC: Claude Opus 4.6" - modelId: "cc/claude-opus-4.6" - vendor: "cc" - vendorSlug: "cc" - modelSlug: "claude-opus-4.6" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-07-03T00:00:00Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/cohere/command-a.md b/model-api-reference/llm-models/cohere/command-a.md deleted file mode 100644 index ffdfa88d..00000000 --- a/model-api-reference/llm-models/cohere/command-a.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Command A API Reference" -description: "Command A API reference for SandBase. Use model cohere/command-a with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/cohere/command-a" -apiReferenceJson: "{\"title\":\"Command A\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Command A is an open-weights 111B parameter model with a 256k context window focused on delivering great performance across agentic, multilingual, and coding use cases. Compared to other leading proprietary and open-weights models Command A delivers maximum performance with minimum hardware costs, excelling on business-critical agentic and multilingual tasks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to cohere/command-a.\",\"default\":\"cohere/command-a\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 8192\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"256000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"cohere/command-a\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"cohere/command-a\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Command A" - modelId: "cohere/command-a" - vendor: "Cohere" - vendorSlug: "cohere" - modelSlug: "command-a" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-03-13T19:32:22.069Z" - capabilities: ["chat","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/cohere/command-r-08-2024.md b/model-api-reference/llm-models/cohere/command-r-08-2024.md deleted file mode 100644 index aec6d1da..00000000 --- a/model-api-reference/llm-models/cohere/command-r-08-2024.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Command R (08-2024) API Reference" -description: "Command R (08-2024) API reference for SandBase. Use model cohere/command-r-08-2024 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/cohere/command-r-08-2024" -apiReferenceJson: "{\"title\":\"Command R (08-2024)\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"command-r-08-2024 is an update of the Command R with improved performance for multilingual retrieval-augmented generation (RAG) and tool use. More broadly, it is better at math, code and reasoning and is competitive with the previous version of the larger Command R+ model.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to cohere/command-r-08-2024.\",\"default\":\"cohere/command-r-08-2024\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 4000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"cohere/command-r-08-2024\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"cohere/command-r-08-2024\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Command R (08-2024)" - modelId: "cohere/command-r-08-2024" - vendor: "Cohere" - vendorSlug: "cohere" - modelSlug: "command-r-08-2024" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-08-30T00:00:00Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/cohere/command-r-plus-08-2024.md b/model-api-reference/llm-models/cohere/command-r-plus-08-2024.md deleted file mode 100644 index 148a123e..00000000 --- a/model-api-reference/llm-models/cohere/command-r-plus-08-2024.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Command R+ (08-2024) API Reference" -description: "Command R+ (08-2024) API reference for SandBase. Use model cohere/command-r-plus-08-2024 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/cohere/command-r-plus-08-2024" -apiReferenceJson: "{\"title\":\"Command R+ (08-2024)\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"command-r-plus-08-2024 is an update of the Command R+ with roughly 50% higher throughput and 25% lower latencies as compared to the previous Command R+ version, while keeping the hardware footprint the same.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to cohere/command-r-plus-08-2024.\",\"default\":\"cohere/command-r-plus-08-2024\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 4000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"cohere/command-r-plus-08-2024\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"cohere/command-r-plus-08-2024\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Command R+ (08-2024)" - modelId: "cohere/command-r-plus-08-2024" - vendor: "Cohere" - vendorSlug: "cohere" - modelSlug: "command-r-plus-08-2024" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-08-30T00:00:00Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/cohere/command-r7b-12-2024.md b/model-api-reference/llm-models/cohere/command-r7b-12-2024.md deleted file mode 100644 index f365f59a..00000000 --- a/model-api-reference/llm-models/cohere/command-r7b-12-2024.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Command R7B (12-2024) API Reference" -description: "Command R7B (12-2024) API reference for SandBase. Use model cohere/command-r7b-12-2024 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/cohere/command-r7b-12-2024" -apiReferenceJson: "{\"title\":\"Command R7B (12-2024)\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Command R7B (12-2024) is a small, fast update of the Command R+ model, delivered in December 2024. It excels at RAG, tool use, agents, and similar tasks requiring complex reasoning and multiple steps.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to cohere/command-r7b-12-2024.\",\"default\":\"cohere/command-r7b-12-2024\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 4000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"cohere/command-r7b-12-2024\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"cohere/command-r7b-12-2024\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Command R7B (12-2024)" - modelId: "cohere/command-r7b-12-2024" - vendor: "Cohere" - vendorSlug: "cohere" - modelSlug: "command-r7b-12-2024" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-12-14T06:35:52.905Z" - capabilities: ["chat","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/deepcogito/cogito-v2.1-671b.md b/model-api-reference/llm-models/deepcogito/cogito-v2.1-671b.md deleted file mode 100644 index e363a56f..00000000 --- a/model-api-reference/llm-models/deepcogito/cogito-v2.1-671b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Deep Cogito: Cogito v2.1 671B API Reference" -description: "Deep Cogito: Cogito v2.1 671B API reference for SandBase. Use model deepcogito/cogito-v2.1-671b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/deepcogito/cogito-v2.1-671b" -apiReferenceJson: "{\"title\":\"Deep Cogito: Cogito v2.1 671B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Cogito v2.1 671B MoE represents one of the strongest open models globally, matching performance of frontier closed and open models. This model is trained using self play with reinforcement learning to reach state-of-the-art performance on multiple categories (instruction following, coding, longer queries and creative writing). This advanced system demonstrates significant progress toward scalable superintelligence through policy improvement.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to deepcogito/cogito-v2.1-671b.\",\"default\":\"deepcogito/cogito-v2.1-671b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"deepcogito/cogito-v2.1-671b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"deepcogito/cogito-v2.1-671b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Deep Cogito: Cogito v2.1 671B" - modelId: "deepcogito/cogito-v2.1-671b" - vendor: "Deepcogito" - vendorSlug: "deepcogito" - modelSlug: "cogito-v2.1-671b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-11-13T22:00:33.034Z" - capabilities: ["chat","reasoning","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/deepseek/deepseek-chat-v3-0324.md b/model-api-reference/llm-models/deepseek/deepseek-chat-v3-0324.md deleted file mode 100644 index 081ea292..00000000 --- a/model-api-reference/llm-models/deepseek/deepseek-chat-v3-0324.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "DeepSeek V3 0324 API Reference" -description: "DeepSeek V3 0324 API reference for SandBase. Use model deepseek/deepseek-chat-v3-0324 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/deepseek/deepseek-chat-v3-0324" -apiReferenceJson: "{\"title\":\"DeepSeek V3 0324\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"DeepSeek V3, a 685B-parameter, mixture-of-experts model, is the available iteration of the flagship chat model family from the DeepSeek team.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to deepseek/deepseek-chat-v3-0324.\",\"default\":\"deepseek/deepseek-chat-v3-0324\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"163840 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"deepseek/deepseek-chat-v3-0324\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"deepseek/deepseek-chat-v3-0324\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "DeepSeek V3 0324" - modelId: "deepseek/deepseek-chat-v3-0324" - vendor: "DeepSeek" - vendorSlug: "deepseek" - modelSlug: "deepseek-chat-v3-0324" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-03-24T13:59:15.252Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/deepseek/deepseek-chat-v3.1.md b/model-api-reference/llm-models/deepseek/deepseek-chat-v3.1.md deleted file mode 100644 index 56e8dae4..00000000 --- a/model-api-reference/llm-models/deepseek/deepseek-chat-v3.1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "DeepSeek V3.1 API Reference" -description: "DeepSeek V3.1 API reference for SandBase. Use model deepseek/deepseek-chat-v3.1 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/deepseek/deepseek-chat-v3.1" -apiReferenceJson: "{\"title\":\"DeepSeek V3.1\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"DeepSeek-V3.1 is a large hybrid reasoning model (671B parameters, 37B active) that supports both thinking and non-thinking modes via prompt templates. It extends the DeepSeek-V3 base with a two-phase long-context training process, reaching up to 128K tokens, and uses FP8 microscaling for efficient inference. Users can control the reasoning behaviour with the `reasoning` `enabled` boolean. Learn more in our docs\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to deepseek/deepseek-chat-v3.1.\",\"default\":\"deepseek/deepseek-chat-v3.1\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 7168\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"32768 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"deepseek/deepseek-chat-v3.1\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"deepseek/deepseek-chat-v3.1\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "DeepSeek V3.1" - modelId: "deepseek/deepseek-chat-v3.1" - vendor: "DeepSeek" - vendorSlug: "deepseek" - modelSlug: "deepseek-chat-v3.1" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-08-21T12:33:48Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/deepseek/deepseek-r1-0528.md b/model-api-reference/llm-models/deepseek/deepseek-r1-0528.md deleted file mode 100644 index 254364e5..00000000 --- a/model-api-reference/llm-models/deepseek/deepseek-r1-0528.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "R1 0528 API Reference" -description: "R1 0528 API reference for SandBase. Use model deepseek/deepseek-r1-0528 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/deepseek/deepseek-r1-0528" -apiReferenceJson: "{\"title\":\"R1 0528\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"May 28th update to the original DeepSeek R1 Performance on par with OpenAI o1, but open-sourced and with fully open reasoning tokens. It's 671B parameters in size, with 37B active in an inference pass.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to deepseek/deepseek-r1-0528.\",\"default\":\"deepseek/deepseek-r1-0528\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"163840 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"deepseek/deepseek-r1-0528\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"deepseek/deepseek-r1-0528\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "R1 0528" - modelId: "deepseek/deepseek-r1-0528" - vendor: "DeepSeek" - vendorSlug: "deepseek" - modelSlug: "deepseek-r1-0528" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-05-28T17:59:30.833Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/deepseek/deepseek-r1-distill-llama-70b.md b/model-api-reference/llm-models/deepseek/deepseek-r1-distill-llama-70b.md deleted file mode 100644 index e42401dc..00000000 --- a/model-api-reference/llm-models/deepseek/deepseek-r1-distill-llama-70b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "R1 Distill Llama 70B API Reference" -description: "R1 Distill Llama 70B API reference for SandBase. Use model deepseek/deepseek-r1-distill-llama-70b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/deepseek/deepseek-r1-distill-llama-70b" -apiReferenceJson: "{\"title\":\"R1 Distill Llama 70B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"DeepSeek R1 Distill Llama 70B is a distilled large language model based on Llama-3.3-70B-Instruct, using outputs from DeepSeek R1. The model combines advanced distillation techniques to achieve high performance across multiple benchmarks, including:\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to deepseek/deepseek-r1-distill-llama-70b.\",\"default\":\"deepseek/deepseek-r1-distill-llama-70b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"deepseek/deepseek-r1-distill-llama-70b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"deepseek/deepseek-r1-distill-llama-70b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "R1 Distill Llama 70B" - modelId: "deepseek/deepseek-r1-distill-llama-70b" - vendor: "DeepSeek" - vendorSlug: "deepseek" - modelSlug: "deepseek-r1-distill-llama-70b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-01-23T20:12:49.78Z" - capabilities: ["chat","reasoning","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/deepseek/deepseek-r1-distill-qwen-32b.md b/model-api-reference/llm-models/deepseek/deepseek-r1-distill-qwen-32b.md deleted file mode 100644 index a08aba58..00000000 --- a/model-api-reference/llm-models/deepseek/deepseek-r1-distill-qwen-32b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "R1 Distill Qwen 32B API Reference" -description: "R1 Distill Qwen 32B API reference for SandBase. Use model deepseek/deepseek-r1-distill-qwen-32b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/deepseek/deepseek-r1-distill-qwen-32b" -apiReferenceJson: "{\"title\":\"R1 Distill Qwen 32B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"DeepSeek R1 Distill Qwen 32B is a distilled large language model based on Qwen 2.5 32B, using outputs from DeepSeek R1. It outperforms OpenAI's o1-mini across various benchmarks, achieving new state-of-the-art results for dense models.\\\\n\\\\nOther benchmark results include:\\\\n\\\\n- AIME 2024 pass@1: 72.6\\\\n- MATH-500 pass@1: 94.3\\\\n- CodeForces Rating: 1691\\\\n\\\\nThe model leverages fine-tuning from DeepSeek R1's outputs, enabling competitive performance comparable to larger frontier models.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to deepseek/deepseek-r1-distill-qwen-32b.\",\"default\":\"deepseek/deepseek-r1-distill-qwen-32b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"32768 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"deepseek/deepseek-r1-distill-qwen-32b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"deepseek/deepseek-r1-distill-qwen-32b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "R1 Distill Qwen 32B" - modelId: "deepseek/deepseek-r1-distill-qwen-32b" - vendor: "DeepSeek" - vendorSlug: "deepseek" - modelSlug: "deepseek-r1-distill-qwen-32b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-01-29T23:53:50.865Z" - capabilities: ["chat","reasoning","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/deepseek/deepseek-r1.md b/model-api-reference/llm-models/deepseek/deepseek-r1.md deleted file mode 100644 index badabc0a..00000000 --- a/model-api-reference/llm-models/deepseek/deepseek-r1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "R1 API Reference" -description: "R1 API reference for SandBase. Use model deepseek/deepseek-r1 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/deepseek/deepseek-r1" -apiReferenceJson: "{\"title\":\"R1\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"DeepSeek R1 is here: Performance on par with OpenAI o1, but open-sourced and with fully open reasoning tokens. It's 671B parameters in size, with 37B active in an inference pass.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to deepseek/deepseek-r1.\",\"default\":\"deepseek/deepseek-r1\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"64000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"deepseek/deepseek-r1\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"deepseek/deepseek-r1\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "R1" - modelId: "deepseek/deepseek-r1" - vendor: "DeepSeek" - vendorSlug: "deepseek" - modelSlug: "deepseek-r1" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-01-20T13:51:35.969Z" - capabilities: ["chat","reasoning","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/deepseek/deepseek-v3.1-terminus.md b/model-api-reference/llm-models/deepseek/deepseek-v3.1-terminus.md deleted file mode 100644 index 9cf25311..00000000 --- a/model-api-reference/llm-models/deepseek/deepseek-v3.1-terminus.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "DeepSeek V3.1 Terminus API Reference" -description: "DeepSeek V3.1 Terminus API reference for SandBase. Use model deepseek/deepseek-v3.1-terminus with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/deepseek/deepseek-v3.1-terminus" -apiReferenceJson: "{\"title\":\"DeepSeek V3.1 Terminus\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"DeepSeek-V3.1 Terminus is an update to DeepSeek V3.1 that maintains the model's original capabilities while addressing issues reported by users, including language consistency and agent capabilities, further optimizing the model's performance in coding and search agents. It is a large hybrid reasoning model (671B parameters, 37B active) that supports both thinking and non-thinking modes. It extends the DeepSeek-V3 base with a two-phase long-context training process, reaching up to 128K tokens, and uses FP8 microscaling for efficient inference. Users can control the reasoning behaviour with the `reasoning` `enabled` boolean. Learn more in our docs\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to deepseek/deepseek-v3.1-terminus.\",\"default\":\"deepseek/deepseek-v3.1-terminus\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"163840 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"deepseek/deepseek-v3.1-terminus\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"deepseek/deepseek-v3.1-terminus\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "DeepSeek V3.1 Terminus" - modelId: "deepseek/deepseek-v3.1-terminus" - vendor: "DeepSeek" - vendorSlug: "deepseek" - modelSlug: "deepseek-v3.1-terminus" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-09-22T13:37:55.611Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/deepseek/deepseek-v3.2-exp.md b/model-api-reference/llm-models/deepseek/deepseek-v3.2-exp.md deleted file mode 100644 index 3b38ad8a..00000000 --- a/model-api-reference/llm-models/deepseek/deepseek-v3.2-exp.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "DeepSeek V3.2 Exp API Reference" -description: "DeepSeek V3.2 Exp API reference for SandBase. Use model deepseek/deepseek-v3.2-exp with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/deepseek/deepseek-v3.2-exp" -apiReferenceJson: "{\"title\":\"DeepSeek V3.2 Exp\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"DeepSeek-V3.2-Exp is an experimental large language model released by DeepSeek as an intermediate step between V3.1 and future architectures. It introduces DeepSeek Sparse Attention (DSA), a fine-grained sparse attention mechanism designed to improve training and inference efficiency in long-context scenarios while maintaining output quality. Users can control the reasoning behaviour with the `reasoning` `enabled` boolean. Learn more in our docs\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to deepseek/deepseek-v3.2-exp.\",\"default\":\"deepseek/deepseek-v3.2-exp\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"163840 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"deepseek/deepseek-v3.2-exp\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"deepseek/deepseek-v3.2-exp\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "DeepSeek V3.2 Exp" - modelId: "deepseek/deepseek-v3.2-exp" - vendor: "DeepSeek" - vendorSlug: "deepseek" - modelSlug: "deepseek-v3.2-exp" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-09-29T12:54:41.802Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/deepseek/deepseek-v3.2-speciale.md b/model-api-reference/llm-models/deepseek/deepseek-v3.2-speciale.md deleted file mode 100644 index befcd07b..00000000 --- a/model-api-reference/llm-models/deepseek/deepseek-v3.2-speciale.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "DeepSeek V3.2 Speciale API Reference" -description: "DeepSeek V3.2 Speciale API reference for SandBase. Use model deepseek/deepseek-v3.2-speciale with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/deepseek/deepseek-v3.2-speciale" -apiReferenceJson: "{\"title\":\"DeepSeek V3.2 Speciale\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"DeepSeek-V3.2-Speciale is a high-compute variant of DeepSeek-V3.2 optimized for maximum reasoning and agentic performance. It builds on DeepSeek Sparse Attention (DSA) for efficient long-context processing, then scales post-training reinforcement learning to push capability beyond the base model. Reported evaluations place Speciale ahead of GPT-5 on difficult reasoning workloads, with proficiency comparable to Gemini-3.0-Pro, while retaining strong coding and tool-use reliability. Like V3.2, it benefits from a large-scale agentic task synthesis pipeline that improves compliance and generalization in interactive environments.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to deepseek/deepseek-v3.2-speciale.\",\"default\":\"deepseek/deepseek-v3.2-speciale\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 163840\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"163840 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"deepseek/deepseek-v3.2-speciale\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"deepseek/deepseek-v3.2-speciale\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "DeepSeek V3.2 Speciale" - modelId: "deepseek/deepseek-v3.2-speciale" - vendor: "DeepSeek" - vendorSlug: "deepseek" - modelSlug: "deepseek-v3.2-speciale" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-12-01T13:13:57.971Z" - capabilities: ["chat","reasoning","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/deepseek/deepseek-v3.2.md b/model-api-reference/llm-models/deepseek/deepseek-v3.2.md index 0e5d26bd..8ebd9b97 100644 --- a/model-api-reference/llm-models/deepseek/deepseek-v3.2.md +++ b/model-api-reference/llm-models/deepseek/deepseek-v3.2.md @@ -4,7 +4,7 @@ description: "DeepSeek V3.2 API reference for SandBase. Use model deepseek/deeps aside: false outline: false apiReferenceKey: "llm/deepseek/deepseek-v3.2" -apiReferenceJson: "{\"title\":\"DeepSeek V3.2\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"DeepSeek-V3.2 is a large language model designed to harmonize high computational efficiency with strong reasoning and agentic tool-use performance. It introduces DeepSeek Sparse Attention (DSA), a fine-grained sparse attention mechanism that reduces training and inference cost while preserving quality in long-context scenarios. A scalable reinforcement learning post-training framework further improves reasoning, with reported performance in the GPT-5 class, and the model has demonstrated gold-medal results on the 2025 IMO and IOI. V3.2 also uses a large-scale agentic task synthesis pipeline to better integrate reasoning into tool-use settings, boosting compliance and generalization in interactive environments.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to deepseek/deepseek-v3.2.\",\"default\":\"deepseek/deepseek-v3.2\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"deepseek/deepseek-v3.2\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"deepseek/deepseek-v3.2\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DeepSeek V3.2\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"DeepSeek-V3.2 is DeepSeek's open-weight, reasoning-first model released in December 2025 as the official successor to V3.2-Exp. It introduces DeepSeek Sparse Attention to reduce long-context training and inference compute and is DeepSeek's first model to integrate thinking directly into tool use, trained on agent data synthesized across more than 1,800 environments. It supports tool calling in both thinking and non-thinking modes, suiting agents and general reasoning.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to deepseek/deepseek-v3.2.\",\"default\":\"deepseek/deepseek-v3.2\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"deepseek/deepseek-v3.2\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"deepseek/deepseek-v3.2\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "DeepSeek V3.2" modelId: "deepseek/deepseek-v3.2" diff --git a/model-api-reference/llm-models/minimax/minimax-m2.md b/model-api-reference/llm-models/deepseek/deepseek-v4-pro-0813.md similarity index 57% rename from model-api-reference/llm-models/minimax/minimax-m2.md rename to model-api-reference/llm-models/deepseek/deepseek-v4-pro-0813.md index fcfdad33..3c570766 100644 --- a/model-api-reference/llm-models/minimax/minimax-m2.md +++ b/model-api-reference/llm-models/deepseek/deepseek-v4-pro-0813.md @@ -1,19 +1,19 @@ --- -title: "MiniMax: MiniMax M2 API Reference" -description: "MiniMax: MiniMax M2 API reference for SandBase. Use model minimax/minimax-m2 with /v1/chat/completions; see request and response examples." +title: "DeepSeek V4 Pro 0813 API Reference" +description: "DeepSeek V4 Pro 0813 API reference for SandBase. Use model deepseek/deepseek-v4-pro-0813 with /v1/chat/completions; see request and response examples." aside: false outline: false -apiReferenceKey: "llm/minimax/minimax-m2" -apiReferenceJson: "{\"title\":\"MiniMax: MiniMax M2\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"MiniMax-M2 is a compact, high-efficiency large language model optimized for end-to-end coding and agentic workflows. With 10 billion activated parameters (230 billion total), it delivers near-frontier intelligence across general reasoning, tool use, and multi-step task execution while maintaining low latency and deployment efficiency.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/minimax-m2.\",\"default\":\"minimax/minimax-m2\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 196608\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"196608 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/minimax-m2\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"minimax/minimax-m2\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceKey: "llm/deepseek/deepseek-v4-pro-0813" +apiReferenceJson: "{\"title\":\"DeepSeek V4 Pro 0813\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"DeepSeek V4 Pro 0813 is the pinned GA release of DeepSeek V4 Pro from August 2026, for workloads that need a fixed version. It keeps V4 Pro's 1.6T-parameter mixture-of-experts design and 1M-token context, with thinking and non-thinking modes, tool calls and JSON output, and DeepSeek reports much stronger agent performance than the April preview, especially in production. DeepSeek has said it will keep serving V4 Pro alongside V4.1 Flash.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to deepseek/deepseek-v4-pro-0813.\",\"default\":\"deepseek/deepseek-v4-pro-0813\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 384000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"deepseek/deepseek-v4-pro-0813\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"deepseek/deepseek-v4-pro-0813\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: - modelName: "MiniMax: MiniMax M2" - modelId: "minimax/minimax-m2" - vendor: "Minimax" - vendorSlug: "minimax" - modelSlug: "minimax-m2" + modelName: "DeepSeek V4 Pro 0813" + modelId: "deepseek/deepseek-v4-pro-0813" + vendor: "DeepSeek" + vendorSlug: "deepseek" + modelSlug: "deepseek-v4-pro-0813" protocol: "Chat Completions API" endpoint: "/v1/chat/completions" - publishedAt: "2025-10-23T20:41:33.12Z" + publishedAt: "2026-08-12T15:42:44Z" capabilities: ["chat","reasoning","structured_output","function_calling"] category: "LLM Models" --- diff --git a/model-api-reference/llm-models/deepseek/deepseek-v4-pro.md b/model-api-reference/llm-models/deepseek/deepseek-v4-pro.md index c85071d1..daf1a3b2 100644 --- a/model-api-reference/llm-models/deepseek/deepseek-v4-pro.md +++ b/model-api-reference/llm-models/deepseek/deepseek-v4-pro.md @@ -4,7 +4,7 @@ description: "DeepSeek V4 Pro API reference for SandBase. Use model deepseek/dee aside: false outline: false apiReferenceKey: "llm/deepseek/deepseek-v4-pro" -apiReferenceJson: "{\"title\":\"DeepSeek V4 Pro\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"DeepSeek V4 Pro is a large-scale Mixture-of-Experts model from DeepSeek with 1.6T total parameters and 49B activated parameters, supporting a 1M-token context window. It is designed for advanced reasoning, coding, and long-horizon agent workflows, with strong performance across knowledge, math, and software engineering benchmarks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to deepseek/deepseek-v4-pro.\",\"default\":\"deepseek/deepseek-v4-pro\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 384000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"deepseek/deepseek-v4-pro\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"deepseek/deepseek-v4-pro\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DeepSeek V4 Pro\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"DeepSeek V4 Pro is the large tier of DeepSeek's V4 family, a 1.6T-parameter mixture-of-experts model with 49B active parameters, introduced as an open-weight preview in April 2026 with a 1M-token context. It combines token-wise compression with DeepSeek Sparse Attention and supports thinking and non-thinking modes, aimed at agentic coding, advanced reasoning and knowledge-heavy work. On DeepSeek's API this name now serves the August 2026 GA revision; use the 0813 entry to pin that version.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to deepseek/deepseek-v4-pro.\",\"default\":\"deepseek/deepseek-v4-pro\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 384000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"deepseek/deepseek-v4-pro\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"deepseek/deepseek-v4-pro\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "DeepSeek V4 Pro" modelId: "deepseek/deepseek-v4-pro" diff --git a/model-api-reference/llm-models/deepseek/deepseek-v4.1-flash.md b/model-api-reference/llm-models/deepseek/deepseek-v4.1-flash.md index 6bfaee8d..e40a3363 100644 --- a/model-api-reference/llm-models/deepseek/deepseek-v4.1-flash.md +++ b/model-api-reference/llm-models/deepseek/deepseek-v4.1-flash.md @@ -4,7 +4,7 @@ description: "DeepSeek V4.1 Flash API reference for SandBase. Use model deepseek aside: false outline: false apiReferenceKey: "llm/deepseek/deepseek-v4.1-flash" -apiReferenceJson: "{\"title\":\"DeepSeek V4.1 Flash\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"DeepSeek V4.1 Flash is a sparse mixture-of-experts model from DeepSeek, and the first built on the company's Causal Encoder-Decoder (CED) architecture. It activates 8B parameters on input and 16B on output from a 552B-parameter backbone, an asymmetric split that keeps per-token compute low relative to the model's total size. Image understanding is native to the architecture, with visual and text embeddings trained jointly from the start of pre-training rather than added afterward as in the earlier experimental V4 Flash Vision Exp.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to deepseek/deepseek-v4.1-flash.\",\"default\":\"deepseek/deepseek-v4.1-flash\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 943718\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"deepseek/deepseek-v4.1-flash\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"deepseek/deepseek-v4.1-flash\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DeepSeek V4.1 Flash\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"DeepSeek V4.1 Flash is the smallest model in DeepSeek's V4.1 architecture family, released in September 2026 with native visual understanding. It is a 552B-parameter mixture-of-experts model using a Causal Encoder-Decoder design that activates 8B parameters for input and 16B for output, with a KV cache about a quarter the size of the previous Flash generation. DeepSeek positions it for agentic coding and long-context work and reports it ahead of V4 Pro, replacing V4 Flash and V4 Flash Vision Exp on its API.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to deepseek/deepseek-v4.1-flash.\",\"default\":\"deepseek/deepseek-v4.1-flash\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 384000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"deepseek/deepseek-v4.1-flash\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"deepseek/deepseek-v4.1-flash\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "DeepSeek V4.1 Flash" modelId: "deepseek/deepseek-v4.1-flash" @@ -14,7 +14,7 @@ seo: protocol: "Chat Completions API" endpoint: "/v1/chat/completions" publishedAt: "2026-09-10T06:21:25Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] + capabilities: ["chat","vision","reasoning","structured_output","function_calling"] category: "LLM Models" --- diff --git a/model-api-reference/llm-models/essentialai/rnj-1-instruct.md b/model-api-reference/llm-models/essentialai/rnj-1-instruct.md deleted file mode 100644 index aa21ecb7..00000000 --- a/model-api-reference/llm-models/essentialai/rnj-1-instruct.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "EssentialAI: Rnj 1 Instruct API Reference" -description: "EssentialAI: Rnj 1 Instruct API reference for SandBase. Use model essentialai/rnj-1-instruct with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/essentialai/rnj-1-instruct" -apiReferenceJson: "{\"title\":\"EssentialAI: Rnj 1 Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Rnj-1 is an 8B-parameter, dense, open-weight model family developed by Essential AI and trained from scratch with a focus on programming, math, and scientific reasoning. The model demonstrates strong performance across multiple programming languages, tool-use workflows, and agentic execution environments (e.g., mini-SWE-agent).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to essentialai/rnj-1-instruct.\",\"default\":\"essentialai/rnj-1-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"32768 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"essentialai/rnj-1-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"essentialai/rnj-1-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "EssentialAI: Rnj 1 Instruct" - modelId: "essentialai/rnj-1-instruct" - vendor: "Essentialai" - vendorSlug: "essentialai" - modelSlug: "rnj-1-instruct" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-12-07T08:07:27.97Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/google/gemini-2.0-flash-lite-001.md b/model-api-reference/llm-models/google/gemini-2.0-flash-lite-001.md deleted file mode 100644 index c8f4ed99..00000000 --- a/model-api-reference/llm-models/google/gemini-2.0-flash-lite-001.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Gemini 2.0 Flash Lite API Reference" -description: "Gemini 2.0 Flash Lite API reference for SandBase. Use model google/gemini-2.0-flash-lite-001 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/google/gemini-2.0-flash-lite-001" -apiReferenceJson: "{\"title\":\"Gemini 2.0 Flash Lite\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 2.0 Flash Lite offers a significantly faster time to first token (TTFT) compared to Gemini Flash 1.5, while maintaining quality on par with larger models like Gemini Pro 1.5, all at extremely economical token prices.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-2.0-flash-lite-001.\",\"default\":\"google/gemini-2.0-flash-lite-001\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 8192\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-2.0-flash-lite-001\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-2.0-flash-lite-001\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Gemini 2.0 Flash Lite" - modelId: "google/gemini-2.0-flash-lite-001" - vendor: "Google" - vendorSlug: "google" - modelSlug: "gemini-2.0-flash-lite-001" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-02-25T17:56:52.206Z" - capabilities: ["chat","vision","audio_input","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/google/gemini-2.5-flash-image.md b/model-api-reference/llm-models/google/gemini-2.5-flash-image.md deleted file mode 100644 index 4063c5aa..00000000 --- a/model-api-reference/llm-models/google/gemini-2.5-flash-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Nano Banana (Gemini 2.5 Flash Image) API Reference" -description: "Nano Banana (Gemini 2.5 Flash Image) API reference for SandBase. Use model google/gemini-2.5-flash-image with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/google/gemini-2.5-flash-image" -apiReferenceJson: "{\"title\":\"Nano Banana (Gemini 2.5 Flash Image)\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 2.5 Flash Image, a.k.a. \\\"Nano Banana,\\\" is now generally available. It is a state of the art image generation model with contextual understanding. It is capable of image generation, edits, and multi-turn conversations. Aspect ratios can be controlled with the image_config API Parameter\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-2.5-flash-image.\",\"default\":\"google/gemini-2.5-flash-image\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"32768 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-2.5-flash-image\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-2.5-flash-image\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Nano Banana (Gemini 2.5 Flash Image)" - modelId: "google/gemini-2.5-flash-image" - vendor: "Google" - vendorSlug: "google" - modelSlug: "gemini-2.5-flash-image" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-10-07T20:53:51Z" - capabilities: ["chat","vision","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/google/gemini-2.5-flash-lite-preview-09-2025.md b/model-api-reference/llm-models/google/gemini-2.5-flash-lite-preview-09-2025.md deleted file mode 100644 index ccf75112..00000000 --- a/model-api-reference/llm-models/google/gemini-2.5-flash-lite-preview-09-2025.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Gemini 2.5 Flash Lite Preview 09-2025 API Reference" -description: "SandBase API reference for model google/gemini-2.5-flash-lite-preview-09-2025. Call /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/google/gemini-2.5-flash-lite-preview-09-2025" -apiReferenceJson: "{\"title\":\"Gemini 2.5 Flash Lite Preview 09-2025\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 2.5 Flash-Lite is a lightweight reasoning model in the Gemini 2.5 family, optimized for ultra-low latency and cost efficiency. It offers improved throughput, faster token generation, and better performance across common benchmarks compared to earlier Flash models. By default, \\\"thinking\\\" (i.e. multi-pass reasoning) is disabled to prioritize speed, but developers can enable it via the Reasoning API parameter to selectively trade off cost for intelligence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-2.5-flash-lite-preview-09-2025.\",\"default\":\"google/gemini-2.5-flash-lite-preview-09-2025\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65535\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-2.5-flash-lite-preview-09-2025\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-2.5-flash-lite-preview-09-2025\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Gemini 2.5 Flash Lite Preview 09-2025" - modelId: "google/gemini-2.5-flash-lite-preview-09-2025" - vendor: "Google" - vendorSlug: "google" - modelSlug: "gemini-2.5-flash-lite-preview-09-2025" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-09-25T17:01:26.198Z" - capabilities: ["chat","vision","audio_input","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/google/gemini-2.5-flash-lite.md b/model-api-reference/llm-models/google/gemini-2.5-flash-lite.md index 2548e58c..0bb38a84 100644 --- a/model-api-reference/llm-models/google/gemini-2.5-flash-lite.md +++ b/model-api-reference/llm-models/google/gemini-2.5-flash-lite.md @@ -4,7 +4,7 @@ description: "Gemini 2.5 Flash Lite API reference for SandBase. Use model google aside: false outline: false apiReferenceKey: "llm/google/gemini-2.5-flash-lite" -apiReferenceJson: "{\"title\":\"Gemini 2.5 Flash Lite\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 2.5 Flash-Lite is a lightweight reasoning model in the Gemini 2.5 family, optimized for ultra-low latency and cost efficiency. It offers improved throughput, faster token generation, and better performance across common benchmarks compared to earlier Flash models. By default, \\\"thinking\\\" (i.e. multi-pass reasoning) is disabled to prioritize speed, but developers can enable it via the Reasoning API parameter to selectively trade off cost for intelligence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-2.5-flash-lite.\",\"default\":\"google/gemini-2.5-flash-lite\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65535\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-2.5-flash-lite\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-2.5-flash-lite\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Gemini 2.5 Flash Lite\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 2.5 Flash-Lite is the lightweight tier of Google's Gemini 2.5 family, released in July 2025 and described by Google as the fastest multimodal model in that family. It is aimed at high-volume classification, simple data extraction and very low-latency applications, with optional thinking and support for text, image, video, audio and PDF input. It remains a stable model with no announced shutdown date; pick Gemini 2.5 Flash for more capability within the same generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-2.5-flash-lite.\",\"default\":\"google/gemini-2.5-flash-lite\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-2.5-flash-lite\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-2.5-flash-lite\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Gemini 2.5 Flash Lite" modelId: "google/gemini-2.5-flash-lite" diff --git a/model-api-reference/llm-models/google/gemini-2.5-flash.md b/model-api-reference/llm-models/google/gemini-2.5-flash.md index 656016ba..93ae7579 100644 --- a/model-api-reference/llm-models/google/gemini-2.5-flash.md +++ b/model-api-reference/llm-models/google/gemini-2.5-flash.md @@ -4,7 +4,7 @@ description: "Gemini 2.5 Flash API reference for SandBase. Use model google/gemi aside: false outline: false apiReferenceKey: "llm/google/gemini-2.5-flash" -apiReferenceJson: "{\"title\":\"Gemini 2.5 Flash\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 2.5 Flash is Google's state-of-the-art workhorse model, specifically designed for advanced reasoning, coding, mathematics, and scientific tasks. It includes built-in \\\"thinking\\\" capabilities, enabling it to provide responses with greater accuracy and nuanced context handling.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-2.5-flash.\",\"default\":\"google/gemini-2.5-flash\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65535\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-2.5-flash\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-2.5-flash\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Gemini 2.5 Flash\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 2.5 Flash is the workhorse model of Google's Gemini 2.5 family, a thinking model released as stable in June 2025. Google positions it for large-scale processing, low-latency and high-volume tasks that require reasoning, and agentic use cases, with text, image, video and audio input. It sits between 2.5 Flash-Lite and 2.5 Pro in the same generation and remains a stable model with no announced shutdown date.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-2.5-flash.\",\"default\":\"google/gemini-2.5-flash\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-2.5-flash\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-2.5-flash\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Gemini 2.5 Flash" modelId: "google/gemini-2.5-flash" diff --git a/model-api-reference/llm-models/google/gemini-2.5-pro-preview-05-06.md b/model-api-reference/llm-models/google/gemini-2.5-pro-preview-05-06.md deleted file mode 100644 index 6e4e2648..00000000 --- a/model-api-reference/llm-models/google/gemini-2.5-pro-preview-05-06.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Gemini 2.5 Pro Preview 05-06 API Reference" -description: "Gemini 2.5 Pro Preview 05-06 API reference for SandBase. Use model google/gemini-2.5-pro-preview-05-06 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/google/gemini-2.5-pro-preview-05-06" -apiReferenceJson: "{\"title\":\"Gemini 2.5 Pro Preview 05-06\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 2.5 Pro is Google’s state-of-the-art AI model designed for advanced reasoning, coding, mathematics, and scientific tasks. It employs “thinking” capabilities, enabling it to reason through responses with enhanced accuracy and nuanced context handling. Gemini 2.5 Pro achieves top-tier performance on multiple benchmarks, including first-place positioning on the LMArena leaderboard, reflecting superior human-preference alignment and complex problem-solving abilities.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-2.5-pro-preview-05-06.\",\"default\":\"google/gemini-2.5-pro-preview-05-06\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65535\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-2.5-pro-preview-05-06\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-2.5-pro-preview-05-06\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Gemini 2.5 Pro Preview 05-06" - modelId: "google/gemini-2.5-pro-preview-05-06" - vendor: "Google" - vendorSlug: "google" - modelSlug: "gemini-2.5-pro-preview-05-06" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-05-07T00:41:53Z" - capabilities: ["chat","vision","audio_input","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/google/gemini-2.5-pro-preview.md b/model-api-reference/llm-models/google/gemini-2.5-pro-preview.md deleted file mode 100644 index d113fea1..00000000 --- a/model-api-reference/llm-models/google/gemini-2.5-pro-preview.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Gemini 2.5 Pro Preview 06-05 API Reference" -description: "Gemini 2.5 Pro Preview 06-05 API reference for SandBase. Use model google/gemini-2.5-pro-preview with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/google/gemini-2.5-pro-preview" -apiReferenceJson: "{\"title\":\"Gemini 2.5 Pro Preview 06-05\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 2.5 Pro is Google’s state-of-the-art AI model designed for advanced reasoning, coding, mathematics, and scientific tasks. It employs “thinking” capabilities, enabling it to reason through responses with enhanced accuracy and nuanced context handling. Gemini 2.5 Pro achieves top-tier performance on multiple benchmarks, including first-place positioning on the LMArena leaderboard, reflecting superior human-preference alignment and complex problem-solving abilities.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-2.5-pro-preview.\",\"default\":\"google/gemini-2.5-pro-preview\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-2.5-pro-preview\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-2.5-pro-preview\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Gemini 2.5 Pro Preview 06-05" - modelId: "google/gemini-2.5-pro-preview" - vendor: "Google" - vendorSlug: "google" - modelSlug: "gemini-2.5-pro-preview" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-06-05T15:27:37.538Z" - capabilities: ["chat","vision","audio_input","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/google/gemini-2.5-pro.md b/model-api-reference/llm-models/google/gemini-2.5-pro.md index 41cfdf5f..524766f2 100644 --- a/model-api-reference/llm-models/google/gemini-2.5-pro.md +++ b/model-api-reference/llm-models/google/gemini-2.5-pro.md @@ -4,7 +4,7 @@ description: "Gemini 2.5 Pro API reference for SandBase. Use model google/gemini aside: false outline: false apiReferenceKey: "llm/google/gemini-2.5-pro" -apiReferenceJson: "{\"title\":\"Gemini 2.5 Pro\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 2.5 Pro is Google’s state-of-the-art AI model designed for advanced reasoning, coding, mathematics, and scientific tasks. It employs “thinking” capabilities, enabling it to reason through responses with enhanced accuracy and nuanced context handling. Gemini 2.5 Pro achieves top-tier performance on multiple benchmarks, including first-place positioning on the LMArena leaderboard, reflecting superior human-preference alignment and complex problem-solving abilities.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-2.5-pro.\",\"default\":\"google/gemini-2.5-pro\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-2.5-pro\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-2.5-pro\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Gemini 2.5 Pro\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 2.5 Pro is the Pro-tier thinking model of Google's Gemini 2.5 family, released as stable in June 2025 and described by Google as its most advanced model in that family. It is built for reasoning over complex problems in code, math and STEM, and for analyzing large datasets, codebases and documents using long context. It accepts audio, image, video, text and PDF input; Gemini 3.1 Pro Preview is the Pro-tier successor in the Gemini 3 series.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-2.5-pro.\",\"default\":\"google/gemini-2.5-pro\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-2.5-pro\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-2.5-pro\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Gemini 2.5 Pro" modelId: "google/gemini-2.5-pro" diff --git a/model-api-reference/llm-models/google/gemini-3-flash-preview.md b/model-api-reference/llm-models/google/gemini-3-flash-preview.md index 2666b7b6..d789fcd1 100644 --- a/model-api-reference/llm-models/google/gemini-3-flash-preview.md +++ b/model-api-reference/llm-models/google/gemini-3-flash-preview.md @@ -4,7 +4,7 @@ description: "Gemini 3 Flash Preview API reference for SandBase. Use model googl aside: false outline: false apiReferenceKey: "llm/google/gemini-3-flash-preview" -apiReferenceJson: "{\"title\":\"Gemini 3 Flash Preview\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 3 Flash Preview is a high speed, high value thinking model designed for agentic workflows, multi turn chat, and coding assistance. It delivers near Pro level reasoning and tool use performance with substantially lower latency than larger Gemini variants, making it well suited for interactive development, long running agent loops, and collaborative coding tasks. Compared to Gemini 2.5 Flash, it provides broad quality improvements across reasoning, multimodal understanding, and reliability.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3-flash-preview.\",\"default\":\"google/gemini-3-flash-preview\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3-flash-preview\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-3-flash-preview\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Gemini 3 Flash Preview\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 3 Flash Preview is the preview release of the Flash tier in Google's Gemini 3 series, released in December 2025. Google described it at launch as its most powerful agentic and vibe-coding model to that point, built on Gemini 3 reasoning with multimodal understanding across text, image, video, audio and PDF input. It remains a preview endpoint with no announced shutdown date, and Google recommends Gemini 3.6 Flash as its replacement.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3-flash-preview.\",\"default\":\"google/gemini-3-flash-preview\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3-flash-preview\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-3-flash-preview\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Gemini 3 Flash Preview" modelId: "google/gemini-3-flash-preview" diff --git a/model-api-reference/llm-models/google/gemini-3-pro-image-preview.md b/model-api-reference/llm-models/google/gemini-3-pro-image-preview.md deleted file mode 100644 index 91b8cf90..00000000 --- a/model-api-reference/llm-models/google/gemini-3-pro-image-preview.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Nano Banana Pro (Gemini 3 Pro Image Preview) API Reference" -description: "SandBase API reference for model google/gemini-3-pro-image-preview. Call /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/google/gemini-3-pro-image-preview" -apiReferenceJson: "{\"title\":\"Nano Banana Pro (Gemini 3 Pro Image Preview)\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Nano Banana Pro is Google’s most advanced image-generation and editing model, built on Gemini 3 Pro. It extends the original Nano Banana with significantly improved multimodal reasoning, real-world grounding, and...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3-pro-image-preview.\",\"default\":\"google/gemini-3-pro-image-preview\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"65536 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3-pro-image-preview\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-3-pro-image-preview\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Nano Banana Pro (Gemini 3 Pro Image Preview)" - modelId: "google/gemini-3-pro-image-preview" - vendor: "Google" - vendorSlug: "google" - modelSlug: "gemini-3-pro-image-preview" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-11-20T15:49:57Z" - capabilities: ["chat","vision","reasoning","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/google/gemini-3-pro-image.md b/model-api-reference/llm-models/google/gemini-3-pro-image.md index 98e94681..4d6761d8 100644 --- a/model-api-reference/llm-models/google/gemini-3-pro-image.md +++ b/model-api-reference/llm-models/google/gemini-3-pro-image.md @@ -4,7 +4,7 @@ description: "Nano Banana Pro (Gemini 3 Pro Image) API reference for SandBase. U aside: false outline: false apiReferenceKey: "llm/google/gemini-3-pro-image" -apiReferenceJson: "{\"title\":\"Nano Banana Pro (Gemini 3 Pro Image)\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Nano Banana Pro is Google’s most advanced image-generation and editing model, built on Gemini 3 Pro. It extends the original Nano Banana with significantly improved multimodal reasoning, real-world grounding, and...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3-pro-image.\",\"default\":\"google/gemini-3-pro-image\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"65536 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3-pro-image\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-3-pro-image\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Nano Banana Pro (Gemini 3 Pro Image)\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Nano Banana Pro (Gemini 3 Pro Image) is the Pro-tier image generation and editing model of Google's Gemini 3 line, using a reasoning core and producing images alongside text. Google positions it for professional work such as complex graphic design, high-fidelity product mockups and factual data visualizations that need accurate text rendering, with real-world grounding via Google Search and studio-quality visuals up to 4K. Pick Nano Banana 2 instead for faster, higher-volume generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3-pro-image.\",\"default\":\"google/gemini-3-pro-image\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, image_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"65536 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3-pro-image\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-3-pro-image\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Nano Banana Pro (Gemini 3 Pro Image)" modelId: "google/gemini-3-pro-image" @@ -14,7 +14,7 @@ seo: protocol: "Chat Completions API" endpoint: "/v1/chat/completions" publishedAt: "2026-06-18T03:40:54Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] + capabilities: ["chat","vision","reasoning","image_output"] category: "LLM Models" --- diff --git a/model-api-reference/llm-models/google/gemini-3.1-flash-image-preview.md b/model-api-reference/llm-models/google/gemini-3.1-flash-image-preview.md deleted file mode 100644 index 7baa7a64..00000000 --- a/model-api-reference/llm-models/google/gemini-3.1-flash-image-preview.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Nano Banana 2 (Gemini 3.1 Flash Image Preview) API Reference" -description: "SandBase API reference for model google/gemini-3.1-flash-image-preview. Call /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/google/gemini-3.1-flash-image-preview" -apiReferenceJson: "{\"title\":\"Nano Banana 2 (Gemini 3.1 Flash Image Preview)\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 3.1 Flash Image Preview, a.k.a. \\\"Nano Banana 2,\\\" is Google’s current state-of-the-art image generation and editing model, delivering Pro-level visual quality at Flash speed. It combines...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3.1-flash-image-preview.\",\"default\":\"google/gemini-3.1-flash-image-preview\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3.1-flash-image-preview\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-3.1-flash-image-preview\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Nano Banana 2 (Gemini 3.1 Flash Image Preview)" - modelId: "google/gemini-3.1-flash-image-preview" - vendor: "Google" - vendorSlug: "google" - modelSlug: "gemini-3.1-flash-image-preview" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-02-26T15:25:58Z" - capabilities: ["chat","vision","reasoning","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/google/gemini-3.1-flash-image.md b/model-api-reference/llm-models/google/gemini-3.1-flash-image.md index a4c3abc2..3e71baa4 100644 --- a/model-api-reference/llm-models/google/gemini-3.1-flash-image.md +++ b/model-api-reference/llm-models/google/gemini-3.1-flash-image.md @@ -4,7 +4,7 @@ description: "Nano Banana 2 (Gemini 3.1 Flash Image) API reference for SandBase. aside: false outline: false apiReferenceKey: "llm/google/gemini-3.1-flash-image" -apiReferenceJson: "{\"title\":\"Nano Banana 2 (Gemini 3.1 Flash Image)\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 3.1 Flash Image, a.k.a. \\\"Nano Banana 2,\\\" is Google’s current state-of-the-art image generation and editing model, delivering Pro-level visual quality at Flash speed. It combines advanced...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3.1-flash-image.\",\"default\":\"google/gemini-3.1-flash-image\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3.1-flash-image\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-3.1-flash-image\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Nano Banana 2 (Gemini 3.1 Flash Image)\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Nano Banana 2 (Gemini 3.1 Flash Image) is Google's image generation and conversational image editing model in the Gemini 3 series, producing images alongside text from text, image, video and PDF input. Google positions it as the high-efficiency, low-latency counterpart to Nano Banana Pro for high-volume developer use, adding output resolutions from 0.5K to 4K, extra wide and tall aspect ratios, image search grounding and improved multilingual text rendering. Choose Nano Banana Pro for complex, precision design work.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3.1-flash-image.\",\"default\":\"google/gemini-3.1-flash-image\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, image_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3.1-flash-image\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-3.1-flash-image\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Nano Banana 2 (Gemini 3.1 Flash Image)" modelId: "google/gemini-3.1-flash-image" @@ -14,7 +14,7 @@ seo: protocol: "Chat Completions API" endpoint: "/v1/chat/completions" publishedAt: "2026-06-18T03:41:05Z" - capabilities: ["chat","vision","reasoning","structured_output"] + capabilities: ["chat","vision","reasoning","image_output"] category: "LLM Models" --- diff --git a/model-api-reference/llm-models/google/gemini-3.1-flash-lite.md b/model-api-reference/llm-models/google/gemini-3.1-flash-lite.md index c4c9007a..299ca131 100644 --- a/model-api-reference/llm-models/google/gemini-3.1-flash-lite.md +++ b/model-api-reference/llm-models/google/gemini-3.1-flash-lite.md @@ -4,7 +4,7 @@ description: "Gemini 3.1 Flash Lite API reference for SandBase. Use model google aside: false outline: false apiReferenceKey: "llm/google/gemini-3.1-flash-lite" -apiReferenceJson: "{\"title\":\"Gemini 3.1 Flash Lite\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 3.1 Flash Lite is Google’s GA high-efficiency multimodal model optimized for low-latency, high-volume workloads. It supports text, image, video, audio, and PDF inputs, and is designed for lightweight agentic workflows, simple data extraction, and applications where responsiveness and API cost are the primary constraints.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3.1-flash-lite.\",\"default\":\"google/gemini-3.1-flash-lite\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3.1-flash-lite\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-3.1-flash-lite\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Gemini 3.1 Flash Lite\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 3.1 Flash-Lite is the generally available, low-latency Flash-Lite tier of Google's Gemini 3 series, released in May 2026 as the stable successor to the 3.1 Flash-Lite preview. Google targets it at high-frequency, lightweight tasks such as high-volume translation, transcription, entity extraction, document summarization and routing queries between larger models. Google has scheduled its shutdown for May 7, 2027 and recommends Gemini 3.5 Flash-Lite as the replacement.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3.1-flash-lite.\",\"default\":\"google/gemini-3.1-flash-lite\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3.1-flash-lite\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-3.1-flash-lite\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Gemini 3.1 Flash Lite" modelId: "google/gemini-3.1-flash-lite" diff --git a/model-api-reference/llm-models/google/gemini-3.1-pro-preview-customtools.md b/model-api-reference/llm-models/google/gemini-3.1-pro-preview-customtools.md index 2e5757bc..640390ca 100644 --- a/model-api-reference/llm-models/google/gemini-3.1-pro-preview-customtools.md +++ b/model-api-reference/llm-models/google/gemini-3.1-pro-preview-customtools.md @@ -4,7 +4,7 @@ description: "SandBase API reference for model google/gemini-3.1-pro-preview-cus aside: false outline: false apiReferenceKey: "llm/google/gemini-3.1-pro-preview-customtools" -apiReferenceJson: "{\"title\":\"Gemini 3.1 Pro Preview Custom Tools\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 3.1 Pro Preview Custom Tools is a variant of Gemini 3.1 Pro that improves tool selection behavior by preventing overuse of a general bash tool when more efficient third-party or user-defined functions are available. This specialized preview endpoint significantly increases function calling reliability and ensures the model selects the most appropriate tool in coding agents and complex, multi-tool workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3.1-pro-preview-customtools.\",\"default\":\"google/gemini-3.1-pro-preview-customtools\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3.1-pro-preview-customtools\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-3.1-pro-preview-customtools\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Gemini 3.1 Pro Preview Custom Tools\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 3.1 Pro Preview Custom Tools is a separate endpoint of Google's Gemini 3.1 Pro Preview, the Pro-tier reasoning model of the Gemini 3 series, tuned for agentic workflows that mix bash with custom tools. Google says it is better at prioritizing user-defined functions, such as file viewing or code search tools, over a general bash tool. Pick it for coding agents built on custom tools; Google notes quality may fluctuate in use cases that do not benefit from such tools, where the standard 3.1 Pro Preview fits better.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3.1-pro-preview-customtools.\",\"default\":\"google/gemini-3.1-pro-preview-customtools\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3.1-pro-preview-customtools\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-3.1-pro-preview-customtools\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Gemini 3.1 Pro Preview Custom Tools" modelId: "google/gemini-3.1-pro-preview-customtools" diff --git a/model-api-reference/llm-models/google/gemini-3.1-pro-preview.md b/model-api-reference/llm-models/google/gemini-3.1-pro-preview.md index 4c15454e..fc2d2b10 100644 --- a/model-api-reference/llm-models/google/gemini-3.1-pro-preview.md +++ b/model-api-reference/llm-models/google/gemini-3.1-pro-preview.md @@ -4,7 +4,7 @@ description: "Gemini 3.1 Pro Preview API reference for SandBase. Use model googl aside: false outline: false apiReferenceKey: "llm/google/gemini-3.1-pro-preview" -apiReferenceJson: "{\"title\":\"Gemini 3.1 Pro Preview\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 3.1 Pro Preview is Google’s frontier reasoning model, delivering enhanced software engineering performance, improved agentic reliability, and more efficient token usage across complex workflows. Building on the multimodal foundation of the Gemini 3 series, it combines high-precision reasoning across text, image, video, audio, and code with a 1M-token context window. Preserve reasoning details when using multi-turn tool calls. The 3.1 update introduces measurable gains in SWE benchmarks and real-world coding environments, along with stronger autonomous task execution in structured domains such as finance and spreadsheet-based workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3.1-pro-preview.\",\"default\":\"google/gemini-3.1-pro-preview\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3.1-pro-preview\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-3.1-pro-preview\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Gemini 3.1 Pro Preview\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 3.1 Pro Preview is the Pro-tier reasoning model of Google's Gemini 3 series, released in February 2026 to refine Gemini 3 Pro with better thinking, improved token efficiency and more grounded, factually consistent answers. Google optimizes it for software engineering and for agentic workflows that need precise tool use and reliable multi-step execution across real-world domains. It accepts text, image, video, audio and PDF input, remains a preview model, and is Google's recommended replacement for the retired Gemini 3 Pro Preview.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3.1-pro-preview.\",\"default\":\"google/gemini-3.1-pro-preview\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3.1-pro-preview\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-3.1-pro-preview\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Gemini 3.1 Pro Preview" modelId: "google/gemini-3.1-pro-preview" diff --git a/model-api-reference/llm-models/google/gemini-3.5-flash-lite.md b/model-api-reference/llm-models/google/gemini-3.5-flash-lite.md index 85ba27d7..2025937c 100644 --- a/model-api-reference/llm-models/google/gemini-3.5-flash-lite.md +++ b/model-api-reference/llm-models/google/gemini-3.5-flash-lite.md @@ -4,7 +4,7 @@ description: "Gemini 3.5 Flash Lite API reference for SandBase. Use model google aside: false outline: false apiReferenceKey: "llm/google/gemini-3.5-flash-lite" -apiReferenceJson: "{\"title\":\"Gemini 3.5 Flash Lite\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 3.5 Flash Lite is a high-efficiency multimodal model from Google with upgraded agentic capabilities. It is suited for focused subagent tasks in complex multi-agent workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3.5-flash-lite.\",\"default\":\"google/gemini-3.5-flash-lite\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3.5-flash-lite\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-3.5-flash-lite\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Gemini 3.5 Flash Lite\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 3.5 Flash-Lite is the low-latency, high-throughput tier of Google's Gemini 3.5 family, released in July 2026 and described by Google as its fastest 3.5-class model. It is optimized for subagent tasks, document parsing, high-volume agentic workflows and simple data extraction where latency and throughput matter most. It accepts text, image, video, audio and PDF input, supports thinking and tool use, and is Google's recommended successor to Gemini 3.1 Flash-Lite.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3.5-flash-lite.\",\"default\":\"google/gemini-3.5-flash-lite\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3.5-flash-lite\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-3.5-flash-lite\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Gemini 3.5 Flash Lite" modelId: "google/gemini-3.5-flash-lite" diff --git a/model-api-reference/llm-models/google/gemini-3.5-flash.md b/model-api-reference/llm-models/google/gemini-3.5-flash.md index 70a48b43..23c9ca68 100644 --- a/model-api-reference/llm-models/google/gemini-3.5-flash.md +++ b/model-api-reference/llm-models/google/gemini-3.5-flash.md @@ -4,7 +4,7 @@ description: "Gemini 3.5 Flash API reference for SandBase. Use model google/gemi aside: false outline: false apiReferenceKey: "llm/google/gemini-3.5-flash" -apiReferenceJson: "{\"title\":\"Gemini 3.5 Flash\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 3.5 Flash is Google's high-efficiency multimodal model, bringing near-Pro level coding and reasoning at Flash-tier cost and speed. It is highly optimized for coding proficiency and parallel agentic execution loops, supporting text, image, video, audio, and PDF inputs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3.5-flash.\",\"default\":\"google/gemini-3.5-flash\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3.5-flash\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-3.5-flash\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Gemini 3.5 Flash\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 3.5 Flash is the Flash model of Google's Gemini 3.5 family, introduced at Google I/O in May 2026. Google positions it as delivering frontier-level intelligence at Flash speed, built for sub-agent deployment, multi-step workflows and long-horizon tasks at scale, and particularly effective in rapid agentic loops with complex coding iterations. It takes text, image, video, audio and PDF input with text output; Google's model list now labels it a legacy Flash model behind 3.6, 3.7 and 3.8 Flash.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3.5-flash.\",\"default\":\"google/gemini-3.5-flash\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3.5-flash\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-3.5-flash\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Gemini 3.5 Flash" modelId: "google/gemini-3.5-flash" diff --git a/model-api-reference/llm-models/google/gemini-3.6-flash.md b/model-api-reference/llm-models/google/gemini-3.6-flash.md index b02df957..c4d0af23 100644 --- a/model-api-reference/llm-models/google/gemini-3.6-flash.md +++ b/model-api-reference/llm-models/google/gemini-3.6-flash.md @@ -4,7 +4,7 @@ description: "Gemini 3.6 Flash API reference for SandBase. Use model google/gemi aside: false outline: false apiReferenceKey: "llm/google/gemini-3.6-flash" -apiReferenceJson: "{\"title\":\"Gemini 3.6 Flash\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 3.6 Flash is a high-efficiency multimodal model from Google for coding, agentic workflows, and web and app development. It produces polished outputs with fewer unnecessary edits.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3.6-flash.\",\"default\":\"google/gemini-3.6-flash\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3.6-flash\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-3.6-flash\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Gemini 3.6 Flash\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 3.6 Flash is a multimodal reasoning model in Google's Gemini 3 Flash line, released in July 2026 alongside 3.5 Flash-Lite. Google describes it as delivering frontier-level intelligence at higher speed for real-world agentic work, excelling at code generation, agentic execution and spatial reasoning, and particularly effective in rapid agentic loops with repeated coding iterations. It is Google's recommended replacement for the Gemini 3 Flash preview; 3.7 Flash and 3.8 Flash followed it.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3.6-flash.\",\"default\":\"google/gemini-3.6-flash\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3.6-flash\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-3.6-flash\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Gemini 3.6 Flash" modelId: "google/gemini-3.6-flash" diff --git a/model-api-reference/llm-models/google/gemini-3.7-flash.md b/model-api-reference/llm-models/google/gemini-3.7-flash.md index ce430f96..60c3f990 100644 --- a/model-api-reference/llm-models/google/gemini-3.7-flash.md +++ b/model-api-reference/llm-models/google/gemini-3.7-flash.md @@ -4,7 +4,7 @@ description: "Gemini 3.7 Flash API reference for SandBase. Use model google/gemi aside: false outline: false apiReferenceKey: "llm/google/gemini-3.7-flash" -apiReferenceJson: "{\"title\":\"Gemini 3.7 Flash\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 3.7 Flash is a multimodal model from Google for fast agentic workflows, coding, and complex multi-step reasoning. It is designed for responsive performance and reliable multi-step execution.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3.7-flash.\",\"default\":\"google/gemini-3.7-flash\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3.7-flash\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-3.7-flash\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Gemini 3.7 Flash\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 3.7 Flash is a natively multimodal reasoning model in Google's Gemini 3 Flash line, released in August 2026, three weeks after 3.6 Flash. Google positions it as an everyday driver for developers, with improvements in software engineering, knowledge work, web development, instruction following and tool calling. It takes text, image, video, audio and PDF input and returns text; Gemini 3.8 Flash, released in September 2026, has since succeeded it as Google's top Flash model.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3.7-flash.\",\"default\":\"google/gemini-3.7-flash\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3.7-flash\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-3.7-flash\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Gemini 3.7 Flash" modelId: "google/gemini-3.7-flash" diff --git a/model-api-reference/llm-models/google/gemini-3.8-flash.md b/model-api-reference/llm-models/google/gemini-3.8-flash.md index 2f345492..abc08cc4 100644 --- a/model-api-reference/llm-models/google/gemini-3.8-flash.md +++ b/model-api-reference/llm-models/google/gemini-3.8-flash.md @@ -4,7 +4,7 @@ description: "Gemini 3.8 Flash API reference for SandBase. Use model google/gemi aside: false outline: false apiReferenceKey: "llm/google/gemini-3.8-flash" -apiReferenceJson: "{\"title\":\"Gemini 3.8 Flash\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 3.8 Flash is Google's most intelligent Flash model with significant gains from 3.7 Flash across software engineering, agentic tasks, and multi-step reasoning.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3.8-flash.\",\"default\":\"google/gemini-3.8-flash\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3.8-flash\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-3.8-flash\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Gemini 3.8 Flash\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 3.8 Flash is a Flash-tier reasoning model in Google's Gemini 3 series, released in September 2026 and described by Google as its most intelligent Flash model as of release. Google positions it for long-horizon software engineering, autonomous agents and complex enterprise workflows, with significant gains over 3.7 Flash in coding, agentic tasks and multi-step reasoning in specialized domains. It accepts text, image, video, audio and PDF input with text output, and suits demanding agentic and coding work.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-3.8-flash.\",\"default\":\"google/gemini-3.8-flash\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-3.8-flash\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-3.8-flash\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Gemini 3.8 Flash" modelId: "google/gemini-3.8-flash" diff --git a/model-api-reference/llm-models/google/gemini-4-argon.md b/model-api-reference/llm-models/google/gemini-4-argon.md new file mode 100644 index 00000000..4cd9fd28 --- /dev/null +++ b/model-api-reference/llm-models/google/gemini-4-argon.md @@ -0,0 +1,21 @@ +--- +title: "Gemini 4 Argon API Reference" +description: "Gemini 4 Argon API reference for SandBase. Use model google/gemini-4-argon with /v1/chat/completions; see request and response examples." +aside: false +outline: false +apiReferenceKey: "llm/google/gemini-4-argon" +apiReferenceJson: "{\"title\":\"Gemini 4 Argon\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemini 4 Argon is Google's frontier reasoning model announced on September 30, 2026; it is not yet generally available on SandBase, and specifications and pricing will be confirmed at launch. Google built it to sustain deep reasoning across long-horizon work in software engineering, enterprise knowledge work such as legal and finance, and cybersecurity defense, and announced an output token limit of up to 1M tokens. It is currently rolling out only to trusted cyber defenders and testers, with developer API access to follow.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-4-argon.\",\"default\":\"google/gemini-4-argon\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 1048576\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, coming-soon\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-4-argon\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-4-argon\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +seo: + modelName: "Gemini 4 Argon" + modelId: "google/gemini-4-argon" + vendor: "Google" + vendorSlug: "google" + modelSlug: "gemini-4-argon" + protocol: "Chat Completions API" + endpoint: "/v1/chat/completions" + publishedAt: "2026-09-30T00:00:00Z" + capabilities: ["chat","vision","reasoning","coming-soon"] + category: "LLM Models" +--- + + diff --git a/model-api-reference/llm-models/google/gemini-nano-banana-2.1.md b/model-api-reference/llm-models/google/gemini-nano-banana-2.1.md new file mode 100644 index 00000000..f8f0180c --- /dev/null +++ b/model-api-reference/llm-models/google/gemini-nano-banana-2.1.md @@ -0,0 +1,21 @@ +--- +title: "Nano Banana 2.1 (Gemini Nano Banana 2.1) API Reference" +description: "Nano Banana 2.1 (Gemini Nano Banana 2.1) API reference for SandBase. Use model google/gemini-nano-banana-2.1 with /v1/chat/completions; see request and response examples." +aside: false +outline: false +apiReferenceKey: "llm/google/gemini-nano-banana-2.1" +apiReferenceJson: "{\"title\":\"Nano Banana 2.1 (Gemini Nano Banana 2.1)\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Nano Banana 2.1 (Gemini Nano Banana 2.1) is Google's Flash-tier image generation and editing model, succeeding Nano Banana 2 and producing images alongside text through the native Gemini generateContent API. It improves prompt adherence, text rendering, product recontextualization and multi-turn editing consistency, supports extreme aspect ratios and 1K to 4K output, and can ground generation with Google web and image search. Pick Nano Banana Pro instead for the most demanding professional design work.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-nano-banana-2.1.\",\"default\":\"google/gemini-nano-banana-2.1\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, image_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"65536 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-nano-banana-2.1\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemini-nano-banana-2.1\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +seo: + modelName: "Nano Banana 2.1 (Gemini Nano Banana 2.1)" + modelId: "google/gemini-nano-banana-2.1" + vendor: "Google" + vendorSlug: "google" + modelSlug: "gemini-nano-banana-2.1" + protocol: "Chat Completions API" + endpoint: "/v1/chat/completions" + publishedAt: "2026-10-08T13:00:00Z" + capabilities: ["chat","vision","reasoning","image_output"] + category: "LLM Models" +--- + + diff --git a/model-api-reference/llm-models/google/gemma-2-27b-it.md b/model-api-reference/llm-models/google/gemma-2-27b-it.md deleted file mode 100644 index 8429ab68..00000000 --- a/model-api-reference/llm-models/google/gemma-2-27b-it.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Gemma 2 27B API Reference" -description: "Gemma 2 27B API reference for SandBase. Use model google/gemma-2-27b-it with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/google/gemma-2-27b-it" -apiReferenceJson: "{\"title\":\"Gemma 2 27B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemma 2 27B by Google is an open model built from the same research and technology used to create the Gemini models.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemma-2-27b-it.\",\"default\":\"google/gemma-2-27b-it\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 2048\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"8192 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemma-2-27b-it\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemma-2-27b-it\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Gemma 2 27B" - modelId: "google/gemma-2-27b-it" - vendor: "Google" - vendorSlug: "google" - modelSlug: "gemma-2-27b-it" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-07-13T00:00:00Z" - capabilities: ["chat","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/google/gemma-3-12b-it.md b/model-api-reference/llm-models/google/gemma-3-12b-it.md deleted file mode 100644 index c1f3cd61..00000000 --- a/model-api-reference/llm-models/google/gemma-3-12b-it.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Gemma 3 12B API Reference" -description: "Gemma 3 12B API reference for SandBase. Use model google/gemma-3-12b-it with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/google/gemma-3-12b-it" -apiReferenceJson: "{\"title\":\"Gemma 3 12B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemma 3 introduces multimodality, supporting vision-language input and text outputs. It handles context windows up to 128k tokens, understands over 140 languages, and offers improved math, reasoning, and chat capabilities, including structured outputs and function calling. Gemma 3 12B is the second largest in the family of Gemma 3 models after Gemma 3 27B\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemma-3-12b-it.\",\"default\":\"google/gemma-3-12b-it\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemma-3-12b-it\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemma-3-12b-it\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Gemma 3 12B" - modelId: "google/gemma-3-12b-it" - vendor: "Google" - vendorSlug: "google" - modelSlug: "gemma-3-12b-it" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-03-13T21:50:25.14Z" - capabilities: ["chat","vision","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/google/gemma-3-27b-it.md b/model-api-reference/llm-models/google/gemma-3-27b-it.md deleted file mode 100644 index 738e507e..00000000 --- a/model-api-reference/llm-models/google/gemma-3-27b-it.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Gemma 3 27B API Reference" -description: "Gemma 3 27B API reference for SandBase. Use model google/gemma-3-27b-it with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/google/gemma-3-27b-it" -apiReferenceJson: "{\"title\":\"Gemma 3 27B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemma 3 introduces multimodality, supporting vision-language input and text outputs. It handles context windows up to 128k tokens, understands over 140 languages, and offers improved math, reasoning, and chat capabilities, including structured outputs and function calling. Gemma 3 27B is Google's available open source model, successor to Gemma 2\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemma-3-27b-it.\",\"default\":\"google/gemma-3-27b-it\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemma-3-27b-it\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemma-3-27b-it\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Gemma 3 27B" - modelId: "google/gemma-3-27b-it" - vendor: "Google" - vendorSlug: "google" - modelSlug: "gemma-3-27b-it" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-03-12T05:12:39.645Z" - capabilities: ["chat","vision","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/google/gemma-3-4b-it.md b/model-api-reference/llm-models/google/gemma-3-4b-it.md deleted file mode 100644 index 6553d161..00000000 --- a/model-api-reference/llm-models/google/gemma-3-4b-it.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Gemma 3 4B API Reference" -description: "Gemma 3 4B API reference for SandBase. Use model google/gemma-3-4b-it with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/google/gemma-3-4b-it" -apiReferenceJson: "{\"title\":\"Gemma 3 4B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemma 3 introduces multimodality, supporting vision-language input and text outputs. It handles context windows up to 128k tokens, understands over 140 languages, and offers improved math, reasoning, and chat capabilities, including structured outputs and function calling.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemma-3-4b-it.\",\"default\":\"google/gemma-3-4b-it\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemma-3-4b-it\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemma-3-4b-it\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Gemma 3 4B" - modelId: "google/gemma-3-4b-it" - vendor: "Google" - vendorSlug: "google" - modelSlug: "gemma-3-4b-it" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-03-13T22:38:30.653Z" - capabilities: ["chat","vision","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/google/gemma-3n-e4b-it.md b/model-api-reference/llm-models/google/gemma-3n-e4b-it.md deleted file mode 100644 index 69df0756..00000000 --- a/model-api-reference/llm-models/google/gemma-3n-e4b-it.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Gemma 3n 4B API Reference" -description: "Gemma 3n 4B API reference for SandBase. Use model google/gemma-3n-e4b-it with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/google/gemma-3n-e4b-it" -apiReferenceJson: "{\"title\":\"Gemma 3n 4B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemma 3n E4B-it is optimized for efficient execution on mobile and low-resource devices, such as phones, laptops, and tablets. It supports multimodal inputs—including text, visual data, and audio—enabling diverse tasks such as text generation, speech recognition, translation, and image analysis. Leveraging innovations like Per-Layer Embedding (PLE) caching and the MatFormer architecture, Gemma 3n dynamically manages memory usage and computational load by selectively activating model parameters, significantly reducing runtime resource requirements.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemma-3n-e4b-it.\",\"default\":\"google/gemma-3n-e4b-it\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"32768 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemma-3n-e4b-it\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemma-3n-e4b-it\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Gemma 3n 4B" - modelId: "google/gemma-3n-e4b-it" - vendor: "Google" - vendorSlug: "google" - modelSlug: "gemma-3n-e4b-it" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-05-20T21:33:44.157Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/google/gemma-4-26b-a4b-it.md b/model-api-reference/llm-models/google/gemma-4-26b-a4b-it.md deleted file mode 100644 index e118e7a6..00000000 --- a/model-api-reference/llm-models/google/gemma-4-26b-a4b-it.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Gemma 4 26B A4B API Reference" -description: "Gemma 4 26B A4B API reference for SandBase. Use model google/gemma-4-26b-a4b-it with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/google/gemma-4-26b-a4b-it" -apiReferenceJson: "{\"title\":\"Gemma 4 26B A4B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemma 4 26B A4B IT is an instruction-tuned Mixture-of-Experts (MoE) model from Google DeepMind. Despite 25.2B total parameters, only 3.8B activate per token during inference — delivering near-31B quality at a fraction of the compute cost. Supports multimodal input including text, images, and video (up to 60s at 1fps). Features a 256K token context window, native function calling, configurable thinking/reasoning mode, and structured output support. Released under Apache 2.0.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemma-4-26b-a4b-it.\",\"default\":\"google/gemma-4-26b-a4b-it\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 262144\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemma-4-26b-a4b-it\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemma-4-26b-a4b-it\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Gemma 4 26B A4B" - modelId: "google/gemma-4-26b-a4b-it" - vendor: "Google" - vendorSlug: "google" - modelSlug: "gemma-4-26b-a4b-it" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-04-03T14:53:09.504Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/google/gemma-4-31b-it.md b/model-api-reference/llm-models/google/gemma-4-31b-it.md deleted file mode 100644 index 384e41fb..00000000 --- a/model-api-reference/llm-models/google/gemma-4-31b-it.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Gemma 4 31B API Reference" -description: "Gemma 4 31B API reference for SandBase. Use model google/gemma-4-31b-it with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/google/gemma-4-31b-it" -apiReferenceJson: "{\"title\":\"Gemma 4 31B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Gemma 4 31B Instruct is Google DeepMind's 30.7B dense multimodal model supporting text and image input with text output. Features a 256K token context window, configurable thinking/reasoning mode, native function calling, and multilingual support across 140+ languages. Strong on coding, reasoning, and document understanding tasks. Apache 2.0 license.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemma-4-31b-it.\",\"default\":\"google/gemma-4-31b-it\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemma-4-31b-it\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/gemma-4-31b-it\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Gemma 4 31B" - modelId: "google/gemma-4-31b-it" - vendor: "Google" - vendorSlug: "google" - modelSlug: "gemma-4-31b-it" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-04-02T16:48:06.471Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/google/lyria-3-clip-preview.md b/model-api-reference/llm-models/google/lyria-3-clip-preview.md deleted file mode 100644 index 525d475e..00000000 --- a/model-api-reference/llm-models/google/lyria-3-clip-preview.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Lyria 3 Clip Preview API Reference" -description: "Lyria 3 Clip Preview API reference for SandBase. Use model google/lyria-3-clip-preview with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/google/lyria-3-clip-preview" -apiReferenceJson: "{\"title\":\"Lyria 3 Clip Preview\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"30 second duration clips are priced at $0.04 per clip. Lyria 3 is Google's family of music generation models, available through the Gemini API. With Lyria 3, you can generate high-quality, 48kHz stereo audio from text prompts or from images. These models deliver structural coherence, including vocals, timed lyrics, and full instrumental arrangements. Lyria 3 Clip can generate short clips, loops, previews.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/lyria-3-clip-preview.\",\"default\":\"google/lyria-3-clip-preview\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/lyria-3-clip-preview\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/lyria-3-clip-preview\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Lyria 3 Clip Preview" - modelId: "google/lyria-3-clip-preview" - vendor: "Google" - vendorSlug: "google" - modelSlug: "lyria-3-clip-preview" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-03-30T21:47:35.284Z" - capabilities: ["chat","vision","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/google/lyria-3-pro-preview.md b/model-api-reference/llm-models/google/lyria-3-pro-preview.md deleted file mode 100644 index 5326af88..00000000 --- a/model-api-reference/llm-models/google/lyria-3-pro-preview.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Lyria 3 Pro Preview API Reference" -description: "Lyria 3 Pro Preview API reference for SandBase. Use model google/lyria-3-pro-preview with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/google/lyria-3-pro-preview" -apiReferenceJson: "{\"title\":\"Lyria 3 Pro Preview\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Full-length songs are priced at $0.08 per song. Lyria 3 is Google's family of music generation models, available through the Gemini API. With Lyria 3, you can generate high-quality, 48kHz stereo audio from text prompts or from images. These models deliver structural coherence, including vocals, timed lyrics, and full instrumental arrangements. Lyria 3 Pro can generate full-length songs with verses, choruses, bridges.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/lyria-3-pro-preview.\",\"default\":\"google/lyria-3-pro-preview\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/lyria-3-pro-preview\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"google/lyria-3-pro-preview\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Lyria 3 Pro Preview" - modelId: "google/lyria-3-pro-preview" - vendor: "Google" - vendorSlug: "google" - modelSlug: "lyria-3-pro-preview" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-03-30T21:48:06.546Z" - capabilities: ["chat","vision","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/gryphe/mythomax-l2-13b.md b/model-api-reference/llm-models/gryphe/mythomax-l2-13b.md deleted file mode 100644 index 93b88a33..00000000 --- a/model-api-reference/llm-models/gryphe/mythomax-l2-13b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MythoMax 13B API Reference" -description: "MythoMax 13B API reference for SandBase. Use model gryphe/mythomax-l2-13b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/gryphe/mythomax-l2-13b" -apiReferenceJson: "{\"title\":\"MythoMax 13B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"One of the highest performing and most popular fine-tunes of Llama 2 13B, with rich descriptions and roleplay. #merge\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to gryphe/mythomax-l2-13b.\",\"default\":\"gryphe/mythomax-l2-13b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 4096\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"4096 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gryphe/mythomax-l2-13b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"gryphe/mythomax-l2-13b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "MythoMax 13B" - modelId: "gryphe/mythomax-l2-13b" - vendor: "Gryphe" - vendorSlug: "gryphe" - modelSlug: "mythomax-l2-13b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2023-07-02T00:00:00Z" - capabilities: ["chat","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/ibm-granite/granite-4.0-h-micro.md b/model-api-reference/llm-models/ibm-granite/granite-4.0-h-micro.md deleted file mode 100644 index 88a41c65..00000000 --- a/model-api-reference/llm-models/ibm-granite/granite-4.0-h-micro.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "IBM: Granite 4.0 Micro API Reference" -description: "IBM: Granite 4.0 Micro API reference for SandBase. Use model ibm-granite/granite-4.0-h-micro with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/ibm-granite/granite-4.0-h-micro" -apiReferenceJson: "{\"title\":\"IBM: Granite 4.0 Micro\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Granite-4.0-H-Micro is a 3B parameter from the Granite 4 family of models. These models are the available in a series of models released by IBM. They are fine-tuned for long context tool calling.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ibm-granite/granite-4.0-h-micro.\",\"default\":\"ibm-granite/granite-4.0-h-micro\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ibm-granite/granite-4.0-h-micro\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"ibm-granite/granite-4.0-h-micro\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "IBM: Granite 4.0 Micro" - modelId: "ibm-granite/granite-4.0-h-micro" - vendor: "Ibm-Granite" - vendorSlug: "ibm-granite" - modelSlug: "granite-4.0-h-micro" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-10-20T02:34:55.126Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/ibm-granite/granite-4.1-8b.md b/model-api-reference/llm-models/ibm-granite/granite-4.1-8b.md deleted file mode 100644 index 0604aeff..00000000 --- a/model-api-reference/llm-models/ibm-granite/granite-4.1-8b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "IBM: Granite 4.1 8B API Reference" -description: "IBM: Granite 4.1 8B API reference for SandBase. Use model ibm-granite/granite-4.1-8b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/ibm-granite/granite-4.1-8b" -apiReferenceJson: "{\"title\":\"IBM: Granite 4.1 8B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Granite 4.1 8B is a dense, decoder-only 8-billion-parameter language model from IBM, part of the Granite 4.1 family. It supports a 131K-token context window and is designed for enterprise tasks including tool calling, retrieval-augmented generation (RAG), code generation with fill-in-the-middle support, text summarization, classification, and extraction.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to ibm-granite/granite-4.1-8b.\",\"default\":\"ibm-granite/granite-4.1-8b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"ibm-granite/granite-4.1-8b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"ibm-granite/granite-4.1-8b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "IBM: Granite 4.1 8B" - modelId: "ibm-granite/granite-4.1-8b" - vendor: "Ibm-Granite" - vendorSlug: "ibm-granite" - modelSlug: "granite-4.1-8b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-04-30T19:24:31.868Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/inception/mercury-2.md b/model-api-reference/llm-models/inception/mercury-2.md deleted file mode 100644 index 14e1d415..00000000 --- a/model-api-reference/llm-models/inception/mercury-2.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Mercury 2 API Reference" -description: "Mercury 2 API reference for SandBase. Use model inception/mercury-2 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/inception/mercury-2" -apiReferenceJson: "{\"title\":\"Mercury 2\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Mercury 2 is an extremely fast reasoning LLM, and the first reasoning diffusion LLM (dLLM). Instead of generating tokens sequentially, Mercury 2 produces and refines multiple tokens in parallel, achieving >1,000 tokens/sec on standard GPUs. Mercury 2 is 5x+ faster than leading speed-optimized LLMs like Claude 4.5 Haiku and GPT 5 Mini, at a fraction of the cost. Mercury 2 supports tunable reasoning levels, 128K context, native tool use, and schema-aligned JSON output. Built for coding workflows where latency compounds, real-time voice/search, and agent loops. OpenAI API compatible. Read more in the blog post.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to inception/mercury-2.\",\"default\":\"inception/mercury-2\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 50000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"inception/mercury-2\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"inception/mercury-2\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Mercury 2" - modelId: "inception/mercury-2" - vendor: "Inception" - vendorSlug: "inception" - modelSlug: "mercury-2" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-03-04T14:57:55.767Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/inclusionai/ling-2.6-1t.md b/model-api-reference/llm-models/inclusionai/ling-2.6-1t.md deleted file mode 100644 index 35256afb..00000000 --- a/model-api-reference/llm-models/inclusionai/ling-2.6-1t.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "inclusionAI: Ling-2.6-1T API Reference" -description: "inclusionAI: Ling-2.6-1T API reference for SandBase. Use model inclusionai/ling-2.6-1t with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/inclusionai/ling-2.6-1t" -apiReferenceJson: "{\"title\":\"inclusionAI: Ling-2.6-1T\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Ling-2.6-1T is an instant (instruct) model from inclusionAI and the company’s trillion-parameter flagship, designed for real-world agents that require fast execution and high efficiency at scale. It uses a “fast thinking” approach to reduce costs to roughly a quarter of comparable models while maintaining top-tier performance.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to inclusionai/ling-2.6-1t.\",\"default\":\"inclusionai/ling-2.6-1t\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"inclusionai/ling-2.6-1t\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"inclusionai/ling-2.6-1t\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "inclusionAI: Ling-2.6-1T" - modelId: "inclusionai/ling-2.6-1t" - vendor: "Inclusionai" - vendorSlug: "inclusionai" - modelSlug: "ling-2.6-1t" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-04-23T12:43:58.266Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/inclusionai/ling-2.6-flash.md b/model-api-reference/llm-models/inclusionai/ling-2.6-flash.md deleted file mode 100644 index 5cd472aa..00000000 --- a/model-api-reference/llm-models/inclusionai/ling-2.6-flash.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "inclusionAI: Ling-2.6-flash API Reference" -description: "inclusionAI: Ling-2.6-flash API reference for SandBase. Use model inclusionai/ling-2.6-flash with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/inclusionai/ling-2.6-flash" -apiReferenceJson: "{\"title\":\"inclusionAI: Ling-2.6-flash\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Ling-2.6-flash is an instant (instruct) model from inclusionAI with 104B total parameters and 7.4B active parameters, designed for real-world agents that require fast responses, strong execution, and high token efficiency. It delivers performance comparable to state-of-the-art models at a similar scale while significantly reducing token usage across coding, document processing, and lightweight agent workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to inclusionai/ling-2.6-flash.\",\"default\":\"inclusionai/ling-2.6-flash\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"inclusionai/ling-2.6-flash\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"inclusionai/ling-2.6-flash\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "inclusionAI: Ling-2.6-flash" - modelId: "inclusionai/ling-2.6-flash" - vendor: "Inclusionai" - vendorSlug: "inclusionai" - modelSlug: "ling-2.6-flash" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-04-21T18:24:46.183Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/inclusionai/ring-2.6-1t.md b/model-api-reference/llm-models/inclusionai/ring-2.6-1t.md deleted file mode 100644 index ccb9627e..00000000 --- a/model-api-reference/llm-models/inclusionai/ring-2.6-1t.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "inclusionAI: Ring-2.6-1T API Reference" -description: "inclusionAI: Ring-2.6-1T API reference for SandBase. Use model inclusionai/ring-2.6-1t with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/inclusionai/ring-2.6-1t" -apiReferenceJson: "{\"title\":\"inclusionAI: Ring-2.6-1T\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Ring-2.6-1T is a 1T-parameter-scale thinking model with 63B active parameters, built for real-world agent workflows that require both strong capability and operational efficiency. It is optimized for coding agents, tool use, and long-horizon task execution, delivering leading results on benchmarks including PinchBench, ClawEval, TAU2-Bench, and GAIA2-search.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to inclusionai/ring-2.6-1t.\",\"default\":\"inclusionai/ring-2.6-1t\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"inclusionai/ring-2.6-1t\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"inclusionai/ring-2.6-1t\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "inclusionAI: Ring-2.6-1T" - modelId: "inclusionai/ring-2.6-1t" - vendor: "Inclusionai" - vendorSlug: "inclusionai" - modelSlug: "ring-2.6-1t" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-05-08T13:37:20.749Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/inflection/inflection-3-pi.md b/model-api-reference/llm-models/inflection/inflection-3-pi.md deleted file mode 100644 index 377763c4..00000000 --- a/model-api-reference/llm-models/inflection/inflection-3-pi.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Inflection 3 Pi API Reference" -description: "Inflection 3 Pi API reference for SandBase. Use model inflection/inflection-3-pi with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/inflection/inflection-3-pi" -apiReferenceJson: "{\"title\":\"Inflection 3 Pi\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Inflection 3 Pi powers Inflection's Pi chatbot, including backstory, emotional intelligence, productivity, and safety. It has access to recent news, and excels in scenarios like customer support and roleplay.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to inflection/inflection-3-pi.\",\"default\":\"inflection/inflection-3-pi\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 1024\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"8000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"inflection/inflection-3-pi\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"inflection/inflection-3-pi\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Inflection 3 Pi" - modelId: "inflection/inflection-3-pi" - vendor: "Inflection" - vendorSlug: "inflection" - modelSlug: "inflection-3-pi" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-10-11T00:00:00Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/inflection/inflection-3-productivity.md b/model-api-reference/llm-models/inflection/inflection-3-productivity.md deleted file mode 100644 index 2d80ac2d..00000000 --- a/model-api-reference/llm-models/inflection/inflection-3-productivity.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Inflection 3 Productivity API Reference" -description: "Inflection 3 Productivity API reference for SandBase. Use model inflection/inflection-3-productivity with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/inflection/inflection-3-productivity" -apiReferenceJson: "{\"title\":\"Inflection 3 Productivity\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Inflection 3 Productivity is optimized for following instructions. It is better for tasks requiring JSON output or precise adherence to provided guidelines. It has access to recent news.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to inflection/inflection-3-productivity.\",\"default\":\"inflection/inflection-3-productivity\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 1024\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"8000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"inflection/inflection-3-productivity\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"inflection/inflection-3-productivity\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Inflection 3 Productivity" - modelId: "inflection/inflection-3-productivity" - vendor: "Inflection" - vendorSlug: "inflection" - modelSlug: "inflection-3-productivity" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-10-11T00:00:00Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/kwaipilot/kat-coder-pro-v2.md b/model-api-reference/llm-models/kwaipilot/kat-coder-pro-v2.md deleted file mode 100644 index c42fdb31..00000000 --- a/model-api-reference/llm-models/kwaipilot/kat-coder-pro-v2.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "KAT-Coder-Pro V2 API Reference" -description: "KAT-Coder-Pro V2 API reference for SandBase. Use model kwaipilot/kat-coder-pro-v2 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/kwaipilot/kat-coder-pro-v2" -apiReferenceJson: "{\"title\":\"KAT-Coder-Pro V2\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"KAT-Coder-Pro V2 is the available high-performance model in KwaiKAT’s KAT-Coder series, designed for complex enterprise-grade software engineering and SaaS integration. It builds on the agentic coding strengths of earlier versions, with a focus on large-scale production environments, multi-system coordination, and seamless integration across modern software stacks, while also supporting web aesthetics generation to produce production-grade landing pages and presentation decks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaipilot/kat-coder-pro-v2.\",\"default\":\"kwaipilot/kat-coder-pro-v2\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 80000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"256000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaipilot/kat-coder-pro-v2\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"kwaipilot/kat-coder-pro-v2\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "KAT-Coder-Pro V2" - modelId: "kwaipilot/kat-coder-pro-v2" - vendor: "Kwaipilot" - vendorSlug: "kwaipilot" - modelSlug: "kat-coder-pro-v2" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-03-27T22:08:30.64Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/liquid/lfm-2-24b-a2b.md b/model-api-reference/llm-models/liquid/lfm-2-24b-a2b.md deleted file mode 100644 index 3a11d1a4..00000000 --- a/model-api-reference/llm-models/liquid/lfm-2-24b-a2b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LiquidAI: LFM2-24B-A2B API Reference" -description: "LiquidAI: LFM2-24B-A2B API reference for SandBase. Use model liquid/lfm-2-24b-a2b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/liquid/lfm-2-24b-a2b" -apiReferenceJson: "{\"title\":\"LiquidAI: LFM2-24B-A2B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"LFM2-24B-A2B is the largest model in the LFM2 family of hybrid architectures designed for efficient on-device deployment. Built as a 24B parameter Mixture-of-Experts model with only 2B active parameters per token, it delivers high-quality generation while maintaining low inference costs. The model fits within 32 GB of RAM, making it practical to run on consumer laptops and desktops without sacrificing capability.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to liquid/lfm-2-24b-a2b.\",\"default\":\"liquid/lfm-2-24b-a2b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"32768 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"liquid/lfm-2-24b-a2b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"liquid/lfm-2-24b-a2b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "LiquidAI: LFM2-24B-A2B" - modelId: "liquid/lfm-2-24b-a2b" - vendor: "Liquid" - vendorSlug: "liquid" - modelSlug: "lfm-2-24b-a2b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-02-25T19:45:11.111Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/mancer/weaver.md b/model-api-reference/llm-models/mancer/weaver.md deleted file mode 100644 index b6dcbed2..00000000 --- a/model-api-reference/llm-models/mancer/weaver.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Weaver (alpha) API Reference" -description: "Weaver (alpha) API reference for SandBase. Use model mancer/weaver with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/mancer/weaver" -apiReferenceJson: "{\"title\":\"Weaver (alpha)\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"An attempt to recreate Claude-style verbosity, but don't expect the same level of coherence or memory. Meant for use in roleplay/narrative situations.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mancer/weaver.\",\"default\":\"mancer/weaver\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 2000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"8000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mancer/weaver\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"mancer/weaver\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Weaver (alpha)" - modelId: "mancer/weaver" - vendor: "Mancer" - vendorSlug: "mancer" - modelSlug: "weaver" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2023-08-02T00:00:00Z" - capabilities: ["chat","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/meta/llama-3-70b-instruct.md b/model-api-reference/llm-models/meta/llama-3-70b-instruct.md deleted file mode 100644 index 9ca95aa5..00000000 --- a/model-api-reference/llm-models/meta/llama-3-70b-instruct.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Llama 3 70B Instruct API Reference" -description: "Llama 3 70B Instruct API reference for SandBase. Use model meta/llama-3-70b-instruct with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/meta/llama-3-70b-instruct" -apiReferenceJson: "{\"title\":\"Llama 3 70B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Meta's available class of model (Llama 3) launched with a variety of sizes & flavors. This 70B instruct-tuned version was optimized for high quality dialogue usecases. It has demonstrated strong...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/llama-3-70b-instruct.\",\"default\":\"meta/llama-3-70b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 8000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"8192 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/llama-3-70b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"meta/llama-3-70b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Llama 3 70B Instruct" - modelId: "meta/llama-3-70b-instruct" - vendor: "Meta" - vendorSlug: "meta" - modelSlug: "llama-3-70b-instruct" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-04-18T00:00:00Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/meta/llama-3-8b-instruct.md b/model-api-reference/llm-models/meta/llama-3-8b-instruct.md deleted file mode 100644 index a40523db..00000000 --- a/model-api-reference/llm-models/meta/llama-3-8b-instruct.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Llama 3 8B Instruct API Reference" -description: "Llama 3 8B Instruct API reference for SandBase. Use model meta/llama-3-8b-instruct with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/meta/llama-3-8b-instruct" -apiReferenceJson: "{\"title\":\"Llama 3 8B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Meta's available class of model (Llama 3) launched with a variety of sizes & flavors. This 8B instruct-tuned version was optimized for high quality dialogue usecases. It has demonstrated strong...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/llama-3-8b-instruct.\",\"default\":\"meta/llama-3-8b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 8192\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"8192 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/llama-3-8b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"meta/llama-3-8b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Llama 3 8B Instruct" - modelId: "meta/llama-3-8b-instruct" - vendor: "Meta" - vendorSlug: "meta" - modelSlug: "llama-3-8b-instruct" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-04-18T00:00:00Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/meta/llama-3.1-70b-instruct.md b/model-api-reference/llm-models/meta/llama-3.1-70b-instruct.md deleted file mode 100644 index 9d373a4d..00000000 --- a/model-api-reference/llm-models/meta/llama-3.1-70b-instruct.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Llama 3.1 70B Instruct API Reference" -description: "Llama 3.1 70B Instruct API reference for SandBase. Use model meta/llama-3.1-70b-instruct with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/meta/llama-3.1-70b-instruct" -apiReferenceJson: "{\"title\":\"Llama 3.1 70B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Meta's available class of model (Llama 3.1) launched with a variety of sizes & flavors. This 70B instruct-tuned version is optimized for high quality dialogue usecases. It has demonstrated strong...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/llama-3.1-70b-instruct.\",\"default\":\"meta/llama-3.1-70b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/llama-3.1-70b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"meta/llama-3.1-70b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Llama 3.1 70B Instruct" - modelId: "meta/llama-3.1-70b-instruct" - vendor: "Meta" - vendorSlug: "meta" - modelSlug: "llama-3.1-70b-instruct" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-07-23T00:00:00Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/meta/llama-3.1-8b-instruct.md b/model-api-reference/llm-models/meta/llama-3.1-8b-instruct.md deleted file mode 100644 index c9456237..00000000 --- a/model-api-reference/llm-models/meta/llama-3.1-8b-instruct.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Llama 3.1 8B Instruct API Reference" -description: "Llama 3.1 8B Instruct API reference for SandBase. Use model meta/llama-3.1-8b-instruct with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/meta/llama-3.1-8b-instruct" -apiReferenceJson: "{\"title\":\"Llama 3.1 8B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Meta's available class of model (Llama 3.1) launched with a variety of sizes & flavors. This 8B instruct-tuned version is fast and efficient. It has demonstrated strong performance compared to...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/llama-3.1-8b-instruct.\",\"default\":\"meta/llama-3.1-8b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"16384 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/llama-3.1-8b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"meta/llama-3.1-8b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Llama 3.1 8B Instruct" - modelId: "meta/llama-3.1-8b-instruct" - vendor: "Meta" - vendorSlug: "meta" - modelSlug: "llama-3.1-8b-instruct" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-07-23T00:00:00Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/meta/llama-3.2-11b-vision-instruct.md b/model-api-reference/llm-models/meta/llama-3.2-11b-vision-instruct.md deleted file mode 100644 index eca86f99..00000000 --- a/model-api-reference/llm-models/meta/llama-3.2-11b-vision-instruct.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Llama 3.2 11B Vision Instruct API Reference" -description: "Llama 3.2 11B Vision Instruct API reference for SandBase. Use model meta/llama-3.2-11b-vision-instruct with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/meta/llama-3.2-11b-vision-instruct" -apiReferenceJson: "{\"title\":\"Llama 3.2 11B Vision Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Llama 3.2 11B Vision is a multimodal model with 11 billion parameters, designed to handle tasks combining visual and textual data. It excels in tasks such as image captioning and...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/llama-3.2-11b-vision-instruct.\",\"default\":\"meta/llama-3.2-11b-vision-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/llama-3.2-11b-vision-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"meta/llama-3.2-11b-vision-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Llama 3.2 11B Vision Instruct" - modelId: "meta/llama-3.2-11b-vision-instruct" - vendor: "Meta" - vendorSlug: "meta" - modelSlug: "llama-3.2-11b-vision-instruct" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-09-25T00:00:00Z" - capabilities: ["chat","vision","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/meta/llama-3.2-1b-instruct.md b/model-api-reference/llm-models/meta/llama-3.2-1b-instruct.md deleted file mode 100644 index 59e81d6b..00000000 --- a/model-api-reference/llm-models/meta/llama-3.2-1b-instruct.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Llama 3.2 1B Instruct API Reference" -description: "Llama 3.2 1B Instruct API reference for SandBase. Use model meta/llama-3.2-1b-instruct with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/meta/llama-3.2-1b-instruct" -apiReferenceJson: "{\"title\":\"Llama 3.2 1B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Llama 3.2 1B is a 1-billion-parameter language model focused on efficiently performing natural language tasks, such as summarization, dialogue, and multilingual text analysis. Its smaller size allows it to operate...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/llama-3.2-1b-instruct.\",\"default\":\"meta/llama-3.2-1b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 60000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"60000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/llama-3.2-1b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"meta/llama-3.2-1b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Llama 3.2 1B Instruct" - modelId: "meta/llama-3.2-1b-instruct" - vendor: "Meta" - vendorSlug: "meta" - modelSlug: "llama-3.2-1b-instruct" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-09-25T00:00:00Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/meta/llama-3.2-3b-instruct.md b/model-api-reference/llm-models/meta/llama-3.2-3b-instruct.md deleted file mode 100644 index 1e0d9429..00000000 --- a/model-api-reference/llm-models/meta/llama-3.2-3b-instruct.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Llama 3.2 3B Instruct API Reference" -description: "Llama 3.2 3B Instruct API reference for SandBase. Use model meta/llama-3.2-3b-instruct with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/meta/llama-3.2-3b-instruct" -apiReferenceJson: "{\"title\":\"Llama 3.2 3B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Llama 3.2 3B is a 3-billion-parameter multilingual large language model, optimized for advanced natural language processing tasks like dialogue generation, reasoning, and summarization. Designed with the available transformer architecture, it...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/llama-3.2-3b-instruct.\",\"default\":\"meta/llama-3.2-3b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 80000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"80000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/llama-3.2-3b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"meta/llama-3.2-3b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Llama 3.2 3B Instruct" - modelId: "meta/llama-3.2-3b-instruct" - vendor: "Meta" - vendorSlug: "meta" - modelSlug: "llama-3.2-3b-instruct" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-09-25T00:00:00Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/meta/llama-3.3-70b-instruct.md b/model-api-reference/llm-models/meta/llama-3.3-70b-instruct.md index 9c409af6..f0d38221 100644 --- a/model-api-reference/llm-models/meta/llama-3.3-70b-instruct.md +++ b/model-api-reference/llm-models/meta/llama-3.3-70b-instruct.md @@ -4,7 +4,7 @@ description: "Llama 3.3 70B Instruct API reference for SandBase. Use model meta/ aside: false outline: false apiReferenceKey: "llm/meta/llama-3.3-70b-instruct" -apiReferenceJson: "{\"title\":\"Llama 3.3 70B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"The Meta Llama 3.3 multilingual large language model (LLM) is a pretrained and instruction tuned generative model in 70B (text in/text out). The Llama 3.3 instruction tuned text only model...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/llama-3.3-70b-instruct.\",\"default\":\"meta/llama-3.3-70b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/llama-3.3-70b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"meta/llama-3.3-70b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Llama 3.3 70B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Llama 3.3 70B Instruct is Meta's instruction-tuned, text-only multilingual model released on December 6, 2024, built on an optimized transformer with grouped-query attention and a 128K-token context. It is optimized for assistant-style multilingual dialogue in eight officially supported languages, including English, German, French, Spanish, Hindi and Thai. It is a static open-weight model with a December 2023 knowledge cutoff, and its license also permits synthetic data generation and distillation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/llama-3.3-70b-instruct.\",\"default\":\"meta/llama-3.3-70b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/llama-3.3-70b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"meta/llama-3.3-70b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Llama 3.3 70B Instruct" modelId: "meta/llama-3.3-70b-instruct" diff --git a/model-api-reference/llm-models/meta/llama-4-maverick.md b/model-api-reference/llm-models/meta/llama-4-maverick.md deleted file mode 100644 index 6cf6c7c7..00000000 --- a/model-api-reference/llm-models/meta/llama-4-maverick.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Llama 4 Maverick API Reference" -description: "Llama 4 Maverick API reference for SandBase. Use model meta/llama-4-maverick with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/meta/llama-4-maverick" -apiReferenceJson: "{\"title\":\"Llama 4 Maverick\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Llama 4 Maverick 17B Instruct (128E) is a high-capacity multimodal language model from Meta, built on a mixture-of-experts (MoE) architecture with 128 experts and 17 billion active parameters per forward...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/llama-4-maverick.\",\"default\":\"meta/llama-4-maverick\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/llama-4-maverick\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"meta/llama-4-maverick\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Llama 4 Maverick" - modelId: "meta/llama-4-maverick" - vendor: "Meta" - vendorSlug: "meta" - modelSlug: "llama-4-maverick" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-04-05T19:37:02Z" - capabilities: ["chat","vision","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/meta/llama-4-scout.md b/model-api-reference/llm-models/meta/llama-4-scout.md deleted file mode 100644 index 599461a8..00000000 --- a/model-api-reference/llm-models/meta/llama-4-scout.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Llama 4 Scout API Reference" -description: "Llama 4 Scout API reference for SandBase. Use model meta/llama-4-scout with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/meta/llama-4-scout" -apiReferenceJson: "{\"title\":\"Llama 4 Scout\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Llama 4 Scout 17B Instruct (16E) is a mixture-of-experts (MoE) language model developed by Meta, activating 17 billion parameters out of a total of 109B. It supports native multimodal input...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/llama-4-scout.\",\"default\":\"meta/llama-4-scout\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"327680 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/llama-4-scout\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"meta/llama-4-scout\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Llama 4 Scout" - modelId: "meta/llama-4-scout" - vendor: "Meta" - vendorSlug: "meta" - modelSlug: "llama-4-scout" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-04-05T19:31:59Z" - capabilities: ["chat","vision","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/meta/llama-guard-3-8b.md b/model-api-reference/llm-models/meta/llama-guard-3-8b.md deleted file mode 100644 index fb0cb7c3..00000000 --- a/model-api-reference/llm-models/meta/llama-guard-3-8b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Llama Guard 3 8B API Reference" -description: "Llama Guard 3 8B API reference for SandBase. Use model meta/llama-guard-3-8b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/meta/llama-guard-3-8b" -apiReferenceJson: "{\"title\":\"Llama Guard 3 8B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Llama Guard 3 is a Llama-3.1-8B pretrained model, fine-tuned for content safety classification. Similar to previous versions, it can be used to classify content in both LLM inputs (prompt classification)...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/llama-guard-3-8b.\",\"default\":\"meta/llama-guard-3-8b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/llama-guard-3-8b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"meta/llama-guard-3-8b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Llama Guard 3 8B" - modelId: "meta/llama-guard-3-8b" - vendor: "Meta" - vendorSlug: "meta" - modelSlug: "llama-guard-3-8b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-07-23T00:00:00Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/meta/llama-guard-4-12b.md b/model-api-reference/llm-models/meta/llama-guard-4-12b.md deleted file mode 100644 index 20109f0c..00000000 --- a/model-api-reference/llm-models/meta/llama-guard-4-12b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Llama Guard 4 12B API Reference" -description: "Llama Guard 4 12B API reference for SandBase. Use model meta/llama-guard-4-12b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/meta/llama-guard-4-12b" -apiReferenceJson: "{\"title\":\"Llama Guard 4 12B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Llama Guard 4 is a Llama 4 Scout-derived multimodal pretrained model, fine-tuned for content safety classification. Similar to previous versions, it can be used to classify content in both LLM...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/llama-guard-4-12b.\",\"default\":\"meta/llama-guard-4-12b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"163840 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/llama-guard-4-12b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"meta/llama-guard-4-12b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Llama Guard 4 12B" - modelId: "meta/llama-guard-4-12b" - vendor: "Meta" - vendorSlug: "meta" - modelSlug: "llama-guard-4-12b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-04-30T01:06:33Z" - capabilities: ["chat","vision","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/microsoft/phi-4-mini-instruct.md b/model-api-reference/llm-models/microsoft/phi-4-mini-instruct.md deleted file mode 100644 index d2eabba3..00000000 --- a/model-api-reference/llm-models/microsoft/phi-4-mini-instruct.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Phi 4 Mini Instruct API Reference" -description: "Phi 4 Mini Instruct API reference for SandBase. Use model microsoft/phi-4-mini-instruct with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/microsoft/phi-4-mini-instruct" -apiReferenceJson: "{\"title\":\"Phi 4 Mini Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Phi-4-mini-instruct is a lightweight open model built upon synthetic data and filtered publicly available websites - with a focus on high-quality, reasoning dense data. The model belongs to the Phi-4 model family and supports 128K token context length. The model underwent an enhancement process, incorporating both supervised fine-tuning and direct preference optimization to support precise instruction adherence and robust safety measures.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to microsoft/phi-4-mini-instruct.\",\"default\":\"microsoft/phi-4-mini-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"microsoft/phi-4-mini-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"microsoft/phi-4-mini-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Phi 4 Mini Instruct" - modelId: "microsoft/phi-4-mini-instruct" - vendor: "Microsoft" - vendorSlug: "microsoft" - modelSlug: "phi-4-mini-instruct" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-10-17T18:34:09.607Z" - capabilities: ["chat","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/microsoft/phi-4.md b/model-api-reference/llm-models/microsoft/phi-4.md deleted file mode 100644 index 4846ac49..00000000 --- a/model-api-reference/llm-models/microsoft/phi-4.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Phi 4 API Reference" -description: "Phi 4 API reference for SandBase. Use model microsoft/phi-4 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/microsoft/phi-4" -apiReferenceJson: "{\"title\":\"Phi 4\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Microsoft Research Phi-4 is designed to perform well in complex reasoning tasks and can operate efficiently in situations with limited memory or where quick responses are needed.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to microsoft/phi-4.\",\"default\":\"microsoft/phi-4\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"16384 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"microsoft/phi-4\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"microsoft/phi-4\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Phi 4" - modelId: "microsoft/phi-4" - vendor: "Microsoft" - vendorSlug: "microsoft" - modelSlug: "phi-4" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-01-10T06:17:52.163Z" - capabilities: ["chat","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/microsoft/wizardlm-2-8x22b.md b/model-api-reference/llm-models/microsoft/wizardlm-2-8x22b.md deleted file mode 100644 index e92a3e73..00000000 --- a/model-api-reference/llm-models/microsoft/wizardlm-2-8x22b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "WizardLM-2 8x22B API Reference" -description: "WizardLM-2 8x22B API reference for SandBase. Use model microsoft/wizardlm-2-8x22b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/microsoft/wizardlm-2-8x22b" -apiReferenceJson: "{\"title\":\"WizardLM-2 8x22B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"WizardLM-2 8x22B is Microsoft AI's most advanced Wizard model. It demonstrates highly competitive performance compared to leading proprietary models, and it consistently outperforms all existing state-of-the-art opensource models.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to microsoft/wizardlm-2-8x22b.\",\"default\":\"microsoft/wizardlm-2-8x22b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 8000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"65535 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"microsoft/wizardlm-2-8x22b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"microsoft/wizardlm-2-8x22b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "WizardLM-2 8x22B" - modelId: "microsoft/wizardlm-2-8x22b" - vendor: "Microsoft" - vendorSlug: "microsoft" - modelSlug: "wizardlm-2-8x22b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-04-16T00:00:00Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/minimax/minimax-01.md b/model-api-reference/llm-models/minimax/minimax-01.md deleted file mode 100644 index 72a733ce..00000000 --- a/model-api-reference/llm-models/minimax/minimax-01.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiniMax: MiniMax-01 API Reference" -description: "MiniMax: MiniMax-01 API reference for SandBase. Use model minimax/minimax-01 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/minimax/minimax-01" -apiReferenceJson: "{\"title\":\"MiniMax: MiniMax-01\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"MiniMax-01 is a combines MiniMax-Text-01 for text generation and MiniMax-VL-01 for image understanding. It has 456 billion parameters, with 45.9 billion parameters activated per inference, and can handle a context of up to 4 million tokens.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/minimax-01.\",\"default\":\"minimax/minimax-01\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 1000192\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000192 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/minimax-01\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"minimax/minimax-01\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "MiniMax: MiniMax-01" - modelId: "minimax/minimax-01" - vendor: "Minimax" - vendorSlug: "minimax" - modelSlug: "minimax-01" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-01-15T04:31:02.677Z" - capabilities: ["chat","vision"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/minimax/minimax-m1.md b/model-api-reference/llm-models/minimax/minimax-m1.md deleted file mode 100644 index 01a859f2..00000000 --- a/model-api-reference/llm-models/minimax/minimax-m1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiniMax: MiniMax M1 API Reference" -description: "MiniMax: MiniMax M1 API reference for SandBase. Use model minimax/minimax-m1 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/minimax/minimax-m1" -apiReferenceJson: "{\"title\":\"MiniMax: MiniMax M1\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"MiniMax-M1 is a large-scale, open-weight reasoning model designed for extended context and high-efficiency inference. It leverages a hybrid Mixture-of-Experts (MoE) architecture paired with a custom \\\"lightning attention\\\" mechanism, allowing it to process long sequences—up to 1 million tokens—while maintaining competitive FLOP efficiency. With 456 billion total parameters and 45.9B active per token, this variant is optimized for complex, multi-step reasoning tasks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/minimax-m1.\",\"default\":\"minimax/minimax-m1\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 40000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/minimax-m1\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"minimax/minimax-m1\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "MiniMax: MiniMax M1" - modelId: "minimax/minimax-m1" - vendor: "Minimax" - vendorSlug: "minimax" - modelSlug: "minimax-m1" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-06-17T22:46:54.257Z" - capabilities: ["chat","reasoning","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/minimax/minimax-m2-her.md b/model-api-reference/llm-models/minimax/minimax-m2-her.md deleted file mode 100644 index ef2d9967..00000000 --- a/model-api-reference/llm-models/minimax/minimax-m2-her.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiniMax: MiniMax M2-her API Reference" -description: "MiniMax: MiniMax M2-her API reference for SandBase. Use model minimax/minimax-m2-her with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/minimax/minimax-m2-her" -apiReferenceJson: "{\"title\":\"MiniMax: MiniMax M2-her\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"MiniMax M2-her is a dialogue-first large language model built for immersive roleplay, character-driven chat, and expressive multi-turn conversations. Designed to stay consistent in tone and personality, it supports rich message roles (user_system, group, sample_message_user, sample_message_ai) and can learn from example dialogue to better match the style and pacing of your scenario, making it a strong choice for storytelling, companions, and conversational experiences where natural flow and vivid interaction matter most.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/minimax-m2-her.\",\"default\":\"minimax/minimax-m2-her\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 2048\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"65536 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/minimax-m2-her\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"minimax/minimax-m2-her\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "MiniMax: MiniMax M2-her" - modelId: "minimax/minimax-m2-her" - vendor: "Minimax" - vendorSlug: "minimax" - modelSlug: "minimax-m2-her" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-01-23T14:07:19.197Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/minimax/minimax-m2.1.md b/model-api-reference/llm-models/minimax/minimax-m2.1.md deleted file mode 100644 index 1d701b08..00000000 --- a/model-api-reference/llm-models/minimax/minimax-m2.1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiniMax: MiniMax M2.1 API Reference" -description: "MiniMax: MiniMax M2.1 API reference for SandBase. Use model minimax/minimax-m2.1 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/minimax/minimax-m2.1" -apiReferenceJson: "{\"title\":\"MiniMax: MiniMax M2.1\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"MiniMax-M2.1 is a lightweight, state-of-the-art large language model optimized for coding, agentic workflows, and modern application development. With only 10 billion activated parameters, it delivers a major jump in real-world capability while maintaining exceptional latency, scalability, and cost efficiency.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/minimax-m2.1.\",\"default\":\"minimax/minimax-m2.1\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 196608\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"196608 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/minimax-m2.1\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"minimax/minimax-m2.1\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "MiniMax: MiniMax M2.1" - modelId: "minimax/minimax-m2.1" - vendor: "Minimax" - vendorSlug: "minimax" - modelSlug: "minimax-m2.1" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-12-23T01:56:37Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/minimax/minimax-m2.5.md b/model-api-reference/llm-models/minimax/minimax-m2.5.md index 2d2e5dee..c7b38bec 100644 --- a/model-api-reference/llm-models/minimax/minimax-m2.5.md +++ b/model-api-reference/llm-models/minimax/minimax-m2.5.md @@ -4,7 +4,7 @@ description: "MiniMax: MiniMax M2.5 API reference for SandBase. Use model minima aside: false outline: false apiReferenceKey: "llm/minimax/minimax-m2.5" -apiReferenceJson: "{\"title\":\"MiniMax: MiniMax M2.5\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"MiniMax-M2.5 is a SOTA large language model designed for real-world productivity. Trained in a diverse range of complex real-world digital working environments, M2.5 builds upon the coding expertise of M2.1 to extend into general office work, reaching fluency in generating and operating Word, Excel, and Powerpoint files, context switching between diverse software environments, and working across different agent and human teams. Scoring 80.2% on SWE-Bench Verified, 51.3% on Multi-SWE-Bench, and 76.3% on BrowseComp, M2.5 is also more token efficient than previous generations, having been trained to optimize its actions and output through planning.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/minimax-m2.5.\",\"default\":\"minimax/minimax-m2.5\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"196608 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/minimax-m2.5\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"minimax/minimax-m2.5\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"MiniMax: MiniMax M2.5\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"MiniMax-M2.5 is a MiniMax M2-series language model released in February 2026 for real-world productivity, trained with reinforcement learning across hundreds of thousands of complex real-world environments. MiniMax highlights coding across more than ten languages and the full development lifecycle, planning projects like a software architect before writing code, plus agentic search, tool use and office work. MiniMax now lists it as a legacy model behind M2.7 and M3.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/minimax-m2.5.\",\"default\":\"minimax/minimax-m2.5\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"204800 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/minimax-m2.5\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"minimax/minimax-m2.5\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "MiniMax: MiniMax M2.5" modelId: "minimax/minimax-m2.5" diff --git a/model-api-reference/llm-models/minimax/minimax-m2.7.md b/model-api-reference/llm-models/minimax/minimax-m2.7.md index 99307024..6dccb635 100644 --- a/model-api-reference/llm-models/minimax/minimax-m2.7.md +++ b/model-api-reference/llm-models/minimax/minimax-m2.7.md @@ -4,7 +4,7 @@ description: "MiniMax: MiniMax M2.7 API reference for SandBase. Use model minima aside: false outline: false apiReferenceKey: "llm/minimax/minimax-m2.7" -apiReferenceJson: "{\"title\":\"MiniMax: MiniMax M2.7\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"MiniMax-M2.7 is a next-generation large language model designed for autonomous, real-world productivity and continuous improvement. Built to actively participate in its own evolution, M2.7 integrates advanced agentic capabilities through multi-agent collaboration, enabling it to plan, execute, and refine complex tasks across dynamic environments.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/minimax-m2.7.\",\"default\":\"minimax/minimax-m2.7\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"196608 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/minimax-m2.7\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"minimax/minimax-m2.7\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"MiniMax: MiniMax M2.7\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"MiniMax-M2.7 is a MiniMax M2-series language model that MiniMax describes as its first model to take part in its own development, building agent harnesses, skills and memory for reinforcement learning experiments. It is positioned for end-to-end software engineering including log analysis, bug troubleshooting and code security, high-fidelity editing in Excel, PowerPoint and Word, and character-consistent interaction. A faster highspeed variant exists, and MiniMax-M3 adds multimodality and longer context.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/minimax-m2.7.\",\"default\":\"minimax/minimax-m2.7\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"204800 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/minimax-m2.7\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"minimax/minimax-m2.7\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "MiniMax: MiniMax M2.7" modelId: "minimax/minimax-m2.7" diff --git a/model-api-reference/llm-models/minimax/minimax-m3.md b/model-api-reference/llm-models/minimax/minimax-m3.md index 2d8e3a4f..5f1a5705 100644 --- a/model-api-reference/llm-models/minimax/minimax-m3.md +++ b/model-api-reference/llm-models/minimax/minimax-m3.md @@ -4,7 +4,7 @@ description: "MiniMax: MiniMax M3 API reference for SandBase. Use model minimax/ aside: false outline: false apiReferenceKey: "llm/minimax/minimax-m3" -apiReferenceJson: "{\"title\":\"MiniMax: MiniMax M3\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"MiniMax-M3 is a multimodal foundation model from MiniMax. It supports text, image, and video inputs with text output, a 1M-token context window, and is suited for long-horizon agentic work, coding, and tool use. It is built on MiniMax Sparse Attention (MSA), which replaces full attention with KV-block selection to cut per-token compute at long context — roughly 1/20 the cost of the previous generation at 1M tokens, with substantially faster prefill and decode while retaining quality across most tasks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/minimax-m3.\",\"default\":\"minimax/minimax-m3\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 512000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/minimax-m3\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"minimax/minimax-m3\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"MiniMax: MiniMax M3\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"MiniMax-M3 is MiniMax's flagship multimodal foundation model, which MiniMax describes as open-weight. It is built on MiniMax Sparse Attention, which selects key-value blocks to cut long-context compute and supports up to a 1M-token context, and it was trained natively on text and visual data for image and video understanding. MiniMax positions it for long-horizon coding, agentic tool use and autonomous multi-step work such as research paper reproduction and GPU kernel optimization.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/minimax-m3.\",\"default\":\"minimax/minimax-m3\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 512000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/minimax-m3\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"minimax/minimax-m3\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "MiniMax: MiniMax M3" modelId: "minimax/minimax-m3" diff --git a/model-api-reference/llm-models/mistral/codestral-2508.md b/model-api-reference/llm-models/mistral/codestral-2508.md deleted file mode 100644 index f8732c29..00000000 --- a/model-api-reference/llm-models/mistral/codestral-2508.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Codestral 2508 API Reference" -description: "Codestral 2508 API reference for SandBase. Use model mistral/codestral-2508 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/mistral/codestral-2508" -apiReferenceJson: "{\"title\":\"Codestral 2508\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Mistral's cutting-edge language model for coding released end of July 2025. Codestral specializes in low-latency, high-frequency tasks such as fill-in-the-middle (FIM), code correction and test generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mistral/codestral-2508.\",\"default\":\"mistral/codestral-2508\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 256000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"256000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mistral/codestral-2508\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"mistral/codestral-2508\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Codestral 2508" - modelId: "mistral/codestral-2508" - vendor: "Mistral" - vendorSlug: "mistral" - modelSlug: "codestral-2508" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-08-01T20:20:30Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/mistral/devstral-2512.md b/model-api-reference/llm-models/mistral/devstral-2512.md deleted file mode 100644 index 84949f91..00000000 --- a/model-api-reference/llm-models/mistral/devstral-2512.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Devstral 2 2512 API Reference" -description: "Devstral 2 2512 API reference for SandBase. Use model mistral/devstral-2512 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/mistral/devstral-2512" -apiReferenceJson: "{\"title\":\"Devstral 2 2512\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Devstral 2 is a state-of-the-art open-source model by Mistral AI specializing in agentic coding. It is a 123B-parameter dense transformer model supporting a 256K context window. Devstral 2 supports exploring...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mistral/devstral-2512.\",\"default\":\"mistral/devstral-2512\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 262144\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mistral/devstral-2512\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"mistral/devstral-2512\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Devstral 2 2512" - modelId: "mistral/devstral-2512" - vendor: "Mistral" - vendorSlug: "mistral" - modelSlug: "devstral-2512" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-12-09T00:00:00Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/mistral/devstral-medium.md b/model-api-reference/llm-models/mistral/devstral-medium.md deleted file mode 100644 index 3a158c26..00000000 --- a/model-api-reference/llm-models/mistral/devstral-medium.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Devstral Medium API Reference" -description: "Devstral Medium API reference for SandBase. Use model mistral/devstral-medium with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/mistral/devstral-medium" -apiReferenceJson: "{\"title\":\"Devstral Medium\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Devstral Medium is a high-performance code generation and agentic reasoning model developed jointly by Mistral AI and All Hands AI. Positioned as a step up from Devstral Small, it achieves...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mistral/devstral-medium.\",\"default\":\"mistral/devstral-medium\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mistral/devstral-medium\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"mistral/devstral-medium\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Devstral Medium" - modelId: "mistral/devstral-medium" - vendor: "Mistral" - vendorSlug: "mistral" - modelSlug: "devstral-medium" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-07-10T00:00:00Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/mistral/devstral-small.md b/model-api-reference/llm-models/mistral/devstral-small.md deleted file mode 100644 index ee71bdae..00000000 --- a/model-api-reference/llm-models/mistral/devstral-small.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Devstral Small 1.1 API Reference" -description: "Devstral Small 1.1 API reference for SandBase. Use model mistral/devstral-small with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/mistral/devstral-small" -apiReferenceJson: "{\"title\":\"Devstral Small 1.1\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Devstral Small 1.1 is a 24B parameter open-weight language model for software engineering agents, developed by Mistral AI in collaboration with All Hands AI. Finetuned from Mistral Small 3.1 and...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mistral/devstral-small.\",\"default\":\"mistral/devstral-small\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mistral/devstral-small\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"mistral/devstral-small\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Devstral Small 1.1" - modelId: "mistral/devstral-small" - vendor: "Mistral" - vendorSlug: "mistral" - modelSlug: "devstral-small" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-05-21T00:00:00Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/mistral/ministral-14b-2512.md b/model-api-reference/llm-models/mistral/ministral-14b-2512.md deleted file mode 100644 index b8de3391..00000000 --- a/model-api-reference/llm-models/mistral/ministral-14b-2512.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ministral 3 14B 2512 API Reference" -description: "Ministral 3 14B 2512 API reference for SandBase. Use model mistral/ministral-14b-2512 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/mistral/ministral-14b-2512" -apiReferenceJson: "{\"title\":\"Ministral 3 14B 2512\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"The largest model in the Ministral 3 family, Ministral 3 14B offers frontier capabilities and performance comparable to its larger Mistral Small 3.2 24B counterpart. A powerful and efficient language...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mistral/ministral-14b-2512.\",\"default\":\"mistral/ministral-14b-2512\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 262144\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mistral/ministral-14b-2512\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"mistral/ministral-14b-2512\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Ministral 3 14B 2512" - modelId: "mistral/ministral-14b-2512" - vendor: "Mistral" - vendorSlug: "mistral" - modelSlug: "ministral-14b-2512" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-12-02T13:22:15Z" - capabilities: ["chat","vision","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/mistral/ministral-3b-2512.md b/model-api-reference/llm-models/mistral/ministral-3b-2512.md deleted file mode 100644 index 3ce2680d..00000000 --- a/model-api-reference/llm-models/mistral/ministral-3b-2512.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ministral 3 3B 2512 API Reference" -description: "Ministral 3 3B 2512 API reference for SandBase. Use model mistral/ministral-3b-2512 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/mistral/ministral-3b-2512" -apiReferenceJson: "{\"title\":\"Ministral 3 3B 2512\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"The smallest model in the Ministral 3 family, Ministral 3 3B is a powerful, efficient tiny language model with vision capabilities.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mistral/ministral-3b-2512.\",\"default\":\"mistral/ministral-3b-2512\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mistral/ministral-3b-2512\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"mistral/ministral-3b-2512\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Ministral 3 3B 2512" - modelId: "mistral/ministral-3b-2512" - vendor: "Mistral" - vendorSlug: "mistral" - modelSlug: "ministral-3b-2512" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-12-02T13:19:20Z" - capabilities: ["chat","vision","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/mistral/ministral-8b-2512.md b/model-api-reference/llm-models/mistral/ministral-8b-2512.md deleted file mode 100644 index afa23521..00000000 --- a/model-api-reference/llm-models/mistral/ministral-8b-2512.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ministral 3 8B 2512 API Reference" -description: "Ministral 3 8B 2512 API reference for SandBase. Use model mistral/ministral-8b-2512 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/mistral/ministral-8b-2512" -apiReferenceJson: "{\"title\":\"Ministral 3 8B 2512\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"A balanced model in the Ministral 3 family, Ministral 3 8B is a powerful, efficient tiny language model with vision capabilities.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mistral/ministral-8b-2512.\",\"default\":\"mistral/ministral-8b-2512\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 262144\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mistral/ministral-8b-2512\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"mistral/ministral-8b-2512\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Ministral 3 8B 2512" - modelId: "mistral/ministral-8b-2512" - vendor: "Mistral" - vendorSlug: "mistral" - modelSlug: "ministral-8b-2512" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-12-02T13:20:54Z" - capabilities: ["chat","vision","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/mistral/mistral-7b-instruct-v0.1.md b/model-api-reference/llm-models/mistral/mistral-7b-instruct-v0.1.md deleted file mode 100644 index 00ffc1ee..00000000 --- a/model-api-reference/llm-models/mistral/mistral-7b-instruct-v0.1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Mistral 7B Instruct v0.1 API Reference" -description: "Mistral 7B Instruct v0.1 API reference for SandBase. Use model mistral/mistral-7b-instruct-v0.1 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/mistral/mistral-7b-instruct-v0.1" -apiReferenceJson: "{\"title\":\"Mistral 7B Instruct v0.1\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"A 7.3B parameter model that outperforms Llama 2 13B on all benchmarks, with optimizations for speed and context length.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mistral/mistral-7b-instruct-v0.1.\",\"default\":\"mistral/mistral-7b-instruct-v0.1\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 2824\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"2824 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mistral/mistral-7b-instruct-v0.1\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"mistral/mistral-7b-instruct-v0.1\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Mistral 7B Instruct v0.1" - modelId: "mistral/mistral-7b-instruct-v0.1" - vendor: "Mistral" - vendorSlug: "mistral" - modelSlug: "mistral-7b-instruct-v0.1" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2023-09-27T00:00:00Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/mistral/mistral-large-2512.md b/model-api-reference/llm-models/mistral/mistral-large-2512.md deleted file mode 100644 index 428cd45e..00000000 --- a/model-api-reference/llm-models/mistral/mistral-large-2512.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Mistral Large 3 2512 API Reference" -description: "Mistral Large 3 2512 API reference for SandBase. Use model mistral/mistral-large-2512 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/mistral/mistral-large-2512" -apiReferenceJson: "{\"title\":\"Mistral Large 3 2512\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Mistral Large 3 2512 is Mistral’s most capable model to date, featuring a sparse mixture-of-experts architecture with 41B active parameters (675B total), and released under the Apache 2.0 license.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mistral/mistral-large-2512.\",\"default\":\"mistral/mistral-large-2512\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 262144\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mistral/mistral-large-2512\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"mistral/mistral-large-2512\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Mistral Large 3 2512" - modelId: "mistral/mistral-large-2512" - vendor: "Mistral" - vendorSlug: "mistral" - modelSlug: "mistral-large-2512" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-12-01T21:27:52Z" - capabilities: ["chat","vision","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/mistral/mistral-large.md b/model-api-reference/llm-models/mistral/mistral-large.md deleted file mode 100644 index 802e33a3..00000000 --- a/model-api-reference/llm-models/mistral/mistral-large.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Mistral Large API Reference" -description: "Mistral Large API reference for SandBase. Use model mistral/mistral-large with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/mistral/mistral-large" -apiReferenceJson: "{\"title\":\"Mistral Large\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"This is Mistral AI's flagship model, Mistral Large 2 (version `mistral-large-2407`). It's a proprietary weights-available model and excels at reasoning, code, JSON, chat, and more. Read the launch announcement here....\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mistral/mistral-large.\",\"default\":\"mistral/mistral-large\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mistral/mistral-large\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"mistral/mistral-large\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Mistral Large" - modelId: "mistral/mistral-large" - vendor: "Mistral" - vendorSlug: "mistral" - modelSlug: "mistral-large" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-02-26T00:00:00Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/mistral/mistral-medium-3-5.md b/model-api-reference/llm-models/mistral/mistral-medium-3-5.md deleted file mode 100644 index 144acb49..00000000 --- a/model-api-reference/llm-models/mistral/mistral-medium-3-5.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Mistral Medium 3.5 API Reference" -description: "Mistral Medium 3.5 API reference for SandBase. Use model mistral/mistral-medium-3-5 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/mistral/mistral-medium-3-5" -apiReferenceJson: "{\"title\":\"Mistral Medium 3.5\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Mistral Medium 3.5 is a dense 128B instruction-following model from Mistral AI. It supports text and image inputs with text output, and is designed for agentic workflows, coding, and complex...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mistral/mistral-medium-3-5.\",\"default\":\"mistral/mistral-medium-3-5\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 262144\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mistral/mistral-medium-3-5\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"mistral/mistral-medium-3-5\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Mistral Medium 3.5" - modelId: "mistral/mistral-medium-3-5" - vendor: "Mistral" - vendorSlug: "mistral" - modelSlug: "mistral-medium-3-5" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-04-30T17:33:59Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/mistral/mistral-medium-3.1.md b/model-api-reference/llm-models/mistral/mistral-medium-3.1.md deleted file mode 100644 index b659bd1b..00000000 --- a/model-api-reference/llm-models/mistral/mistral-medium-3.1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Mistral Medium 3.1 API Reference" -description: "Mistral Medium 3.1 API reference for SandBase. Use model mistral/mistral-medium-3.1 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/mistral/mistral-medium-3.1" -apiReferenceJson: "{\"title\":\"Mistral Medium 3.1\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Mistral Medium 3.1 is an updated version of Mistral Medium 3, which is a high-performance enterprise-grade language model designed to deliver frontier-level capabilities at significantly reduced operational cost. It balances...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mistral/mistral-medium-3.1.\",\"default\":\"mistral/mistral-medium-3.1\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mistral/mistral-medium-3.1\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"mistral/mistral-medium-3.1\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Mistral Medium 3.1" - modelId: "mistral/mistral-medium-3.1" - vendor: "Mistral" - vendorSlug: "mistral" - modelSlug: "mistral-medium-3.1" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-08-13T14:33:59Z" - capabilities: ["chat","vision","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/mistral/mistral-medium-3.md b/model-api-reference/llm-models/mistral/mistral-medium-3.md deleted file mode 100644 index 0bc26a01..00000000 --- a/model-api-reference/llm-models/mistral/mistral-medium-3.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Mistral Medium 3 API Reference" -description: "Mistral Medium 3 API reference for SandBase. Use model mistral/mistral-medium-3 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/mistral/mistral-medium-3" -apiReferenceJson: "{\"title\":\"Mistral Medium 3\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Mistral Medium 3 is a high-performance enterprise-grade language model designed to deliver frontier-level capabilities at significantly reduced operational cost. It balances state-of-the-art reasoning and multimodal performance with 8× lower cost...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mistral/mistral-medium-3.\",\"default\":\"mistral/mistral-medium-3\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mistral/mistral-medium-3\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"mistral/mistral-medium-3\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Mistral Medium 3" - modelId: "mistral/mistral-medium-3" - vendor: "Mistral" - vendorSlug: "mistral" - modelSlug: "mistral-medium-3" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-05-07T14:15:41Z" - capabilities: ["chat","vision","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/mistral/mistral-nemo.md b/model-api-reference/llm-models/mistral/mistral-nemo.md deleted file mode 100644 index dfbf604d..00000000 --- a/model-api-reference/llm-models/mistral/mistral-nemo.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Mistral Nemo API Reference" -description: "Mistral Nemo API reference for SandBase. Use model mistral/mistral-nemo with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/mistral/mistral-nemo" -apiReferenceJson: "{\"title\":\"Mistral Nemo\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"A 12B parameter model with a 128k token context length built by Mistral in collaboration with NVIDIA. The model is multilingual, supporting English, French, German, Spanish, Italian, Portuguese, Chinese, Japanese,...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mistral/mistral-nemo.\",\"default\":\"mistral/mistral-nemo\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mistral/mistral-nemo\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"mistral/mistral-nemo\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Mistral Nemo" - modelId: "mistral/mistral-nemo" - vendor: "Mistral" - vendorSlug: "mistral" - modelSlug: "mistral-nemo" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-07-19T00:00:00Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/mistral/mistral-saba.md b/model-api-reference/llm-models/mistral/mistral-saba.md deleted file mode 100644 index 553cac51..00000000 --- a/model-api-reference/llm-models/mistral/mistral-saba.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Saba API Reference" -description: "Saba API reference for SandBase. Use model mistral/mistral-saba with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/mistral/mistral-saba" -apiReferenceJson: "{\"title\":\"Saba\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Mistral Saba is a 24B-parameter language model specifically designed for the Middle East and South Asia, delivering accurate and contextually relevant responses while maintaining efficient performance. Trained on curated regional...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mistral/mistral-saba.\",\"default\":\"mistral/mistral-saba\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"32768 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mistral/mistral-saba\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"mistral/mistral-saba\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Saba" - modelId: "mistral/mistral-saba" - vendor: "Mistral" - vendorSlug: "mistral" - modelSlug: "mistral-saba" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-02-17T14:40:39Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/mistral/mistral-small-24b-instruct-2501.md b/model-api-reference/llm-models/mistral/mistral-small-24b-instruct-2501.md deleted file mode 100644 index c7fa764a..00000000 --- a/model-api-reference/llm-models/mistral/mistral-small-24b-instruct-2501.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Mistral Small 3 API Reference" -description: "Mistral Small 3 API reference for SandBase. Use model mistral/mistral-small-24b-instruct-2501 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/mistral/mistral-small-24b-instruct-2501" -apiReferenceJson: "{\"title\":\"Mistral Small 3\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Mistral Small 3 is a 24B-parameter language model optimized for low-latency performance across common AI tasks. Released under the Apache 2.0 license, it features both pre-trained and instruction-tuned versions designed...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mistral/mistral-small-24b-instruct-2501.\",\"default\":\"mistral/mistral-small-24b-instruct-2501\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"32768 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mistral/mistral-small-24b-instruct-2501\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"mistral/mistral-small-24b-instruct-2501\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Mistral Small 3" - modelId: "mistral/mistral-small-24b-instruct-2501" - vendor: "Mistral" - vendorSlug: "mistral" - modelSlug: "mistral-small-24b-instruct-2501" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-01-30T16:43:29Z" - capabilities: ["chat","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/mistral/mistral-small-2603.md b/model-api-reference/llm-models/mistral/mistral-small-2603.md deleted file mode 100644 index c7e29bd4..00000000 --- a/model-api-reference/llm-models/mistral/mistral-small-2603.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Mistral Small 4 API Reference" -description: "Mistral Small 4 API reference for SandBase. Use model mistral/mistral-small-2603 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/mistral/mistral-small-2603" -apiReferenceJson: "{\"title\":\"Mistral Small 4\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Mistral Small 4 is the next major release in the Mistral Small family, unifying the capabilities of several flagship Mistral models into a single system. It combines strong reasoning from...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mistral/mistral-small-2603.\",\"default\":\"mistral/mistral-small-2603\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 262144\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mistral/mistral-small-2603\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"mistral/mistral-small-2603\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Mistral Small 4" - modelId: "mistral/mistral-small-2603" - vendor: "Mistral" - vendorSlug: "mistral" - modelSlug: "mistral-small-2603" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-03-16T21:14:45Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/mistral/mistral-small-3.1-24b-instruct.md b/model-api-reference/llm-models/mistral/mistral-small-3.1-24b-instruct.md deleted file mode 100644 index 4bf18649..00000000 --- a/model-api-reference/llm-models/mistral/mistral-small-3.1-24b-instruct.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Mistral Small 3.1 24B API Reference" -description: "Mistral Small 3.1 24B API reference for SandBase. Use model mistral/mistral-small-3.1-24b-instruct with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/mistral/mistral-small-3.1-24b-instruct" -apiReferenceJson: "{\"title\":\"Mistral Small 3.1 24B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Mistral Small 3.1 24B Instruct is an upgraded variant of Mistral Small 3 (2501), featuring 24 billion parameters with advanced multimodal capabilities. It provides state-of-the-art performance in text-based reasoning and...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mistral/mistral-small-3.1-24b-instruct.\",\"default\":\"mistral/mistral-small-3.1-24b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mistral/mistral-small-3.1-24b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"mistral/mistral-small-3.1-24b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Mistral Small 3.1 24B" - modelId: "mistral/mistral-small-3.1-24b-instruct" - vendor: "Mistral" - vendorSlug: "mistral" - modelSlug: "mistral-small-3.1-24b-instruct" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-03-17T19:15:37Z" - capabilities: ["chat","vision"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/mistral/mistral-small-3.2-24b-instruct.md b/model-api-reference/llm-models/mistral/mistral-small-3.2-24b-instruct.md deleted file mode 100644 index 31677b0c..00000000 --- a/model-api-reference/llm-models/mistral/mistral-small-3.2-24b-instruct.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Mistral Small 3.2 24B API Reference" -description: "Mistral Small 3.2 24B API reference for SandBase. Use model mistral/mistral-small-3.2-24b-instruct with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/mistral/mistral-small-3.2-24b-instruct" -apiReferenceJson: "{\"title\":\"Mistral Small 3.2 24B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Mistral-Small-3.2-24B-Instruct-2506 is an updated 24B parameter model from Mistral optimized for instruction following, repetition reduction, and improved function calling. Compared to the 3.1 release, version 3.2 significantly improves accuracy on...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mistral/mistral-small-3.2-24b-instruct.\",\"default\":\"mistral/mistral-small-3.2-24b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mistral/mistral-small-3.2-24b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"mistral/mistral-small-3.2-24b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Mistral Small 3.2 24B" - modelId: "mistral/mistral-small-3.2-24b-instruct" - vendor: "Mistral" - vendorSlug: "mistral" - modelSlug: "mistral-small-3.2-24b-instruct" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-06-20T18:10:16Z" - capabilities: ["chat","vision","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/mistral/mixtral-8x22b-instruct.md b/model-api-reference/llm-models/mistral/mixtral-8x22b-instruct.md deleted file mode 100644 index a7d93af4..00000000 --- a/model-api-reference/llm-models/mistral/mixtral-8x22b-instruct.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Mixtral 8x22B Instruct API Reference" -description: "Mixtral 8x22B Instruct API reference for SandBase. Use model mistral/mixtral-8x22b-instruct with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/mistral/mixtral-8x22b-instruct" -apiReferenceJson: "{\"title\":\"Mixtral 8x22B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Mistral's official instruct fine-tuned version of Mixtral 8x22B. It uses 39B active parameters out of 141B, offering unparalleled cost efficiency for its size. Its strengths include: - strong math, coding,...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mistral/mixtral-8x22b-instruct.\",\"default\":\"mistral/mixtral-8x22b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"65536 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mistral/mixtral-8x22b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"mistral/mixtral-8x22b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Mixtral 8x22B Instruct" - modelId: "mistral/mixtral-8x22b-instruct" - vendor: "Mistral" - vendorSlug: "mistral" - modelSlug: "mixtral-8x22b-instruct" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-04-17T00:00:00Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/mistral/pixtral-large-2411.md b/model-api-reference/llm-models/mistral/pixtral-large-2411.md deleted file mode 100644 index d5a7382d..00000000 --- a/model-api-reference/llm-models/mistral/pixtral-large-2411.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Pixtral Large 2411 API Reference" -description: "Pixtral Large 2411 API reference for SandBase. Use model mistral/pixtral-large-2411 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/mistral/pixtral-large-2411" -apiReferenceJson: "{\"title\":\"Pixtral Large 2411\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Pixtral Large is a 124B parameter, open-weight, multimodal model built on top of Mistral Large 2. The model is able to understand documents, charts and natural images. The model is...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mistral/pixtral-large-2411.\",\"default\":\"mistral/pixtral-large-2411\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mistral/pixtral-large-2411\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"mistral/pixtral-large-2411\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Pixtral Large 2411" - modelId: "mistral/pixtral-large-2411" - vendor: "Mistral" - vendorSlug: "mistral" - modelSlug: "pixtral-large-2411" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-11-18T00:00:00Z" - capabilities: ["chat","vision","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/mistral/voxtral-small-24b-2507.md b/model-api-reference/llm-models/mistral/voxtral-small-24b-2507.md deleted file mode 100644 index 6b98f528..00000000 --- a/model-api-reference/llm-models/mistral/voxtral-small-24b-2507.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Voxtral Small 24B 2507 API Reference" -description: "Voxtral Small 24B 2507 API reference for SandBase. Use model mistral/voxtral-small-24b-2507 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/mistral/voxtral-small-24b-2507" -apiReferenceJson: "{\"title\":\"Voxtral Small 24B 2507\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Voxtral Small is an enhancement of Mistral Small 3, incorporating state-of-the-art audio input capabilities while retaining best-in-class text performance. It excels at speech transcription, translation and audio understanding. Input audio...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mistral/voxtral-small-24b-2507.\",\"default\":\"mistral/voxtral-small-24b-2507\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, audio_input, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"32000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mistral/voxtral-small-24b-2507\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"mistral/voxtral-small-24b-2507\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Voxtral Small 24B 2507" - modelId: "mistral/voxtral-small-24b-2507" - vendor: "Mistral" - vendorSlug: "mistral" - modelSlug: "voxtral-small-24b-2507" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-10-30T14:39:04Z" - capabilities: ["chat","audio_input","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/moonshotai/kimi-k2-0905.md b/model-api-reference/llm-models/moonshotai/kimi-k2-0905.md deleted file mode 100644 index 98e16a38..00000000 --- a/model-api-reference/llm-models/moonshotai/kimi-k2-0905.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MoonshotAI: Kimi K2 0905 API Reference" -description: "MoonshotAI: Kimi K2 0905 API reference for SandBase. Use model moonshotai/kimi-k2-0905 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/moonshotai/kimi-k2-0905" -apiReferenceJson: "{\"title\":\"MoonshotAI: Kimi K2 0905\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Kimi K2 0905 is the September update of Kimi K2 0711. It is a large-scale Mixture-of-Experts (MoE) language model developed by Moonshot AI, featuring 1 trillion total parameters with 32 billion active per forward pass. It supports long-context inference up to 256k tokens, extended from the previous 128k.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to moonshotai/kimi-k2-0905.\",\"default\":\"moonshotai/kimi-k2-0905\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 262144\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"moonshotai/kimi-k2-0905\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"moonshotai/kimi-k2-0905\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "MoonshotAI: Kimi K2 0905" - modelId: "moonshotai/kimi-k2-0905" - vendor: "Moonshotai" - vendorSlug: "moonshotai" - modelSlug: "kimi-k2-0905" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-09-04T21:25:47.673Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/moonshotai/kimi-k2-thinking.md b/model-api-reference/llm-models/moonshotai/kimi-k2-thinking.md deleted file mode 100644 index 4b90ec82..00000000 --- a/model-api-reference/llm-models/moonshotai/kimi-k2-thinking.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MoonshotAI: Kimi K2 Thinking API Reference" -description: "MoonshotAI: Kimi K2 Thinking API reference for SandBase. Use model moonshotai/kimi-k2-thinking with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/moonshotai/kimi-k2-thinking" -apiReferenceJson: "{\"title\":\"MoonshotAI: Kimi K2 Thinking\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Kimi K2 Thinking is Moonshot AI’s most advanced open reasoning model to date, extending the K2 series into agentic, long-horizon reasoning. Built on the trillion-parameter Mixture-of-Experts (MoE) architecture introduced in Kimi K2, it activates 32 billion parameters per forward pass and supports 256 k-token context windows. The model is optimized for persistent step-by-step thought, dynamic tool invocation, and complex reasoning workflows that span hundreds of turns. It interleaves step-by-step reasoning with tool use, enabling autonomous research, coding, and writing that can persist for hundreds of sequential actions without drift.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to moonshotai/kimi-k2-thinking.\",\"default\":\"moonshotai/kimi-k2-thinking\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 262144\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"moonshotai/kimi-k2-thinking\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"moonshotai/kimi-k2-thinking\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "MoonshotAI: Kimi K2 Thinking" - modelId: "moonshotai/kimi-k2-thinking" - vendor: "Moonshotai" - vendorSlug: "moonshotai" - modelSlug: "kimi-k2-thinking" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-11-06T14:50:22.752Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/moonshotai/kimi-k2.5.md b/model-api-reference/llm-models/moonshotai/kimi-k2.5.md index a6b5e5f9..7a348763 100644 --- a/model-api-reference/llm-models/moonshotai/kimi-k2.5.md +++ b/model-api-reference/llm-models/moonshotai/kimi-k2.5.md @@ -4,7 +4,7 @@ description: "MoonshotAI: Kimi K2.5 API reference for SandBase. Use model moonsh aside: false outline: false apiReferenceKey: "llm/moonshotai/kimi-k2.5" -apiReferenceJson: "{\"title\":\"MoonshotAI: Kimi K2.5\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Kimi K2.5 is Moonshot AI's native multimodal model, delivering state-of-the-art visual coding capability and a self-directed agent swarm paradigm. Built on Kimi K2 with continued pretraining over approximately 15T mixed visual and text tokens, it delivers strong performance in general reasoning, visual coding, and agentic tool-calling.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to moonshotai/kimi-k2.5.\",\"default\":\"moonshotai/kimi-k2.5\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65535\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"moonshotai/kimi-k2.5\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"moonshotai/kimi-k2.5\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"MoonshotAI: Kimi K2.5\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Kimi K2.5 is Moonshot AI's open-source native multimodal agentic model, built by continuing pretraining of Kimi K2 on about 15 trillion mixed visual and text tokens. It is a 1T-parameter mixture-of-experts model with 32B active parameters and a 256K-token context, offering instant and thinking modes. Moonshot highlights coding from visual specifications such as UI designs and an agent swarm mode that splits complex tasks across parallel sub-agents; Kimi K2.6 later succeeded it.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to moonshotai/kimi-k2.5.\",\"default\":\"moonshotai/kimi-k2.5\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65535\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"moonshotai/kimi-k2.5\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"moonshotai/kimi-k2.5\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "MoonshotAI: Kimi K2.5" modelId: "moonshotai/kimi-k2.5" diff --git a/model-api-reference/llm-models/moonshotai/kimi-k2.6.md b/model-api-reference/llm-models/moonshotai/kimi-k2.6.md index f42da2d4..aa35bb31 100644 --- a/model-api-reference/llm-models/moonshotai/kimi-k2.6.md +++ b/model-api-reference/llm-models/moonshotai/kimi-k2.6.md @@ -4,7 +4,7 @@ description: "MoonshotAI: Kimi K2.6 API reference for SandBase. Use model moonsh aside: false outline: false apiReferenceKey: "llm/moonshotai/kimi-k2.6" -apiReferenceJson: "{\"title\":\"MoonshotAI: Kimi K2.6\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Kimi K2.6 is Moonshot AI's next-generation multimodal model, designed for long-horizon coding, coding-driven UI/UX generation, and multi-agent orchestration. It handles complex end-to-end coding tasks across Python, Rust, and Go, and can convert prompts and visual inputs into production-ready interfaces. Its agent swarm architecture scales to hundreds of parallel sub-agents for autonomous task decomposition - delivering documents, websites, and spreadsheets in a single run without human oversight.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to moonshotai/kimi-k2.6.\",\"default\":\"moonshotai/kimi-k2.6\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"moonshotai/kimi-k2.6\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"moonshotai/kimi-k2.6\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"MoonshotAI: Kimi K2.6\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Kimi K2.6 is Moonshot AI's general-purpose multimodal model, taking text, image and video input with both thinking and non-thinking modes and a 256K-token context. Moonshot highlights more reliable long-horizon coding across languages such as Rust, Go and Python and tasks like frontend, DevOps and performance optimization, along with stronger instruction following, self-correction and autonomous agent execution. Choose Kimi K3 for flagship-level work with a 1M context.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to moonshotai/kimi-k2.6.\",\"default\":\"moonshotai/kimi-k2.6\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"moonshotai/kimi-k2.6\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"moonshotai/kimi-k2.6\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "MoonshotAI: Kimi K2.6" modelId: "moonshotai/kimi-k2.6" diff --git a/model-api-reference/llm-models/moonshotai/kimi-k2.7-code.md b/model-api-reference/llm-models/moonshotai/kimi-k2.7-code.md deleted file mode 100644 index 31d3da27..00000000 --- a/model-api-reference/llm-models/moonshotai/kimi-k2.7-code.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MoonshotAI: Kimi K2.7 Code API Reference" -description: "MoonshotAI: Kimi K2.7 Code API reference for SandBase. Use model moonshotai/kimi-k2.7-code with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/moonshotai/kimi-k2.7-code" -apiReferenceJson: "{\"title\":\"MoonshotAI: Kimi K2.7 Code\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"MoonshotAI: Kimi K2.7 Code is a coding-focused model in Moonshot AI's Kimi K2 family, built to complete end-to-end programming tasks reliably over long contexts. It uses a native multimodal mixture-of-experts...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to moonshotai/kimi-k2.7-code.\",\"default\":\"moonshotai/kimi-k2.7-code\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"moonshotai/kimi-k2.7-code\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"moonshotai/kimi-k2.7-code\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "MoonshotAI: Kimi K2.7 Code" - modelId: "moonshotai/kimi-k2.7-code" - vendor: "Moonshotai" - vendorSlug: "moonshotai" - modelSlug: "kimi-k2.7-code" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-06-12T12:12:41Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/moonshotai/kimi-k2.md b/model-api-reference/llm-models/moonshotai/kimi-k2.md deleted file mode 100644 index 11dd424f..00000000 --- a/model-api-reference/llm-models/moonshotai/kimi-k2.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MoonshotAI: Kimi K2 0711 API Reference" -description: "MoonshotAI: Kimi K2 0711 API reference for SandBase. Use model moonshotai/kimi-k2 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/moonshotai/kimi-k2" -apiReferenceJson: "{\"title\":\"MoonshotAI: Kimi K2 0711\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Kimi K2 Instruct is a large-scale Mixture-of-Experts (MoE) language model developed by Moonshot AI, featuring 1 trillion total parameters with 32 billion active per forward pass. It is optimized for agentic capabilities, including advanced tool use, reasoning, and code synthesis. Kimi K2 excels across a broad range of benchmarks, particularly in coding (LiveCodeBench, SWE-bench), reasoning (ZebraLogic, GPQA), and tool-use (Tau2, AceBench) tasks. It supports long-context inference up to 128K tokens and is designed with a novel training stack that includes the MuonClip optimizer for stable large-scale MoE training.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to moonshotai/kimi-k2.\",\"default\":\"moonshotai/kimi-k2\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"moonshotai/kimi-k2\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"moonshotai/kimi-k2\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "MoonshotAI: Kimi K2 0711" - modelId: "moonshotai/kimi-k2" - vendor: "Moonshotai" - vendorSlug: "moonshotai" - modelSlug: "kimi-k2" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-07-11T19:47:32.565Z" - capabilities: ["chat","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/moonshotai/kimi-k3.md b/model-api-reference/llm-models/moonshotai/kimi-k3.md index b5a3edf0..cf213b2d 100644 --- a/model-api-reference/llm-models/moonshotai/kimi-k3.md +++ b/model-api-reference/llm-models/moonshotai/kimi-k3.md @@ -4,7 +4,7 @@ description: "MoonshotAI: Kimi K3 API reference for SandBase. Use model moonshot aside: false outline: false apiReferenceKey: "llm/moonshotai/kimi-k3" -apiReferenceJson: "{\"title\":\"MoonshotAI: Kimi K3\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Kimi K3 is Moonshot AI's available generation model with advanced coding, reasoning, and multi-agent capabilities.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to moonshotai/kimi-k3.\",\"default\":\"moonshotai/kimi-k3\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"reasoning_effort\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"max\",\"constraints\":\"Allowed values: low, high, max\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"moonshotai/kimi-k3\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"moonshotai/kimi-k3\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"MoonshotAI: Kimi K3\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Kimi K3 is Moonshot AI's flagship model, a 2.8-trillion-parameter open-weight mixture-of-experts model with native visual understanding and a 1M-token context. It is built on Kimi Delta Attention, a hybrid linear attention, plus Attention Residuals, and always runs in thinking mode with selectable effort. Moonshot positions it for long-horizon coding across large codebases and terminal tools, visual software tasks such as frontend and game work, and end-to-end knowledge work.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to moonshotai/kimi-k3.\",\"default\":\"moonshotai/kimi-k3\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"reasoning_effort\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"max\",\"constraints\":\"Allowed values: low, high, max\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"moonshotai/kimi-k3\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"moonshotai/kimi-k3\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "MoonshotAI: Kimi K3" modelId: "moonshotai/kimi-k3" diff --git a/model-api-reference/llm-models/morph/morph-v3-fast.md b/model-api-reference/llm-models/morph/morph-v3-fast.md deleted file mode 100644 index a4255e59..00000000 --- a/model-api-reference/llm-models/morph/morph-v3-fast.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Morph V3 Fast API Reference" -description: "Morph V3 Fast API reference for SandBase. Use model morph/morph-v3-fast with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/morph/morph-v3-fast" -apiReferenceJson: "{\"title\":\"Morph V3 Fast\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Morph's fastest apply model for code edits. ~10,500 tokens/sec with 96% accuracy for rapid code transformations.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to morph/morph-v3-fast.\",\"default\":\"morph/morph-v3-fast\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 38000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"81920 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"morph/morph-v3-fast\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"morph/morph-v3-fast\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Morph V3 Fast" - modelId: "morph/morph-v3-fast" - vendor: "Morph" - vendorSlug: "morph" - modelSlug: "morph-v3-fast" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-07-07T17:40:02.233Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/morph/morph-v3-large.md b/model-api-reference/llm-models/morph/morph-v3-large.md deleted file mode 100644 index 18e81e0d..00000000 --- a/model-api-reference/llm-models/morph/morph-v3-large.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Morph V3 Large API Reference" -description: "Morph V3 Large API reference for SandBase. Use model morph/morph-v3-large with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/morph/morph-v3-large" -apiReferenceJson: "{\"title\":\"Morph V3 Large\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Morph's high-accuracy apply model for complex code edits. ~4,500 tokens/sec with 98% accuracy for precise code transformations.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to morph/morph-v3-large.\",\"default\":\"morph/morph-v3-large\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"morph/morph-v3-large\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"morph/morph-v3-large\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Morph V3 Large" - modelId: "morph/morph-v3-large" - vendor: "Morph" - vendorSlug: "morph" - modelSlug: "morph-v3-large" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-07-07T17:54:18.685Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/nex-agi/deepseek-v3.1-nex-n1.md b/model-api-reference/llm-models/nex-agi/deepseek-v3.1-nex-n1.md deleted file mode 100644 index 9ca7bccf..00000000 --- a/model-api-reference/llm-models/nex-agi/deepseek-v3.1-nex-n1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Nex AGI: DeepSeek V3.1 Nex N1 API Reference" -description: "Nex AGI: DeepSeek V3.1 Nex N1 API reference for SandBase. Use model nex-agi/deepseek-v3.1-nex-n1 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/nex-agi/deepseek-v3.1-nex-n1" -apiReferenceJson: "{\"title\":\"Nex AGI: DeepSeek V3.1 Nex N1\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"DeepSeek V3.1 Nex-N1 is the flagship release of the Nex-N1 series — a post-trained model designed to highlight agent autonomy, tool use, and real-world productivity.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to nex-agi/deepseek-v3.1-nex-n1.\",\"default\":\"nex-agi/deepseek-v3.1-nex-n1\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 163840\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"nex-agi/deepseek-v3.1-nex-n1\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"nex-agi/deepseek-v3.1-nex-n1\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Nex AGI: DeepSeek V3.1 Nex N1" - modelId: "nex-agi/deepseek-v3.1-nex-n1" - vendor: "Nex-Agi" - vendorSlug: "nex-agi" - modelSlug: "deepseek-v3.1-nex-n1" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-12-08T14:33:13.218Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/nex-agi/nex-n2-pro.md b/model-api-reference/llm-models/nex-agi/nex-n2-pro.md deleted file mode 100644 index 2f63e290..00000000 --- a/model-api-reference/llm-models/nex-agi/nex-n2-pro.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Nex AGI: Nex-N2-Pro API Reference" -description: "Nex AGI: Nex-N2-Pro API reference for SandBase. Use model nex-agi/nex-n2-pro with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/nex-agi/nex-n2-pro" -apiReferenceJson: "{\"title\":\"Nex AGI: Nex-N2-Pro\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Nex-N2-Pro is an agentic mixture-of-experts model from Nex AGI, with 17B active parameters out of 397B total. Built on the Qwen3.5 architecture, it accepts text and image input and produces...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to nex-agi/nex-n2-pro.\",\"default\":\"nex-agi/nex-n2-pro\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 262144\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"nex-agi/nex-n2-pro\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"nex-agi/nex-n2-pro\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Nex AGI: Nex-N2-Pro" - modelId: "nex-agi/nex-n2-pro" - vendor: "Nex-Agi" - vendorSlug: "nex-agi" - modelSlug: "nex-n2-pro" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-06-08T16:45:40Z" - capabilities: ["chat","vision","reasoning"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/nousresearch/hermes-2-pro-llama-3-8b.md b/model-api-reference/llm-models/nousresearch/hermes-2-pro-llama-3-8b.md deleted file mode 100644 index 6bfebb71..00000000 --- a/model-api-reference/llm-models/nousresearch/hermes-2-pro-llama-3-8b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "NousResearch: Hermes 2 Pro - Llama-3 8B API Reference" -description: "SandBase API reference for model nousresearch/hermes-2-pro-llama-3-8b. Call /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/nousresearch/hermes-2-pro-llama-3-8b" -apiReferenceJson: "{\"title\":\"NousResearch: Hermes 2 Pro - Llama-3 8B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Hermes 2 Pro is an upgraded, retrained version of Nous Hermes 2, consisting of an updated and cleaned version of the OpenHermes 2.5 Dataset, as well as a newly introduced Function Calling and JSON Mode dataset developed in-house.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to nousresearch/hermes-2-pro-llama-3-8b.\",\"default\":\"nousresearch/hermes-2-pro-llama-3-8b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 8192\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"8192 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"nousresearch/hermes-2-pro-llama-3-8b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"nousresearch/hermes-2-pro-llama-3-8b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "NousResearch: Hermes 2 Pro - Llama-3 8B" - modelId: "nousresearch/hermes-2-pro-llama-3-8b" - vendor: "Nousresearch" - vendorSlug: "nousresearch" - modelSlug: "hermes-2-pro-llama-3-8b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-05-27T00:00:00Z" - capabilities: ["chat","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/nousresearch/hermes-3-llama-3.1-405b.md b/model-api-reference/llm-models/nousresearch/hermes-3-llama-3.1-405b.md deleted file mode 100644 index 18cceeb0..00000000 --- a/model-api-reference/llm-models/nousresearch/hermes-3-llama-3.1-405b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Nous: Hermes 3 405B Instruct API Reference" -description: "Nous: Hermes 3 405B Instruct API reference for SandBase. Use model nousresearch/hermes-3-llama-3.1-405b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/nousresearch/hermes-3-llama-3.1-405b" -apiReferenceJson: "{\"title\":\"Nous: Hermes 3 405B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Hermes 3 is a generalist language model with many improvements over Hermes 2, including advanced agentic capabilities, much better roleplaying, reasoning, multi-turn conversation, long context coherence, and improvements across the board.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to nousresearch/hermes-3-llama-3.1-405b.\",\"default\":\"nousresearch/hermes-3-llama-3.1-405b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"nousresearch/hermes-3-llama-3.1-405b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"nousresearch/hermes-3-llama-3.1-405b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Nous: Hermes 3 405B Instruct" - modelId: "nousresearch/hermes-3-llama-3.1-405b" - vendor: "Nousresearch" - vendorSlug: "nousresearch" - modelSlug: "hermes-3-llama-3.1-405b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-08-16T00:00:00Z" - capabilities: ["chat","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/nousresearch/hermes-3-llama-3.1-70b.md b/model-api-reference/llm-models/nousresearch/hermes-3-llama-3.1-70b.md deleted file mode 100644 index 6d6b8d8c..00000000 --- a/model-api-reference/llm-models/nousresearch/hermes-3-llama-3.1-70b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Nous: Hermes 3 70B Instruct API Reference" -description: "Nous: Hermes 3 70B Instruct API reference for SandBase. Use model nousresearch/hermes-3-llama-3.1-70b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/nousresearch/hermes-3-llama-3.1-70b" -apiReferenceJson: "{\"title\":\"Nous: Hermes 3 70B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Hermes 3 is a generalist language model with many improvements over Hermes 2, including advanced agentic capabilities, much better roleplaying, reasoning, multi-turn conversation, long context coherence, and improvements across the board.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to nousresearch/hermes-3-llama-3.1-70b.\",\"default\":\"nousresearch/hermes-3-llama-3.1-70b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"nousresearch/hermes-3-llama-3.1-70b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"nousresearch/hermes-3-llama-3.1-70b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Nous: Hermes 3 70B Instruct" - modelId: "nousresearch/hermes-3-llama-3.1-70b" - vendor: "Nousresearch" - vendorSlug: "nousresearch" - modelSlug: "hermes-3-llama-3.1-70b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-08-18T00:00:00Z" - capabilities: ["chat","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/nousresearch/hermes-4-405b.md b/model-api-reference/llm-models/nousresearch/hermes-4-405b.md deleted file mode 100644 index ee11406f..00000000 --- a/model-api-reference/llm-models/nousresearch/hermes-4-405b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Nous: Hermes 4 405B API Reference" -description: "Nous: Hermes 4 405B API reference for SandBase. Use model nousresearch/hermes-4-405b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/nousresearch/hermes-4-405b" -apiReferenceJson: "{\"title\":\"Nous: Hermes 4 405B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Hermes 4 is a large-scale reasoning model built on Meta-Llama-3.1-405B and released by Nous Research. It introduces a hybrid reasoning mode, where the model can choose to deliberate internally with ... traces or respond directly, offering flexibility between speed and depth. Users can control the reasoning behaviour with the `reasoning` `enabled` boolean. Learn more in our docs\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to nousresearch/hermes-4-405b.\",\"default\":\"nousresearch/hermes-4-405b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"nousresearch/hermes-4-405b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"nousresearch/hermes-4-405b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Nous: Hermes 4 405B" - modelId: "nousresearch/hermes-4-405b" - vendor: "Nousresearch" - vendorSlug: "nousresearch" - modelSlug: "hermes-4-405b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-08-26T19:11:03.38Z" - capabilities: ["chat","reasoning","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/nousresearch/hermes-4-70b.md b/model-api-reference/llm-models/nousresearch/hermes-4-70b.md deleted file mode 100644 index 53b94ddf..00000000 --- a/model-api-reference/llm-models/nousresearch/hermes-4-70b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Nous: Hermes 4 70B API Reference" -description: "Nous: Hermes 4 70B API reference for SandBase. Use model nousresearch/hermes-4-70b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/nousresearch/hermes-4-70b" -apiReferenceJson: "{\"title\":\"Nous: Hermes 4 70B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Hermes 4 70B is a hybrid reasoning model from Nous Research, built on Meta-Llama-3.1-70B. It introduces the same hybrid mode as the larger 405B release, allowing the model to either respond directly or generate explicit ... reasoning traces before answering. Users can control the reasoning behaviour with the `reasoning` `enabled` boolean. Learn more in our docs\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to nousresearch/hermes-4-70b.\",\"default\":\"nousresearch/hermes-4-70b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"nousresearch/hermes-4-70b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"nousresearch/hermes-4-70b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Nous: Hermes 4 70B" - modelId: "nousresearch/hermes-4-70b" - vendor: "Nousresearch" - vendorSlug: "nousresearch" - modelSlug: "hermes-4-70b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-08-26T19:23:02.446Z" - capabilities: ["chat","reasoning","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/nvidia/llama-3.3-nemotron-super-49b-v1.5.md b/model-api-reference/llm-models/nvidia/llama-3.3-nemotron-super-49b-v1.5.md deleted file mode 100644 index f9a787dc..00000000 --- a/model-api-reference/llm-models/nvidia/llama-3.3-nemotron-super-49b-v1.5.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Llama 3.3 Nemotron Super 49B V1.5 API Reference" -description: "SandBase API reference for model nvidia/llama-3.3-nemotron-super-49b-v1.5. Call /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/nvidia/llama-3.3-nemotron-super-49b-v1.5" -apiReferenceJson: "{\"title\":\"Llama 3.3 Nemotron Super 49B V1.5\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Llama-3.3-Nemotron-Super-49B-v1.5 is a 49B-parameter, English-centric reasoning/chat model derived from Meta’s Llama-3.3-70B-Instruct with a 128K context. It’s post-trained for agentic workflows (RAG, tool calling) via SFT across math, code, science, and multi-turn chat, followed by multiple RL stages; Reward-aware Preference Optimization (RPO) for alignment, RL with Verifiable Rewards (RLVR) for step-wise reasoning, and iterative DPO to refine tool-use behavior. A distillation-driven Neural Architecture Search (“Puzzle”) replaces some attention blocks and varies FFN widths to shrink memory footprint and improve throughput, enabling single-GPU (H100/H200) deployment while preserving instruction following and CoT quality.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to nvidia/llama-3.3-nemotron-super-49b-v1.5.\",\"default\":\"nvidia/llama-3.3-nemotron-super-49b-v1.5\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"nvidia/llama-3.3-nemotron-super-49b-v1.5\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"nvidia/llama-3.3-nemotron-super-49b-v1.5\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Llama 3.3 Nemotron Super 49B V1.5" - modelId: "nvidia/llama-3.3-nemotron-super-49b-v1.5" - vendor: "NVIDIA" - vendorSlug: "nvidia" - modelSlug: "llama-3.3-nemotron-super-49b-v1.5" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-10-10T13:03:15.135Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/nvidia/nemotron-3-nano-30b-a3b.md b/model-api-reference/llm-models/nvidia/nemotron-3-nano-30b-a3b.md deleted file mode 100644 index 8936c54d..00000000 --- a/model-api-reference/llm-models/nvidia/nemotron-3-nano-30b-a3b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Nemotron 3 Nano 30B A3B API Reference" -description: "Nemotron 3 Nano 30B A3B API reference for SandBase. Use model nvidia/nemotron-3-nano-30b-a3b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/nvidia/nemotron-3-nano-30b-a3b" -apiReferenceJson: "{\"title\":\"Nemotron 3 Nano 30B A3B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"NVIDIA Nemotron 3 Nano 30B A3B is a small language MoE model with highest compute efficiency and accuracy for developers to build specialized agentic AI systems.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to nvidia/nemotron-3-nano-30b-a3b.\",\"default\":\"nvidia/nemotron-3-nano-30b-a3b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 228000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"nvidia/nemotron-3-nano-30b-a3b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"nvidia/nemotron-3-nano-30b-a3b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Nemotron 3 Nano 30B A3B" - modelId: "nvidia/nemotron-3-nano-30b-a3b" - vendor: "NVIDIA" - vendorSlug: "nvidia" - modelSlug: "nemotron-3-nano-30b-a3b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-12-14T16:54:35Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/nvidia/nemotron-3-super-120b-a12b.md b/model-api-reference/llm-models/nvidia/nemotron-3-super-120b-a12b.md deleted file mode 100644 index 4affbe6c..00000000 --- a/model-api-reference/llm-models/nvidia/nemotron-3-super-120b-a12b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Nemotron 3 Super API Reference" -description: "Nemotron 3 Super API reference for SandBase. Use model nvidia/nemotron-3-super-120b-a12b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/nvidia/nemotron-3-super-120b-a12b" -apiReferenceJson: "{\"title\":\"Nemotron 3 Super\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"NVIDIA Nemotron 3 Super is a 120B-parameter open hybrid MoE model, activating just 12B parameters for maximum compute efficiency and accuracy in complex multi-agent applications. Built on a hybrid Mamba-Transformer Mixture-of-Experts architecture with multi-token prediction (MTP), it delivers over 50% higher token generation compared to leading open models.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to nvidia/nemotron-3-super-120b-a12b.\",\"default\":\"nvidia/nemotron-3-super-120b-a12b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 262144\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"nvidia/nemotron-3-super-120b-a12b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"nvidia/nemotron-3-super-120b-a12b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Nemotron 3 Super" - modelId: "nvidia/nemotron-3-super-120b-a12b" - vendor: "NVIDIA" - vendorSlug: "nvidia" - modelSlug: "nemotron-3-super-120b-a12b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-03-11T16:07:19Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/nvidia/nemotron-3-ultra-550b-a55b.md b/model-api-reference/llm-models/nvidia/nemotron-3-ultra-550b-a55b.md deleted file mode 100644 index c4cee2fb..00000000 --- a/model-api-reference/llm-models/nvidia/nemotron-3-ultra-550b-a55b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Nemotron 3 Ultra API Reference" -description: "Nemotron 3 Ultra API reference for SandBase. Use model nvidia/nemotron-3-ultra-550b-a55b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/nvidia/nemotron-3-ultra-550b-a55b" -apiReferenceJson: "{\"title\":\"Nemotron 3 Ultra\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"NVIDIA Nemotron 3 Ultra is an open frontier-reasoning and orchestration model from NVIDIA, with 55B active parameters out of 550B total (MoE). Built on a hybrid Transformer-Mamba mixture-of-experts architecture, it supports text input and output with a context window of up to 1M tokens. It is suited for long-running agentic workflows, including agent orchestration, coding agents, deep research, and complex enterprise tasks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to nvidia/nemotron-3-ultra-550b-a55b.\",\"default\":\"nvidia/nemotron-3-ultra-550b-a55b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"nvidia/nemotron-3-ultra-550b-a55b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"nvidia/nemotron-3-ultra-550b-a55b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Nemotron 3 Ultra" - modelId: "nvidia/nemotron-3-ultra-550b-a55b" - vendor: "NVIDIA" - vendorSlug: "nvidia" - modelSlug: "nemotron-3-ultra-550b-a55b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-06-04T05:33:28.534Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/nvidia/nemotron-nano-9b-v2.md b/model-api-reference/llm-models/nvidia/nemotron-nano-9b-v2.md deleted file mode 100644 index d07d6481..00000000 --- a/model-api-reference/llm-models/nvidia/nemotron-nano-9b-v2.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Nemotron Nano 9B V2 API Reference" -description: "Nemotron Nano 9B V2 API reference for SandBase. Use model nvidia/nemotron-nano-9b-v2 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/nvidia/nemotron-nano-9b-v2" -apiReferenceJson: "{\"title\":\"Nemotron Nano 9B V2\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"NVIDIA-Nemotron-Nano-9B-v2 is a large language model (LLM) trained from scratch by NVIDIA, and designed as a unified model for both reasoning and non-reasoning tasks. It responds to user queries and tasks by first generating a reasoning trace and then concluding with a final response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to nvidia/nemotron-nano-9b-v2.\",\"default\":\"nvidia/nemotron-nano-9b-v2\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"nvidia/nemotron-nano-9b-v2\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"nvidia/nemotron-nano-9b-v2\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Nemotron Nano 9B V2" - modelId: "nvidia/nemotron-nano-9b-v2" - vendor: "NVIDIA" - vendorSlug: "nvidia" - modelSlug: "nemotron-nano-9b-v2" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-09-05T21:13:27.486Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-3.5-turbo-0613.md b/model-api-reference/llm-models/openai/gpt-3.5-turbo-0613.md deleted file mode 100644 index a24b130b..00000000 --- a/model-api-reference/llm-models/openai/gpt-3.5-turbo-0613.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-3.5 Turbo (older v0613) API Reference" -description: "OpenAI Responses API reference for openai/gpt-3.5-turbo-0613-75611797." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-3.5-turbo-0613" -apiReferenceJson: "{\"title\":\"GPT-3.5 Turbo (older v0613)\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-3.5 Turbo is OpenAI's fastest model. It can understand and generate natural language or code, and is optimized for chat and traditional completion tasks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 4096\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"4095 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-3.5-turbo-older-v0613-\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-3.5-turbo-older-v0613-\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-3.5 Turbo (older v0613)" - modelId: "openai/gpt-3.5-turbo-0613" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-3.5-turbo-0613" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2024-01-25T00:00:00Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-3.5-turbo-16k.md b/model-api-reference/llm-models/openai/gpt-3.5-turbo-16k.md deleted file mode 100644 index 5f8f3f68..00000000 --- a/model-api-reference/llm-models/openai/gpt-3.5-turbo-16k.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-3.5 Turbo 16k API Reference" -description: "OpenAI Responses API reference for openai/gpt-3.5-turbo-16k-d5d7c50e." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-3.5-turbo-16k" -apiReferenceJson: "{\"title\":\"GPT-3.5 Turbo 16k\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"This model offers four times the context length of gpt-3.5-turbo, allowing it to support approximately 20 pages of text in a single request at a higher cost. Training data: up to Sep 2021.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 4096\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"16385 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-3.5-turbo-16k\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-3.5-turbo-16k\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-3.5 Turbo 16k" - modelId: "openai/gpt-3.5-turbo-16k" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-3.5-turbo-16k" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2023-08-28T00:00:00Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-3.5-turbo-instruct.md b/model-api-reference/llm-models/openai/gpt-3.5-turbo-instruct.md deleted file mode 100644 index 8e6488e1..00000000 --- a/model-api-reference/llm-models/openai/gpt-3.5-turbo-instruct.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-3.5 Turbo Instruct API Reference" -description: "OpenAI Responses API reference for openai/gpt-3.5-turbo-instruct-684ecedb." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-3.5-turbo-instruct" -apiReferenceJson: "{\"title\":\"GPT-3.5 Turbo Instruct\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"This model is a variant of GPT-3.5 Turbo tuned for instructional prompts and omitting chat-related optimizations. Training data: up to Sep 2021.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 4096\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"4095 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-3.5-turbo-instruct\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-3.5-turbo-instruct\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-3.5 Turbo Instruct" - modelId: "openai/gpt-3.5-turbo-instruct" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-3.5-turbo-instruct" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2023-09-28T00:00:00Z" - capabilities: ["chat","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-3.5-turbo.md b/model-api-reference/llm-models/openai/gpt-3.5-turbo.md deleted file mode 100644 index bfc40fd4..00000000 --- a/model-api-reference/llm-models/openai/gpt-3.5-turbo.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-3.5 Turbo API Reference" -description: "OpenAI Responses API reference for openai/gpt-3.5-turbo-8356fc79." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-3.5-turbo" -apiReferenceJson: "{\"title\":\"GPT-3.5 Turbo\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-3.5 Turbo is OpenAI's fastest model. It can understand and generate natural language or code, and is optimized for chat and traditional completion tasks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 4096\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"16385 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-3.5-turbo\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-3.5-turbo\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-3.5 Turbo" - modelId: "openai/gpt-3.5-turbo" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-3.5-turbo" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2023-05-28T00:00:00Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-4-0314.md b/model-api-reference/llm-models/openai/gpt-4-0314.md deleted file mode 100644 index aa57ff55..00000000 --- a/model-api-reference/llm-models/openai/gpt-4-0314.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-4 (older v0314) API Reference" -description: "OpenAI Responses API reference for openai/gpt-4-0314-4d623fb6." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-4-0314" -apiReferenceJson: "{\"title\":\"GPT-4 (older v0314)\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-4-0314 is the first version of GPT-4 released, with a context length of 8,192 tokens, and was supported until June 14. Training data: up to Sep 2021.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 4096\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"8191 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-4-older-v0314-\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-4-older-v0314-\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-4 (older v0314)" - modelId: "openai/gpt-4-0314" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-4-0314" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2023-05-28T00:00:00Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-4-1106-preview.md b/model-api-reference/llm-models/openai/gpt-4-1106-preview.md deleted file mode 100644 index c992d850..00000000 --- a/model-api-reference/llm-models/openai/gpt-4-1106-preview.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-4 Turbo (older v1106) API Reference" -description: "OpenAI Responses API reference for openai/gpt-4-1106-preview-489b640e." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-4-1106-preview" -apiReferenceJson: "{\"title\":\"GPT-4 Turbo (older v1106)\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"The available GPT-4 Turbo model with vision capabilities. Vision requests can now use JSON mode and function calling.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 4096\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-4-turbo-older-v1106-\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-4-turbo-older-v1106-\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-4 Turbo (older v1106)" - modelId: "openai/gpt-4-1106-preview" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-4-1106-preview" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2023-11-06T00:00:00Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-4-turbo-preview.md b/model-api-reference/llm-models/openai/gpt-4-turbo-preview.md deleted file mode 100644 index bce26b0b..00000000 --- a/model-api-reference/llm-models/openai/gpt-4-turbo-preview.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-4 Turbo Preview API Reference" -description: "OpenAI Responses API reference for openai/gpt-4-turbo-preview-7b0a2bd2." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-4-turbo-preview" -apiReferenceJson: "{\"title\":\"GPT-4 Turbo Preview\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"The preview GPT-4 model with improved instruction following, JSON mode, reproducible outputs, parallel function calling, and more. Training data: up to Dec 2023.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 4096\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-4-turbo-preview\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-4-turbo-preview\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-4 Turbo Preview" - modelId: "openai/gpt-4-turbo-preview" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-4-turbo-preview" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2024-01-25T00:00:00Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-4-turbo.md b/model-api-reference/llm-models/openai/gpt-4-turbo.md deleted file mode 100644 index 7372e321..00000000 --- a/model-api-reference/llm-models/openai/gpt-4-turbo.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-4 Turbo API Reference" -description: "OpenAI Responses API reference for openai/gpt-4-turbo-1d40b70d." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-4-turbo" -apiReferenceJson: "{\"title\":\"GPT-4 Turbo\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"The available GPT-4 Turbo model with vision capabilities. Vision requests can now use JSON mode and function calling.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 4096\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-4-turbo\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-4-turbo\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-4 Turbo" - modelId: "openai/gpt-4-turbo" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-4-turbo" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2024-04-09T00:00:00Z" - capabilities: ["chat","vision","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-4.1-mini.md b/model-api-reference/llm-models/openai/gpt-4.1-mini.md index 1424fdc2..67e47869 100644 --- a/model-api-reference/llm-models/openai/gpt-4.1-mini.md +++ b/model-api-reference/llm-models/openai/gpt-4.1-mini.md @@ -1,10 +1,10 @@ --- title: "GPT-4.1 Mini API Reference" -description: "OpenAI Responses API reference for openai/gpt-4.1-mini-0e37111f." +description: "GPT-4.1 Mini API reference for SandBase. Use model openai/gpt-4.1-mini with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-4.1-mini" -apiReferenceJson: "{\"title\":\"GPT-4.1 Mini\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-4.1 Mini is a mid-sized model delivering performance competitive with GPT-4o at substantially lower latency and cost. It retains a 1 million token context window and scores 45.1% on hard instruction evals, 35.8% on MultiChallenge, and 84.1% on IFEval. Mini also shows strong coding ability (e.g., 31.6% on Aider’s polyglot diff benchmark) and vision understanding, making it suitable for interactive applications with tight performance constraints.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1047576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-4.1-mini\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-4.1-mini\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-4.1 Mini\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-4.1 mini is the smaller, faster tier of OpenAI's GPT-4.1 series, released in April 2025 as a non-reasoning model that accepts text and images and returns text. OpenAI describes it as strong at instruction following and tool calling, with the same 1M-token context window as GPT-4.1 and lower latency. It suits interactive apps, chat and agent tool calls where responsiveness matters more than the extra depth of full GPT-4.1.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-4.1-mini.\",\"default\":\"openai/gpt-4.1-mini\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1047576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-4.1-mini\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-4.1-mini\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-4.1 Mini" modelId: "openai/gpt-4.1-mini" diff --git a/model-api-reference/llm-models/openai/gpt-4.1-nano.md b/model-api-reference/llm-models/openai/gpt-4.1-nano.md index d35c07af..c1664edd 100644 --- a/model-api-reference/llm-models/openai/gpt-4.1-nano.md +++ b/model-api-reference/llm-models/openai/gpt-4.1-nano.md @@ -1,10 +1,10 @@ --- title: "GPT-4.1 Nano API Reference" -description: "OpenAI Responses API reference for openai/gpt-4.1-nano-2f6cf4c4." +description: "GPT-4.1 Nano API reference for SandBase. Use model openai/gpt-4.1-nano with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-4.1-nano" -apiReferenceJson: "{\"title\":\"GPT-4.1 Nano\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"For tasks that demand low latency, GPT‑4.1 nano is the fastest and cheapest model in the GPT-4.1 series. It delivers exceptional performance at a small size with its 1 million token context window, and scores 80.1% on MMLU, 50.3% on GPQA, and 9.8% on Aider polyglot coding – even higher than GPT‑4o mini. It’s ideal for tasks like classification or autocompletion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1047576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-4.1-nano\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-4.1-nano\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-4.1 Nano\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-4.1 nano is the fastest and smallest tier of OpenAI's GPT-4.1 series, released in April 2025 as a non-reasoning model with text and image input and text output. It keeps the 1M-token context window and the instruction-following and tool-calling focus of its siblings, and OpenAI points to low-latency tasks such as classification and autocompletion. Choose it for high-volume, simple workloads; GPT-4.1 mini or GPT-4.1 handle harder prompts better.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-4.1-nano.\",\"default\":\"openai/gpt-4.1-nano\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1047576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-4.1-nano\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-4.1-nano\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-4.1 Nano" modelId: "openai/gpt-4.1-nano" diff --git a/model-api-reference/llm-models/openai/gpt-4.1.md b/model-api-reference/llm-models/openai/gpt-4.1.md index 0f5b0c9e..4343ba25 100644 --- a/model-api-reference/llm-models/openai/gpt-4.1.md +++ b/model-api-reference/llm-models/openai/gpt-4.1.md @@ -1,10 +1,10 @@ --- title: "GPT-4.1 API Reference" -description: "OpenAI Responses API reference for openai/gpt-4.1-984d6c0f." +description: "GPT-4.1 API reference for SandBase. Use model openai/gpt-4.1 with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-4.1" -apiReferenceJson: "{\"title\":\"GPT-4.1\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-4.1 is a flagship large language model optimized for advanced instruction following, real-world software engineering, and long-context reasoning. It supports a 1 million token context window and outperforms GPT-4o and GPT-4.5 across coding (54.6% SWE-bench Verified), instruction compliance (87.4% IFEval), and multimodal understanding benchmarks. It is tuned for precise code diffs, agent reliability, and high recall in large document contexts, making it ideal for agents, IDE tooling, and enterprise knowledge retrieval.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 1047576\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1047576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-4.1\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-4.1\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-4.1\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-4.1 is OpenAI's flagship non-reasoning model in the GPT-4.1 series, released in April 2025 alongside GPT-4.1 mini and nano, with text and image input and text output. OpenAI positions it for instruction following, tool calling and coding, with improved long-context comprehension across its 1M-token window and low latency because it skips a separate reasoning step. Pick it over the mini and nano tiers when output quality matters more than speed; OpenAI suggests GPT-5-class models for the most complex tasks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-4.1.\",\"default\":\"openai/gpt-4.1\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1047576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-4.1\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-4.1\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-4.1" modelId: "openai/gpt-4.1" diff --git a/model-api-reference/llm-models/openai/gpt-4.md b/model-api-reference/llm-models/openai/gpt-4.md deleted file mode 100644 index b402de0f..00000000 --- a/model-api-reference/llm-models/openai/gpt-4.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-4 API Reference" -description: "OpenAI Responses API reference for openai/gpt-4-5204d22d." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-4" -apiReferenceJson: "{\"title\":\"GPT-4\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"OpenAI's flagship model, GPT-4 is a large-scale multimodal language model capable of solving difficult problems with greater accuracy than previous models due to its broader general knowledge and advanced reasoning capabilities. Training data: up to Sep 2021.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 4096\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"8191 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-4\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-4\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-4" - modelId: "openai/gpt-4" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-4" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2023-05-28T00:00:00Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-4o-2024-05-13.md b/model-api-reference/llm-models/openai/gpt-4o-2024-05-13.md index 71b36e45..076c9807 100644 --- a/model-api-reference/llm-models/openai/gpt-4o-2024-05-13.md +++ b/model-api-reference/llm-models/openai/gpt-4o-2024-05-13.md @@ -1,10 +1,10 @@ --- title: "GPT-4o (2024-05-13) API Reference" -description: "OpenAI Responses API reference for openai/gpt-4o-2024-05-13-57ab13d6." +description: "GPT-4o (2024-05-13) API reference for SandBase. Use model openai/gpt-4o-2024-05-13 with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-4o-2024-05-13" -apiReferenceJson: "{\"title\":\"GPT-4o (2024-05-13)\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-4o (\\\"o\\\" for \\\"omni\\\") is an OpenAI model, supporting both text and image inputs with text outputs. It maintains the intelligence level of GPT-4 Turbo while being twice as fast and 50% more cost-effective. GPT-4o also offers improved performance in processing non-English languages and enhanced visual capabilities.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 4096\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-4o-2024-05-13-\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-4o-2024-05-13-\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-4o (2024-05-13)\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"This is the pinned May 13, 2024 snapshot of OpenAI's GPT-4o, the original API release of the model, with text and image input and text output. It is intended for workloads that need a fixed, reproducible version of the launch-era GPT-4o rather than the moving GPT-4o alias. Later snapshots from August and November 2024 add Structured Outputs with JSON schemas and a larger output limit, so most fresh projects start with one of those.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-4o-2024-05-13.\",\"default\":\"openai/gpt-4o-2024-05-13\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 4096\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-4o-2024-05-13\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-4o-2024-05-13\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-4o (2024-05-13)" modelId: "openai/gpt-4o-2024-05-13" diff --git a/model-api-reference/llm-models/openai/gpt-4o-2024-08-06.md b/model-api-reference/llm-models/openai/gpt-4o-2024-08-06.md index a0c35a50..5efa80df 100644 --- a/model-api-reference/llm-models/openai/gpt-4o-2024-08-06.md +++ b/model-api-reference/llm-models/openai/gpt-4o-2024-08-06.md @@ -1,10 +1,10 @@ --- title: "GPT-4o (2024-08-06) API Reference" -description: "OpenAI Responses API reference for openai/gpt-4o-2024-08-06-1e4dec14." +description: "GPT-4o (2024-08-06) API reference for SandBase. Use model openai/gpt-4o-2024-08-06 with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-4o-2024-08-06" -apiReferenceJson: "{\"title\":\"GPT-4o (2024-08-06)\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"The 2024-08-06 version of GPT-4o offers improved performance in structured outputs, with the ability to supply a JSON schema in the response_format. Read more here.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-4o-2024-08-06-\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-4o-2024-08-06-\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-4o (2024-08-06)\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"This is the pinned August 6, 2024 snapshot of OpenAI's GPT-4o, accepting text and image input and producing text output. It was the first GPT-4o snapshot to support Structured Outputs, letting developers supply a JSON schema that responses follow, and it raised the output limit over the May 2024 release. Use it for workloads that need a fixed GPT-4o version, especially schema-constrained extraction and function-calling pipelines.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-4o-2024-08-06.\",\"default\":\"openai/gpt-4o-2024-08-06\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-4o-2024-08-06\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-4o-2024-08-06\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-4o (2024-08-06)" modelId: "openai/gpt-4o-2024-08-06" diff --git a/model-api-reference/llm-models/openai/gpt-4o-2024-11-20.md b/model-api-reference/llm-models/openai/gpt-4o-2024-11-20.md index 9f3660cc..a4ca5ad5 100644 --- a/model-api-reference/llm-models/openai/gpt-4o-2024-11-20.md +++ b/model-api-reference/llm-models/openai/gpt-4o-2024-11-20.md @@ -1,10 +1,10 @@ --- title: "GPT-4o (2024-11-20) API Reference" -description: "OpenAI Responses API reference for openai/gpt-4o-2024-11-20-fc8fe924." +description: "GPT-4o (2024-11-20) API reference for SandBase. Use model openai/gpt-4o-2024-11-20 with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-4o-2024-11-20" -apiReferenceJson: "{\"title\":\"GPT-4o (2024-11-20)\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"The 2024-11-20 version of GPT-4o offers a leveled-up creative writing ability with more natural, engaging, and tailored writing to improve relevance & readability. It’s also better at working with uploaded files, providing deeper insights & more thorough responses.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-4o-2024-11-20-\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-4o-2024-11-20-\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-4o (2024-11-20)\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"This is the pinned November 20, 2024 snapshot of OpenAI's GPT-4o, with text and image input and text output, plus Structured Outputs and function calling. It is the most recent of the dated GPT-4o snapshots OpenAI lists in the API, following the August 2024 release. Use it for workloads that need a fixed GPT-4o version from late 2024 rather than the moving GPT-4o alias.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-4o-2024-11-20.\",\"default\":\"openai/gpt-4o-2024-11-20\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-4o-2024-11-20\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-4o-2024-11-20\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-4o (2024-11-20)" modelId: "openai/gpt-4o-2024-11-20" diff --git a/model-api-reference/llm-models/openai/gpt-4o-audio-preview.md b/model-api-reference/llm-models/openai/gpt-4o-audio-preview.md deleted file mode 100644 index b4a099cd..00000000 --- a/model-api-reference/llm-models/openai/gpt-4o-audio-preview.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-4o Audio API Reference" -description: "OpenAI Responses API reference for openai/gpt-4o-audio-preview-7df35724." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-4o-audio-preview" -apiReferenceJson: "{\"title\":\"GPT-4o Audio\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"The gpt-4o-audio-preview model adds support for audio inputs as prompts. This enhancement allows the model to detect nuances within audio recordings and add depth to generated user experiences. Audio outputs are currently not supported. Audio tokens are priced at $40 per million input and $80 per million output audio tokens.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, audio_input, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-4o-audio\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-4o-audio\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-4o Audio" - modelId: "openai/gpt-4o-audio-preview" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-4o-audio-preview" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2025-08-15T04:44:21.353Z" - capabilities: ["chat","audio_input","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-4o-mini-2024-07-18.md b/model-api-reference/llm-models/openai/gpt-4o-mini-2024-07-18.md deleted file mode 100644 index 7e994ff7..00000000 --- a/model-api-reference/llm-models/openai/gpt-4o-mini-2024-07-18.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-4o-mini (2024-07-18) API Reference" -description: "OpenAI Responses API reference for openai/gpt-4o-mini-2024-07-18-34fc3a42." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-4o-mini-2024-07-18" -apiReferenceJson: "{\"title\":\"GPT-4o-mini (2024-07-18)\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-4o mini is OpenAI's model after GPT-4 Omni, supporting both text and image inputs with text outputs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-4o-mini-2024-07-18-\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-4o-mini-2024-07-18-\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-4o-mini (2024-07-18)" - modelId: "openai/gpt-4o-mini-2024-07-18" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-4o-mini-2024-07-18" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2024-07-18T00:00:00Z" - capabilities: ["chat","vision","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-4o-mini-search-preview.md b/model-api-reference/llm-models/openai/gpt-4o-mini-search-preview.md deleted file mode 100644 index fbbfd74d..00000000 --- a/model-api-reference/llm-models/openai/gpt-4o-mini-search-preview.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-4o-mini Search Preview API Reference" -description: "OpenAI Responses API reference for openai/gpt-4o-mini-search-preview-a88cf241." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-4o-mini-search-preview" -apiReferenceJson: "{\"title\":\"GPT-4o-mini Search Preview\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-4o mini Search Preview is a specialized model for web search in Chat Completions. It is trained to understand and execute web search queries.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-4o-mini-search-preview\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-4o-mini-search-preview\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-4o-mini Search Preview" - modelId: "openai/gpt-4o-mini-search-preview" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-4o-mini-search-preview" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2025-03-12T22:22:02.718Z" - capabilities: ["chat","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-4o-mini.md b/model-api-reference/llm-models/openai/gpt-4o-mini.md index b6461574..368be94c 100644 --- a/model-api-reference/llm-models/openai/gpt-4o-mini.md +++ b/model-api-reference/llm-models/openai/gpt-4o-mini.md @@ -1,10 +1,10 @@ --- title: "GPT-4o-mini API Reference" -description: "OpenAI Responses API reference for openai/gpt-4o-mini-bde22e9f." +description: "GPT-4o-mini API reference for SandBase. Use model openai/gpt-4o-mini with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-4o-mini" -apiReferenceJson: "{\"title\":\"GPT-4o-mini\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-4o mini is OpenAI's model after GPT-4 Omni, supporting both text and image inputs with text outputs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-4o-mini\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-4o-mini\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-4o-mini\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-4o mini is OpenAI's small, fast model from the GPT-4o family, released in July 2024 with text and image input and text output, including Structured Outputs. OpenAI positions it for focused tasks such as intent classification, keyword extraction, translation and tagging, and calls it ideal for fine-tuning, including distilling outputs from a larger model like GPT-4o. Pick it over GPT-4o when latency and throughput matter more than peak capability.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-4o-mini.\",\"default\":\"openai/gpt-4o-mini\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-4o-mini\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-4o-mini\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-4o-mini" modelId: "openai/gpt-4o-mini" diff --git a/model-api-reference/llm-models/openai/gpt-4o-search-preview.md b/model-api-reference/llm-models/openai/gpt-4o-search-preview.md deleted file mode 100644 index c161d126..00000000 --- a/model-api-reference/llm-models/openai/gpt-4o-search-preview.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-4o Search Preview API Reference" -description: "OpenAI Responses API reference for openai/gpt-4o-search-preview-fa2edea4." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-4o-search-preview" -apiReferenceJson: "{\"title\":\"GPT-4o Search Preview\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-4o Search Previewis a specialized model for web search in Chat Completions. It is trained to understand and execute web search queries.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-4o-search-preview\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-4o-search-preview\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-4o Search Preview" - modelId: "openai/gpt-4o-search-preview" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-4o-search-preview" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2025-03-12T22:19:09.996Z" - capabilities: ["chat","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-4o.md b/model-api-reference/llm-models/openai/gpt-4o.md index dd77b46c..c0ddb5a4 100644 --- a/model-api-reference/llm-models/openai/gpt-4o.md +++ b/model-api-reference/llm-models/openai/gpt-4o.md @@ -1,10 +1,10 @@ --- title: "GPT-4o API Reference" -description: "OpenAI Responses API reference for openai/gpt-4o-7666fc6c." +description: "GPT-4o API reference for SandBase. Use model openai/gpt-4o with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-4o" -apiReferenceJson: "{\"title\":\"GPT-4o\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-4o (\\\"o\\\" for \\\"omni\\\") is an OpenAI model, supporting both text and image inputs with text outputs. It maintains the intelligence level of GPT-4 Turbo while being twice as fast and 50% more cost-effective. GPT-4o also offers improved performance in processing non-English languages and enhanced visual capabilities.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-4o\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-4o\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-4o\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-4o (\\\"o\\\" for \\\"omni\\\") is OpenAI's versatile, high-intelligence GPT model released in May 2024, accepting text and image input and producing text output, including Structured Outputs. OpenAI describes it as fast and flexible, suited to general-purpose chat, image understanding, function calling and non-English language tasks. This entry tracks OpenAI's default GPT-4o alias; use one of the dated GPT-4o snapshots when a workload needs fixed behavior.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-4o.\",\"default\":\"openai/gpt-4o\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-4o\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-4o\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-4o" modelId: "openai/gpt-4o" diff --git a/model-api-reference/llm-models/openai/gpt-5-chat.md b/model-api-reference/llm-models/openai/gpt-5-chat.md deleted file mode 100644 index 15579a20..00000000 --- a/model-api-reference/llm-models/openai/gpt-5-chat.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-5 Chat API Reference" -description: "OpenAI Responses API reference for openai/gpt-5-chat-c60da9ee." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-5-chat" -apiReferenceJson: "{\"title\":\"GPT-5 Chat\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5 Chat is designed for advanced, natural, multimodal, and context-aware conversations for enterprise applications.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5-chat\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5-chat\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-5 Chat" - modelId: "openai/gpt-5-chat" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-5-chat" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2025-08-07T17:30:37.425Z" - capabilities: ["chat","vision","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-5-codex.md b/model-api-reference/llm-models/openai/gpt-5-codex.md deleted file mode 100644 index e739bad5..00000000 --- a/model-api-reference/llm-models/openai/gpt-5-codex.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-5 Codex API Reference" -description: "OpenAI Responses API reference for openai/gpt-5-codex-43370962." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-5-codex" -apiReferenceJson: "{\"title\":\"GPT-5 Codex\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5-Codex is a specialized version of GPT-5 optimized for software engineering and coding workflows. It is designed for both interactive development sessions and long, independent execution of complex engineering tasks. The model supports building projects from scratch, feature development, debugging, large-scale refactoring, and code review. Compared to GPT-5, Codex is more steerable, adheres closely to developer instructions, and produces cleaner, higher-quality code outputs. Reasoning effort can be adjusted with the `reasoning.effort` parameter. Read the docs here\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5-codex\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5-codex\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-5 Codex" - modelId: "openai/gpt-5-codex" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-5-codex" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2025-09-23T16:03:23.098Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-5-image-mini.md b/model-api-reference/llm-models/openai/gpt-5-image-mini.md deleted file mode 100644 index 8d85cb19..00000000 --- a/model-api-reference/llm-models/openai/gpt-5-image-mini.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-5 Image Mini API Reference" -description: "OpenAI Responses API reference for openai/gpt-5-image-mini-d68cd15b." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-5-image-mini" -apiReferenceJson: "{\"title\":\"GPT-5 Image Mini\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5 Image Mini combines OpenAI's advanced language capabilities, powered by GPT-5 Mini, with GPT Image 1 Mini for efficient image generation. This natively multimodal model features superior instruction following, text rendering, and detailed image editing with reduced latency and cost. It excels at high-quality visual creation while maintaining strong text understanding, making it ideal for applications that require both efficient image generation and text processing at scale.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5-image-mini\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5-image-mini\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-5 Image Mini" - modelId: "openai/gpt-5-image-mini" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-5-image-mini" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2025-10-16T14:23:03.143Z" - capabilities: ["chat","vision","reasoning","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-5-image.md b/model-api-reference/llm-models/openai/gpt-5-image.md deleted file mode 100644 index 584c4e59..00000000 --- a/model-api-reference/llm-models/openai/gpt-5-image.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-5 Image API Reference" -description: "OpenAI Responses API reference for openai/gpt-5-image-08c8baea." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-5-image" -apiReferenceJson: "{\"title\":\"GPT-5 Image\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5 Image combines OpenAI's GPT-5 model with state-of-the-art image generation capabilities. It offers major improvements in reasoning, code quality, and user experience while incorporating GPT Image 1's superior instruction following, text rendering, and detailed image editing.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5-image\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5-image\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-5 Image" - modelId: "openai/gpt-5-image" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-5-image" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2025-10-14T13:19:46.029Z" - capabilities: ["chat","vision","reasoning","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-5-mini.md b/model-api-reference/llm-models/openai/gpt-5-mini.md index d436429a..46dec33d 100644 --- a/model-api-reference/llm-models/openai/gpt-5-mini.md +++ b/model-api-reference/llm-models/openai/gpt-5-mini.md @@ -1,10 +1,10 @@ --- title: "GPT-5 Mini API Reference" -description: "OpenAI Responses API reference for openai/gpt-5-mini-f934f8c4." +description: "GPT-5 Mini API reference for SandBase. Use model openai/gpt-5-mini with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-5-mini" -apiReferenceJson: "{\"title\":\"GPT-5 Mini\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5 Mini is a compact version of GPT-5, designed to handle lighter-weight reasoning tasks. It provides the same instruction-following and safety-tuning benefits as GPT-5, but with reduced latency and cost. GPT-5 Mini is the successor to OpenAI's o4-mini model.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5-mini\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5-mini\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-5 Mini\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5 mini is the faster, more efficient tier of OpenAI's GPT-5 reasoning family, released in August 2025 with text and image input and text output. OpenAI recommends it for well-defined tasks and precise prompts in low-latency, high-volume workloads, keeping GPT-5's configurable reasoning. Choose it over full GPT-5 when speed and throughput matter more than maximum depth; OpenAI's later small models are its suggested successors.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-5-mini.\",\"default\":\"openai/gpt-5-mini\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-5-mini\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-5-mini\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-5 Mini" modelId: "openai/gpt-5-mini" diff --git a/model-api-reference/llm-models/openai/gpt-5-nano.md b/model-api-reference/llm-models/openai/gpt-5-nano.md deleted file mode 100644 index c3702a2f..00000000 --- a/model-api-reference/llm-models/openai/gpt-5-nano.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-5 Nano API Reference" -description: "OpenAI Responses API reference for openai/gpt-5-nano-99335a0b." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-5-nano" -apiReferenceJson: "{\"title\":\"GPT-5 Nano\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5-Nano is the smallest and fastest variant in the GPT-5 system, optimized for developer tools, rapid interactions, and ultra-low latency environments. While limited in reasoning depth compared to its larger counterparts, it retains key instruction-following and safety features. It is the successor to GPT-4.1-nano and offers a lightweight option for cost-sensitive or real-time applications.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 400000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5-nano\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5-nano\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-5 Nano" - modelId: "openai/gpt-5-nano" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-5-nano" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2025-08-07T17:23:22Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-5-pro.md b/model-api-reference/llm-models/openai/gpt-5-pro.md deleted file mode 100644 index ab95f2c4..00000000 --- a/model-api-reference/llm-models/openai/gpt-5-pro.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-5 Pro API Reference" -description: "OpenAI Responses API reference for openai/gpt-5-pro-6c101523." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-5-pro" -apiReferenceJson: "{\"title\":\"GPT-5 Pro\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5 Pro is OpenAI’s most advanced model, offering major improvements in reasoning, code quality, and user experience. It is optimized for complex tasks that require step-by-step reasoning, instruction following, and accuracy in high-stakes use cases. It supports test-time routing features and advanced prompt understanding, including user-specified intent like \\\"think hard about this.\\\" Improvements include reductions in hallucination, sycophancy, and better performance in coding, writing, and health-related tasks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5-pro\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5-pro\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-5 Pro" - modelId: "openai/gpt-5-pro" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-5-pro" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2025-10-06T18:51:03.215Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-5.1-chat.md b/model-api-reference/llm-models/openai/gpt-5.1-chat.md deleted file mode 100644 index 4e0ad8c4..00000000 --- a/model-api-reference/llm-models/openai/gpt-5.1-chat.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-5.1 Chat API Reference" -description: "OpenAI Responses API reference for openai/gpt-5.1-chat-a7f47914." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-5.1-chat" -apiReferenceJson: "{\"title\":\"GPT-5.1 Chat\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.1 Chat (AKA Instant is the fast, lightweight member of the 5.1 family, optimized for low-latency chat while retaining strong general intelligence. It uses adaptive reasoning to selectively “think” on harder queries, improving accuracy on math, coding, and multi-step tasks without slowing down typical conversations. The model is warmer and more conversational by default, with better instruction following and more stable short-form reasoning. GPT-5.1 Chat is designed for high-throughput, interactive workloads where responsiveness and consistency matter more than deep deliberation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5.1-chat\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5.1-chat\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-5.1 Chat" - modelId: "openai/gpt-5.1-chat" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-5.1-chat" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2025-11-13T18:58:22Z" - capabilities: ["chat","vision","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-5.1-codex-max.md b/model-api-reference/llm-models/openai/gpt-5.1-codex-max.md deleted file mode 100644 index ef8e86f4..00000000 --- a/model-api-reference/llm-models/openai/gpt-5.1-codex-max.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-5.1-Codex-Max API Reference" -description: "OpenAI Responses API reference for openai/gpt-5.1-codex-max-3c489f3b." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-5.1-codex-max" -apiReferenceJson: "{\"title\":\"GPT-5.1-Codex-Max\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.1-Codex-Max is OpenAI’s available agentic coding model, designed for long-running, high-context software development tasks. It is based on an updated version of the 5.1 reasoning stack and trained on agentic workflows spanning software engineering, mathematics, and research. GPT-5.1-Codex-Max delivers faster performance, improved reasoning, and higher token efficiency across the development lifecycle.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5.1-codex-max\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5.1-codex-max\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-5.1-Codex-Max" - modelId: "openai/gpt-5.1-codex-max" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-5.1-codex-max" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2025-12-04T20:08:54.1Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-5.1-codex-mini.md b/model-api-reference/llm-models/openai/gpt-5.1-codex-mini.md deleted file mode 100644 index 3b2cb93e..00000000 --- a/model-api-reference/llm-models/openai/gpt-5.1-codex-mini.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-5.1-Codex-Mini API Reference" -description: "OpenAI Responses API reference for openai/gpt-5.1-codex-mini-902e9785." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-5.1-codex-mini" -apiReferenceJson: "{\"title\":\"GPT-5.1-Codex-Mini\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.1-Codex-Mini is a smaller and faster version of GPT-5.1-Codex\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5.1-codex-mini\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5.1-codex-mini\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-5.1-Codex-Mini" - modelId: "openai/gpt-5.1-codex-mini" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-5.1-codex-mini" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2025-11-13T18:17:00.379Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-5.1-codex.md b/model-api-reference/llm-models/openai/gpt-5.1-codex.md index 86da1e9b..21cbe3e0 100644 --- a/model-api-reference/llm-models/openai/gpt-5.1-codex.md +++ b/model-api-reference/llm-models/openai/gpt-5.1-codex.md @@ -1,10 +1,10 @@ --- title: "GPT-5.1-Codex API Reference" -description: "OpenAI Responses API reference for openai/gpt-5.1-codex-157fc233." +description: "GPT-5.1-Codex API reference for SandBase. Use model openai/gpt-5.1-codex with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-5.1-codex" -apiReferenceJson: "{\"title\":\"GPT-5.1-Codex\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.1-Codex is a specialized version of GPT-5.1 optimized for software engineering and coding workflows. It is designed for both interactive development sessions and long, independent execution of complex engineering tasks. The model supports building projects from scratch, feature development, debugging, large-scale refactoring, and code review. Compared to GPT-5.1, Codex is more steerable, adheres closely to developer instructions, and produces cleaner, higher-quality code outputs. Reasoning effort can be adjusted with the `reasoning.effort` parameter. Read the docs here\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5.1-codex\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5.1-codex\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-5.1-Codex\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.1-Codex is a version of OpenAI's GPT-5.1 optimized for agentic coding in Codex and similar environments, released in November 2025 with text and image input and text output. It targets autonomous, long-running software engineering work inside coding agents and tools, and OpenAI notes its underlying snapshot is updated over time. Pick it over general GPT-5.1 when building coding agents; OpenAI serves it through the Responses API only.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-5.1-codex.\",\"default\":\"openai/gpt-5.1-codex\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-5.1-codex\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-5.1-codex\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-5.1-Codex" modelId: "openai/gpt-5.1-codex" diff --git a/model-api-reference/llm-models/openai/gpt-5.1.md b/model-api-reference/llm-models/openai/gpt-5.1.md index f25a151d..bd4d27a6 100644 --- a/model-api-reference/llm-models/openai/gpt-5.1.md +++ b/model-api-reference/llm-models/openai/gpt-5.1.md @@ -1,10 +1,10 @@ --- title: "GPT-5.1 API Reference" -description: "OpenAI Responses API reference for openai/gpt-5.1-a0e87aa4." +description: "GPT-5.1 API reference for SandBase. Use model openai/gpt-5.1 with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-5.1" -apiReferenceJson: "{\"title\":\"GPT-5.1\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.1 is the available frontier-grade model in the GPT-5 series, offering stronger general-purpose reasoning, improved instruction adherence, and a more natural conversational style compared to GPT-5. It uses adaptive reasoning to allocate computation dynamically, responding quickly to simple queries while spending more depth on complex tasks. The model produces clearer, more grounded explanations with reduced jargon, making it easier to follow even on technical or multi-step problems.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5.1\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5.1\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-5.1\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.1 is OpenAI's GPT-5 series flagship released in November 2025 for coding and agentic tasks, with text and image input and text output. It adapts how long it thinks to task complexity, spending fewer tokens on simple requests and staying persistent on hard ones, and adds a no-reasoning mode that behaves like a low-latency non-reasoning model with strong tool calling. It succeeds GPT-5 as the full-size general-purpose option in that line.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-5.1.\",\"default\":\"openai/gpt-5.1\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-5.1\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-5.1\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-5.1" modelId: "openai/gpt-5.1" diff --git a/model-api-reference/llm-models/openai/gpt-5.2-chat.md b/model-api-reference/llm-models/openai/gpt-5.2-chat.md deleted file mode 100644 index ee2d6d6f..00000000 --- a/model-api-reference/llm-models/openai/gpt-5.2-chat.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-5.2 Chat API Reference" -description: "OpenAI Responses API reference for openai/gpt-5.2-chat-80b0e413." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-5.2-chat" -apiReferenceJson: "{\"title\":\"GPT-5.2 Chat\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.2 Chat (AKA Instant) is the fast, lightweight member of the 5.2 family, optimized for low-latency chat while retaining strong general intelligence. It uses adaptive reasoning to selectively “think” on harder queries, improving accuracy on math, coding, and multi-step tasks without slowing down typical conversations. The model is warmer and more conversational by default, with better instruction following and more stable short-form reasoning. GPT-5.2 Chat is designed for high-throughput, interactive workloads where responsiveness and consistency matter more than deep deliberation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5.2-chat\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5.2-chat\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-5.2 Chat" - modelId: "openai/gpt-5.2-chat" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-5.2-chat" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2025-12-10T18:03:03.398Z" - capabilities: ["chat","vision","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-5.2-codex.md b/model-api-reference/llm-models/openai/gpt-5.2-codex.md deleted file mode 100644 index cdb5d5ad..00000000 --- a/model-api-reference/llm-models/openai/gpt-5.2-codex.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-5.2-Codex API Reference" -description: "OpenAI Responses API reference for openai/gpt-5.2-codex-fc4ae713." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-5.2-codex" -apiReferenceJson: "{\"title\":\"GPT-5.2-Codex\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.2-Codex is an upgraded version of GPT-5.1-Codex optimized for software engineering and coding workflows. It is designed for both interactive development sessions and long, independent execution of complex engineering tasks. The model supports building projects from scratch, feature development, debugging, large-scale refactoring, and code review. Compared to GPT-5.1-Codex, 5.2-Codex is more steerable, adheres closely to developer instructions, and produces cleaner, higher-quality code outputs. Reasoning effort can be adjusted with the `reasoning.effort` parameter. Read the docs here\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5.2-codex\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5.2-codex\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-5.2-Codex" - modelId: "openai/gpt-5.2-codex" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-5.2-codex" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2026-01-14T16:48:35.067Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-5.2-pro.md b/model-api-reference/llm-models/openai/gpt-5.2-pro.md deleted file mode 100644 index e7533a24..00000000 --- a/model-api-reference/llm-models/openai/gpt-5.2-pro.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-5.2 Pro API Reference" -description: "OpenAI Responses API reference for openai/gpt-5.2-pro-2b1a06fd." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-5.2-pro" -apiReferenceJson: "{\"title\":\"GPT-5.2 Pro\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.2 Pro is OpenAI’s most advanced model, offering major improvements in agentic coding and long context performance over GPT-5 Pro. It is optimized for complex tasks that require step-by-step reasoning, instruction following, and accuracy in high-stakes use cases. It supports test-time routing features and advanced prompt understanding, including user-specified intent like \\\"think hard about this.\\\" Improvements include reductions in hallucination, sycophancy, and better performance in coding, writing, and health-related tasks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5.2-pro\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5.2-pro\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-5.2 Pro" - modelId: "openai/gpt-5.2-pro" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-5.2-pro" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2025-12-10T18:03:00.055Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-5.2.md b/model-api-reference/llm-models/openai/gpt-5.2.md index fb39eb93..5059a4f6 100644 --- a/model-api-reference/llm-models/openai/gpt-5.2.md +++ b/model-api-reference/llm-models/openai/gpt-5.2.md @@ -1,10 +1,10 @@ --- title: "GPT-5.2 API Reference" -description: "OpenAI Responses API reference for openai/gpt-5.2-c3ae2e73." +description: "GPT-5.2 API reference for SandBase. Use model openai/gpt-5.2 with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-5.2" -apiReferenceJson: "{\"title\":\"GPT-5.2\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.2 is the available frontier-grade model in the GPT-5 series, offering stronger agentic and long context perfomance compared to GPT-5.1. It uses adaptive reasoning to allocate computation dynamically, responding quickly to simple queries while spending more depth on complex tasks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5.2\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5.2\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-5.2\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.2 is OpenAI's GPT-5 series flagship released in December 2025, positioned by OpenAI for complex professional work and long-running agents, with text and image input and text output. It offers configurable reasoning effort from none up to an extra-high setting, and OpenAI highlights its performance on well-specified knowledge work across dozens of occupations alongside coding and tool use. OpenAI now calls it a previous flagship, with GPT-5.4 following it.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-5.2.\",\"default\":\"openai/gpt-5.2\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-5.2\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-5.2\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-5.2" modelId: "openai/gpt-5.2" diff --git a/model-api-reference/llm-models/openai/gpt-5.3-chat.md b/model-api-reference/llm-models/openai/gpt-5.3-chat.md deleted file mode 100644 index 390d87a3..00000000 --- a/model-api-reference/llm-models/openai/gpt-5.3-chat.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-5.3 Chat API Reference" -description: "OpenAI Responses API reference for openai/gpt-5.3-chat-5b140e1d." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-5.3-chat" -apiReferenceJson: "{\"title\":\"GPT-5.3 Chat\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.3 Chat is an update to ChatGPT's most-used model that makes everyday conversations smoother, more useful, and more directly helpful. It delivers more accurate answers with better contextualization and significantly reduces unnecessary refusals, caveats, and overly cautious phrasing that can interrupt conversational flow.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5.3-chat\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5.3-chat\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-5.3 Chat" - modelId: "openai/gpt-5.3-chat" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-5.3-chat" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2026-03-03T18:54:21.454Z" - capabilities: ["chat","vision","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-5.3-codex.md b/model-api-reference/llm-models/openai/gpt-5.3-codex.md index 31c73299..d682f366 100644 --- a/model-api-reference/llm-models/openai/gpt-5.3-codex.md +++ b/model-api-reference/llm-models/openai/gpt-5.3-codex.md @@ -1,10 +1,10 @@ --- title: "GPT-5.3-Codex API Reference" -description: "OpenAI Responses API reference for openai/gpt-5.3-codex-8a790cc3." +description: "GPT-5.3-Codex API reference for SandBase. Use model openai/gpt-5.3-codex with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-5.3-codex" -apiReferenceJson: "{\"title\":\"GPT-5.3-Codex\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.3-Codex is OpenAI’s most advanced agentic coding model, combining the frontier software engineering performance of GPT-5.2-Codex with the broader reasoning and professional knowledge capabilities of GPT-5.2. It achieves state-of-the-art results on SWE-Bench Pro and strong performance on Terminal-Bench 2.0 and OSWorld-Verified, reflecting improved multi-language coding, terminal proficiency, and real-world computer-use skills. The model is optimized for long-running, tool-using workflows and supports interactive steering during execution, making it suitable for complex development tasks, debugging, deployment, and iterative product work.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5.3-codex\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5.3-codex\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-5.3-Codex\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.3-Codex is OpenAI's agentic coding model announced in February 2026, optimized for Codex and similar environments, with text and image input and text output. OpenAI called it its most capable agentic coding model at release and says it extends Codex from writing and reviewing code to most tasks developers and professionals do on a computer. It supports low to extra-high reasoning effort and suits long-running coding, debugging and computer-use agents.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-5.3-codex.\",\"default\":\"openai/gpt-5.3-codex\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-5.3-codex\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-5.3-codex\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-5.3-Codex" modelId: "openai/gpt-5.3-codex" diff --git a/model-api-reference/llm-models/openai/gpt-5.4-image-2.md b/model-api-reference/llm-models/openai/gpt-5.4-image-2.md deleted file mode 100644 index dbadf2b2..00000000 --- a/model-api-reference/llm-models/openai/gpt-5.4-image-2.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-5.4 Image 2 API Reference" -description: "OpenAI Responses API reference for openai/gpt-5.4-image-2-b0cfa9c9." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-5.4-image-2" -apiReferenceJson: "{\"title\":\"GPT-5.4 Image 2\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.4 Image 2 combines OpenAI's GPT-5.4 model with state-of-the-art image generation capabilities from GPT Image 2. It enables rich multimodal workflows, allowing users to seamlessly move between reasoning, coding, and visual generation within the same interaction.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"272000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5.4-image-2\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5.4-image-2\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-5.4 Image 2" - modelId: "openai/gpt-5.4-image-2" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-5.4-image-2" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2026-04-21T18:52:08.583Z" - capabilities: ["chat","vision","reasoning","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-5.4-mini.md b/model-api-reference/llm-models/openai/gpt-5.4-mini.md index d6ede376..89b8c186 100644 --- a/model-api-reference/llm-models/openai/gpt-5.4-mini.md +++ b/model-api-reference/llm-models/openai/gpt-5.4-mini.md @@ -1,10 +1,10 @@ --- title: "GPT-5.4 Mini API Reference" -description: "OpenAI Responses API reference for openai/gpt-5.4-mini-e7af9610." +description: "GPT-5.4 Mini API reference for SandBase. Use model openai/gpt-5.4-mini with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-5.4-mini" -apiReferenceJson: "{\"title\":\"GPT-5.4 Mini\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.4 mini brings the core capabilities of GPT-5.4 to a faster, more efficient model optimized for high-throughput workloads. It supports text and image inputs with strong performance across reasoning, coding, and tool use, while reducing latency and cost for large-scale deployments.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5.4-mini\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5.4-mini\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-5.4 Mini\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.4 mini is the smaller, faster tier of OpenAI's GPT-5.4 family, released in March 2026 with text and image input and text output. OpenAI describes it as its strongest mini model at release for coding, computer use and subagents, bringing much of GPT-5.4's capability to high-volume workloads at more than twice the speed of GPT-5 mini. Pick it over full GPT-5.4 for responsive coding assistants and agent fleets, and over nano when tasks need computer use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-5.4-mini.\",\"default\":\"openai/gpt-5.4-mini\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-5.4-mini\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-5.4-mini\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-5.4 Mini" modelId: "openai/gpt-5.4-mini" diff --git a/model-api-reference/llm-models/openai/gpt-5.4-nano.md b/model-api-reference/llm-models/openai/gpt-5.4-nano.md index c12b463c..e2ed2bf9 100644 --- a/model-api-reference/llm-models/openai/gpt-5.4-nano.md +++ b/model-api-reference/llm-models/openai/gpt-5.4-nano.md @@ -1,10 +1,10 @@ --- title: "GPT-5.4 Nano API Reference" -description: "OpenAI Responses API reference for openai/gpt-5.4-nano-3514cdff." +description: "GPT-5.4 Nano API reference for SandBase. Use model openai/gpt-5.4-nano with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-5.4-nano" -apiReferenceJson: "{\"title\":\"GPT-5.4 Nano\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.4 nano is the most lightweight and cost-efficient variant of the GPT-5.4 family, optimized for speed-critical and high-volume tasks. It supports text and image inputs and is designed for low-latency use cases such as classification, data extraction, ranking, and sub-agent execution.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5.4-nano\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5.4-nano\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-5.4 Nano\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.4 nano is the smallest and fastest tier of OpenAI's GPT-5.4 family, released in March 2026 with text and image input and text output. OpenAI recommends it for tasks where speed matters most, such as classification, data extraction, ranking and coding subagents that handle simpler supporting work. Choose it for high-volume pipelines; unlike GPT-5.4 mini, it does not support the computer use or tool search tools.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-5.4-nano.\",\"default\":\"openai/gpt-5.4-nano\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-5.4-nano\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-5.4-nano\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-5.4 Nano" modelId: "openai/gpt-5.4-nano" diff --git a/model-api-reference/llm-models/openai/gpt-5.4-pro.md b/model-api-reference/llm-models/openai/gpt-5.4-pro.md deleted file mode 100644 index 5d25fe7b..00000000 --- a/model-api-reference/llm-models/openai/gpt-5.4-pro.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT-5.4 Pro API Reference" -description: "OpenAI Responses API reference for openai/gpt-5.4-pro-704ee8ed." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-5.4-pro" -apiReferenceJson: "{\"title\":\"GPT-5.4 Pro\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.4 Pro is OpenAI's most advanced model, building on GPT-5.4's unified architecture with enhanced reasoning capabilities for complex, high-stakes tasks. It features a 1M+ token context window (922K input, 128K output) with support for text and image inputs. Optimized for step-by-step reasoning, instruction following, and accuracy, GPT-5.4 Pro excels at agentic coding, long-context workflows, and multi-step problem solving.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5.4-pro\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5.4-pro\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT-5.4 Pro" - modelId: "openai/gpt-5.4-pro" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-5.4-pro" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2026-03-05T18:12:46Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-5.4.md b/model-api-reference/llm-models/openai/gpt-5.4.md index ae55af3c..9ac00ffc 100644 --- a/model-api-reference/llm-models/openai/gpt-5.4.md +++ b/model-api-reference/llm-models/openai/gpt-5.4.md @@ -1,10 +1,10 @@ --- title: "GPT-5.4 API Reference" -description: "OpenAI Responses API reference for openai/gpt-5.4-efb62f1e." +description: "GPT-5.4 API reference for SandBase. Use model openai/gpt-5.4 with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-5.4" -apiReferenceJson: "{\"title\":\"GPT-5.4\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.4 is OpenAI’s available frontier model, unifying the Codex and GPT lines into a single system. It features a 1M+ token context window (922K input, 128K output) with support for text and image inputs, enabling high-context reasoning, coding, and multimodal analysis within the same workflow.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5.4\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5.4\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-5.4\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.4 is OpenAI's flagship GPT-5.4 reasoning model for complex professional work, released in March 2026 with text and image input, text output and a context window of about 1.05M tokens. OpenAI positions it for coding, professional knowledge work and multi-step agent workflows, with configurable reasoning effort and broad tool support including web search, code interpreter, computer use and MCP. Choose it over GPT-5.4 mini or nano when task depth matters more than speed.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-5.4.\",\"default\":\"openai/gpt-5.4\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-5.4\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-5.4\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-5.4" modelId: "openai/gpt-5.4" diff --git a/model-api-reference/llm-models/openai/gpt-5.5-pro.md b/model-api-reference/llm-models/openai/gpt-5.5-pro.md index de8d10ee..82489a04 100644 --- a/model-api-reference/llm-models/openai/gpt-5.5-pro.md +++ b/model-api-reference/llm-models/openai/gpt-5.5-pro.md @@ -1,10 +1,10 @@ --- title: "GPT-5.5 Pro API Reference" -description: "OpenAI Responses API reference for openai/gpt-5.5-pro-a4f073a6." +description: "GPT-5.5 Pro API reference for SandBase. Use model openai/gpt-5.5-pro with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-5.5-pro" -apiReferenceJson: "{\"title\":\"GPT-5.5 Pro\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.5 Pro is OpenAI’s high-capability model optimized for deep reasoning and accuracy on complex, high-stakes workloads. It features a 1M+ token context window (922K input, 128K output) with support for text and image inputs, and is designed for long-horizon problem solving, agentic coding, and precise execution across multi-step workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5.5-pro\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5.5-pro\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-5.5 Pro\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.5 Pro is a separate OpenAI model in the GPT-5.5 family that uses more compute to think harder and give consistently better answers, according to OpenAI. It is intended for tough, high-stakes problems where answer quality matters more than speed, and some requests can take several minutes to finish. Choose it over standard GPT-5.5 when reliability on difficult reasoning, coding or analysis justifies the extra latency; OpenAI serves it for multi-turn and batch API requests.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-5.5-pro.\",\"default\":\"openai/gpt-5.5-pro\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-5.5-pro\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-5.5-pro\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-5.5 Pro" modelId: "openai/gpt-5.5-pro" diff --git a/model-api-reference/llm-models/openai/gpt-5.5.md b/model-api-reference/llm-models/openai/gpt-5.5.md index 0897aba0..a484e402 100644 --- a/model-api-reference/llm-models/openai/gpt-5.5.md +++ b/model-api-reference/llm-models/openai/gpt-5.5.md @@ -1,10 +1,10 @@ --- title: "GPT-5.5 API Reference" -description: "OpenAI Responses API reference for openai/gpt-5.5-b2d4a4ef." +description: "GPT-5.5 API reference for SandBase. Use model openai/gpt-5.5 with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-5.5" -apiReferenceJson: "{\"title\":\"GPT-5.5\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.5 is OpenAI’s frontier model designed for complex professional workloads, building on GPT-5.4 with stronger reasoning, higher reliability, and improved token efficiency on hard tasks. It features a 1M+ token context window (922K input, 128K output) with support for text and image inputs, enabling large-scale reasoning, coding, and multimodal workflows within a single system.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5.5\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5.5\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-5.5\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.5 is an OpenAI flagship reasoning model with text and image input, made available in the API in April 2026 and described by OpenAI as built for complex professional work. OpenAI positions it for writing and debugging code, online research, data analysis, creating documents and spreadsheets, and operating software across tools until a task is done. It succeeds GPT-5.4 at similar per-token latency, and a pinned snapshot dated 2026-04-23 is available for fixed-version workloads.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-5.5.\",\"default\":\"openai/gpt-5.5\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-5.5\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-5.5\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-5.5" modelId: "openai/gpt-5.5" diff --git a/model-api-reference/llm-models/openai/gpt-5.6-luna-pro.md b/model-api-reference/llm-models/openai/gpt-5.6-luna-pro.md index a88aae74..9c8ee5e7 100644 --- a/model-api-reference/llm-models/openai/gpt-5.6-luna-pro.md +++ b/model-api-reference/llm-models/openai/gpt-5.6-luna-pro.md @@ -1,10 +1,10 @@ --- title: "GPT-5.6 Luna Pro API Reference" -description: "OpenAI Responses API reference for openai/gpt-5.6-luna-pro-a19f6f38." +description: "GPT-5.6 Luna Pro API reference for SandBase. Use model openai/gpt-5.6-luna-pro with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-5.6-luna-pro" -apiReferenceJson: "{\"title\":\"GPT-5.6 Luna Pro\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.6 Luna Pro is the same underlying model as GPT-5.6 Luna, served with `reasoning.mode` set to `pro` for higher-quality responses on complex tasks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5.6-luna-pro\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5.6-luna-pro\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-5.6 Luna Pro\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.6 Luna Pro is the same GPT-5.6 Luna model, OpenAI's smallest GPT-5.6 tier, served in OpenAI's pro reasoning mode rather than as different weights. In pro mode the model performs more work on each request before returning a single final answer, which OpenAI says can improve reliability on difficult tasks at the expense of higher latency and token usage. Use it when Luna's speed tier is preferred but a particular request is hard; keep standard Luna for routine, high-volume traffic.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-5.6-luna-pro.\",\"default\":\"openai/gpt-5.6-luna-pro\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-5.6-luna-pro\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-5.6-luna-pro\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-5.6 Luna Pro" modelId: "openai/gpt-5.6-luna-pro" diff --git a/model-api-reference/llm-models/openai/gpt-5.6-luna.md b/model-api-reference/llm-models/openai/gpt-5.6-luna.md index 3d596fc7..9d3c4b36 100644 --- a/model-api-reference/llm-models/openai/gpt-5.6-luna.md +++ b/model-api-reference/llm-models/openai/gpt-5.6-luna.md @@ -1,10 +1,10 @@ --- title: "GPT-5.6 Luna API Reference" -description: "OpenAI Responses API reference for openai/gpt-5.6-luna-de02b881." +description: "GPT-5.6 Luna API reference for SandBase. Use model openai/gpt-5.6-luna with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-5.6-luna" -apiReferenceJson: "{\"title\":\"GPT-5.6 Luna\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.6 Luna is a fast, cost-efficient model in OpenAI's GPT-5.6 series. It is suited for high-volume, latency-sensitive tasks such as chat, classification, and lightweight agentic workflows, providing capable reasoning for...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5.6-luna\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5.6-luna\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-5.6 Luna\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.6 Luna is the smallest, fastest tier of OpenAI's GPT-5.6 reasoning family, with text and image input; OpenAI says it roughly corresponds to the nano tier of earlier GPT-5 families. It is designed for high-volume workloads such as classification, extraction, routing, chat and lightweight agent steps where throughput and latency matter. Pick GPT-5.6 Terra or GPT-5.6 Sol when tasks need more capability, and the pro variant when a hard request needs more reasoning work.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-5.6-luna.\",\"default\":\"openai/gpt-5.6-luna\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-5.6-luna\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-5.6-luna\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-5.6 Luna" modelId: "openai/gpt-5.6-luna" diff --git a/model-api-reference/llm-models/openai/gpt-5.6-sol-pro.md b/model-api-reference/llm-models/openai/gpt-5.6-sol-pro.md index 31e74798..0ebb8b0c 100644 --- a/model-api-reference/llm-models/openai/gpt-5.6-sol-pro.md +++ b/model-api-reference/llm-models/openai/gpt-5.6-sol-pro.md @@ -1,10 +1,10 @@ --- title: "GPT-5.6 Sol Pro API Reference" -description: "OpenAI Responses API reference for openai/gpt-5.6-sol-pro-a2d7b355." +description: "GPT-5.6 Sol Pro API reference for SandBase. Use model openai/gpt-5.6-sol-pro with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-5.6-sol-pro" -apiReferenceJson: "{\"title\":\"GPT-5.6 Sol Pro\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.6 Sol Pro is the same underlying model as GPT-5.6 Sol, served with `reasoning.mode` set to `pro` for higher-quality responses on complex tasks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5.6-sol-pro\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5.6-sol-pro\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-5.6 Sol Pro\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.6 Sol Pro is the same GPT-5.6 Sol model, the flagship of OpenAI's GPT-5.6 family, served in OpenAI's pro reasoning mode rather than as a separate model. Pro mode spends more model work on each request before returning one final answer, which OpenAI recommends for complex optimization, high-value coding or review, and deep analysis. It brings higher latency and token usage, so standard Sol remains the better choice for routine or latency-sensitive work.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-5.6-sol-pro.\",\"default\":\"openai/gpt-5.6-sol-pro\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-5.6-sol-pro\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-5.6-sol-pro\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-5.6 Sol Pro" modelId: "openai/gpt-5.6-sol-pro" diff --git a/model-api-reference/llm-models/openai/gpt-5.6-sol.md b/model-api-reference/llm-models/openai/gpt-5.6-sol.md index 1071a7c7..381552c8 100644 --- a/model-api-reference/llm-models/openai/gpt-5.6-sol.md +++ b/model-api-reference/llm-models/openai/gpt-5.6-sol.md @@ -1,10 +1,10 @@ --- title: "GPT-5.6 Sol API Reference" -description: "OpenAI Responses API reference for openai/gpt-5.6-sol-1e78b5e2." +description: "GPT-5.6 Sol API reference for SandBase. Use model openai/gpt-5.6-sol with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-5.6-sol" -apiReferenceJson: "{\"title\":\"GPT-5.6 Sol\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.6 Sol is the flagship model in OpenAI's GPT-5.6 series. It is suited for complex reasoning, coding, and agentic workflows, and is particularly strong at command-line and multi-step coding tasks...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5.6-sol\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5.6-sol\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-5.6 Sol\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.6 Sol is the flagship tier of OpenAI's GPT-5.6 reasoning family, accepting text and image input; OpenAI says it roughly corresponds to the unsuffixed tier of earlier GPT-5 families, and the plain GPT-5.6 name routes to it. OpenAI positions it for complex professional work, including coding, knowledge work, cybersecurity and science. Pick it over GPT-5.6 Terra or Luna when tasks need the most capability in this family, or the Sol Pro variant for the hardest requests.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-5.6-sol.\",\"default\":\"openai/gpt-5.6-sol\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-5.6-sol\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-5.6-sol\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-5.6 Sol" modelId: "openai/gpt-5.6-sol" diff --git a/model-api-reference/llm-models/openai/gpt-5.6-terra-pro.md b/model-api-reference/llm-models/openai/gpt-5.6-terra-pro.md index 8eaade1f..6f187366 100644 --- a/model-api-reference/llm-models/openai/gpt-5.6-terra-pro.md +++ b/model-api-reference/llm-models/openai/gpt-5.6-terra-pro.md @@ -1,10 +1,10 @@ --- title: "GPT-5.6 Terra Pro API Reference" -description: "OpenAI Responses API reference for openai/gpt-5.6-terra-pro-ea8dd911." +description: "GPT-5.6 Terra Pro API reference for SandBase. Use model openai/gpt-5.6-terra-pro with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-5.6-terra-pro" -apiReferenceJson: "{\"title\":\"GPT-5.6 Terra Pro\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.6 Terra Pro is the same underlying model as GPT-5.6 Terra, served with `reasoning.mode` set to `pro` for higher-quality responses on complex tasks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5.6-terra-pro\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5.6-terra-pro\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-5.6 Terra Pro\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.6 Terra Pro is the same GPT-5.6 Terra model, the balanced middle tier of OpenAI's GPT-5.6 family, served in OpenAI's pro reasoning mode instead of standard mode. Pro mode applies more model work to each request and returns a single final answer, which OpenAI says can improve reliability on difficult problems while increasing latency and token usage. It fits harder coding, review or analysis tasks where Terra's tier is preferred but extra quality on a single answer matters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-5.6-terra-pro.\",\"default\":\"openai/gpt-5.6-terra-pro\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-5.6-terra-pro\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-5.6-terra-pro\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-5.6 Terra Pro" modelId: "openai/gpt-5.6-terra-pro" diff --git a/model-api-reference/llm-models/openai/gpt-5.6-terra.md b/model-api-reference/llm-models/openai/gpt-5.6-terra.md index 85209877..70ff2e14 100644 --- a/model-api-reference/llm-models/openai/gpt-5.6-terra.md +++ b/model-api-reference/llm-models/openai/gpt-5.6-terra.md @@ -1,10 +1,10 @@ --- title: "GPT-5.6 Terra API Reference" -description: "OpenAI Responses API reference for openai/gpt-5.6-terra-0a0e1483." +description: "GPT-5.6 Terra API reference for SandBase. Use model openai/gpt-5.6-terra with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-5.6-terra" -apiReferenceJson: "{\"title\":\"GPT-5.6 Terra\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.6 Terra is a balanced model in OpenAI's GPT-5.6 series, positioned between the flagship Sol tier and the cost-efficient Luna tier. It is suited for everyday coding, reasoning, and agentic...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5.6-terra\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5.6-terra\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-5.6 Terra\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5.6 Terra is the middle tier of OpenAI's GPT-5.6 reasoning family, with text and image input, and is described by OpenAI as a balanced model for everyday work; it roughly corresponds to the mini tier of earlier GPT-5 families. It suits day-to-day coding, analysis and agentic tasks that need solid reasoning without flagship-level depth. Choose GPT-5.6 Sol for the most demanding work, GPT-5.6 Luna for the highest-volume tasks, or Terra Pro for hard individual requests.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-5.6-terra.\",\"default\":\"openai/gpt-5.6-terra\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-5.6-terra\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-5.6-terra\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-5.6 Terra" modelId: "openai/gpt-5.6-terra" diff --git a/model-api-reference/llm-models/openai/gpt-5.md b/model-api-reference/llm-models/openai/gpt-5.md index 71cbd107..902711e5 100644 --- a/model-api-reference/llm-models/openai/gpt-5.md +++ b/model-api-reference/llm-models/openai/gpt-5.md @@ -1,10 +1,10 @@ --- title: "GPT-5 API Reference" -description: "OpenAI Responses API reference for openai/gpt-5-8c1f4b46." +description: "GPT-5 API reference for SandBase. Use model openai/gpt-5 with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-5" -apiReferenceJson: "{\"title\":\"GPT-5\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5 is OpenAI’s most advanced model, offering major improvements in reasoning, code quality, and user experience. It is optimized for complex tasks that require step-by-step reasoning, instruction following, and accuracy in high-stakes use cases. It supports test-time routing features and advanced prompt understanding, including user-specified intent like \\\"think hard about this.\\\" Improvements include reductions in hallucination, sycophancy, and better performance in coding, writing, and health-related tasks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-5\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-5\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-5\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-5 is OpenAI's reasoning model released in August 2025 for coding, reasoning and agentic tasks across domains, accepting text and image input and producing text. OpenAI describes it as a coding collaborator for fixing bugs, editing code and answering questions about complex codebases, with configurable reasoning effort that includes a minimal setting for quicker replies. OpenAI now labels it a previous model, and later GPT-5.x releases are its recommended successors for fresh work.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-5.\",\"default\":\"openai/gpt-5\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-5\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-5\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-5" modelId: "openai/gpt-5" diff --git a/model-api-reference/llm-models/openai/gpt-6-astra-pro.md b/model-api-reference/llm-models/openai/gpt-6-astra-pro.md new file mode 100644 index 00000000..cc390f0c --- /dev/null +++ b/model-api-reference/llm-models/openai/gpt-6-astra-pro.md @@ -0,0 +1,21 @@ +--- +title: "GPT-6 Astra Pro API Reference" +description: "GPT-6 Astra Pro API reference for SandBase. Use model openai/gpt-6-astra-pro with /v1/responses; see request and response examples." +aside: false +outline: false +apiReferenceKey: "llm/openai/gpt-6-astra-pro" +apiReferenceJson: "{\"title\":\"GPT-6 Astra Pro\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-6 Astra Pro is the same GPT-6 Astra model, OpenAI's most capable GPT-6 tier, served in OpenAI's pro reasoning mode rather than as different weights. In pro mode the model does more work on each request before returning one final answer, which OpenAI suggests for complex optimization, high-value coding or review, and deep analysis. Expect higher latency and token usage than standard Astra, so reserve it for problems where a marginal quality gain changes the outcome.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-6-astra-pro.\",\"default\":\"openai/gpt-6-astra-pro\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"max_completion_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"reasoning_effort\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"medium\",\"constraints\":\"Allowed values: low, medium, high, xhigh, max\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-6-astra-pro\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-6-astra-pro\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +seo: + modelName: "GPT-6 Astra Pro" + modelId: "openai/gpt-6-astra-pro" + vendor: "OpenAI" + vendorSlug: "openai" + modelSlug: "gpt-6-astra-pro" + protocol: "Responses API" + endpoint: "/v1/responses" + publishedAt: "2026-09-04T20:13:55Z" + capabilities: ["chat","vision","reasoning","structured_output","function_calling"] + category: "LLM Models" +--- + + diff --git a/model-api-reference/llm-models/openai/gpt-6-astra.md b/model-api-reference/llm-models/openai/gpt-6-astra.md index 420930e9..1c62960e 100644 --- a/model-api-reference/llm-models/openai/gpt-6-astra.md +++ b/model-api-reference/llm-models/openai/gpt-6-astra.md @@ -4,7 +4,7 @@ description: "GPT-6 Astra API reference for SandBase. Use model openai/gpt-6-ast aside: false outline: false apiReferenceKey: "llm/openai/gpt-6-astra" -apiReferenceJson: "{\"title\":\"GPT-6 Astra\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-6 Astra is OpenAI's flagship model for demanding end-to-end work. It is suited for advanced analysis, software engineering, deep research, scientific work, computer use, and document creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-6-astra.\",\"default\":\"openai/gpt-6-astra\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"max_completion_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"reasoning_effort\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"medium\",\"constraints\":\"Allowed values: low, medium, high, xhigh, max\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-6-astra\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-6-astra\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"GPT-6 Astra\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-6 Astra is OpenAI's flagship GPT-6 reasoning model, described by OpenAI as its most capable model for the most demanding work, with text and image input. OpenAI recommends it for complex reasoning, coding, computer use, research and document creation, including multi-step workflows across code, browsers and professional software. It is the top tier above GPT-6.1 Sol and GPT-6 Luna; choose it when quality matters most, or the Astra Pro variant for the hardest requests.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-6-astra.\",\"default\":\"openai/gpt-6-astra\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"max_completion_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"reasoning_effort\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"medium\",\"constraints\":\"Allowed values: low, medium, high, xhigh, max\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-6-astra\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-6-astra\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "GPT-6 Astra" modelId: "openai/gpt-6-astra" diff --git a/model-api-reference/llm-models/openai/gpt-6-luna-pro.md b/model-api-reference/llm-models/openai/gpt-6-luna-pro.md new file mode 100644 index 00000000..b27b1b3d --- /dev/null +++ b/model-api-reference/llm-models/openai/gpt-6-luna-pro.md @@ -0,0 +1,21 @@ +--- +title: "GPT-6 Luna Pro API Reference" +description: "GPT-6 Luna Pro API reference for SandBase. Use model openai/gpt-6-luna-pro with /v1/responses; see request and response examples." +aside: false +outline: false +apiReferenceKey: "llm/openai/gpt-6-luna-pro" +apiReferenceJson: "{\"title\":\"GPT-6 Luna Pro\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-6 Luna Pro is the same GPT-6 Luna model, OpenAI's most efficient GPT-6 tier, served in OpenAI's pro reasoning mode instead of standard mode. Pro mode spends more model work per request and returns one final answer, which OpenAI says can improve reliability on difficult tasks while raising latency and token usage. It suits occasional hard requests in a Luna-based workload; for routine, latency-sensitive or high-volume traffic, OpenAI recommends standard mode.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-6-luna-pro.\",\"default\":\"openai/gpt-6-luna-pro\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-6-luna-pro\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-6-luna-pro\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +seo: + modelName: "GPT-6 Luna Pro" + modelId: "openai/gpt-6-luna-pro" + vendor: "OpenAI" + vendorSlug: "openai" + modelSlug: "gpt-6-luna-pro" + protocol: "Responses API" + endpoint: "/v1/responses" + publishedAt: "2026-09-22T18:13:11Z" + capabilities: ["chat","vision","reasoning","structured_output","function_calling"] + category: "LLM Models" +--- + + diff --git a/model-api-reference/llm-models/openai/gpt-6-luna.md b/model-api-reference/llm-models/openai/gpt-6-luna.md new file mode 100644 index 00000000..b5767166 --- /dev/null +++ b/model-api-reference/llm-models/openai/gpt-6-luna.md @@ -0,0 +1,21 @@ +--- +title: "GPT-6 Luna API Reference" +description: "GPT-6 Luna API reference for SandBase. Use model openai/gpt-6-luna with /v1/responses; see request and response examples." +aside: false +outline: false +apiReferenceKey: "llm/openai/gpt-6-luna" +apiReferenceJson: "{\"title\":\"GPT-6 Luna\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-6 Luna is the smallest, fastest tier of OpenAI's GPT-6 reasoning family, described by OpenAI as its most efficient model for focused, high-volume tasks, with text and image input. It was trained with methods similar to GPT-6 Astra to carry much of that model's strengths into a faster tier. Choose it for high-throughput chat, extraction and lightweight agent steps, and move to GPT-6.1 Sol or GPT-6 Astra when work needs deeper reasoning.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-6-luna.\",\"default\":\"openai/gpt-6-luna\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-6-luna\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-6-luna\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +seo: + modelName: "GPT-6 Luna" + modelId: "openai/gpt-6-luna" + vendor: "OpenAI" + vendorSlug: "openai" + modelSlug: "gpt-6-luna" + protocol: "Responses API" + endpoint: "/v1/responses" + publishedAt: "2026-09-22T18:13:06Z" + capabilities: ["chat","vision","reasoning","structured_output","function_calling"] + category: "LLM Models" +--- + + diff --git a/model-api-reference/llm-models/openai/gpt-6-sol-pro.md b/model-api-reference/llm-models/openai/gpt-6-sol-pro.md new file mode 100644 index 00000000..58abca56 --- /dev/null +++ b/model-api-reference/llm-models/openai/gpt-6-sol-pro.md @@ -0,0 +1,21 @@ +--- +title: "GPT-6 Sol Pro API Reference" +description: "GPT-6 Sol Pro API reference for SandBase. Use model openai/gpt-6-sol-pro with /v1/responses; see request and response examples." +aside: false +outline: false +apiReferenceKey: "llm/openai/gpt-6-sol-pro" +apiReferenceJson: "{\"title\":\"GPT-6 Sol Pro\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-6 Sol Pro is the same GPT-6 Sol model, the middle tier of OpenAI's GPT-6 family, served in OpenAI's pro reasoning mode rather than as a separate model. Pro mode does more model work on each request before returning a single final answer, which OpenAI suggests for difficult coding, review and deep analysis where quality outweighs speed. It adds latency and token usage compared with standard GPT-6 Sol, and OpenAI's docs point to GPT-6.1 Sol as the updated Sol model.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-6-sol-pro.\",\"default\":\"openai/gpt-6-sol-pro\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"max_completion_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"reasoning_effort\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"medium\",\"constraints\":\"Allowed values: low, medium, high, xhigh, max\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-6-sol-pro\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-6-sol-pro\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +seo: + modelName: "GPT-6 Sol Pro" + modelId: "openai/gpt-6-sol-pro" + vendor: "OpenAI" + vendorSlug: "openai" + modelSlug: "gpt-6-sol-pro" + protocol: "Responses API" + endpoint: "/v1/responses" + publishedAt: "2026-09-22T18:13:01Z" + capabilities: ["chat","vision","reasoning","structured_output","function_calling"] + category: "LLM Models" +--- + + diff --git a/model-api-reference/llm-models/openai/gpt-6-sol.md b/model-api-reference/llm-models/openai/gpt-6-sol.md new file mode 100644 index 00000000..57d6ead9 --- /dev/null +++ b/model-api-reference/llm-models/openai/gpt-6-sol.md @@ -0,0 +1,21 @@ +--- +title: "GPT-6 Sol API Reference" +description: "GPT-6 Sol API reference for SandBase. Use model openai/gpt-6-sol with /v1/responses; see request and response examples." +aside: false +outline: false +apiReferenceKey: "llm/openai/gpt-6-sol" +apiReferenceJson: "{\"title\":\"GPT-6 Sol\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-6 Sol is the middle tier of OpenAI's GPT-6 reasoning family, released in September 2026 alongside GPT-6 Luna and built, according to OpenAI, for complex coding and agentic workflows, with text and image input. It was trained with methods similar to GPT-6 Astra to bring much of Astra's capability to a faster tier. OpenAI's docs now point to GPT-6.1 Sol as the updated Sol model, so this entry mainly suits workloads already validated on GPT-6 Sol.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-6-sol.\",\"default\":\"openai/gpt-6-sol\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"max_completion_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"reasoning_effort\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"medium\",\"constraints\":\"Allowed values: low, medium, high, xhigh, max\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-6-sol\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-6-sol\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +seo: + modelName: "GPT-6 Sol" + modelId: "openai/gpt-6-sol" + vendor: "OpenAI" + vendorSlug: "openai" + modelSlug: "gpt-6-sol" + protocol: "Responses API" + endpoint: "/v1/responses" + publishedAt: "2026-09-22T00:00:00Z" + capabilities: ["chat","vision","reasoning","structured_output","function_calling"] + category: "LLM Models" +--- + + diff --git a/model-api-reference/llm-models/openai/gpt-6.1-sol-pro.md b/model-api-reference/llm-models/openai/gpt-6.1-sol-pro.md new file mode 100644 index 00000000..ab3b9912 --- /dev/null +++ b/model-api-reference/llm-models/openai/gpt-6.1-sol-pro.md @@ -0,0 +1,21 @@ +--- +title: "GPT-6.1 Sol Pro API Reference" +description: "GPT-6.1 Sol Pro API reference for SandBase. Use model openai/gpt-6.1-sol-pro with /v1/responses; see request and response examples." +aside: false +outline: false +apiReferenceKey: "llm/openai/gpt-6.1-sol-pro" +apiReferenceJson: "{\"title\":\"GPT-6.1 Sol Pro\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-6.1 Sol Pro is the same GPT-6.1 Sol model, OpenAI's near-Astra GPT-6 tier, served in OpenAI's pro reasoning mode rather than as different weights. Pro mode spends more model work on each request before returning a single final answer, which OpenAI says can improve reliability on difficult tasks such as complex optimization, high-value code review and deep analysis. It increases latency and token usage, so standard GPT-6.1 Sol remains the default for routine work.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-6.1-sol-pro.\",\"default\":\"openai/gpt-6.1-sol-pro\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"max_completion_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"reasoning_effort\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"medium\",\"constraints\":\"Allowed values: low, medium, high, xhigh, max\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-6.1-sol-pro\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-6.1-sol-pro\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +seo: + modelName: "GPT-6.1 Sol Pro" + modelId: "openai/gpt-6.1-sol-pro" + vendor: "OpenAI" + vendorSlug: "openai" + modelSlug: "gpt-6.1-sol-pro" + protocol: "Responses API" + endpoint: "/v1/responses" + publishedAt: "2026-09-29T17:28:06Z" + capabilities: ["chat","vision","reasoning","structured_output","function_calling"] + category: "LLM Models" +--- + + diff --git a/model-api-reference/llm-models/openai/gpt-6.1-sol.md b/model-api-reference/llm-models/openai/gpt-6.1-sol.md new file mode 100644 index 00000000..82b139e6 --- /dev/null +++ b/model-api-reference/llm-models/openai/gpt-6.1-sol.md @@ -0,0 +1,21 @@ +--- +title: "GPT-6.1 Sol API Reference" +description: "GPT-6.1 Sol API reference for SandBase. Use model openai/gpt-6.1-sol with /v1/responses; see request and response examples." +aside: false +outline: false +apiReferenceKey: "llm/openai/gpt-6.1-sol" +apiReferenceJson: "{\"title\":\"GPT-6.1 Sol\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT-6.1 Sol is OpenAI's upgrade to GPT-6 Sol, introduced at DevDay 2026 and positioned between GPT-6 Astra and GPT-6 Luna, with text and image input. OpenAI says it delivers near-Astra performance for complex coding, computer use and professional work, and recommends comparing it with Astra on your own tasks. Pick it for demanding agentic work at scale when Astra's full depth is not required; it always reasons at least at a low level and has no reasoning-off option.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-6.1-sol.\",\"default\":\"openai/gpt-6.1-sol\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"max_completion_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"reasoning_effort\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"medium\",\"constraints\":\"Allowed values: low, medium, high, xhigh, max\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-6.1-sol\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-6.1-sol\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +seo: + modelName: "GPT-6.1 Sol" + modelId: "openai/gpt-6.1-sol" + vendor: "OpenAI" + vendorSlug: "openai" + modelSlug: "gpt-6.1-sol" + protocol: "Responses API" + endpoint: "/v1/responses" + publishedAt: "2026-09-29T17:28:02Z" + capabilities: ["chat","vision","reasoning","structured_output","function_calling"] + category: "LLM Models" +--- + + diff --git a/model-api-reference/llm-models/openai/gpt-audio-mini.md b/model-api-reference/llm-models/openai/gpt-audio-mini.md deleted file mode 100644 index b6392f71..00000000 --- a/model-api-reference/llm-models/openai/gpt-audio-mini.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT Audio Mini API Reference" -description: "OpenAI Responses API reference for openai/gpt-audio-mini-fcadce27." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-audio-mini" -apiReferenceJson: "{\"title\":\"GPT Audio Mini\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"A cost-efficient version of GPT Audio. The new snapshot features an upgraded decoder for more natural sounding voices and maintains better voice consistency. Input is priced at $0.60 per million tokens and output is priced at $2.40 per million tokens.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, audio_input, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-audio-mini\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-audio-mini\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT Audio Mini" - modelId: "openai/gpt-audio-mini" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-audio-mini" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2026-01-19T21:50:19.564Z" - capabilities: ["chat","audio_input","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-audio.md b/model-api-reference/llm-models/openai/gpt-audio.md deleted file mode 100644 index a88aeebd..00000000 --- a/model-api-reference/llm-models/openai/gpt-audio.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT Audio API Reference" -description: "OpenAI Responses API reference for openai/gpt-audio-36574df0." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-audio" -apiReferenceJson: "{\"title\":\"GPT Audio\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"The gpt-audio model is OpenAI's first generally available audio model. The new snapshot features an upgraded decoder for more natural sounding voices and maintains better voice consistency. Audio is priced at $32 per million input tokens and $64 per million output tokens.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, audio_input, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-audio\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-audio\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT Audio" - modelId: "openai/gpt-audio" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-audio" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2026-01-19T22:42:49.327Z" - capabilities: ["chat","audio_input","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-chat-latest.md b/model-api-reference/llm-models/openai/gpt-chat-latest.md deleted file mode 100644 index 33adff87..00000000 --- a/model-api-reference/llm-models/openai/gpt-chat-latest.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "GPT Chat Latest API Reference" -description: "OpenAI Responses API reference for openai/gpt-chat-latest-c926dae6." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-chat-latest" -apiReferenceJson: "{\"title\":\"GPT Chat Latest\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"GPT Chat available points to OpenAI's stable API alias `chat-available` that always resolves to the available Instant chat model used in ChatGPT. As OpenAI rolls out new Instant model updates in the future, they are routed behind this slug automatically.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"400000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-chat-latest\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-chat-latest\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "GPT Chat Latest" - modelId: "openai/gpt-chat-latest" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-chat-latest" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2026-05-05T16:56:52.607Z" - capabilities: ["chat","vision","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-oss-120b.md b/model-api-reference/llm-models/openai/gpt-oss-120b.md index 26f42765..e127c97f 100644 --- a/model-api-reference/llm-models/openai/gpt-oss-120b.md +++ b/model-api-reference/llm-models/openai/gpt-oss-120b.md @@ -1,10 +1,10 @@ --- title: "gpt-oss-120b API Reference" -description: "OpenAI Responses API reference for openai/gpt-oss-120b-053db754." +description: "gpt-oss-120b API reference for SandBase. Use model openai/gpt-oss-120b with /v1/responses; see request and response examples." aside: false outline: false apiReferenceKey: "llm/openai/gpt-oss-120b" -apiReferenceJson: "{\"title\":\"gpt-oss-120b\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"gpt-oss-120b is an open-weight, 117B-parameter Mixture-of-Experts (MoE) language model from OpenAI designed for high-reasoning, agentic, and general-purpose production use cases. It activates 5.1B parameters per forward pass and is optimized to run on a single H100 GPU with native MXFP4 quantization. The model supports configurable reasoning depth, full chain-of-thought access, and native tool use, including function calling, browsing, and structured output generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-oss-120b\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-oss-120b\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"gpt-oss-120b\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"gpt-oss-120b is OpenAI's largest open-weight reasoning model, released in August 2025 under the Apache 2.0 license: a 117B-parameter mixture-of-experts model with 5.1B active parameters that fits on a single 80GB GPU. OpenAI positions it for production, general-purpose and high-reasoning use, with adjustable low, medium or high reasoning, full chain-of-thought access, and native function calling, browsing, Python execution and structured outputs. It is text-only and can be self-hosted or fine-tuned.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/gpt-oss-120b.\",\"default\":\"openai/gpt-oss-120b\"},{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/gpt-oss-120b\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"openai/gpt-oss-120b\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" seo: modelName: "gpt-oss-120b" modelId: "openai/gpt-oss-120b" diff --git a/model-api-reference/llm-models/openai/gpt-oss-20b.md b/model-api-reference/llm-models/openai/gpt-oss-20b.md deleted file mode 100644 index 19221e17..00000000 --- a/model-api-reference/llm-models/openai/gpt-oss-20b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "gpt-oss-20b API Reference" -description: "OpenAI Responses API reference for openai/gpt-oss-20b-cee67b36." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-oss-20b" -apiReferenceJson: "{\"title\":\"gpt-oss-20b\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"gpt-oss-20b is an open-weight 21B parameter model released by OpenAI under the Apache 2.0 license. It uses a Mixture-of-Experts (MoE) architecture with 3.6B active parameters per forward pass, optimized for lower-latency inference and deployability on consumer or single-GPU hardware. The model is trained in OpenAI’s Harmony response format and supports reasoning level configuration, fine-tuning, and agentic capabilities including function calling, tool use, and structured outputs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-oss-20b\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-oss-20b\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "gpt-oss-20b" - modelId: "openai/gpt-oss-20b" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-oss-20b" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2025-08-05T17:17:09Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/gpt-oss-safeguard-20b.md b/model-api-reference/llm-models/openai/gpt-oss-safeguard-20b.md deleted file mode 100644 index c14f0843..00000000 --- a/model-api-reference/llm-models/openai/gpt-oss-safeguard-20b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "gpt-oss-safeguard-20b API Reference" -description: "OpenAI Responses API reference for openai/gpt-oss-safeguard-20b-a5694039." -aside: false -outline: false -apiReferenceKey: "llm/openai/gpt-oss-safeguard-20b" -apiReferenceJson: "{\"title\":\"gpt-oss-safeguard-20b\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"gpt-oss-safeguard-20b is a safety reasoning model from OpenAI built upon gpt-oss-20b. This open-weight, 21B-parameter Mixture-of-Experts (MoE) model offers lower latency for safety tasks like content classification, LLM filtering, and trust & safety labeling.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"gpt-oss-safeguard-20b\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"gpt-oss-safeguard-20b\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "gpt-oss-safeguard-20b" - modelId: "openai/gpt-oss-safeguard-20b" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "gpt-oss-safeguard-20b" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2025-10-29T15:47:16.557Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/o1-pro.md b/model-api-reference/llm-models/openai/o1-pro.md deleted file mode 100644 index 21bcbcfd..00000000 --- a/model-api-reference/llm-models/openai/o1-pro.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "o1-pro API Reference" -description: "OpenAI Responses API reference for openai/o1-pro-a8ad51c2." -aside: false -outline: false -apiReferenceKey: "llm/openai/o1-pro" -apiReferenceJson: "{\"title\":\"o1-pro\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"The o1 series of models are trained with reinforcement learning to think before they answer and perform complex reasoning. The o1-pro model uses more compute to think harder and provide consistently better answers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 100000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"200000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"o1-pro\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"o1-pro\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "o1-pro" - modelId: "openai/o1-pro" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "o1-pro" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2025-03-19T22:26:51.61Z" - capabilities: ["chat","vision","reasoning","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/o1.md b/model-api-reference/llm-models/openai/o1.md deleted file mode 100644 index a19baaa1..00000000 --- a/model-api-reference/llm-models/openai/o1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "o1 API Reference" -description: "OpenAI Responses API reference for openai/o1-228cf4da." -aside: false -outline: false -apiReferenceKey: "llm/openai/o1" -apiReferenceJson: "{\"title\":\"o1\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"The available and strongest model family from OpenAI, o1 is designed to spend more time thinking before responding. The o1 model series is trained with large-scale reinforcement learning to reason using chain of thought.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 100000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"200000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"o1\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"o1\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "o1" - modelId: "openai/o1" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "o1" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2024-12-17T18:26:39.576Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/o3-deep-research.md b/model-api-reference/llm-models/openai/o3-deep-research.md deleted file mode 100644 index 4c5392d0..00000000 --- a/model-api-reference/llm-models/openai/o3-deep-research.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "o3 Deep Research API Reference" -description: "OpenAI Responses API reference for openai/o3-deep-research-32ffbd88." -aside: false -outline: false -apiReferenceKey: "llm/openai/o3-deep-research" -apiReferenceJson: "{\"title\":\"o3 Deep Research\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"o3-deep-research is OpenAI's advanced model for deep research, designed to tackle complex, multi-step research tasks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 100000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"200000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"o3-deep-research\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"o3-deep-research\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "o3 Deep Research" - modelId: "openai/o3-deep-research" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "o3-deep-research" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2025-10-10T20:54:21.971Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/o3-mini-high.md b/model-api-reference/llm-models/openai/o3-mini-high.md deleted file mode 100644 index f12b8303..00000000 --- a/model-api-reference/llm-models/openai/o3-mini-high.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "o3 Mini High API Reference" -description: "OpenAI Responses API reference for openai/o3-mini-high-e839beda." -aside: false -outline: false -apiReferenceKey: "llm/openai/o3-mini-high" -apiReferenceJson: "{\"title\":\"o3 Mini High\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"OpenAI o3-mini-high is the same model as o3-mini with reasoning_effort set to high.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 100000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"200000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"o3-mini-high\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"o3-mini-high\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "o3 Mini High" - modelId: "openai/o3-mini-high" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "o3-mini-high" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2025-02-12T15:03:31.504Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/o3-mini.md b/model-api-reference/llm-models/openai/o3-mini.md deleted file mode 100644 index 716b0023..00000000 --- a/model-api-reference/llm-models/openai/o3-mini.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "o3 Mini API Reference" -description: "OpenAI Responses API reference for openai/o3-mini-5857cfb7." -aside: false -outline: false -apiReferenceKey: "llm/openai/o3-mini" -apiReferenceJson: "{\"title\":\"o3 Mini\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"OpenAI o3-mini is a cost-efficient language model optimized for STEM reasoning tasks, particularly excelling in science, mathematics, and coding.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 100000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"200000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"o3-mini\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"o3-mini\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "o3 Mini" - modelId: "openai/o3-mini" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "o3-mini" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2025-01-31T19:28:41.132Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/o3-pro.md b/model-api-reference/llm-models/openai/o3-pro.md deleted file mode 100644 index fcc951a6..00000000 --- a/model-api-reference/llm-models/openai/o3-pro.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "o3 Pro API Reference" -description: "OpenAI Responses API reference for openai/o3-pro-3dc3a306." -aside: false -outline: false -apiReferenceKey: "llm/openai/o3-pro" -apiReferenceJson: "{\"title\":\"o3 Pro\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"The o-series of models are trained with reinforcement learning to think before they answer and perform complex reasoning. The o3-pro model uses more compute to think harder and provide consistently better answers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 100000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"200000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"o3-pro\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"o3-pro\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "o3 Pro" - modelId: "openai/o3-pro" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "o3-pro" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2025-06-10T23:32:32.266Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/o3.md b/model-api-reference/llm-models/openai/o3.md deleted file mode 100644 index f8d21b57..00000000 --- a/model-api-reference/llm-models/openai/o3.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "o3 API Reference" -description: "OpenAI Responses API reference for openai/o3-d3f801e2." -aside: false -outline: false -apiReferenceKey: "llm/openai/o3" -apiReferenceJson: "{\"title\":\"o3\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"o3 is a well-rounded and powerful model across domains. It sets a new standard for math, science, coding, and visual reasoning tasks. It also excels at technical writing and instruction-following. Use it to think through multi-step problems that involve analysis across text, code, and images.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 100000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"200000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"o3\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"o3\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "o3" - modelId: "openai/o3" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "o3" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2025-04-16T17:10:57.049Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/o4-mini-deep-research.md b/model-api-reference/llm-models/openai/o4-mini-deep-research.md deleted file mode 100644 index 49919cf9..00000000 --- a/model-api-reference/llm-models/openai/o4-mini-deep-research.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "o4 Mini Deep Research API Reference" -description: "OpenAI Responses API reference for openai/o4-mini-deep-research-edd62c85." -aside: false -outline: false -apiReferenceKey: "llm/openai/o4-mini-deep-research" -apiReferenceJson: "{\"title\":\"o4 Mini Deep Research\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"o4-mini-deep-research is OpenAI's faster, more affordable deep research model—ideal for tackling complex, multi-step research tasks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 100000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"200000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"o4-mini-deep-research\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"o4-mini-deep-research\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "o4 Mini Deep Research" - modelId: "openai/o4-mini-deep-research" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "o4-mini-deep-research" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2025-10-10T20:54:02.725Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/o4-mini-high.md b/model-api-reference/llm-models/openai/o4-mini-high.md deleted file mode 100644 index fe22f175..00000000 --- a/model-api-reference/llm-models/openai/o4-mini-high.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "o4 Mini High API Reference" -description: "OpenAI Responses API reference for openai/o4-mini-high-9f4d6609." -aside: false -outline: false -apiReferenceKey: "llm/openai/o4-mini-high" -apiReferenceJson: "{\"title\":\"o4 Mini High\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"OpenAI o4-mini-high is the same model as o4-mini with reasoning_effort set to high.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 100000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"200000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"o4-mini-high\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"o4-mini-high\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "o4 Mini High" - modelId: "openai/o4-mini-high" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "o4-mini-high" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2025-04-16T17:23:32.042Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openai/o4-mini.md b/model-api-reference/llm-models/openai/o4-mini.md deleted file mode 100644 index 40a7e3da..00000000 --- a/model-api-reference/llm-models/openai/o4-mini.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "o4 Mini API Reference" -description: "OpenAI Responses API reference for openai/o4-mini-d83b2102." -aside: false -outline: false -apiReferenceKey: "llm/openai/o4-mini" -apiReferenceJson: "{\"title\":\"o4 Mini\",\"operation\":\"OpenAI Responses\",\"method\":\"POST\",\"path\":\"/v1/responses\",\"description\":\"OpenAI o4-mini is a compact reasoning model in the o-series, optimized for fast, cost-efficient performance while retaining strong multimodal and agentic capabilities. It supports tool use and demonstrates competitive reasoning and coding performance across benchmarks like AIME (99.5% with Python) and SWE-bench, outperforming its predecessor o3-mini and even approaching o3 in some domains.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by the OpenAI Responses API. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"input\",\"type\":\"string | array\",\"required\":true,\"description\":\"Input text or structured content for the response.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 100000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by the OpenAI Responses API.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique response identifier.\"},{\"name\":\"object\",\"type\":\"string\",\"required\":true,\"description\":\"Response object type.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Response lifecycle status.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"output\",\"type\":\"array\",\"required\":true,\"description\":\"Generated response output items.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"200000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/responses \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"o4-mini\\\",\\n \\\"input\\\": \\\"Describe this product in one sentence.\\\"\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"resp_abc123\\\",\\n \\\"object\\\": \\\"response\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"o4-mini\\\",\\n \\\"output\\\": [\\n {\\n \\\"type\\\": \\\"message\\\",\\n \\\"content\\\": [\\n {\\n \\\"type\\\": \\\"output_text\\\",\\n \\\"text\\\": \\\"A concise product description.\\\"\\n }\\n ]\\n }\\n ]\\n}\"}}" -seo: - modelName: "o4 Mini" - modelId: "openai/o4-mini" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "o4-mini" - protocol: "Responses API" - endpoint: "/v1/responses" - publishedAt: "2025-04-16T16:29:02.98Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openrouter/auto.md b/model-api-reference/llm-models/openrouter/auto.md deleted file mode 100644 index 4ab2759d..00000000 --- a/model-api-reference/llm-models/openrouter/auto.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Auto Router API Reference" -description: "Auto Router API reference for SandBase. Use model openrouter/auto with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/openrouter/auto" -apiReferenceJson: "{\"title\":\"Auto Router\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Your prompt will be processed by a meta-model and routed to one of dozens of models (see below), optimizing for the best possible output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openrouter/auto.\",\"default\":\"openrouter/auto\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 2000000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"2000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openrouter/auto\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"openrouter/auto\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Auto Router" - modelId: "openrouter/auto" - vendor: "Openrouter" - vendorSlug: "openrouter" - modelSlug: "auto" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2023-11-08T00:00:00Z" - capabilities: ["chat","vision","audio_input","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openrouter/bodybuilder.md b/model-api-reference/llm-models/openrouter/bodybuilder.md deleted file mode 100644 index daf3744b..00000000 --- a/model-api-reference/llm-models/openrouter/bodybuilder.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Body Builder (beta) API Reference" -description: "Body Builder (beta) API reference for SandBase. Use model openrouter/bodybuilder with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/openrouter/bodybuilder" -apiReferenceJson: "{\"title\":\"Body Builder (beta)\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Transform your natural language requests into structured OpenRouter API request objects. Describe what you want to accomplish with AI models, and Body Builder will construct the appropriate API calls. Example: \\\"count to 10 using gemini and opus.\\\"\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openrouter/bodybuilder.\",\"default\":\"openrouter/bodybuilder\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openrouter/bodybuilder\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"openrouter/bodybuilder\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Body Builder (beta)" - modelId: "openrouter/bodybuilder" - vendor: "Openrouter" - vendorSlug: "openrouter" - modelSlug: "bodybuilder" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-12-05T03:00:53.239Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openrouter/fusion.md b/model-api-reference/llm-models/openrouter/fusion.md deleted file mode 100644 index f997c233..00000000 --- a/model-api-reference/llm-models/openrouter/fusion.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "OpenRouter: Fusion API Reference" -description: "OpenRouter: Fusion API reference for SandBase. Use model openrouter/fusion with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/openrouter/fusion" -apiReferenceJson: "{\"title\":\"OpenRouter: Fusion\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Fusion turns your prompt into a small multi-model deliberation. A panel of expert models (see below) analyzes your prompt in parallel with web search and web fetch enabled, then a judge model synthesizes their responses into a structured analysis — consensus, contradictions, partial coverage, unique insights, and blind spots — and writes the final answer from it.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openrouter/fusion.\",\"default\":\"openrouter/fusion\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openrouter/fusion\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"openrouter/fusion\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "OpenRouter: Fusion" - modelId: "openrouter/fusion" - vendor: "Openrouter" - vendorSlug: "openrouter" - modelSlug: "fusion" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-05-12T16:33:26.535Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/openrouter/pareto-code.md b/model-api-reference/llm-models/openrouter/pareto-code.md deleted file mode 100644 index ed9b49f4..00000000 --- a/model-api-reference/llm-models/openrouter/pareto-code.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Pareto Code Router API Reference" -description: "Pareto Code Router API reference for SandBase. Use model openrouter/pareto-code with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/openrouter/pareto-code" -apiReferenceJson: "{\"title\":\"Pareto Code Router\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"The Pareto Router maintains a tiered shortlist of strong coding models, ranked by Artificial Analysis coding percentiles. Set min_coding_score between 0 and 1 on the pareto-router plugin to control how strong a coder you need; higher scores select stronger (and typically more expensive) models. If you omit min_coding_score, the router defaults to the High tier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openrouter/pareto-code.\",\"default\":\"openrouter/pareto-code\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 2000000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"2000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openrouter/pareto-code\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"openrouter/pareto-code\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Pareto Code Router" - modelId: "openrouter/pareto-code" - vendor: "Openrouter" - vendorSlug: "openrouter" - modelSlug: "pareto-code" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-04-21T05:05:00.602Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/perceptron/perceptron-mk1.md b/model-api-reference/llm-models/perceptron/perceptron-mk1.md deleted file mode 100644 index 4c4af1fd..00000000 --- a/model-api-reference/llm-models/perceptron/perceptron-mk1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Perceptron Mk1 API Reference" -description: "Perceptron Mk1 API reference for SandBase. Use model perceptron/perceptron-mk1 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/perceptron/perceptron-mk1" -apiReferenceJson: "{\"title\":\"Perceptron Mk1\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Perceptron Mk1 (Mark One) is Perceptron's highest-quality vision-language model for video and embodied reasoning. It accepts image and video inputs paired with natural language queries, and produces detailed visual understanding responses, either structured or natural language. It excels at video understanding tasks like video QA, summarization, and event detection. On image inputs, it advances point-by-example grounding from multimodal prompts, OCR and document parsing on messy real-world inputs, open vocabulary object detection and counting, and hand pose estimation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to perceptron/perceptron-mk1.\",\"default\":\"perceptron/perceptron-mk1\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 8192\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"32768 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"perceptron/perceptron-mk1\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"perceptron/perceptron-mk1\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Perceptron Mk1" - modelId: "perceptron/perceptron-mk1" - vendor: "Perceptron" - vendorSlug: "perceptron" - modelSlug: "perceptron-mk1" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-05-12T14:43:49.92Z" - capabilities: ["chat","vision","reasoning","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/perplexity/sonar-deep-research.md b/model-api-reference/llm-models/perplexity/sonar-deep-research.md deleted file mode 100644 index ed62a96b..00000000 --- a/model-api-reference/llm-models/perplexity/sonar-deep-research.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sonar Deep Research API Reference" -description: "Sonar Deep Research API reference for SandBase. Use model perplexity/sonar-deep-research with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/perplexity/sonar-deep-research" -apiReferenceJson: "{\"title\":\"Sonar Deep Research\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Sonar Deep Research is a research-focused model designed for multi-step retrieval, synthesis, and reasoning across complex topics. It autonomously searches, reads, and evaluates sources, refining its approach as it gathers information. This enables comprehensive report generation across domains like finance, technology, health, and current events.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to perplexity/sonar-deep-research.\",\"default\":\"perplexity/sonar-deep-research\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"perplexity/sonar-deep-research\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"perplexity/sonar-deep-research\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Sonar Deep Research" - modelId: "perplexity/sonar-deep-research" - vendor: "Perplexity" - vendorSlug: "perplexity" - modelSlug: "sonar-deep-research" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-03-07T01:34:06Z" - capabilities: ["chat","reasoning"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/perplexity/sonar-pro-search.md b/model-api-reference/llm-models/perplexity/sonar-pro-search.md deleted file mode 100644 index b17072c1..00000000 --- a/model-api-reference/llm-models/perplexity/sonar-pro-search.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sonar Pro Search API Reference" -description: "Sonar Pro Search API reference for SandBase. Use model perplexity/sonar-pro-search with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/perplexity/sonar-pro-search" -apiReferenceJson: "{\"title\":\"Sonar Pro Search\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Exclusively available on the OpenRouter API, Sonar Pro's new Pro Search mode is Perplexity's most advanced agentic search system. It is designed for deeper reasoning and analysis. Pricing is based on tokens plus $18 per thousand requests. This model powers the Pro Search mode on the Perplexity platform.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to perplexity/sonar-pro-search.\",\"default\":\"perplexity/sonar-pro-search\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 8000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"200000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"perplexity/sonar-pro-search\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"perplexity/sonar-pro-search\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Sonar Pro Search" - modelId: "perplexity/sonar-pro-search" - vendor: "Perplexity" - vendorSlug: "perplexity" - modelSlug: "sonar-pro-search" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-10-30T19:59:26Z" - capabilities: ["chat","vision","reasoning","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/perplexity/sonar-pro.md b/model-api-reference/llm-models/perplexity/sonar-pro.md deleted file mode 100644 index 0d02762e..00000000 --- a/model-api-reference/llm-models/perplexity/sonar-pro.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sonar Pro API Reference" -description: "Sonar Pro API reference for SandBase. Use model perplexity/sonar-pro with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/perplexity/sonar-pro" -apiReferenceJson: "{\"title\":\"Sonar Pro\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Note: Sonar Pro pricing includes Perplexity search pricing. See details here\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to perplexity/sonar-pro.\",\"default\":\"perplexity/sonar-pro\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 8000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"200000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"perplexity/sonar-pro\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"perplexity/sonar-pro\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Sonar Pro" - modelId: "perplexity/sonar-pro" - vendor: "Perplexity" - vendorSlug: "perplexity" - modelSlug: "sonar-pro" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-03-07T01:53:43Z" - capabilities: ["chat","vision"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/perplexity/sonar-reasoning-pro.md b/model-api-reference/llm-models/perplexity/sonar-reasoning-pro.md deleted file mode 100644 index d39d7b94..00000000 --- a/model-api-reference/llm-models/perplexity/sonar-reasoning-pro.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sonar Reasoning Pro API Reference" -description: "Sonar Reasoning Pro API reference for SandBase. Use model perplexity/sonar-reasoning-pro with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/perplexity/sonar-reasoning-pro" -apiReferenceJson: "{\"title\":\"Sonar Reasoning Pro\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Note: Sonar Pro pricing includes Perplexity search pricing. See details here\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to perplexity/sonar-reasoning-pro.\",\"default\":\"perplexity/sonar-reasoning-pro\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"perplexity/sonar-reasoning-pro\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"perplexity/sonar-reasoning-pro\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Sonar Reasoning Pro" - modelId: "perplexity/sonar-reasoning-pro" - vendor: "Perplexity" - vendorSlug: "perplexity" - modelSlug: "sonar-reasoning-pro" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-03-07T02:08:28.125Z" - capabilities: ["chat","vision","reasoning"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/perplexity/sonar.md b/model-api-reference/llm-models/perplexity/sonar.md deleted file mode 100644 index e3d90605..00000000 --- a/model-api-reference/llm-models/perplexity/sonar.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sonar API Reference" -description: "Sonar API reference for SandBase. Use model perplexity/sonar with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/perplexity/sonar" -apiReferenceJson: "{\"title\":\"Sonar\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Sonar is lightweight, affordable, fast, and simple to use — now featuring citations and the ability to customize sources. It is designed for companies seeking to integrate lightweight question-and-answer features optimized for speed.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to perplexity/sonar.\",\"default\":\"perplexity/sonar\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 127072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"127072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"perplexity/sonar\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"perplexity/sonar\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Sonar" - modelId: "perplexity/sonar" - vendor: "Perplexity" - vendorSlug: "perplexity" - modelSlug: "sonar" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-01-27T21:36:48.666Z" - capabilities: ["chat","vision"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/poolside/laguna-m.1.md b/model-api-reference/llm-models/poolside/laguna-m.1.md deleted file mode 100644 index 22fe604b..00000000 --- a/model-api-reference/llm-models/poolside/laguna-m.1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Laguna M.1 API Reference" -description: "Laguna M.1 API reference for SandBase. Use model poolside/laguna-m.1 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/poolside/laguna-m.1" -apiReferenceJson: "{\"title\":\"Laguna M.1\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Laguna M.1 is the flagship coding agent model from Poolside, optimized for complex software engineering tasks. Designed for agentic coding workflows, it supports tool calling and reasoning, with a 256K...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to poolside/laguna-m.1.\",\"default\":\"poolside/laguna-m.1\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"poolside/laguna-m.1\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"poolside/laguna-m.1\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Laguna M.1" - modelId: "poolside/laguna-m.1" - vendor: "Poolside" - vendorSlug: "poolside" - modelSlug: "laguna-m.1" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-04-28T00:00:00Z" - capabilities: ["chat","reasoning","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/poolside/laguna-xs.2.md b/model-api-reference/llm-models/poolside/laguna-xs.2.md deleted file mode 100644 index 3234c129..00000000 --- a/model-api-reference/llm-models/poolside/laguna-xs.2.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Laguna XS.2 API Reference" -description: "Laguna XS.2 API reference for SandBase. Use model poolside/laguna-xs.2 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/poolside/laguna-xs.2" -apiReferenceJson: "{\"title\":\"Laguna XS.2\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Laguna XS.2 is the second-generation model in the XS size class from Poolside, their efficient coding agent series. It combines tool calling and reasoning capabilities with a compact footprint, offering...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to poolside/laguna-xs.2.\",\"default\":\"poolside/laguna-xs.2\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"poolside/laguna-xs.2\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"poolside/laguna-xs.2\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Laguna XS.2" - modelId: "poolside/laguna-xs.2" - vendor: "Poolside" - vendorSlug: "poolside" - modelSlug: "laguna-xs.2" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-04-28T00:00:00Z" - capabilities: ["chat","reasoning","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/prime-intellect/intellect-3.md b/model-api-reference/llm-models/prime-intellect/intellect-3.md deleted file mode 100644 index 1b62c0d4..00000000 --- a/model-api-reference/llm-models/prime-intellect/intellect-3.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Prime Intellect: INTELLECT-3 API Reference" -description: "Prime Intellect: INTELLECT-3 API reference for SandBase. Use model prime-intellect/intellect-3 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/prime-intellect/intellect-3" -apiReferenceJson: "{\"title\":\"Prime Intellect: INTELLECT-3\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"INTELLECT-3 is a 106B-parameter Mixture-of-Experts model (12B active) post-trained from GLM-4.5-Air-Base using supervised fine-tuning (SFT) followed by large-scale reinforcement learning (RL). It offers state-of-the-art performance for its size across math, code, science, and general reasoning, consistently outperforming many larger frontier models. Designed for strong multi-step problem solving, it maintains high accuracy on structured tasks while remaining efficient at inference thanks to its MoE architecture.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to prime-intellect/intellect-3.\",\"default\":\"prime-intellect/intellect-3\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"prime-intellect/intellect-3\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"prime-intellect/intellect-3\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Prime Intellect: INTELLECT-3" - modelId: "prime-intellect/intellect-3" - vendor: "Prime-Intellect" - vendorSlug: "prime-intellect" - modelSlug: "intellect-3" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-11-27T03:02:14.494Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/rekaai/reka-edge.md b/model-api-reference/llm-models/rekaai/reka-edge.md deleted file mode 100644 index 21e67b11..00000000 --- a/model-api-reference/llm-models/rekaai/reka-edge.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Reka Edge API Reference" -description: "Reka Edge API reference for SandBase. Use model rekaai/reka-edge with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/rekaai/reka-edge" -apiReferenceJson: "{\"title\":\"Reka Edge\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Reka Edge is an extremely efficient 7B multimodal vision-language model that accepts image/video+text inputs and generates text outputs. This model is optimized specifically to deliver industry-leading performance in image understanding, video analysis, object detection, and agentic tool-use.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to rekaai/reka-edge.\",\"default\":\"rekaai/reka-edge\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"16384 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"rekaai/reka-edge\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"rekaai/reka-edge\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Reka Edge" - modelId: "rekaai/reka-edge" - vendor: "Rekaai" - vendorSlug: "rekaai" - modelSlug: "reka-edge" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-03-20T17:16:05.541Z" - capabilities: ["chat","vision","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/rekaai/reka-flash-3.md b/model-api-reference/llm-models/rekaai/reka-flash-3.md deleted file mode 100644 index 51dfb85d..00000000 --- a/model-api-reference/llm-models/rekaai/reka-flash-3.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Reka Flash 3 API Reference" -description: "Reka Flash 3 API reference for SandBase. Use model rekaai/reka-flash-3 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/rekaai/reka-flash-3" -apiReferenceJson: "{\"title\":\"Reka Flash 3\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Reka Flash 3 is a general-purpose, instruction-tuned large language model with 21 billion parameters, developed by Reka. It excels at general chat, coding tasks, instruction-following, and function calling. Featuring a 32K context length and optimized through reinforcement learning (RLOO), it provides competitive performance comparable to proprietary models within a smaller parameter footprint. Ideal for low-latency, local, or on-device deployments, Reka Flash 3 is compact, supports efficient quantization (down to 11GB at 4-bit precision), and employs explicit reasoning tags (\\\"\\\") to indicate its internal thought process.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to rekaai/reka-flash-3.\",\"default\":\"rekaai/reka-flash-3\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"65536 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"rekaai/reka-flash-3\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"rekaai/reka-flash-3\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Reka Flash 3" - modelId: "rekaai/reka-flash-3" - vendor: "Rekaai" - vendorSlug: "rekaai" - modelSlug: "reka-flash-3" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-03-12T20:53:33.296Z" - capabilities: ["chat","reasoning"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/relace/relace-apply-3.md b/model-api-reference/llm-models/relace/relace-apply-3.md deleted file mode 100644 index 27d0e39b..00000000 --- a/model-api-reference/llm-models/relace/relace-apply-3.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Relace Apply 3 API Reference" -description: "Relace Apply 3 API reference for SandBase. Use model relace/relace-apply-3 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/relace/relace-apply-3" -apiReferenceJson: "{\"title\":\"Relace Apply 3\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Relace Apply 3 is a specialized code-patching LLM that merges AI-suggested edits straight into your source files. It can apply updates from GPT-4o, Claude, and others into your files at 10,000 tokens/sec on average.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to relace/relace-apply-3.\",\"default\":\"relace/relace-apply-3\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"256000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"relace/relace-apply-3\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"relace/relace-apply-3\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Relace Apply 3" - modelId: "relace/relace-apply-3" - vendor: "Relace" - vendorSlug: "relace" - modelSlug: "relace-apply-3" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-09-26T12:59:32.878Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/relace/relace-search.md b/model-api-reference/llm-models/relace/relace-search.md deleted file mode 100644 index d9fc738f..00000000 --- a/model-api-reference/llm-models/relace/relace-search.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Relace Search API Reference" -description: "Relace Search API reference for SandBase. Use model relace/relace-search with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/relace/relace-search" -apiReferenceJson: "{\"title\":\"Relace Search\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"The relace-search model uses 4-12 `view_file` and `grep` tools in parallel to explore a codebase and return relevant files to the user request.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to relace/relace-search.\",\"default\":\"relace/relace-search\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"256000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"relace/relace-search\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"relace/relace-search\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Relace Search" - modelId: "relace/relace-search" - vendor: "Relace" - vendorSlug: "relace" - modelSlug: "relace-search" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-12-08T17:06:00Z" - capabilities: ["chat","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/sao10k/l3-euryale-70b.md b/model-api-reference/llm-models/sao10k/l3-euryale-70b.md deleted file mode 100644 index ba43f160..00000000 --- a/model-api-reference/llm-models/sao10k/l3-euryale-70b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Llama 3 Euryale 70B v2.1 API Reference" -description: "Llama 3 Euryale 70B v2.1 API reference for SandBase. Use model sao10k/l3-euryale-70b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/sao10k/l3-euryale-70b" -apiReferenceJson: "{\"title\":\"Llama 3 Euryale 70B v2.1\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Euryale 70B v2.1 is a model focused on creative roleplay from Sao10k.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sao10k/l3-euryale-70b.\",\"default\":\"sao10k/l3-euryale-70b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 8192\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"8192 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sao10k/l3-euryale-70b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"sao10k/l3-euryale-70b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Llama 3 Euryale 70B v2.1" - modelId: "sao10k/l3-euryale-70b" - vendor: "Sao10k" - vendorSlug: "sao10k" - modelSlug: "l3-euryale-70b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-06-18T00:00:00Z" - capabilities: ["chat","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/sao10k/l3-lunaris-8b.md b/model-api-reference/llm-models/sao10k/l3-lunaris-8b.md deleted file mode 100644 index fcbcfada..00000000 --- a/model-api-reference/llm-models/sao10k/l3-lunaris-8b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sao10K: Llama 3 8B Lunaris API Reference" -description: "Sao10K: Llama 3 8B Lunaris API reference for SandBase. Use model sao10k/l3-lunaris-8b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/sao10k/l3-lunaris-8b" -apiReferenceJson: "{\"title\":\"Sao10K: Llama 3 8B Lunaris\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Lunaris 8B is a versatile generalist and roleplaying model based on Llama 3. It's a strategic merge of multiple models, designed to balance creativity with improved logic and general knowledge.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sao10k/l3-lunaris-8b.\",\"default\":\"sao10k/l3-lunaris-8b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"8192 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sao10k/l3-lunaris-8b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"sao10k/l3-lunaris-8b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Sao10K: Llama 3 8B Lunaris" - modelId: "sao10k/l3-lunaris-8b" - vendor: "Sao10k" - vendorSlug: "sao10k" - modelSlug: "l3-lunaris-8b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-08-13T00:00:00Z" - capabilities: ["chat","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/sao10k/l3.1-70b-hanami-x1.md b/model-api-reference/llm-models/sao10k/l3.1-70b-hanami-x1.md deleted file mode 100644 index b52662fd..00000000 --- a/model-api-reference/llm-models/sao10k/l3.1-70b-hanami-x1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sao10K: Llama 3.1 70B Hanami x1 API Reference" -description: "Sao10K: Llama 3.1 70B Hanami x1 API reference for SandBase. Use model sao10k/l3.1-70b-hanami-x1 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/sao10k/l3.1-70b-hanami-x1" -apiReferenceJson: "{\"title\":\"Sao10K: Llama 3.1 70B Hanami x1\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"This is Sao10K's experiment over Euryale v2.2.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sao10k/l3.1-70b-hanami-x1.\",\"default\":\"sao10k/l3.1-70b-hanami-x1\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"16000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sao10k/l3.1-70b-hanami-x1\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"sao10k/l3.1-70b-hanami-x1\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Sao10K: Llama 3.1 70B Hanami x1" - modelId: "sao10k/l3.1-70b-hanami-x1" - vendor: "Sao10k" - vendorSlug: "sao10k" - modelSlug: "l3.1-70b-hanami-x1" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-01-08T02:20:54.222Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/sao10k/l3.1-euryale-70b.md b/model-api-reference/llm-models/sao10k/l3.1-euryale-70b.md deleted file mode 100644 index a2000e32..00000000 --- a/model-api-reference/llm-models/sao10k/l3.1-euryale-70b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sao10K: Llama 3.1 Euryale 70B v2.2 API Reference" -description: "Sao10K: Llama 3.1 Euryale 70B v2.2 API reference for SandBase. Use model sao10k/l3.1-euryale-70b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/sao10k/l3.1-euryale-70b" -apiReferenceJson: "{\"title\":\"Sao10K: Llama 3.1 Euryale 70B v2.2\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Euryale L3.1 70B v2.2 is a model focused on creative roleplay from Sao10k. It is the successor of Euryale L3 70B v2.1.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sao10k/l3.1-euryale-70b.\",\"default\":\"sao10k/l3.1-euryale-70b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sao10k/l3.1-euryale-70b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"sao10k/l3.1-euryale-70b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Sao10K: Llama 3.1 Euryale 70B v2.2" - modelId: "sao10k/l3.1-euryale-70b" - vendor: "Sao10k" - vendorSlug: "sao10k" - modelSlug: "l3.1-euryale-70b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-08-28T00:00:00Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/sao10k/l3.3-euryale-70b.md b/model-api-reference/llm-models/sao10k/l3.3-euryale-70b.md deleted file mode 100644 index 9ad48076..00000000 --- a/model-api-reference/llm-models/sao10k/l3.3-euryale-70b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sao10K: Llama 3.3 Euryale 70B API Reference" -description: "Sao10K: Llama 3.3 Euryale 70B API reference for SandBase. Use model sao10k/l3.3-euryale-70b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/sao10k/l3.3-euryale-70b" -apiReferenceJson: "{\"title\":\"Sao10K: Llama 3.3 Euryale 70B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Euryale L3.3 70B is a model focused on creative roleplay from Sao10k. It is the successor of Euryale L3 70B v2.2.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sao10k/l3.3-euryale-70b.\",\"default\":\"sao10k/l3.3-euryale-70b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sao10k/l3.3-euryale-70b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"sao10k/l3.3-euryale-70b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Sao10K: Llama 3.3 Euryale 70B" - modelId: "sao10k/l3.3-euryale-70b" - vendor: "Sao10k" - vendorSlug: "sao10k" - modelSlug: "l3.3-euryale-70b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-12-18T15:32:08.468Z" - capabilities: ["chat","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/stepfun/step-3.5-flash.md b/model-api-reference/llm-models/stepfun/step-3.5-flash.md deleted file mode 100644 index f75e4002..00000000 --- a/model-api-reference/llm-models/stepfun/step-3.5-flash.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "StepFun: Step 3.5 Flash API Reference" -description: "StepFun: Step 3.5 Flash API reference for SandBase. Use model stepfun/step-3.5-flash with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/stepfun/step-3.5-flash" -apiReferenceJson: "{\"title\":\"StepFun: Step 3.5 Flash\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Step 3.5 Flash is StepFun's most capable open-source foundation model. Built on a sparse Mixture of Experts (MoE) architecture, it selectively activates only 11B of its 196B parameters per token. It is a reasoning model that is incredibly speed efficient even at long contexts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to stepfun/step-3.5-flash.\",\"default\":\"stepfun/step-3.5-flash\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"stepfun/step-3.5-flash\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"stepfun/step-3.5-flash\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "StepFun: Step 3.5 Flash" - modelId: "stepfun/step-3.5-flash" - vendor: "Stepfun" - vendorSlug: "stepfun" - modelSlug: "step-3.5-flash" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-01-29T23:12:17.06Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/stepfun/step-3.7-flash.md b/model-api-reference/llm-models/stepfun/step-3.7-flash.md deleted file mode 100644 index 22042943..00000000 --- a/model-api-reference/llm-models/stepfun/step-3.7-flash.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "StepFun: Step 3.7 Flash API Reference" -description: "StepFun: Step 3.7 Flash API reference for SandBase. Use model stepfun/step-3.7-flash with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/stepfun/step-3.7-flash" -apiReferenceJson: "{\"title\":\"StepFun: Step 3.7 Flash\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Step 3.7 Flash is StepFun's available high-efficiency multimodal Mixture-of-Experts model. It pairs a 196B-parameter language backbone with a vision encoder for native image and video understanding, activating roughly 11B parameters per token. The model supports a 256K context window and exposes selectable reasoning levels (high/medium/low), letting callers trade off speed, cost, and depth of reasoning.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to stepfun/step-3.7-flash.\",\"default\":\"stepfun/step-3.7-flash\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 256000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"256000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"stepfun/step-3.7-flash\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"stepfun/step-3.7-flash\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "StepFun: Step 3.7 Flash" - modelId: "stepfun/step-3.7-flash" - vendor: "Stepfun" - vendorSlug: "stepfun" - modelSlug: "step-3.7-flash" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-05-28T16:17:49Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/switchpoint/router.md b/model-api-reference/llm-models/switchpoint/router.md deleted file mode 100644 index 6027a551..00000000 --- a/model-api-reference/llm-models/switchpoint/router.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Switchpoint Router API Reference" -description: "Switchpoint Router API reference for SandBase. Use model switchpoint/router with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/switchpoint/router" -apiReferenceJson: "{\"title\":\"Switchpoint Router\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Switchpoint AI's router instantly analyzes your request and directs it to the optimal AI from an ever-evolving library.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to switchpoint/router.\",\"default\":\"switchpoint/router\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"switchpoint/router\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"switchpoint/router\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Switchpoint Router" - modelId: "switchpoint/router" - vendor: "Switchpoint" - vendorSlug: "switchpoint" - modelSlug: "router" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-07-11T22:28:19Z" - capabilities: ["chat","reasoning"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/tencent/hunyuan-a13b-instruct.md b/model-api-reference/llm-models/tencent/hunyuan-a13b-instruct.md deleted file mode 100644 index f13edd12..00000000 --- a/model-api-reference/llm-models/tencent/hunyuan-a13b-instruct.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan A13B Instruct API Reference" -description: "Hunyuan A13B Instruct API reference for SandBase. Use model tencent/hunyuan-a13b-instruct with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/tencent/hunyuan-a13b-instruct" -apiReferenceJson: "{\"title\":\"Hunyuan A13B Instruct\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Hunyuan-A13B is a 13B active parameter Mixture-of-Experts (MoE) language model developed by Tencent, with a total parameter count of 80B and support for reasoning via Chain-of-Thought. It offers competitive benchmark performance across mathematics, science, coding, and multi-turn reasoning tasks, while maintaining high inference efficiency via Grouped Query Attention (GQA) and quantization support (FP8, GPTQ, etc.).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-a13b-instruct.\",\"default\":\"tencent/hunyuan-a13b-instruct\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-a13b-instruct\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-a13b-instruct\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Hunyuan A13B Instruct" - modelId: "tencent/hunyuan-a13b-instruct" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-a13b-instruct" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-07-08T15:14:24.006Z" - capabilities: ["chat","reasoning","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/tencent/hy3-preview.md b/model-api-reference/llm-models/tencent/hy3-preview.md deleted file mode 100644 index c079cb22..00000000 --- a/model-api-reference/llm-models/tencent/hy3-preview.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hy3 preview API Reference" -description: "Hy3 preview API reference for SandBase. Use model tencent/hy3-preview with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/tencent/hy3-preview" -apiReferenceJson: "{\"title\":\"Hy3 preview\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Hy3 preview is a high-efficiency Mixture-of-Experts model from Tencent designed for agentic workflows and production use. It supports configurable reasoning levels across disabled, low, and high modes, allowing it to balance speed and depth depending on the task, while delivering strong code generation and reliable performance across multi-step, real-world workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hy3-preview.\",\"default\":\"tencent/hy3-preview\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 262144\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hy3-preview\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"tencent/hy3-preview\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Hy3 preview" - modelId: "tencent/hy3-preview" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hy3-preview" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-04-22T17:15:50.112Z" - capabilities: ["chat","reasoning","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/tencent/hy4-preview.md b/model-api-reference/llm-models/tencent/hy4-preview.md index 8a84543e..58f061a1 100644 --- a/model-api-reference/llm-models/tencent/hy4-preview.md +++ b/model-api-reference/llm-models/tencent/hy4-preview.md @@ -4,7 +4,7 @@ description: "Hy4 preview API reference for SandBase. Use model tencent/hy4-prev aside: false outline: false apiReferenceKey: "llm/tencent/hy4-preview" -apiReferenceJson: "{\"title\":\"Hy4 preview\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Tencent: Hy4 preview is a mixture-of-experts model from Tencent, with 49B active parameters out of 770B total. It is designed for coding agents, complex tool-use workflows, and productivity tasks that...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hy4-preview.\",\"default\":\"tencent/hy4-preview\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 64000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hy4-preview\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"tencent/hy4-preview\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Hy4 preview\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Hy4 preview is Tencent Hunyuan's open-source preview of its Hy4 generation, a mixture-of-experts language model with 770B total and 49B active parameters and a context window exceeding 1M tokens. Tencent built it for real-world productivity: long-context software development and front-end work, office and financial analysis, game prototyping and scientific research. Tencent follows a preview-first approach, with official Hy4 releases to come after this model.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hy4-preview.\",\"default\":\"tencent/hy4-preview\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 64000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hy4-preview\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"tencent/hy4-preview\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Hy4 preview" modelId: "tencent/hy4-preview" diff --git a/model-api-reference/llm-models/thedrummer/cydonia-24b-v4.1.md b/model-api-reference/llm-models/thedrummer/cydonia-24b-v4.1.md deleted file mode 100644 index 7f2a41e4..00000000 --- a/model-api-reference/llm-models/thedrummer/cydonia-24b-v4.1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "TheDrummer: Cydonia 24B V4.1 API Reference" -description: "TheDrummer: Cydonia 24B V4.1 API reference for SandBase. Use model thedrummer/cydonia-24b-v4.1 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/thedrummer/cydonia-24b-v4.1" -apiReferenceJson: "{\"title\":\"TheDrummer: Cydonia 24B V4.1\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Uncensored and creative writing model based on Mistral Small 3.2 24B with good recall, prompt adherence, and intelligence.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to thedrummer/cydonia-24b-v4.1.\",\"default\":\"thedrummer/cydonia-24b-v4.1\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"thedrummer/cydonia-24b-v4.1\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"thedrummer/cydonia-24b-v4.1\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "TheDrummer: Cydonia 24B V4.1" - modelId: "thedrummer/cydonia-24b-v4.1" - vendor: "Thedrummer" - vendorSlug: "thedrummer" - modelSlug: "cydonia-24b-v4.1" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-09-27T00:11:18.116Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/thedrummer/rocinante-12b.md b/model-api-reference/llm-models/thedrummer/rocinante-12b.md deleted file mode 100644 index a3b1bb3d..00000000 --- a/model-api-reference/llm-models/thedrummer/rocinante-12b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "TheDrummer: Rocinante 12B API Reference" -description: "TheDrummer: Rocinante 12B API reference for SandBase. Use model thedrummer/rocinante-12b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/thedrummer/rocinante-12b" -apiReferenceJson: "{\"title\":\"TheDrummer: Rocinante 12B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Rocinante 12B is designed for engaging storytelling and rich prose.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to thedrummer/rocinante-12b.\",\"default\":\"thedrummer/rocinante-12b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"32768 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"thedrummer/rocinante-12b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"thedrummer/rocinante-12b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "TheDrummer: Rocinante 12B" - modelId: "thedrummer/rocinante-12b" - vendor: "Thedrummer" - vendorSlug: "thedrummer" - modelSlug: "rocinante-12b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-09-30T00:00:00Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/thedrummer/skyfall-36b-v2.md b/model-api-reference/llm-models/thedrummer/skyfall-36b-v2.md deleted file mode 100644 index 3c7da3c6..00000000 --- a/model-api-reference/llm-models/thedrummer/skyfall-36b-v2.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "TheDrummer: Skyfall 36B V2 API Reference" -description: "TheDrummer: Skyfall 36B V2 API reference for SandBase. Use model thedrummer/skyfall-36b-v2 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/thedrummer/skyfall-36b-v2" -apiReferenceJson: "{\"title\":\"TheDrummer: Skyfall 36B V2\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Skyfall 36B v2 is an enhanced iteration of Mistral Small 2501, specifically fine-tuned for improved creativity, nuanced writing, role-playing, and coherent storytelling.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to thedrummer/skyfall-36b-v2.\",\"default\":\"thedrummer/skyfall-36b-v2\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"32768 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"thedrummer/skyfall-36b-v2\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"thedrummer/skyfall-36b-v2\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "TheDrummer: Skyfall 36B V2" - modelId: "thedrummer/skyfall-36b-v2" - vendor: "Thedrummer" - vendorSlug: "thedrummer" - modelSlug: "skyfall-36b-v2" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-03-10T19:56:06.007Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/thedrummer/unslopnemo-12b.md b/model-api-reference/llm-models/thedrummer/unslopnemo-12b.md deleted file mode 100644 index c28ed627..00000000 --- a/model-api-reference/llm-models/thedrummer/unslopnemo-12b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "TheDrummer: UnslopNemo 12B API Reference" -description: "TheDrummer: UnslopNemo 12B API reference for SandBase. Use model thedrummer/unslopnemo-12b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/thedrummer/unslopnemo-12b" -apiReferenceJson: "{\"title\":\"TheDrummer: UnslopNemo 12B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"UnslopNemo v4.1 is the available addition from the creator of Rocinante, designed for adventure writing and role-play scenarios.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to thedrummer/unslopnemo-12b.\",\"default\":\"thedrummer/unslopnemo-12b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"32768 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"thedrummer/unslopnemo-12b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"thedrummer/unslopnemo-12b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "TheDrummer: UnslopNemo 12B" - modelId: "thedrummer/unslopnemo-12b" - vendor: "Thedrummer" - vendorSlug: "thedrummer" - modelSlug: "unslopnemo-12b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2024-11-08T22:04:08.359Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/typesafe/jev-1.13.md b/model-api-reference/llm-models/typesafe/jev-1.13.md index a83dcc08..876bbf2b 100644 --- a/model-api-reference/llm-models/typesafe/jev-1.13.md +++ b/model-api-reference/llm-models/typesafe/jev-1.13.md @@ -4,7 +4,7 @@ description: "Jev 1.13 API reference for SandBase. Use model typesafe/jev-1.13 w aside: false outline: false apiReferenceKey: "llm/typesafe/jev-1.13" -apiReferenceJson: "{\"title\":\"Jev 1.13\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Jev 1.13 is TypeSafe's System One model for structured decisions from state and typed questions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to typesafe/jev-1.13.\",\"default\":\"typesafe/jev-1.13\"},{\"name\":\"questions\",\"type\":\"object\",\"required\":true,\"description\":\"Typed questions evaluated against state.\"},{\"name\":\"state\",\"type\":\"object\",\"required\":true,\"description\":\"State passed to the System One model. The upstream accepts the native TypeSafe state shape.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"decisions\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"32000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"typesafe/jev-1.13\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"typesafe/jev-1.13\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Jev 1.13\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Jev 1.13 is a version of Jev, TypeSafe AI's flagship and first public System One model, which makes structured decisions for software instead of generating text. Given a state and typed questions, it returns a chosen option, a rubric score or the probability that a statement is true, with confidence estimates that code can threshold. TypeSafe positions it for automated decision points that software can branch on, sort or route with, with complex judgments split into atomic questions combined in code.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to typesafe/jev-1.13.\",\"default\":\"typesafe/jev-1.13\"},{\"name\":\"questions\",\"type\":\"object\",\"required\":true,\"description\":\"Typed questions evaluated against state.\"},{\"name\":\"state\",\"type\":\"object\",\"required\":true,\"description\":\"State passed to the System One model. The upstream accepts the native TypeSafe state shape.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"decisions\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"32000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"typesafe/jev-1.13\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"typesafe/jev-1.13\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Jev 1.13" modelId: "typesafe/jev-1.13" diff --git a/model-api-reference/llm-models/undi95/remm-slerp-l2-13b.md b/model-api-reference/llm-models/undi95/remm-slerp-l2-13b.md deleted file mode 100644 index d8c639a7..00000000 --- a/model-api-reference/llm-models/undi95/remm-slerp-l2-13b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "ReMM SLERP 13B API Reference" -description: "ReMM SLERP 13B API reference for SandBase. Use model undi95/remm-slerp-l2-13b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/undi95/remm-slerp-l2-13b" -apiReferenceJson: "{\"title\":\"ReMM SLERP 13B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"A recreation trial of the original MythoMax-L2-B13 but with updated models. #merge\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to undi95/remm-slerp-l2-13b.\",\"default\":\"undi95/remm-slerp-l2-13b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 4096\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"6144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"undi95/remm-slerp-l2-13b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"undi95/remm-slerp-l2-13b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "ReMM SLERP 13B" - modelId: "undi95/remm-slerp-l2-13b" - vendor: "Undi95" - vendorSlug: "undi95" - modelSlug: "remm-slerp-l2-13b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2023-07-22T00:00:00Z" - capabilities: ["chat","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/upstage/solar-pro-3.md b/model-api-reference/llm-models/upstage/solar-pro-3.md deleted file mode 100644 index 630b5ab2..00000000 --- a/model-api-reference/llm-models/upstage/solar-pro-3.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Solar Pro 3 API Reference" -description: "Solar Pro 3 API reference for SandBase. Use model upstage/solar-pro-3 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/upstage/solar-pro-3" -apiReferenceJson: "{\"title\":\"Solar Pro 3\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Solar Pro 3 is Upstage's powerful Mixture-of-Experts (MoE) language model. With 102B total parameters and 12B active parameters per forward pass, it delivers exceptional performance while maintaining computational efficiency. Optimized for Korean with English and Japanese support.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to upstage/solar-pro-3.\",\"default\":\"upstage/solar-pro-3\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"upstage/solar-pro-3\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"upstage/solar-pro-3\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Solar Pro 3" - modelId: "upstage/solar-pro-3" - vendor: "Upstage" - vendorSlug: "upstage" - modelSlug: "solar-pro-3" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-01-27T02:33:20.601Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/upstage/solar-pro4.md b/model-api-reference/llm-models/upstage/solar-pro4.md deleted file mode 100644 index bf2436fe..00000000 --- a/model-api-reference/llm-models/upstage/solar-pro4.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Solar Pro 4 API Reference" -description: "Solar Pro 4 API reference for SandBase. Use model upstage/solar-pro4 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/upstage/solar-pro4" -apiReferenceJson: "{\"title\":\"Solar Pro 4\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Solar Pro 4 is Upstage's cost-efficient large language model, featuring a 524K context window. It is built for long-horizon tasks and agentic workflows, with strong capabilities in office productivity, document-intensive...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to upstage/solar-pro4.\",\"default\":\"upstage/solar-pro4\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"524288 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"upstage/solar-pro4\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"upstage/solar-pro4\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Solar Pro 4" - modelId: "upstage/solar-pro4" - vendor: "Upstage" - vendorSlug: "upstage" - modelSlug: "solar-pro4" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-08-10T14:20:36Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/writer/palmyra-x5.md b/model-api-reference/llm-models/writer/palmyra-x5.md deleted file mode 100644 index faede9a8..00000000 --- a/model-api-reference/llm-models/writer/palmyra-x5.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Palmyra X5 API Reference" -description: "Palmyra X5 API reference for SandBase. Use model writer/palmyra-x5 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/writer/palmyra-x5" -apiReferenceJson: "{\"title\":\"Palmyra X5\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Palmyra X5 is Writer's most advanced model, purpose-built for building and scaling AI agents across the enterprise. It delivers industry-leading speed and efficiency on context windows up to 1 million tokens, powered by a novel transformer architecture and hybrid attention mechanisms. This enables faster inference and expanded memory for processing large volumes of enterprise data, critical for scaling AI agents.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to writer/palmyra-x5.\",\"default\":\"writer/palmyra-x5\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 8192\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1040000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"writer/palmyra-x5\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"writer/palmyra-x5\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Palmyra X5" - modelId: "writer/palmyra-x5" - vendor: "Writer" - vendorSlug: "writer" - modelSlug: "palmyra-x5" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-01-21T13:57:03.149Z" - capabilities: ["chat"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/x-ai/grok-3-beta.md b/model-api-reference/llm-models/x-ai/grok-3-beta.md deleted file mode 100644 index 1c23cb0a..00000000 --- a/model-api-reference/llm-models/x-ai/grok-3-beta.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Grok 3 Beta API Reference" -description: "Grok 3 Beta API reference for SandBase. Use model x-ai/grok-3-beta with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/x-ai/grok-3-beta" -apiReferenceJson: "{\"title\":\"Grok 3 Beta\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Grok 3 is the available model from xAI. It's their flagship model that excels at enterprise use cases like data extraction, coding, and text summarization. Possesses deep domain knowledge in finance, healthcare, law, and science.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to x-ai/grok-3-beta.\",\"default\":\"x-ai/grok-3-beta\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"x-ai/grok-3-beta\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"x-ai/grok-3-beta\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Grok 3 Beta" - modelId: "x-ai/grok-3-beta" - vendor: "xAI" - vendorSlug: "x-ai" - modelSlug: "grok-3-beta" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-04-09T23:07:48.45Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/x-ai/grok-3-mini-beta.md b/model-api-reference/llm-models/x-ai/grok-3-mini-beta.md deleted file mode 100644 index a52a6580..00000000 --- a/model-api-reference/llm-models/x-ai/grok-3-mini-beta.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Grok 3 Mini Beta API Reference" -description: "Grok 3 Mini Beta API reference for SandBase. Use model x-ai/grok-3-mini-beta with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/x-ai/grok-3-mini-beta" -apiReferenceJson: "{\"title\":\"Grok 3 Mini Beta\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Grok 3 Mini is a lightweight, smaller thinking model. Unlike traditional models that generate answers immediately, Grok 3 Mini thinks before responding. It’s ideal for reasoning-heavy tasks that don’t demand extensive domain knowledge, and shines in math-specific and quantitative use cases, such as solving challenging puzzles or math problems.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to x-ai/grok-3-mini-beta.\",\"default\":\"x-ai/grok-3-mini-beta\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"x-ai/grok-3-mini-beta\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"x-ai/grok-3-mini-beta\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Grok 3 Mini Beta" - modelId: "x-ai/grok-3-mini-beta" - vendor: "xAI" - vendorSlug: "x-ai" - modelSlug: "grok-3-mini-beta" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-04-09T23:09:55.305Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/x-ai/grok-3-mini.md b/model-api-reference/llm-models/x-ai/grok-3-mini.md deleted file mode 100644 index 5e32a503..00000000 --- a/model-api-reference/llm-models/x-ai/grok-3-mini.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Grok 3 Mini API Reference" -description: "Grok 3 Mini API reference for SandBase. Use model x-ai/grok-3-mini with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/x-ai/grok-3-mini" -apiReferenceJson: "{\"title\":\"Grok 3 Mini\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"A lightweight model that thinks before responding. Fast, smart, and great for logic-based tasks that do not require deep domain knowledge. The raw thinking traces are accessible.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to x-ai/grok-3-mini.\",\"default\":\"x-ai/grok-3-mini\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"x-ai/grok-3-mini\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"x-ai/grok-3-mini\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Grok 3 Mini" - modelId: "x-ai/grok-3-mini" - vendor: "xAI" - vendorSlug: "x-ai" - modelSlug: "grok-3-mini" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-06-10T19:20:45.198Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/x-ai/grok-3.md b/model-api-reference/llm-models/x-ai/grok-3.md deleted file mode 100644 index 9989f9ba..00000000 --- a/model-api-reference/llm-models/x-ai/grok-3.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Grok 3 API Reference" -description: "Grok 3 API reference for SandBase. Use model x-ai/grok-3 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/x-ai/grok-3" -apiReferenceJson: "{\"title\":\"Grok 3\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Grok 3 is the available model from xAI. It's their flagship model that excels at enterprise use cases like data extraction, coding, and text summarization. Possesses deep domain knowledge in finance, healthcare, law, and science.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to x-ai/grok-3.\",\"default\":\"x-ai/grok-3\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"x-ai/grok-3\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"x-ai/grok-3\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Grok 3" - modelId: "x-ai/grok-3" - vendor: "xAI" - vendorSlug: "x-ai" - modelSlug: "grok-3" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-06-10T19:15:08.007Z" - capabilities: ["chat","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/x-ai/grok-4.20-multi-agent.md b/model-api-reference/llm-models/x-ai/grok-4.20-multi-agent.md deleted file mode 100644 index db781a1e..00000000 --- a/model-api-reference/llm-models/x-ai/grok-4.20-multi-agent.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Grok 4.20 Multi-Agent API Reference" -description: "Grok 4.20 Multi-Agent API reference for SandBase. Use model x-ai/grok-4.20-multi-agent with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/x-ai/grok-4.20-multi-agent" -apiReferenceJson: "{\"title\":\"Grok 4.20 Multi-Agent\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Grok 4.20 Multi-Agent is a variant of xAI’s Grok 4.20 designed for collaborative, agent-based workflows. Multiple agents operate in parallel to conduct deep research, coordinate tool use, and synthesize information across complex tasks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to x-ai/grok-4.20-multi-agent.\",\"default\":\"x-ai/grok-4.20-multi-agent\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 2000000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"2000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"x-ai/grok-4.20-multi-agent\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"x-ai/grok-4.20-multi-agent\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Grok 4.20 Multi-Agent" - modelId: "x-ai/grok-4.20-multi-agent" - vendor: "xAI" - vendorSlug: "x-ai" - modelSlug: "grok-4.20-multi-agent" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-03-31T17:45:58.343Z" - capabilities: ["chat","vision","reasoning","structured_output"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/x-ai/grok-4.20.md b/model-api-reference/llm-models/x-ai/grok-4.20.md deleted file mode 100644 index 583732d1..00000000 --- a/model-api-reference/llm-models/x-ai/grok-4.20.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Grok 4.20 API Reference" -description: "Grok 4.20 API reference for SandBase. Use model x-ai/grok-4.20 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/x-ai/grok-4.20" -apiReferenceJson: "{\"title\":\"Grok 4.20\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Grok 4.20 is a reasoning model from xAI with industry-leading speed and agentic tool calling capabilities. It combines the lowest hallucination rate on the market with strict prompt adherance, delivering consistently precise and truthful responses.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to x-ai/grok-4.20.\",\"default\":\"x-ai/grok-4.20\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 2000000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"2000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"x-ai/grok-4.20\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"x-ai/grok-4.20\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Grok 4.20" - modelId: "x-ai/grok-4.20" - vendor: "xAI" - vendorSlug: "x-ai" - modelSlug: "grok-4.20" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-03-31T17:43:39.677Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/x-ai/grok-4.3.md b/model-api-reference/llm-models/x-ai/grok-4.3.md index ca0eda7b..cd1f7eae 100644 --- a/model-api-reference/llm-models/x-ai/grok-4.3.md +++ b/model-api-reference/llm-models/x-ai/grok-4.3.md @@ -4,7 +4,7 @@ description: "Grok 4.3 API reference for SandBase. Use model x-ai/grok-4.3 with aside: false outline: false apiReferenceKey: "llm/x-ai/grok-4.3" -apiReferenceJson: "{\"title\":\"Grok 4.3\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Grok 4.3 is a reasoning model from xAI. It accepts text and image inputs with text output, and is suited for agentic workflows, instruction-following tasks, and applications requiring high factual accuracy. Reasoning can be configured between none/low/medium/high (default low) effort levels.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to x-ai/grok-4.3.\",\"default\":\"x-ai/grok-4.3\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 1000000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"x-ai/grok-4.3\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"x-ai/grok-4.3\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Grok 4.3\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Grok 4.3 is an xAI reasoning model that xAI describes as fast and reliable, with strong tool calling and instruction following. It accepts text and image input with text output, offers a 1M-token context window, and supports configurable reasoning effort that can be switched off or raised, defaulting to low. It suits agentic workflows, long-document analysis and high-volume instruction-following tasks, while Grok 4.5 through 4.7 later took over as xAI's flagship for coding.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to x-ai/grok-4.3.\",\"default\":\"x-ai/grok-4.3\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 1000000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1000000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"x-ai/grok-4.3\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"x-ai/grok-4.3\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Grok 4.3" modelId: "x-ai/grok-4.3" diff --git a/model-api-reference/llm-models/mistral/mistral-large-2407.md b/model-api-reference/llm-models/x-ai/grok-4.5.md similarity index 52% rename from model-api-reference/llm-models/mistral/mistral-large-2407.md rename to model-api-reference/llm-models/x-ai/grok-4.5.md index 544f693d..511efccc 100644 --- a/model-api-reference/llm-models/mistral/mistral-large-2407.md +++ b/model-api-reference/llm-models/x-ai/grok-4.5.md @@ -1,20 +1,20 @@ --- -title: "Mistral Large 2407 API Reference" -description: "Mistral Large 2407 API reference for SandBase. Use model mistral/mistral-large-2407 with /v1/chat/completions; see request and response examples." +title: "Grok 4.5 API Reference" +description: "Grok 4.5 API reference for SandBase. Use model x-ai/grok-4.5 with /v1/chat/completions; see request and response examples." aside: false outline: false -apiReferenceKey: "llm/mistral/mistral-large-2407" -apiReferenceJson: "{\"title\":\"Mistral Large 2407\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"This is Mistral AI's flagship model, Mistral Large 2 (version mistral-large-2407). It's a proprietary weights-available model and excels at reasoning, code, JSON, chat, and more. Read the launch announcement here....\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mistral/mistral-large-2407.\",\"default\":\"mistral/mistral-large-2407\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mistral/mistral-large-2407\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"mistral/mistral-large-2407\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceKey: "llm/x-ai/grok-4.5" +apiReferenceJson: "{\"title\":\"Grok 4.5\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Grok 4.5 is an xAI reasoning model for coding, agentic tasks and knowledge work, released on the xAI API in July 2026 and trained alongside Cursor. xAI emphasizes token-efficient reasoning on real engineering tasks, fast serving, and office work such as building Excel models, PowerPoint diagrams and Word documents. It accepts text and image input with configurable reasoning effort; Grok 4.6 and Grok 4.7 later succeeded it as xAI's flagship.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to x-ai/grok-4.5.\",\"default\":\"x-ai/grok-4.5\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 450000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"500000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"x-ai/grok-4.5\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"x-ai/grok-4.5\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: - modelName: "Mistral Large 2407" - modelId: "mistral/mistral-large-2407" - vendor: "Mistral" - vendorSlug: "mistral" - modelSlug: "mistral-large-2407" + modelName: "Grok 4.5" + modelId: "x-ai/grok-4.5" + vendor: "xAI" + vendorSlug: "x-ai" + modelSlug: "grok-4.5" protocol: "Chat Completions API" endpoint: "/v1/chat/completions" - publishedAt: "2024-11-19T01:06:55Z" - capabilities: ["chat","structured_output","function_calling"] + publishedAt: "2026-07-08T15:05:54Z" + capabilities: ["chat","vision","reasoning","structured_output","function_calling"] category: "LLM Models" --- diff --git a/model-api-reference/llm-models/x-ai/grok-4.6.md b/model-api-reference/llm-models/x-ai/grok-4.6.md index 518b3879..cb522757 100644 --- a/model-api-reference/llm-models/x-ai/grok-4.6.md +++ b/model-api-reference/llm-models/x-ai/grok-4.6.md @@ -4,7 +4,7 @@ description: "Grok 4.6 API reference for SandBase. Use model x-ai/grok-4.6 with aside: false outline: false apiReferenceKey: "llm/x-ai/grok-4.6" -apiReferenceJson: "{\"title\":\"Grok 4.6\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Grok 4.6 is xAI's frontier reasoning model for coding, knowledge work, and STEM. It accepts text, image, and file inputs and returns text.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to x-ai/grok-4.6.\",\"default\":\"x-ai/grok-4.6\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 500000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"500000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"x-ai/grok-4.6\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"x-ai/grok-4.6\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Grok 4.6\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Grok 4.6 is xAI's frontier reasoning model for coding, agentic tasks and knowledge work, released in August 2026 as the successor to Grok 4.5. xAI focused it on long-running agents and ambitious interactive and visual projects, such as turning a broad product idea into a working first version and refining it over several rounds. It accepts text and image input with text output and configurable reasoning effort; Grok 4.7 succeeded it in September 2026.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to x-ai/grok-4.6.\",\"default\":\"x-ai/grok-4.6\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 500000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"500000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"x-ai/grok-4.6\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"x-ai/grok-4.6\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Grok 4.6" modelId: "x-ai/grok-4.6" diff --git a/model-api-reference/llm-models/mistral/mistral-large-2411.md b/model-api-reference/llm-models/x-ai/grok-4.7.md similarity index 53% rename from model-api-reference/llm-models/mistral/mistral-large-2411.md rename to model-api-reference/llm-models/x-ai/grok-4.7.md index b037d903..c112a7d2 100644 --- a/model-api-reference/llm-models/mistral/mistral-large-2411.md +++ b/model-api-reference/llm-models/x-ai/grok-4.7.md @@ -1,20 +1,20 @@ --- -title: "Mistral Large 2411 API Reference" -description: "Mistral Large 2411 API reference for SandBase. Use model mistral/mistral-large-2411 with /v1/chat/completions; see request and response examples." +title: "Grok 4.7 API Reference" +description: "Grok 4.7 API reference for SandBase. Use model x-ai/grok-4.7 with /v1/chat/completions; see request and response examples." aside: false outline: false -apiReferenceKey: "llm/mistral/mistral-large-2411" -apiReferenceJson: "{\"title\":\"Mistral Large 2411\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Mistral Large 2 2411 is an update of Mistral Large 2 released together with Pixtral Large 2411 It provides a significant upgrade on the previous Mistral Large 24.07, with notable...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mistral/mistral-large-2411.\",\"default\":\"mistral/mistral-large-2411\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mistral/mistral-large-2411\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"mistral/mistral-large-2411\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceKey: "llm/x-ai/grok-4.7" +apiReferenceJson: "{\"title\":\"Grok 4.7\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Grok 4.7 is xAI's flagship reasoning model for coding, agentic tasks and knowledge work, released on the xAI API in September 2026 as the successor to Grok 4.6. xAI says it uses a larger base model and a longer reinforcement learning run weighted toward multi-hour problems, making it better at checking its own work, managing long context and producing documents and presentations. It accepts text and image input, returns text, and supports configurable reasoning effort.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to x-ai/grok-4.7.\",\"default\":\"x-ai/grok-4.7\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 450000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"500000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"x-ai/grok-4.7\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"x-ai/grok-4.7\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: - modelName: "Mistral Large 2411" - modelId: "mistral/mistral-large-2411" - vendor: "Mistral" - vendorSlug: "mistral" - modelSlug: "mistral-large-2411" + modelName: "Grok 4.7" + modelId: "x-ai/grok-4.7" + vendor: "xAI" + vendorSlug: "x-ai" + modelSlug: "grok-4.7" protocol: "Chat Completions API" endpoint: "/v1/chat/completions" - publishedAt: "2024-11-18T00:00:00Z" - capabilities: ["chat","structured_output","function_calling"] + publishedAt: "2026-09-21T16:19:01Z" + capabilities: ["chat","vision","reasoning","structured_output","function_calling"] category: "LLM Models" --- diff --git a/model-api-reference/llm-models/x-ai/grok-4.md b/model-api-reference/llm-models/x-ai/grok-4.md deleted file mode 100644 index efcbf55b..00000000 --- a/model-api-reference/llm-models/x-ai/grok-4.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Grok 4 API Reference" -description: "Grok 4 API reference for SandBase. Use model x-ai/grok-4 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/x-ai/grok-4" -apiReferenceJson: "{\"title\":\"Grok 4\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Grok 4 is xAI's available reasoning model with a 256k context window. It supports parallel tool calling, structured outputs, and both image and text inputs. Note that reasoning is not exposed, reasoning cannot be disabled, and the reasoning effort cannot be specified. Pricing increases once the total tokens in a given request is greater than 128k tokens. See more details on the xAI docs\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to x-ai/grok-4.\",\"default\":\"x-ai/grok-4\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 256000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"256000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"x-ai/grok-4\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"x-ai/grok-4\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Grok 4" - modelId: "x-ai/grok-4" - vendor: "xAI" - vendorSlug: "x-ai" - modelSlug: "grok-4" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-07-09T19:01:29.595Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/x-ai/grok-build-0.1.md b/model-api-reference/llm-models/x-ai/grok-build-0.1.md deleted file mode 100644 index a6d62f8a..00000000 --- a/model-api-reference/llm-models/x-ai/grok-build-0.1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Grok Build 0.1 API Reference" -description: "Grok Build 0.1 API reference for SandBase. Use model x-ai/grok-build-0.1 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/x-ai/grok-build-0.1" -apiReferenceJson: "{\"title\":\"Grok Build 0.1\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Grok Build 0.1 is xAI’s fast coding model trained specifically for agentic software engineering workflows. It supports text and image inputs with text output, and is optimized for interactive coding agents, tool use, and multi-step development tasks. The model powers xAI’s Grok Build CLI and features a 256K context window with no text output limit, making it well suited for long-horizon coding and automation workflows. Currently in early access.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to x-ai/grok-build-0.1.\",\"default\":\"x-ai/grok-build-0.1\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 256000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"256000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"x-ai/grok-build-0.1\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"x-ai/grok-build-0.1\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Grok Build 0.1" - modelId: "x-ai/grok-build-0.1" - vendor: "xAI" - vendorSlug: "x-ai" - modelSlug: "grok-build-0.1" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-05-20T17:28:43.274Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/x-ai/grok-code-fast-1.md b/model-api-reference/llm-models/x-ai/grok-code-fast-1.md deleted file mode 100644 index 95cbd7af..00000000 --- a/model-api-reference/llm-models/x-ai/grok-code-fast-1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Grok Code Fast 1 API Reference" -description: "Grok Code Fast 1 API reference for SandBase. Use model x-ai/grok-code-fast-1 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/x-ai/grok-code-fast-1" -apiReferenceJson: "{\"title\":\"Grok Code Fast 1\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Grok Code Fast 1 is a speedy and economical reasoning model that excels at agentic coding. With reasoning traces visible in the response, developers can steer Grok Code for high-quality work flows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to x-ai/grok-code-fast-1.\",\"default\":\"x-ai/grok-code-fast-1\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 10000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"256000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"x-ai/grok-code-fast-1\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"x-ai/grok-code-fast-1\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Grok Code Fast 1" - modelId: "x-ai/grok-code-fast-1" - vendor: "xAI" - vendorSlug: "x-ai" - modelSlug: "grok-code-fast-1" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-08-26T20:08:47Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/xiaomi/mimo-v2-omni.md b/model-api-reference/llm-models/xiaomi/mimo-v2-omni.md deleted file mode 100644 index 9807cef9..00000000 --- a/model-api-reference/llm-models/xiaomi/mimo-v2-omni.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiMo-V2-Omni API Reference" -description: "MiMo-V2-Omni API reference for SandBase. Use model xiaomi/mimo-v2-omni with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/xiaomi/mimo-v2-omni" -apiReferenceJson: "{\"title\":\"MiMo-V2-Omni\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"MiMo-V2-Omni is a frontier omni-modal model that natively processes image, video, and audio inputs within a unified architecture. It combines strong multimodal perception with agentic capability - visual grounding, multi-step planning, tool use, and code execution - making it well-suited for complex real-world tasks that span modalities, 256K context window.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xiaomi/mimo-v2-omni.\",\"default\":\"xiaomi/mimo-v2-omni\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65536\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"262144 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xiaomi/mimo-v2-omni\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"xiaomi/mimo-v2-omni\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "MiMo-V2-Omni" - modelId: "xiaomi/mimo-v2-omni" - vendor: "Xiaomi" - vendorSlug: "xiaomi" - modelSlug: "mimo-v2-omni" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-03-18T19:55:03.185Z" - capabilities: ["chat","vision","audio_input","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/xiaomi/mimo-v2-pro.md b/model-api-reference/llm-models/xiaomi/mimo-v2-pro.md deleted file mode 100644 index 4d5241b4..00000000 --- a/model-api-reference/llm-models/xiaomi/mimo-v2-pro.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiMo-V2-Pro API Reference" -description: "MiMo-V2-Pro API reference for SandBase. Use model xiaomi/mimo-v2-pro with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/xiaomi/mimo-v2-pro" -apiReferenceJson: "{\"title\":\"MiMo-V2-Pro\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"MiMo-V2-Pro is Xiaomi's flagship foundation model, featuring over 1T total parameters and a 1M context length, deeply optimized for agentic scenarios. It is highly adaptable to general agent frameworks like OpenClaw. It ranks among the global top tier in the standard PinchBench and ClawBench benchmarks, with perceived performance approaching that of Opus 4.6. MiMo-V2-Pro is designed to serve as the brain of agent systems, orchestrating complex workflows, driving production engineering tasks, and delivering results reliably.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xiaomi/mimo-v2-pro.\",\"default\":\"xiaomi/mimo-v2-pro\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xiaomi/mimo-v2-pro\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"xiaomi/mimo-v2-pro\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "MiMo-V2-Pro" - modelId: "xiaomi/mimo-v2-pro" - vendor: "Xiaomi" - vendorSlug: "xiaomi" - modelSlug: "mimo-v2-pro" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-03-18T19:54:03.793Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/xiaomi/mimo-v2.5-pro.md b/model-api-reference/llm-models/xiaomi/mimo-v2.5-pro.md deleted file mode 100644 index 14e823d9..00000000 --- a/model-api-reference/llm-models/xiaomi/mimo-v2.5-pro.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiMo-V2.5-Pro API Reference" -description: "MiMo-V2.5-Pro API reference for SandBase. Use model xiaomi/mimo-v2.5-pro with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/xiaomi/mimo-v2.5-pro" -apiReferenceJson: "{\"title\":\"MiMo-V2.5-Pro\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"MiMo-V2.5-Pro is Xiaomi’s flagship model, delivering strong performance in general agentic capabilities, complex software engineering, and long-horizon tasks, with top rankings on benchmarks such as ClawEval, GDPVal, and SWE-bench Pro. It can independently and autonomously complete professional tasks that would take human experts days or weeks, involving more than a thousand tool calls. Its context length of up to 1M makes it well suited for integration with a wide range of agent frameworks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xiaomi/mimo-v2.5-pro.\",\"default\":\"xiaomi/mimo-v2.5-pro\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xiaomi/mimo-v2.5-pro\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"xiaomi/mimo-v2.5-pro\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "MiMo-V2.5-Pro" - modelId: "xiaomi/mimo-v2.5-pro" - vendor: "Xiaomi" - vendorSlug: "xiaomi" - modelSlug: "mimo-v2.5-pro" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-04-22T16:11:13.016Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/xiaomi/mimo-v2.5.md b/model-api-reference/llm-models/xiaomi/mimo-v2.5.md deleted file mode 100644 index bb8de7ce..00000000 --- a/model-api-reference/llm-models/xiaomi/mimo-v2.5.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiMo-V2.5 API Reference" -description: "MiMo-V2.5 API reference for SandBase. Use model xiaomi/mimo-v2.5 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/xiaomi/mimo-v2.5" -apiReferenceJson: "{\"title\":\"MiMo-V2.5\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"MiMo-V2.5 is a native omnimodal model by Xiaomi. It delivers Pro-level agentic performance at roughly half the inference cost, while surpassing MiMo-V2-Omni in multimodal perception across image and video understanding tasks. Its 1M context window supports complete documents, extended conversations, and complex task contexts in a single pass, making it ideal for integration with agent frameworks where strong reasoning, rich perception, and cost efficiency all matter.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xiaomi/mimo-v2.5.\",\"default\":\"xiaomi/mimo-v2.5\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xiaomi/mimo-v2.5\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"xiaomi/mimo-v2.5\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "MiMo-V2.5" - modelId: "xiaomi/mimo-v2.5" - vendor: "Xiaomi" - vendorSlug: "xiaomi" - modelSlug: "mimo-v2.5" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-04-22T16:11:09.307Z" - capabilities: ["chat","vision","audio_input","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/xiaomi/mimo-v2.6-flash.md b/model-api-reference/llm-models/xiaomi/mimo-v2.6-flash.md new file mode 100644 index 00000000..4c010e24 --- /dev/null +++ b/model-api-reference/llm-models/xiaomi/mimo-v2.6-flash.md @@ -0,0 +1,21 @@ +--- +title: "MiMo-V2.6-Flash API Reference" +description: "MiMo-V2.6-Flash API reference for SandBase. Use model xiaomi/mimo-v2.6-flash with /v1/chat/completions; see request and response examples." +aside: false +outline: false +apiReferenceKey: "llm/xiaomi/mimo-v2.6-flash" +apiReferenceJson: "{\"title\":\"MiMo-V2.6-Flash\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"MiMo-V2.6-Flash is the efficiency tier of Xiaomi's open-source MiMo-V2.6 series, released in September 2026 as a natively omni-modal reasoning model that takes text, image, video and audio input and returns text. Xiaomi positions it as the balance of intelligence and efficiency for high-frequency calls and large-scale professional workflows, with a 1M-token context, tool calling and structured output. Xiaomi reports it surpasses MiMo-V2.5-Pro; choose MiMo-V2.6-Pro for the hardest tasks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xiaomi/mimo-v2.6-flash.\",\"default\":\"xiaomi/mimo-v2.6-flash\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xiaomi/mimo-v2.6-flash\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"xiaomi/mimo-v2.6-flash\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +seo: + modelName: "MiMo-V2.6-Flash" + modelId: "xiaomi/mimo-v2.6-flash" + vendor: "Xiaomi" + vendorSlug: "xiaomi" + modelSlug: "mimo-v2.6-flash" + protocol: "Chat Completions API" + endpoint: "/v1/chat/completions" + publishedAt: "2026-09-21T20:07:44Z" + capabilities: ["chat","vision","audio_input","reasoning","structured_output","function_calling"] + category: "LLM Models" +--- + + diff --git a/model-api-reference/llm-models/xiaomi/mimo-v2.6-pro.md b/model-api-reference/llm-models/xiaomi/mimo-v2.6-pro.md new file mode 100644 index 00000000..ff9513b3 --- /dev/null +++ b/model-api-reference/llm-models/xiaomi/mimo-v2.6-pro.md @@ -0,0 +1,21 @@ +--- +title: "MiMo-V2.6-Pro API Reference" +description: "MiMo-V2.6-Pro API reference for SandBase. Use model xiaomi/mimo-v2.6-pro with /v1/chat/completions; see request and response examples." +aside: false +outline: false +apiReferenceKey: "llm/xiaomi/mimo-v2.6-pro" +apiReferenceJson: "{\"title\":\"MiMo-V2.6-Pro\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"MiMo-V2.6-Pro is the flagship of Xiaomi's open-source MiMo-V2.6 series, a trillion-parameter, natively omni-modal reasoning model released in September 2026 that takes text, image, video and audio input. Xiaomi built it for complex projects, long-horizon agents, coding, office and design work, cybersecurity, computer operation and research, with a 1M-token context. Pick it over MiMo-V2.6-Flash when task difficulty matters more than speed and volume.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xiaomi/mimo-v2.6-pro.\",\"default\":\"xiaomi/mimo-v2.6-pro\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, audio_input, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1050000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xiaomi/mimo-v2.6-pro\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"xiaomi/mimo-v2.6-pro\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +seo: + modelName: "MiMo-V2.6-Pro" + modelId: "xiaomi/mimo-v2.6-pro" + vendor: "Xiaomi" + vendorSlug: "xiaomi" + modelSlug: "mimo-v2.6-pro" + protocol: "Chat Completions API" + endpoint: "/v1/chat/completions" + publishedAt: "2026-09-21T20:07:39Z" + capabilities: ["chat","vision","audio_input","reasoning","structured_output","function_calling"] + category: "LLM Models" +--- + + diff --git a/model-api-reference/llm-models/z-ai/glm-4-32b.md b/model-api-reference/llm-models/z-ai/glm-4-32b.md deleted file mode 100644 index 921a3a9c..00000000 --- a/model-api-reference/llm-models/z-ai/glm-4-32b.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Z.ai: GLM 4 32B API Reference" -description: "Z.ai: GLM 4 32B API reference for SandBase. Use model z-ai/glm-4-32b with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/z-ai/glm-4-32b" -apiReferenceJson: "{\"title\":\"Z.ai: GLM 4 32B\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"GLM 4 32B is a cost-effective foundation language model.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to z-ai/glm-4-32b.\",\"default\":\"z-ai/glm-4-32b\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 128000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"128000 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"z-ai/glm-4-32b\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"z-ai/glm-4-32b\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Z.ai: GLM 4 32B" - modelId: "z-ai/glm-4-32b" - vendor: "Z-Ai" - vendorSlug: "z-ai" - modelSlug: "glm-4-32b" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-07-24T17:03:37.099Z" - capabilities: ["chat","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/z-ai/glm-4.5-air.md b/model-api-reference/llm-models/z-ai/glm-4.5-air.md index 7e1c129d..a59bcb6a 100644 --- a/model-api-reference/llm-models/z-ai/glm-4.5-air.md +++ b/model-api-reference/llm-models/z-ai/glm-4.5-air.md @@ -4,7 +4,7 @@ description: "Z.ai: GLM 4.5 Air API reference for SandBase. Use model z-ai/glm-4 aside: false outline: false apiReferenceKey: "llm/z-ai/glm-4.5-air" -apiReferenceJson: "{\"title\":\"Z.ai: GLM 4.5 Air\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"GLM-4.5-Air is the lightweight variant of our current flagship model family, also purpose-built for agent-centric applications. Like GLM-4.5, it adopts the Mixture-of-Experts (MoE) architecture but with a more compact parameter size. GLM-4.5-Air also supports hybrid inference modes, offering a \\\"thinking mode\\\" for advanced reasoning and tool use, and a \\\"non-thinking mode\\\" for real-time interaction. Users can control the reasoning behaviour with the `reasoning` `enabled` boolean. Learn more in our docs\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to z-ai/glm-4.5-air.\",\"default\":\"z-ai/glm-4.5-air\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 98304\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"z-ai/glm-4.5-air\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"z-ai/glm-4.5-air\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Z.ai: GLM 4.5 Air\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"GLM-4.5-Air is the lightweight member of Z.ai's GLM-4.5 family, a mixture-of-experts model with 106B total and 12B active parameters built as a foundation model for agent-oriented applications. It offers hybrid reasoning, with a thinking mode for complex reasoning and tool use and a non-thinking mode for instant replies, and is tuned for tool calling, web browsing, software engineering and front-end development. Choose GLM-4.5 for more capacity.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to z-ai/glm-4.5-air.\",\"default\":\"z-ai/glm-4.5-air\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 98304\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"z-ai/glm-4.5-air\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"z-ai/glm-4.5-air\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Z.ai: GLM 4.5 Air" modelId: "z-ai/glm-4.5-air" diff --git a/model-api-reference/llm-models/z-ai/glm-4.5.md b/model-api-reference/llm-models/z-ai/glm-4.5.md deleted file mode 100644 index d15887de..00000000 --- a/model-api-reference/llm-models/z-ai/glm-4.5.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Z.ai: GLM 4.5 API Reference" -description: "Z.ai: GLM 4.5 API reference for SandBase. Use model z-ai/glm-4.5 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/z-ai/glm-4.5" -apiReferenceJson: "{\"title\":\"Z.ai: GLM 4.5\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"GLM-4.5 is our current flagship foundation model, purpose-built for agent-based applications. It leverages a Mixture-of-Experts (MoE) architecture and supports a context length of up to 128k tokens. GLM-4.5 delivers significantly enhanced capabilities in reasoning, code generation, and agent alignment. It supports a hybrid inference mode with two options, a \\\"thinking mode\\\" designed for complex reasoning and tool use, and a \\\"non-thinking mode\\\" optimized for instant responses. Users can control the reasoning behaviour with the `reasoning` `enabled` boolean. Learn more in our docs\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to z-ai/glm-4.5.\",\"default\":\"z-ai/glm-4.5\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 98304\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"z-ai/glm-4.5\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"z-ai/glm-4.5\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Z.ai: GLM 4.5" - modelId: "z-ai/glm-4.5" - vendor: "Z-Ai" - vendorSlug: "z-ai" - modelSlug: "glm-4.5" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-07-25T19:22:27.278Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/z-ai/glm-4.5v.md b/model-api-reference/llm-models/z-ai/glm-4.5v.md deleted file mode 100644 index b808cbcb..00000000 --- a/model-api-reference/llm-models/z-ai/glm-4.5v.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Z.ai: GLM 4.5V API Reference" -description: "Z.ai: GLM 4.5V API reference for SandBase. Use model z-ai/glm-4.5v with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/z-ai/glm-4.5v" -apiReferenceJson: "{\"title\":\"Z.ai: GLM 4.5V\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"GLM-4.5V is a vision-language foundation model for multimodal agent applications. Built on a Mixture-of-Experts (MoE) architecture with 106B parameters and 12B activated parameters, it achieves state-of-the-art results in video understanding, image Q&A, OCR, and document parsing, with strong gains in front-end web coding, grounding, and spatial reasoning. It offers a hybrid inference mode: a \\\"thinking mode\\\" for deep reasoning and a \\\"non-thinking mode\\\" for fast responses. Reasoning behavior can be toggled via the `reasoning` `enabled` boolean. Learn more in our docs\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to z-ai/glm-4.5v.\",\"default\":\"z-ai/glm-4.5v\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"65536 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"z-ai/glm-4.5v\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"z-ai/glm-4.5v\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Z.ai: GLM 4.5V" - modelId: "z-ai/glm-4.5v" - vendor: "Z-Ai" - vendorSlug: "z-ai" - modelSlug: "glm-4.5v" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-08-11T14:24:48.34Z" - capabilities: ["chat","vision","reasoning","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/z-ai/glm-4.6.md b/model-api-reference/llm-models/z-ai/glm-4.6.md deleted file mode 100644 index c844863c..00000000 --- a/model-api-reference/llm-models/z-ai/glm-4.6.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Z.ai: GLM 4.6 API Reference" -description: "Z.ai: GLM 4.6 API reference for SandBase. Use model z-ai/glm-4.6 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/z-ai/glm-4.6" -apiReferenceJson: "{\"title\":\"Z.ai: GLM 4.6\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"Compared with GLM-4.5, this generation brings several key improvements:\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to z-ai/glm-4.6.\",\"default\":\"z-ai/glm-4.6\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 204800\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"204800 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"z-ai/glm-4.6\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"z-ai/glm-4.6\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Z.ai: GLM 4.6" - modelId: "z-ai/glm-4.6" - vendor: "Z-Ai" - vendorSlug: "z-ai" - modelSlug: "glm-4.6" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-09-30T12:32:56.306Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/z-ai/glm-4.6v.md b/model-api-reference/llm-models/z-ai/glm-4.6v.md deleted file mode 100644 index fb7808b6..00000000 --- a/model-api-reference/llm-models/z-ai/glm-4.6v.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Z.ai: GLM 4.6V API Reference" -description: "Z.ai: GLM 4.6V API reference for SandBase. Use model z-ai/glm-4.6v with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/z-ai/glm-4.6v" -apiReferenceJson: "{\"title\":\"Z.ai: GLM 4.6V\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"GLM-4.6V is a large multimodal model designed for high-fidelity visual understanding and long-context reasoning across images, documents, and mixed media. It supports up to 128K tokens, processes complex page layouts and charts directly as visual inputs, and integrates native multimodal function calling to connect perception with downstream tool execution. The model also enables interleaved image-text generation and UI reconstruction workflows, including screenshot-to-HTML synthesis and iterative visual editing.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to z-ai/glm-4.6v.\",\"default\":\"z-ai/glm-4.6v\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 24000\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"131072 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"z-ai/glm-4.6v\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"z-ai/glm-4.6v\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Z.ai: GLM 4.6V" - modelId: "z-ai/glm-4.6v" - vendor: "Z-Ai" - vendorSlug: "z-ai" - modelSlug: "glm-4.6v" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-12-08T15:24:22.464Z" - capabilities: ["chat","vision","reasoning","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/z-ai/glm-4.7-flash.md b/model-api-reference/llm-models/z-ai/glm-4.7-flash.md deleted file mode 100644 index 2234fb7f..00000000 --- a/model-api-reference/llm-models/z-ai/glm-4.7-flash.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Z.ai: GLM 4.7 Flash API Reference" -description: "Z.ai: GLM 4.7 Flash API reference for SandBase. Use model z-ai/glm-4.7-flash with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/z-ai/glm-4.7-flash" -apiReferenceJson: "{\"title\":\"Z.ai: GLM 4.7 Flash\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"As a 30B-class SOTA model, GLM-4.7-Flash offers a new option that balances performance and efficiency. It is further optimized for agentic coding use cases, strengthening coding capabilities, long-horizon task planning, and tool collaboration, and has achieved leading performance among open-source models of the same size on several current public benchmark leaderboards.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to z-ai/glm-4.7-flash.\",\"default\":\"z-ai/glm-4.7-flash\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 16384\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"202752 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"z-ai/glm-4.7-flash\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"z-ai/glm-4.7-flash\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Z.ai: GLM 4.7 Flash" - modelId: "z-ai/glm-4.7-flash" - vendor: "Z-Ai" - vendorSlug: "z-ai" - modelSlug: "glm-4.7-flash" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-01-19T14:45:13.352Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/z-ai/glm-4.7.md b/model-api-reference/llm-models/z-ai/glm-4.7.md deleted file mode 100644 index a2e283ec..00000000 --- a/model-api-reference/llm-models/z-ai/glm-4.7.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Z.ai: GLM 4.7 API Reference" -description: "Z.ai: GLM 4.7 API reference for SandBase. Use model z-ai/glm-4.7 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/z-ai/glm-4.7" -apiReferenceJson: "{\"title\":\"Z.ai: GLM 4.7\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"GLM-4.7 is Z.ai’s current flagship model, featuring upgrades in two key areas: enhanced programming capabilities and more stable multi-step reasoning/execution. It demonstrates significant improvements in executing complex agent tasks while delivering more natural conversational experiences and superior front-end aesthetics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to z-ai/glm-4.7.\",\"default\":\"z-ai/glm-4.7\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"202752 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"z-ai/glm-4.7\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"z-ai/glm-4.7\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Z.ai: GLM 4.7" - modelId: "z-ai/glm-4.7" - vendor: "Z-Ai" - vendorSlug: "z-ai" - modelSlug: "glm-4.7" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2025-12-22T04:33:34.884Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/z-ai/glm-5-turbo.md b/model-api-reference/llm-models/z-ai/glm-5-turbo.md deleted file mode 100644 index df6d2490..00000000 --- a/model-api-reference/llm-models/z-ai/glm-5-turbo.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Z.ai: GLM 5 Turbo API Reference" -description: "Z.ai: GLM 5 Turbo API reference for SandBase. Use model z-ai/glm-5-turbo with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/z-ai/glm-5-turbo" -apiReferenceJson: "{\"title\":\"Z.ai: GLM 5 Turbo\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"GLM-5 Turbo is a new model from Z.ai designed for fast inference and strong performance in agent-driven environments such as OpenClaw scenarios. It is deeply optimized for real-world agent workflows involving long execution chains, with improved complex instruction decomposition, tool use, scheduled and persistent execution, and overall stability across extended tasks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to z-ai/glm-5-turbo.\",\"default\":\"z-ai/glm-5-turbo\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"202752 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"z-ai/glm-5-turbo\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"z-ai/glm-5-turbo\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Z.ai: GLM 5 Turbo" - modelId: "z-ai/glm-5-turbo" - vendor: "Z-Ai" - vendorSlug: "z-ai" - modelSlug: "glm-5-turbo" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-03-15T14:06:13.88Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/z-ai/glm-5.1.md b/model-api-reference/llm-models/z-ai/glm-5.1.md deleted file mode 100644 index eb99161d..00000000 --- a/model-api-reference/llm-models/z-ai/glm-5.1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Z.ai: GLM 5.1 API Reference" -description: "Z.ai: GLM 5.1 API reference for SandBase. Use model z-ai/glm-5.1 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/z-ai/glm-5.1" -apiReferenceJson: "{\"title\":\"Z.ai: GLM 5.1\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"GLM-5.1 delivers a major leap in coding capability, with particularly significant gains in handling long-horizon tasks. Unlike previous models built around minute-level interactions, GLM-5.1 can work independently and continuously on a single task for more than 8 hours, autonomously planning, executing, and improving itself throughout the process, ultimately delivering complete, engineering-grade results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to z-ai/glm-5.1.\",\"default\":\"z-ai/glm-5.1\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 65535\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"202752 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"z-ai/glm-5.1\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"z-ai/glm-5.1\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Z.ai: GLM 5.1" - modelId: "z-ai/glm-5.1" - vendor: "Z-Ai" - vendorSlug: "z-ai" - modelSlug: "glm-5.1" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-04-07T16:07:05.031Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/z-ai/glm-5.2.md b/model-api-reference/llm-models/z-ai/glm-5.2.md index ab837d26..06910aaa 100644 --- a/model-api-reference/llm-models/z-ai/glm-5.2.md +++ b/model-api-reference/llm-models/z-ai/glm-5.2.md @@ -4,7 +4,7 @@ description: "Z.ai: GLM 5.2 API reference for SandBase. Use model z-ai/glm-5.2 w aside: false outline: false apiReferenceKey: "llm/z-ai/glm-5.2" -apiReferenceJson: "{\"title\":\"Z.ai: GLM 5.2\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"GLM 5.2 is a large-scale reasoning model from Z.ai. It supports text input and output with a 1M-token context window, and is suited for long-horizon agent workflows, project-level software engineering,...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to z-ai/glm-5.2.\",\"default\":\"z-ai/glm-5.2\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"z-ai/glm-5.2\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"z-ai/glm-5.2\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Z.ai: GLM 5.2\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"GLM-5.2 is Z.ai's open-weight flagship text model released in June 2026 for long-horizon tasks, and the first GLM model to deliver that capability on a usable 1M-token context. Z.ai positions it for project-scale software engineering, deep debugging and full development workflows from requirements to deployable products, with steadier long-task execution and closer adherence to engineering standards. GLM-5.3 builds on the same base model with further post-training for coding.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to z-ai/glm-5.2.\",\"default\":\"z-ai/glm-5.2\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 32768\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"z-ai/glm-5.2\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"z-ai/glm-5.2\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Z.ai: GLM 5.2" modelId: "z-ai/glm-5.2" diff --git a/model-api-reference/llm-models/z-ai/glm-5.3-flash.md b/model-api-reference/llm-models/z-ai/glm-5.3-flash.md new file mode 100644 index 00000000..74673c75 --- /dev/null +++ b/model-api-reference/llm-models/z-ai/glm-5.3-flash.md @@ -0,0 +1,21 @@ +--- +title: "Z.ai: GLM 5.3 Flash API Reference" +description: "Z.ai: GLM 5.3 Flash API reference for SandBase. Use model z-ai/glm-5.3-flash with /v1/chat/completions; see request and response examples." +aside: false +outline: false +apiReferenceKey: "llm/z-ai/glm-5.3-flash" +apiReferenceJson: "{\"title\":\"Z.ai: GLM 5.3 Flash\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"GLM-5.3-Flash is the first native multimodal model in Z.ai's GLM-5 series, a 320B-parameter mixture-of-experts model with 18B active parameters that combines sparse and linear attention to cut long-context compute and KV cache. Vision is built into its coding loop, letting it inspect rendered interfaces and GUI feedback for frontend, game and computer-use work, and it also handles office documents and financial research. Z.ai reports it outperforms GLM-5.2; GLM-5.3-FlashX serves it at higher speed.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to z-ai/glm-5.3-flash.\",\"default\":\"z-ai/glm-5.3-flash\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"reasoning_effort\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"max\",\"constraints\":\"Allowed values: low, high, max\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"z-ai/glm-5.3-flash\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"z-ai/glm-5.3-flash\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +seo: + modelName: "Z.ai: GLM 5.3 Flash" + modelId: "z-ai/glm-5.3-flash" + vendor: "Z-Ai" + vendorSlug: "z-ai" + modelSlug: "glm-5.3-flash" + protocol: "Chat Completions API" + endpoint: "/v1/chat/completions" + publishedAt: "2026-08-26T13:59:01Z" + capabilities: ["chat","vision","reasoning","structured_output","function_calling"] + category: "LLM Models" +--- + + diff --git a/model-api-reference/llm-models/z-ai/glm-5.3-flashx.md b/model-api-reference/llm-models/z-ai/glm-5.3-flashx.md new file mode 100644 index 00000000..9278216f --- /dev/null +++ b/model-api-reference/llm-models/z-ai/glm-5.3-flashx.md @@ -0,0 +1,21 @@ +--- +title: "Z.ai: GLM 5.3 FlashX API Reference" +description: "Z.ai: GLM 5.3 FlashX API reference for SandBase. Use model z-ai/glm-5.3-flashx with /v1/chat/completions; see request and response examples." +aside: false +outline: false +apiReferenceKey: "llm/z-ai/glm-5.3-flashx" +apiReferenceJson: "{\"title\":\"Z.ai: GLM 5.3 FlashX\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"GLM-5.3-FlashX is the high-speed tier of Z.ai's GLM-5.3-Flash, documented together with Flash and delivering inference speeds of up to 200 tokens per second. It shares Flash's native multimodal design and hybrid sparse-plus-linear attention, with image, video and file input, always-on reasoning, tool calling and structured output. Pick it over standard Flash for latency-sensitive coding agents, GUI and browser tasks, and interactive chat.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to z-ai/glm-5.3-flashx.\",\"default\":\"z-ai/glm-5.3-flashx\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"reasoning_effort\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"max\",\"constraints\":\"Allowed values: low, high, max\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"z-ai/glm-5.3-flashx\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"z-ai/glm-5.3-flashx\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +seo: + modelName: "Z.ai: GLM 5.3 FlashX" + modelId: "z-ai/glm-5.3-flashx" + vendor: "Z-Ai" + vendorSlug: "z-ai" + modelSlug: "glm-5.3-flashx" + protocol: "Chat Completions API" + endpoint: "/v1/chat/completions" + publishedAt: "2026-09-18T15:07:00Z" + capabilities: ["chat","vision","reasoning","structured_output","function_calling"] + category: "LLM Models" +--- + + diff --git a/model-api-reference/llm-models/z-ai/glm-5.3.md b/model-api-reference/llm-models/z-ai/glm-5.3.md index 85d0bcd2..fdb41056 100644 --- a/model-api-reference/llm-models/z-ai/glm-5.3.md +++ b/model-api-reference/llm-models/z-ai/glm-5.3.md @@ -4,7 +4,7 @@ description: "Z.ai: GLM 5.3 API reference for SandBase. Use model z-ai/glm-5.3 w aside: false outline: false apiReferenceKey: "llm/z-ai/glm-5.3" -apiReferenceJson: "{\"title\":\"Z.ai: GLM 5.3\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"GLM-5.3 is a large-scale reasoning model from Z.ai, built for complex software engineering and long-horizon agent tasks. It supports text input and output with a 1M-token context window, and improves...\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to z-ai/glm-5.3.\",\"default\":\"z-ai/glm-5.3\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"z-ai/glm-5.3\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"z-ai/glm-5.3\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Z.ai: GLM 5.3\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"GLM-5.3 is Z.ai's flagship text model for complex software engineering and long-horizon agent work, built on the same base model as GLM-5.2 with all gains coming from expanded post-training. Z.ai highlights stronger agentic coding, terminal operation, and vulnerability discovery and exploitation analysis for security work. It always runs with reasoning enabled at selectable effort levels and accepts text only; choose GLM-5.3-Flash for image input or lighter, faster serving.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to z-ai/glm-5.3.\",\"default\":\"z-ai/glm-5.3\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"1048576 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"z-ai/glm-5.3\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"z-ai/glm-5.3\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" seo: modelName: "Z.ai: GLM 5.3" modelId: "z-ai/glm-5.3" diff --git a/model-api-reference/llm-models/z-ai/glm-5.5.md b/model-api-reference/llm-models/z-ai/glm-5.5.md new file mode 100644 index 00000000..a33c318a --- /dev/null +++ b/model-api-reference/llm-models/z-ai/glm-5.5.md @@ -0,0 +1,21 @@ +--- +title: "Z.ai: GLM 5.5 API Reference" +description: "Z.ai: GLM 5.5 API reference for SandBase. Use model z-ai/glm-5.5 with /v1/chat/completions; see request and response examples." +aside: false +outline: false +apiReferenceKey: "llm/z-ai/glm-5.5" +apiReferenceJson: "{\"title\":\"Z.ai: GLM 5.5\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"GLM 5.5 is listed on SandBase as an upcoming model in Z.ai's GLM series and is not yet available on SandBase. As of early October 2026, Z.ai has not officially announced GLM 5.5 or published its capabilities, specifications or release date. Specifications and pricing will be confirmed at launch, once Z.ai publishes official details.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to z-ai/glm-5.5.\",\"default\":\"z-ai/glm-5.5\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling, coming-soon\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"z-ai/glm-5.5\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"z-ai/glm-5.5\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" +seo: + modelName: "Z.ai: GLM 5.5" + modelId: "z-ai/glm-5.5" + vendor: "Z-Ai" + vendorSlug: "z-ai" + modelSlug: "glm-5.5" + protocol: "Chat Completions API" + endpoint: "/v1/chat/completions" + publishedAt: "" + capabilities: ["chat","reasoning","structured_output","function_calling","coming-soon"] + category: "LLM Models" +--- + + diff --git a/model-api-reference/llm-models/z-ai/glm-5.md b/model-api-reference/llm-models/z-ai/glm-5.md deleted file mode 100644 index 4b6a699e..00000000 --- a/model-api-reference/llm-models/z-ai/glm-5.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Z.ai: GLM 5 API Reference" -description: "Z.ai: GLM 5 API reference for SandBase. Use model z-ai/glm-5 with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/z-ai/glm-5" -apiReferenceJson: "{\"title\":\"Z.ai: GLM 5\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"GLM-5 is Z.ai’s flagship open-source foundation model engineered for complex systems design and long-horizon agent workflows. Built for expert developers, it delivers production-grade performance on large-scale programming tasks, rivaling leading closed-source models. With advanced agentic planning, deep backend reasoning, and iterative self-correction, GLM-5 moves beyond code generation to full-system construction and autonomous execution.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to z-ai/glm-5.\",\"default\":\"z-ai/glm-5\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 202752\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"},{\"name\":\"stop\",\"type\":\"array\",\"required\":false,\"description\":\"Sequences that stop generation when the model produces one of them.\"},{\"name\":\"presence_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes tokens that already appeared, encouraging the model to introduce new topics.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"frequency_penalty\",\"type\":\"number\",\"required\":false,\"description\":\"Penalizes repeated tokens, reducing repetition in the generated response.\",\"constraints\":\"Range: -2 to 2\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"top_k\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"202752 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"z-ai/glm-5\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"z-ai/glm-5\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Z.ai: GLM 5" - modelId: "z-ai/glm-5" - vendor: "Z-Ai" - vendorSlug: "z-ai" - modelSlug: "glm-5" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-02-11T16:59:42Z" - capabilities: ["chat","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/llm-models/z-ai/glm-5v-turbo.md b/model-api-reference/llm-models/z-ai/glm-5v-turbo.md deleted file mode 100644 index e605bf21..00000000 --- a/model-api-reference/llm-models/z-ai/glm-5v-turbo.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Z.ai: GLM 5V Turbo API Reference" -description: "Z.ai: GLM 5V Turbo API reference for SandBase. Use model z-ai/glm-5v-turbo with /v1/chat/completions; see request and response examples." -aside: false -outline: false -apiReferenceKey: "llm/z-ai/glm-5v-turbo" -apiReferenceJson: "{\"title\":\"Z.ai: GLM 5V Turbo\",\"operation\":\"Chat Completions\",\"method\":\"POST\",\"path\":\"/v1/chat/completions\",\"description\":\"GLM-5V-Turbo is Z.ai’s first native multimodal agent foundation model, built for vision-based coding and agent-driven tasks. It natively handles image, video, and text inputs, excels at long-horizon planning, complex coding, and task execution, and works seamlessly with agents to complete the full loop of “perceive → plan → execute“.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Parameters supported by this model. Values, defaults, and limits are read from the model registry.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to z-ai/glm-5v-turbo.\",\"default\":\"z-ai/glm-5v-turbo\"},{\"name\":\"messages\",\"type\":\"array\",\"required\":true,\"description\":\"Conversation messages in system, user, or assistant order.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens the model may generate in the response.\",\"constraints\":\"Maximum: 131072\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower values are more deterministic; higher values are more creative.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling threshold. Use this or temperature, but usually not both.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"stream\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, returns incremental Server-Sent Events instead of one completed response.\",\"default\":\"false\"},{\"name\":\"tools\",\"type\":\"array\",\"required\":false,\"description\":\"Tool definitions that the model may call during the response.\"},{\"name\":\"tool_choice\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the model may call a tool and, when supported, which tool it must call.\"},{\"name\":\"response_format\",\"type\":\"object\",\"required\":false,\"description\":\"Controls the response format, including JSON mode or structured JSON output when supported.\"}]},{\"title\":\"Response Schema\",\"description\":\"Fields returned by this model API response.\",\"fields\":[{\"name\":\"choices\",\"type\":\"array\",\"required\":true,\"description\":\"Generated completion choices.\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique chat completion identifier.\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model that generated the response.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Token usage when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"chat, vision, reasoning, structured_output, function_calling\"},{\"name\":\"context_length\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum context window accepted by this model.\",\"default\":\"202752 tokens\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/chat/completions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"z-ai/glm-5v-turbo\\\",\\n \\\"messages\\\": [\\n {\\n \\\"role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"Describe this product in one sentence.\\\"\\n }\\n ]\\n}'\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"chatcmpl_abc123\\\",\\n \\\"model\\\": \\\"z-ai/glm-5v-turbo\\\",\\n \\\"choices\\\": [\\n {\\n \\\"message\\\": {\\n \\\"role\\\": \\\"assistant\\\",\\n \\\"content\\\": \\\"A concise product description.\\\"\\n }\\n }\\n ]\\n}\"}}" -seo: - modelName: "Z.ai: GLM 5V Turbo" - modelId: "z-ai/glm-5v-turbo" - vendor: "Z-Ai" - vendorSlug: "z-ai" - modelSlug: "glm-5v-turbo" - protocol: "Chat Completions API" - endpoint: "/v1/chat/completions" - publishedAt: "2026-04-01T16:37:38.29Z" - capabilities: ["chat","vision","reasoning","structured_output","function_calling"] - category: "LLM Models" ---- - - diff --git a/model-api-reference/platform-apis/agentbody/document-parse.md b/model-api-reference/platform-apis/agentbody/document-parse.md index 01bd2969..997bed1d 100644 --- a/model-api-reference/platform-apis/agentbody/document-parse.md +++ b/model-api-reference/platform-apis/agentbody/document-parse.md @@ -1,13 +1,13 @@ --- -title: "Document Parse API Reference" -description: "SandBase API operation agentbody/document-parse." +title: "Agent Body Document Parser API Reference" +description: "Agent Body Document Parser API reference for SandBase. Use model agentbody/document-parse with /v1/api/agentbody/document-parse; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/agentbody/document-parse" -apiReferenceJson: "{\"title\":\"Document Parse\",\"operation\":\"Agent Body API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/agentbody/document-parse\",\"description\":\"Parse a document at an HTTPS URL into Markdown and structured content. Supports PDFs, Word documents, and other common formats. Returns page count, metadata, and full Markdown extraction.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"file_url\",\"type\":\"string\",\"required\":true,\"description\":\"The HTTPS URL of the document to parse.\"},{\"name\":\"file_name\",\"type\":\"string\",\"required\":true,\"description\":\"Original filename with extension (used for format detection).\"},{\"name\":\"analysis_chart\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to analyze charts in the document.\"},{\"name\":\"merge_tables\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to merge split tables across pages.\"},{\"name\":\"relevel_titles\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to re-level heading hierarchy.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"document-parsing, pdf, markdown\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/agentbody/document-parse \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"file_url\\\": \\\"https://example.com/resource\\\",\\n \\\"file_name\\\": \\\"file_name\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"file_url\\\": \\\"https://example.com/resource\\\",\\n \\\"file_name\\\": \\\"file_name\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/agentbody/document-parse\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"file_url\\\": \\\"https://example.com/resource\\\",\\n \\\"file_name\\\": \\\"file_name\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/agentbody/document-parse\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"agentbody/document-parse\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"agentbody/document-parse\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"agentbody/document-parse\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"agentbody/document-parse\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"agentbody/document-parse\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"agentbody/document-parse\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Agent Body Document Parser\",\"operation\":\"Agent Body API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/agentbody/document-parse\",\"description\":\"Returns parsed Markdown and structured content from an accessible document URL. Supports formatting adjustments such as table merging across pages, chart analysis, and heading re-leveling.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"file_url\",\"type\":\"string\",\"required\":true,\"description\":\"The HTTPS URL of the document to parse.\"},{\"name\":\"file_name\",\"type\":\"string\",\"required\":true,\"description\":\"Original filename with extension (used for format detection).\"},{\"name\":\"analysis_chart\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to analyze charts in the document.\"},{\"name\":\"merge_tables\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to merge split tables across pages.\"},{\"name\":\"relevel_titles\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to re-level heading hierarchy.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"document-parsing, pdf, markdown\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/agentbody/document-parse \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"file_url\\\": \\\"https://example.com/resource\\\",\\n \\\"file_name\\\": \\\"file_name\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"file_url\\\": \\\"https://example.com/resource\\\",\\n \\\"file_name\\\": \\\"file_name\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/agentbody/document-parse\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"file_url\\\": \\\"https://example.com/resource\\\",\\n \\\"file_name\\\": \\\"file_name\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/agentbody/document-parse\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"agentbody/document-parse\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"agentbody/document-parse\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"agentbody/document-parse\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"agentbody/document-parse\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"agentbody/document-parse\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"agentbody/document-parse\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Document Parse" + modelName: "Agent Body Document Parser" modelId: "agentbody/document-parse" vendor: "Agent Body" vendorSlug: "agentbody" diff --git a/model-api-reference/platform-apis/agentbody/humanize-writing.md b/model-api-reference/platform-apis/agentbody/humanize-writing.md deleted file mode 100644 index a246621f..00000000 --- a/model-api-reference/platform-apis/agentbody/humanize-writing.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Humanize Writing API Reference" -description: "SandBase API operation agentbody/humanize-writing." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/agentbody/humanize-writing" -apiReferenceJson: "{\"title\":\"Humanize Writing\",\"operation\":\"Agent Body API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/agentbody/humanize-writing\",\"description\":\"Rewrite AI-generated or mechanical text into more natural, human-sounding writing. Preserves meaning, facts, language, and intent while reducing AI tone markers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"text\",\"type\":\"string\",\"required\":true,\"description\":\"The source text to rewrite into more natural language.\"},{\"name\":\"mode\",\"type\":\"string\",\"required\":false,\"description\":\"Rewrite strength: light (minimal changes), balanced (default), or strong (more creative rewriting).\",\"constraints\":\"Allowed values: light, balanced, strong\"},{\"name\":\"language\",\"type\":\"string\",\"required\":false,\"description\":\"Target language code. If omitted, preserves the source language.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"text-rewriting, humanize, content\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/agentbody/humanize-writing \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"text\\\": \\\"text\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"text\\\": \\\"text\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/agentbody/humanize-writing\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"text\\\": \\\"text\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/agentbody/humanize-writing\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"agentbody/humanize-writing\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"agentbody/humanize-writing\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"agentbody/humanize-writing\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"agentbody/humanize-writing\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"agentbody/humanize-writing\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"agentbody/humanize-writing\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Humanize Writing" - modelId: "agentbody/humanize-writing" - vendor: "Agent Body" - vendorSlug: "agentbody" - modelSlug: "humanize-writing" - protocol: "API Reference" - endpoint: "/v1/api/agentbody/humanize-writing" - publishedAt: "2025-01-01T00:00:00Z" - capabilities: ["text-rewriting","humanize","content"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/agentbody/linkedin-email.md b/model-api-reference/platform-apis/agentbody/linkedin-email.md index b7a90c1f..fad8978c 100644 --- a/model-api-reference/platform-apis/agentbody/linkedin-email.md +++ b/model-api-reference/platform-apis/agentbody/linkedin-email.md @@ -1,13 +1,13 @@ --- -title: "LinkedIn Email API Reference" -description: "SandBase API operation agentbody/linkedin-email." +title: "Agent Body LinkedIn Email API Reference" +description: "Agent Body LinkedIn Email API reference for SandBase. Use model agentbody/linkedin-email with /v1/api/agentbody/linkedin-email; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/agentbody/linkedin-email" -apiReferenceJson: "{\"title\":\"LinkedIn Email\",\"operation\":\"Agent Body API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/agentbody/linkedin-email\",\"description\":\"Look up public business email data associated with a LinkedIn profile. Returns verified public email addresses for professional outreach.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"profile_url\",\"type\":\"string\",\"required\":true,\"description\":\"The LinkedIn profile URL to find email for.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"people-data, linkedin, email\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/agentbody/linkedin-email \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"profile_url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"profile_url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/agentbody/linkedin-email\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"profile_url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/agentbody/linkedin-email\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"agentbody/linkedin-email\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"agentbody/linkedin-email\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"agentbody/linkedin-email\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"agentbody/linkedin-email\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"agentbody/linkedin-email\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"agentbody/linkedin-email\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Agent Body LinkedIn Email\",\"operation\":\"Agent Body API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/agentbody/linkedin-email\",\"description\":\"Returns public business email data associated with a LinkedIn profile. Looks up professional contact information using a target profile URL.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"profile_url\",\"type\":\"string\",\"required\":true,\"description\":\"The LinkedIn profile URL to find email for.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"people-data, linkedin, email\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/agentbody/linkedin-email \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"profile_url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"profile_url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/agentbody/linkedin-email\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"profile_url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/agentbody/linkedin-email\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"agentbody/linkedin-email\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"agentbody/linkedin-email\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"agentbody/linkedin-email\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"agentbody/linkedin-email\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"agentbody/linkedin-email\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"agentbody/linkedin-email\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "LinkedIn Email" + modelName: "Agent Body LinkedIn Email" modelId: "agentbody/linkedin-email" vendor: "Agent Body" vendorSlug: "agentbody" diff --git a/model-api-reference/platform-apis/agentbody/linkedin-phone.md b/model-api-reference/platform-apis/agentbody/linkedin-phone.md index 6534f5c8..9fe069b6 100644 --- a/model-api-reference/platform-apis/agentbody/linkedin-phone.md +++ b/model-api-reference/platform-apis/agentbody/linkedin-phone.md @@ -1,13 +1,13 @@ --- -title: "LinkedIn Phone API Reference" -description: "SandBase API operation agentbody/linkedin-phone." +title: "Agent Body LinkedIn Phone Lookup API Reference" +description: "Agent Body LinkedIn Phone Lookup API reference for SandBase. Use model agentbody/linkedin-phone with /v1/api/agentbody/linkedin-phone; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/agentbody/linkedin-phone" -apiReferenceJson: "{\"title\":\"LinkedIn Phone\",\"operation\":\"Agent Body API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/agentbody/linkedin-phone\",\"description\":\"Look up public business phone data associated with a LinkedIn profile. Returns verified public phone numbers for professional contact.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"profile_url\",\"type\":\"string\",\"required\":true,\"description\":\"The LinkedIn profile URL to find phone number for.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"people-data, linkedin, phone\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/agentbody/linkedin-phone \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"profile_url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"profile_url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/agentbody/linkedin-phone\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"profile_url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/agentbody/linkedin-phone\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"agentbody/linkedin-phone\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"agentbody/linkedin-phone\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"agentbody/linkedin-phone\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"agentbody/linkedin-phone\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"agentbody/linkedin-phone\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"agentbody/linkedin-phone\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Agent Body LinkedIn Phone Lookup\",\"operation\":\"Agent Body API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/agentbody/linkedin-phone\",\"description\":\"Look up public business phone records associated with a specific LinkedIn profile URL. Retrieve telephone contact information for professional outreach.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"profile_url\",\"type\":\"string\",\"required\":true,\"description\":\"The LinkedIn profile URL to find phone number for.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"people-data, linkedin, phone\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/agentbody/linkedin-phone \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"profile_url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"profile_url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/agentbody/linkedin-phone\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"profile_url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/agentbody/linkedin-phone\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"agentbody/linkedin-phone\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"agentbody/linkedin-phone\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"agentbody/linkedin-phone\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"agentbody/linkedin-phone\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"agentbody/linkedin-phone\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"agentbody/linkedin-phone\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "LinkedIn Phone" + modelName: "Agent Body LinkedIn Phone Lookup" modelId: "agentbody/linkedin-phone" vendor: "Agent Body" vendorSlug: "agentbody" diff --git a/model-api-reference/platform-apis/agentbody/linkedin-profile.md b/model-api-reference/platform-apis/agentbody/linkedin-profile.md index 18eb276d..06f4f66a 100644 --- a/model-api-reference/platform-apis/agentbody/linkedin-profile.md +++ b/model-api-reference/platform-apis/agentbody/linkedin-profile.md @@ -1,13 +1,13 @@ --- -title: "LinkedIn Profile API Reference" -description: "SandBase API operation agentbody/linkedin-profile." +title: "Agent Body LinkedIn Profile Lookup API Reference" +description: "SandBase API reference for model agentbody/linkedin-profile. Call /v1/api/agentbody/linkedin-profile; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/agentbody/linkedin-profile" -apiReferenceJson: "{\"title\":\"LinkedIn Profile\",\"operation\":\"Agent Body API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/agentbody/linkedin-profile\",\"description\":\"Retrieve a professional profile from LinkedIn by profile URL. Returns structured profile data including experience, education, skills, and public information.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"profile_url\",\"type\":\"string\",\"required\":true,\"description\":\"The LinkedIn profile URL to look up.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"people-data, linkedin, profile\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/agentbody/linkedin-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"profile_url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"profile_url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/agentbody/linkedin-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"profile_url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/agentbody/linkedin-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"agentbody/linkedin-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"agentbody/linkedin-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"agentbody/linkedin-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"agentbody/linkedin-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"agentbody/linkedin-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"agentbody/linkedin-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Agent Body LinkedIn Profile Lookup\",\"operation\":\"Agent Body API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/agentbody/linkedin-profile\",\"description\":\"Returns professional profile details from LinkedIn for a specified profile URL. Look up publicly available career information directly by profile link.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"profile_url\",\"type\":\"string\",\"required\":true,\"description\":\"The LinkedIn profile URL to look up.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"people-data, linkedin, profile\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/agentbody/linkedin-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"profile_url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"profile_url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/agentbody/linkedin-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"profile_url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/agentbody/linkedin-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"agentbody/linkedin-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"agentbody/linkedin-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"agentbody/linkedin-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"agentbody/linkedin-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"agentbody/linkedin-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"agentbody/linkedin-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "LinkedIn Profile" + modelName: "Agent Body LinkedIn Profile Lookup" modelId: "agentbody/linkedin-profile" vendor: "Agent Body" vendorSlug: "agentbody" diff --git a/model-api-reference/platform-apis/agentbody/tiktok-transcribe.md b/model-api-reference/platform-apis/agentbody/tiktok-transcribe.md deleted file mode 100644 index 7432abfd..00000000 --- a/model-api-reference/platform-apis/agentbody/tiktok-transcribe.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "TikTok Transcribe API Reference" -description: "SandBase API operation agentbody/tiktok-transcribe." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/agentbody/tiktok-transcribe" -apiReferenceJson: "{\"title\":\"TikTok Transcribe\",\"operation\":\"Agent Body API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/agentbody/tiktok-transcribe\",\"description\":\"Transcribe TikTok video audio into text and timed segments. Use when existing captions are unavailable and explicit audio transcription is needed. Limited to 10-minute videos.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"The TikTok video URL to transcribe audio from.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"transcript, tiktok, audio-transcription\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/agentbody/tiktok-transcribe \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/agentbody/tiktok-transcribe\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/agentbody/tiktok-transcribe\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"agentbody/tiktok-transcribe\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"agentbody/tiktok-transcribe\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"agentbody/tiktok-transcribe\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"agentbody/tiktok-transcribe\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"agentbody/tiktok-transcribe\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"agentbody/tiktok-transcribe\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "TikTok Transcribe" - modelId: "agentbody/tiktok-transcribe" - vendor: "Agent Body" - vendorSlug: "agentbody" - modelSlug: "tiktok-transcribe" - protocol: "API Reference" - endpoint: "/v1/api/agentbody/tiktok-transcribe" - publishedAt: "2025-01-01T00:00:00Z" - capabilities: ["transcript","tiktok","audio-transcription"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/agentbody/tiktok-transcript.md b/model-api-reference/platform-apis/agentbody/tiktok-transcript.md deleted file mode 100644 index 43d600d1..00000000 --- a/model-api-reference/platform-apis/agentbody/tiktok-transcript.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "TikTok Transcript API Reference" -description: "SandBase API operation agentbody/tiktok-transcript." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/agentbody/tiktok-transcript" -apiReferenceJson: "{\"title\":\"TikTok Transcript\",\"operation\":\"Agent Body API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/agentbody/tiktok-transcript\",\"description\":\"Extract existing captions from a TikTok video. Returns full text and timed segments with language detection.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"The TikTok video URL to extract captions from.\"},{\"name\":\"language\",\"type\":\"string\",\"required\":false,\"description\":\"Requested caption language code. If omitted, returns the default track.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"transcript, tiktok, subtitles\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/agentbody/tiktok-transcript \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/agentbody/tiktok-transcript\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/agentbody/tiktok-transcript\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"agentbody/tiktok-transcript\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"agentbody/tiktok-transcript\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"agentbody/tiktok-transcript\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"agentbody/tiktok-transcript\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"agentbody/tiktok-transcript\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"agentbody/tiktok-transcript\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "TikTok Transcript" - modelId: "agentbody/tiktok-transcript" - vendor: "Agent Body" - vendorSlug: "agentbody" - modelSlug: "tiktok-transcript" - protocol: "API Reference" - endpoint: "/v1/api/agentbody/tiktok-transcript" - publishedAt: "2025-01-01T00:00:00Z" - capabilities: ["transcript","tiktok","subtitles"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/agentbody/youtube-channel-email.md b/model-api-reference/platform-apis/agentbody/youtube-channel-email.md index 73ec9628..4061af0d 100644 --- a/model-api-reference/platform-apis/agentbody/youtube-channel-email.md +++ b/model-api-reference/platform-apis/agentbody/youtube-channel-email.md @@ -1,13 +1,13 @@ --- -title: "YouTube Channel Email API Reference" -description: "SandBase API operation agentbody/youtube-channel-email." +title: "Agent Body YouTube Channel Email API Reference" +description: "SandBase API reference for model agentbody/youtube-channel-email. Call /v1/api/agentbody/youtube-channel-email; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/agentbody/youtube-channel-email" -apiReferenceJson: "{\"title\":\"YouTube Channel Email\",\"operation\":\"Agent Body API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/agentbody/youtube-channel-email\",\"description\":\"Find public business email for a YouTube channel. Retrieves publicly listed contact email from channel pages for creator outreach.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel\",\"type\":\"string\",\"required\":true,\"description\":\"YouTube channel URL or handle.\"},{\"name\":\"scrape_fresh_email\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to force a fresh scrape instead of using cached data.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"people-data, youtube, email\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/agentbody/youtube-channel-email \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"channel\\\": \\\"channel\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"channel\\\": \\\"channel\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/agentbody/youtube-channel-email\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"channel\\\": \\\"channel\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/agentbody/youtube-channel-email\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"agentbody/youtube-channel-email\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"agentbody/youtube-channel-email\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"agentbody/youtube-channel-email\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"agentbody/youtube-channel-email\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"agentbody/youtube-channel-email\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"agentbody/youtube-channel-email\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Agent Body YouTube Channel Email\",\"operation\":\"Agent Body API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/agentbody/youtube-channel-email\",\"description\":\"Returns the publicly listed business contact email for a specified YouTube channel. Takes a channel URL or handle and supports requesting fresh data over cached results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel\",\"type\":\"string\",\"required\":true,\"description\":\"YouTube channel URL or handle.\"},{\"name\":\"scrape_fresh_email\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to force a fresh scrape instead of using cached data.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"people-data, youtube, email\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/agentbody/youtube-channel-email \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"channel\\\": \\\"channel\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"channel\\\": \\\"channel\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/agentbody/youtube-channel-email\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"channel\\\": \\\"channel\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/agentbody/youtube-channel-email\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"agentbody/youtube-channel-email\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"agentbody/youtube-channel-email\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"agentbody/youtube-channel-email\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"agentbody/youtube-channel-email\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"agentbody/youtube-channel-email\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"agentbody/youtube-channel-email\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "YouTube Channel Email" + modelName: "Agent Body YouTube Channel Email" modelId: "agentbody/youtube-channel-email" vendor: "Agent Body" vendorSlug: "agentbody" diff --git a/model-api-reference/platform-apis/agentbody/youtube-transcript.md b/model-api-reference/platform-apis/agentbody/youtube-transcript.md index e7150c9e..959d050c 100644 --- a/model-api-reference/platform-apis/agentbody/youtube-transcript.md +++ b/model-api-reference/platform-apis/agentbody/youtube-transcript.md @@ -1,13 +1,13 @@ --- -title: "YouTube Transcript API Reference" -description: "SandBase API operation agentbody/youtube-transcript." +title: "Agent Body YouTube Transcript API Reference" +description: "SandBase API reference for model agentbody/youtube-transcript. Call /v1/api/agentbody/youtube-transcript; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/agentbody/youtube-transcript" -apiReferenceJson: "{\"title\":\"YouTube Transcript\",\"operation\":\"Agent Body API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/agentbody/youtube-transcript\",\"description\":\"Extract text and timed segments from an existing YouTube manual or automatic subtitle track. Supports language selection for multilingual videos.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"The YouTube video URL to extract subtitles from.\"},{\"name\":\"language\",\"type\":\"string\",\"required\":false,\"description\":\"Requested subtitle language code (e.g. en, zh, ja). If omitted, returns the default track.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"transcript, youtube, subtitles\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/agentbody/youtube-transcript \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/agentbody/youtube-transcript\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/agentbody/youtube-transcript\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"agentbody/youtube-transcript\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"agentbody/youtube-transcript\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"agentbody/youtube-transcript\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"agentbody/youtube-transcript\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"agentbody/youtube-transcript\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"agentbody/youtube-transcript\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Agent Body YouTube Transcript\",\"operation\":\"Agent Body API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/agentbody/youtube-transcript\",\"description\":\"Extracts text and timed segments from YouTube manual or automatic subtitle tracks. Allows language selection for multilingual videos.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"The YouTube video URL to extract subtitles from.\"},{\"name\":\"language\",\"type\":\"string\",\"required\":false,\"description\":\"Requested subtitle language code (e.g. en, zh, ja). If omitted, returns the default track.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"transcript, youtube, subtitles\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/agentbody/youtube-transcript \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/agentbody/youtube-transcript\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/agentbody/youtube-transcript\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"agentbody/youtube-transcript\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"agentbody/youtube-transcript\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"agentbody/youtube-transcript\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"agentbody/youtube-transcript\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"agentbody/youtube-transcript\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"agentbody/youtube-transcript\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "YouTube Transcript" + modelName: "Agent Body YouTube Transcript" modelId: "agentbody/youtube-transcript" vendor: "Agent Body" vendorSlug: "agentbody" diff --git a/model-api-reference/platform-apis/bilibili/app/bangumi-tab.md b/model-api-reference/platform-apis/bilibili/app/bangumi-tab.md index b9098a82..b40e3db7 100644 --- a/model-api-reference/platform-apis/bilibili/app/bangumi-tab.md +++ b/model-api-reference/platform-apis/bilibili/app/bangumi-tab.md @@ -1,13 +1,13 @@ --- -title: "Get bangumi tab API Reference" -description: "SandBase API operation bilibili/app/bangumi-tab." +title: "Bilibili App Bangumi Tab API Reference" +description: "Bilibili App Bangumi Tab API reference for SandBase. Use model bilibili/app/bangumi-tab with /v1/api/bilibili/app/bangumi-tab; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/app/bangumi-tab" -apiReferenceJson: "{\"title\":\"Get bangumi tab\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/app/bangumi-tab\",\"description\":\"Get bangumi tab (anime recommendations)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/app/bangumi-tab \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bilibili/app/bangumi-tab\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"bilibili/app/bangumi-tab\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/app/bangumi-tab\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"bilibili/app/bangumi-tab\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/app/bangumi-tab\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/app/bangumi-tab\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/app/bangumi-tab\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/app/bangumi-tab\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/app/bangumi-tab\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/app/bangumi-tab\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/app/bangumi-tab\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili App Bangumi Tab\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/app/bangumi-tab\",\"description\":\"Returns Bilibili app bangumi tab data, providing curated anime recommendations, feed items, and category listings for mobile clients.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/app/bangumi-tab \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/app/bangumi-tab\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/app/bangumi-tab\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/app/bangumi-tab\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/app/bangumi-tab\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/app/bangumi-tab\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/app/bangumi-tab\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/app/bangumi-tab\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/app/bangumi-tab\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get bangumi tab" + modelName: "Bilibili App Bangumi Tab" modelId: "bilibili/app/bangumi-tab" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/app/cinema-tab.md b/model-api-reference/platform-apis/bilibili/app/cinema-tab.md index c5fcb542..8035074e 100644 --- a/model-api-reference/platform-apis/bilibili/app/cinema-tab.md +++ b/model-api-reference/platform-apis/bilibili/app/cinema-tab.md @@ -1,13 +1,13 @@ --- -title: "Get cinema tab API Reference" -description: "SandBase API operation bilibili/app/cinema-tab." +title: "Bilibili App Cinema Tab API Reference" +description: "Bilibili App Cinema Tab API reference for SandBase. Use model bilibili/app/cinema-tab with /v1/api/bilibili/app/cinema-tab; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/app/cinema-tab" -apiReferenceJson: "{\"title\":\"Get cinema tab\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/app/cinema-tab\",\"description\":\"Get cinema tab (movies/TV recommendations)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/app/cinema-tab \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bilibili/app/cinema-tab\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"bilibili/app/cinema-tab\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/app/cinema-tab\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"bilibili/app/cinema-tab\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/app/cinema-tab\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/app/cinema-tab\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/app/cinema-tab\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/app/cinema-tab\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/app/cinema-tab\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/app/cinema-tab\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/app/cinema-tab\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili App Cinema Tab\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/app/cinema-tab\",\"description\":\"Returns cinema tab content from the Bilibili app, featuring curated movies, TV shows, and entertainment recommendations without requiring additional query parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/app/cinema-tab \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/app/cinema-tab\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/app/cinema-tab\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/app/cinema-tab\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/app/cinema-tab\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/app/cinema-tab\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/app/cinema-tab\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/app/cinema-tab\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/app/cinema-tab\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get cinema tab" + modelName: "Bilibili App Cinema Tab" modelId: "bilibili/app/cinema-tab" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/app/home-feed.md b/model-api-reference/platform-apis/bilibili/app/home-feed.md index 79116660..1908e5a2 100644 --- a/model-api-reference/platform-apis/bilibili/app/home-feed.md +++ b/model-api-reference/platform-apis/bilibili/app/home-feed.md @@ -1,13 +1,13 @@ --- -title: "Get home feed API Reference — Bilibili App / Home Feed API" -description: "SandBase API operation bilibili/app/home-feed." +title: "Bilibili App Home Feed API Reference" +description: "Bilibili App Home Feed API reference for SandBase. Use model bilibili/app/home-feed with /v1/api/bilibili/app/home-feed; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/app/home-feed" -apiReferenceJson: "{\"title\":\"Get home feed\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/app/home-feed\",\"description\":\"Get home feed (recommended videos)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"flush\",\"type\":\"integer\",\"required\":false,\"description\":\"Flush flag (0=normal load, 1=refresh)\",\"default\":\"0\"},{\"name\":\"idx\",\"type\":\"integer\",\"required\":false,\"description\":\"Page index, defaults to current timestamp\"},{\"name\":\"pull\",\"type\":\"boolean\",\"required\":false,\"description\":\"Pull to refresh\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/app/home-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bilibili/app/home-feed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"bilibili/app/home-feed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/app/home-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"bilibili/app/home-feed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/app/home-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/app/home-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/app/home-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/app/home-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/app/home-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/app/home-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/app/home-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili App Home Feed\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/app/home-feed\",\"description\":\"Returns recommended video items from the Bilibili app home feed. Supports pagination via timestamp index and pull-to-refresh controls.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"flush\",\"type\":\"integer\",\"required\":false,\"description\":\"Flush flag (0=normal load, 1=refresh)\",\"default\":\"0\"},{\"name\":\"idx\",\"type\":\"integer\",\"required\":false,\"description\":\"Page index, defaults to current timestamp\"},{\"name\":\"pull\",\"type\":\"boolean\",\"required\":false,\"description\":\"Pull to refresh\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/app/home-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/app/home-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/app/home-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/app/home-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/app/home-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/app/home-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/app/home-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/app/home-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/app/home-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get home feed" + modelName: "Bilibili App Home Feed" modelId: "bilibili/app/home-feed" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/app/one-video.md b/model-api-reference/platform-apis/bilibili/app/one-video.md index cd1b5acc..61c1d9ef 100644 --- a/model-api-reference/platform-apis/bilibili/app/one-video.md +++ b/model-api-reference/platform-apis/bilibili/app/one-video.md @@ -1,13 +1,13 @@ --- -title: "Get single video data API Reference — Bilibili App / One Video" -description: "SandBase API operation bilibili/app/one-video." +title: "Bilibili App Single Video Details API Reference" +description: "Bilibili App Single Video Details API reference for SandBase. Use model bilibili/app/one-video with /v1/api/bilibili/app/one-video; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/app/one-video" -apiReferenceJson: "{\"title\":\"Get single video data\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/app/one-video\",\"description\":\"Get single video data (APP API)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"av_id\",\"type\":\"string\",\"required\":false,\"description\":\"AV ID (choose one of av_id or bv_id)\"},{\"name\":\"bv_id\",\"type\":\"string\",\"required\":false,\"description\":\"BV ID (choose one of av_id or bv_id)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/app/one-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bilibili/app/one-video\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"bilibili/app/one-video\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/app/one-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"bilibili/app/one-video\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/app/one-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/app/one-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/app/one-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/app/one-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/app/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/app/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/app/one-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili App Single Video Details\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/app/one-video\",\"description\":\"Returns detailed video metadata for a specific Bilibili video. Looks up video information using either an AV ID or a BV ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"av_id\",\"type\":\"string\",\"required\":false,\"description\":\"AV ID (choose one of av_id or bv_id)\"},{\"name\":\"bv_id\",\"type\":\"string\",\"required\":false,\"description\":\"BV ID (choose one of av_id or bv_id)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/app/one-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/app/one-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/app/one-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/app/one-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/app/one-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/app/one-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/app/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/app/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/app/one-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video data" + modelName: "Bilibili App Single Video Details" modelId: "bilibili/app/one-video" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/app/popular-feed.md b/model-api-reference/platform-apis/bilibili/app/popular-feed.md index c93de950..fa77f7a3 100644 --- a/model-api-reference/platform-apis/bilibili/app/popular-feed.md +++ b/model-api-reference/platform-apis/bilibili/app/popular-feed.md @@ -1,13 +1,13 @@ --- -title: "Get popular feed API Reference" -description: "SandBase API operation bilibili/app/popular-feed." +title: "Bilibili App Popular Feed API Reference" +description: "Bilibili App Popular Feed API reference for SandBase. Use model bilibili/app/popular-feed with /v1/api/bilibili/app/popular-feed; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/app/popular-feed" -apiReferenceJson: "{\"title\":\"Get popular feed\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/app/popular-feed\",\"description\":\"Get popular feed\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"idx\",\"type\":\"integer\",\"required\":false,\"description\":\"Page index (starting from 1)\",\"default\":\"1\"},{\"name\":\"last_param\",\"type\":\"string\",\"required\":false,\"description\":\"Last video ID from previous page (for pagination)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/app/popular-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bilibili/app/popular-feed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"bilibili/app/popular-feed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/app/popular-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"bilibili/app/popular-feed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/app/popular-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/app/popular-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/app/popular-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/app/popular-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/app/popular-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/app/popular-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/app/popular-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili App Popular Feed\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/app/popular-feed\",\"description\":\"Retrieves popular video feed items from the Bilibili app. Supports pagination through page index and previous video identifiers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"idx\",\"type\":\"integer\",\"required\":false,\"description\":\"Page index (starting from 1)\",\"default\":\"1\"},{\"name\":\"last_param\",\"type\":\"string\",\"required\":false,\"description\":\"Last video ID from previous page (for pagination)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/app/popular-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/app/popular-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/app/popular-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/app/popular-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/app/popular-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/app/popular-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/app/popular-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/app/popular-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/app/popular-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get popular feed" + modelName: "Bilibili App Popular Feed" modelId: "bilibili/app/popular-feed" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/app/reply-detail.md b/model-api-reference/platform-apis/bilibili/app/reply-detail.md deleted file mode 100644 index 3ebc2b81..00000000 --- a/model-api-reference/platform-apis/bilibili/app/reply-detail.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get reply detail API Reference" -description: "SandBase API operation bilibili/app/reply-detail." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/bilibili/app/reply-detail" -apiReferenceJson: "{\"title\":\"Get reply detail\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/app/reply-detail\",\"description\":\"Get reply detail (second level comments)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"av_id\",\"type\":\"string\",\"required\":false,\"description\":\"AV ID (choose one of av_id or bv_id)\"},{\"name\":\"bv_id\",\"type\":\"string\",\"required\":false,\"description\":\"BV ID (choose one of av_id or bv_id)\"},{\"name\":\"next_offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Next page cursor\"},{\"name\":\"ps\",\"type\":\"integer\",\"required\":false,\"description\":\"Page size\"},{\"name\":\"root\",\"type\":\"string\",\"required\":true,\"description\":\"Root comment ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/app/reply-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"root\\\": \\\"root\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"root\\\": \\\"root\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/app/reply-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"root\\\": \\\"root\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/app/reply-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/app/reply-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/app/reply-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/app/reply-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/app/reply-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/app/reply-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/app/reply-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get reply detail" - modelId: "bilibili/app/reply-detail" - vendor: "Bilibili" - vendorSlug: "bilibili" - modelSlug: "app/reply-detail" - protocol: "API Reference" - endpoint: "/v1/api/bilibili/app/reply-detail" - publishedAt: "" - capabilities: ["api","bilibili"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/bilibili/app/search-all.md b/model-api-reference/platform-apis/bilibili/app/search-all.md index d72ba5c4..0b28470b 100644 --- a/model-api-reference/platform-apis/bilibili/app/search-all.md +++ b/model-api-reference/platform-apis/bilibili/app/search-all.md @@ -1,13 +1,13 @@ --- -title: "search all API Reference" -description: "SandBase API operation bilibili/app/search-all." +title: "Bilibili App Search All API Reference" +description: "Bilibili App Search All API reference for SandBase. Use model bilibili/app/search-all with /v1/api/bilibili/app/search-all; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/app/search-all" -apiReferenceJson: "{\"title\":\"search all\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/app/search-all\",\"description\":\"search all (returns all types of search results)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor. Leave empty for the first page; for the next page pass\",\"default\":\"\\\"\\\"\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\"},{\"name\":\"order\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort order (0=comprehensive)\",\"default\":\"0\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Results per page\",\"default\":\"20\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/app/search-all \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/app/search-all\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/app/search-all\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/app/search-all\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/app/search-all\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/app/search-all\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/app/search-all\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/app/search-all\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/app/search-all\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili App Search All\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/app/search-all\",\"description\":\"Returns comprehensive search results across Bilibili content via the mobile app interface. Filters results by search keyword, sorting order, and pagination parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor. Leave empty for the first page; for the next page pass\",\"default\":\"\\\"\\\"\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\"},{\"name\":\"order\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort order (0=comprehensive)\",\"default\":\"0\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Results per page\",\"default\":\"20\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/app/search-all \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/app/search-all\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/app/search-all\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/app/search-all\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/app/search-all\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/app/search-all\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/app/search-all\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/app/search-all\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/app/search-all\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "search all" + modelName: "Bilibili App Search All" modelId: "bilibili/app/search-all" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/app/search-by-type.md b/model-api-reference/platform-apis/bilibili/app/search-by-type.md index 5cf5d7e0..f6262843 100644 --- a/model-api-reference/platform-apis/bilibili/app/search-by-type.md +++ b/model-api-reference/platform-apis/bilibili/app/search-by-type.md @@ -1,13 +1,13 @@ --- -title: "search by type API Reference" -description: "SandBase API operation bilibili/app/search-by-type." +title: "Bilibili Search by Type API Reference" +description: "Bilibili Search by Type API reference for SandBase. Use model bilibili/app/search-by-type with /v1/api/bilibili/app/search-by-type; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/app/search-by-type" -apiReferenceJson: "{\"title\":\"search by type\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/app/search-by-type\",\"description\":\"search by type\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor. Leave empty for the first page; for the next page pass\",\"default\":\"\\\"\\\"\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\"},{\"name\":\"order\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort order\",\"default\":\"0\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Results per page\",\"default\":\"20\"},{\"name\":\"search_type\",\"type\":\"string\",\"required\":false,\"description\":\"Search type\",\"default\":\"video\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/app/search-by-type \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/app/search-by-type\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/app/search-by-type\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/app/search-by-type\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/app/search-by-type\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/app/search-by-type\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/app/search-by-type\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/app/search-by-type\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/app/search-by-type\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili Search by Type\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/app/search-by-type\",\"description\":\"Returns categorized search results from Bilibili based on a target query string. Supports filtering by search type, adjusting sort order, and cursor-based pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor. Leave empty for the first page; for the next page pass\",\"default\":\"\\\"\\\"\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\"},{\"name\":\"order\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort order\",\"default\":\"0\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Results per page\",\"default\":\"20\"},{\"name\":\"search_type\",\"type\":\"string\",\"required\":false,\"description\":\"Search type\",\"default\":\"video\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/app/search-by-type \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/app/search-by-type\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/app/search-by-type\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/app/search-by-type\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/app/search-by-type\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/app/search-by-type\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/app/search-by-type\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/app/search-by-type\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/app/search-by-type\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "search by type" + modelName: "Bilibili Search by Type" modelId: "bilibili/app/search-by-type" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/app/user-info.md b/model-api-reference/platform-apis/bilibili/app/user-info.md index 284978bb..aba95f02 100644 --- a/model-api-reference/platform-apis/bilibili/app/user-info.md +++ b/model-api-reference/platform-apis/bilibili/app/user-info.md @@ -1,13 +1,13 @@ --- -title: "Get user info API Reference — Bilibili App / User Info API" -description: "SandBase API operation bilibili/app/user-info." +title: "Bilibili App User Info API Reference" +description: "Bilibili App User Info API reference for SandBase. Use model bilibili/app/user-info with /v1/api/bilibili/app/user-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/app/user-info" -apiReferenceJson: "{\"title\":\"Get user info\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/app/user-info\",\"description\":\"Get user info\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/app/user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"203680252\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"203680252\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/app/user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"203680252\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/app/user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/app/user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/app/user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/app/user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/app/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/app/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/app/user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili App User Info\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/app/user-info\",\"description\":\"Returns account profile details and uploaded video archives for a specified Bilibili creator using their unique user identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/app/user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"203680252\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"203680252\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/app/user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"203680252\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/app/user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/app/user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/app/user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/app/user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/app/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/app/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/app/user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user info" + modelName: "Bilibili App User Info" modelId: "bilibili/app/user-info" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/app/user-videos.md b/model-api-reference/platform-apis/bilibili/app/user-videos.md index e683362e..fd57ed4b 100644 --- a/model-api-reference/platform-apis/bilibili/app/user-videos.md +++ b/model-api-reference/platform-apis/bilibili/app/user-videos.md @@ -1,13 +1,13 @@ --- -title: "Get user videos API Reference — Bilibili App / User Videos API" -description: "SandBase API operation bilibili/app/user-videos." +title: "Bilibili User Videos API Reference" +description: "Bilibili User Videos API reference for SandBase. Use model bilibili/app/user-videos with /v1/api/bilibili/app/user-videos; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/app/user-videos" -apiReferenceJson: "{\"title\":\"Get user videos\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/app/user-videos\",\"description\":\"Get user uploaded videos\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"post_filter\",\"type\":\"string\",\"required\":false,\"description\":\"Filter type (archive/season/contribute)\",\"default\":\"archive\"},{\"name\":\"ps\",\"type\":\"integer\",\"required\":false,\"description\":\"Page size\",\"default\":\"20\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/app/user-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"203680252\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"203680252\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/app/user-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"203680252\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/app/user-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/app/user-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/app/user-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/app/user-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/app/user-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/app/user-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/app/user-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili User Videos\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/app/user-videos\",\"description\":\"Returns uploaded video listings for a specified Bilibili creator account. Supports pagination controls and filtering by post types such as archives or seasons.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"post_filter\",\"type\":\"string\",\"required\":false,\"description\":\"Filter type (archive/season/contribute)\",\"default\":\"archive\"},{\"name\":\"ps\",\"type\":\"integer\",\"required\":false,\"description\":\"Page size\",\"default\":\"20\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/app/user-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"203680252\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"203680252\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/app/user-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"203680252\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/app/user-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/app/user-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/app/user-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/app/user-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/app/user-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/app/user-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/app/user-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user videos" + modelName: "Bilibili User Videos" modelId: "bilibili/app/user-videos" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/app/video-comments.md b/model-api-reference/platform-apis/bilibili/app/video-comments.md index c2e62d9a..d96a6292 100644 --- a/model-api-reference/platform-apis/bilibili/app/video-comments.md +++ b/model-api-reference/platform-apis/bilibili/app/video-comments.md @@ -1,13 +1,13 @@ --- -title: "Get video comments API Reference — Bilibili App / Video Comments" -description: "SandBase API operation bilibili/app/video-comments." +title: "Bilibili Video Comments (App) API Reference" +description: "SandBase API reference for model bilibili/app/video-comments. Call /v1/api/bilibili/app/video-comments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/app/video-comments" -apiReferenceJson: "{\"title\":\"Get video comments\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/app/video-comments\",\"description\":\"Get video comments\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"av_id\",\"type\":\"string\",\"required\":false,\"description\":\"AV ID (choose one of av_id or bv_id)\"},{\"name\":\"bv_id\",\"type\":\"string\",\"required\":false,\"description\":\"BV ID (choose one of av_id or bv_id)\"},{\"name\":\"mode\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort mode (3=hot, 2=time)\",\"default\":\"3\"},{\"name\":\"next_offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/app/video-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bilibili/app/video-comments\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"bilibili/app/video-comments\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/app/video-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"bilibili/app/video-comments\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/app/video-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/app/video-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/app/video-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/app/video-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/app/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/app/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/app/video-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili Video Comments (App)\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/app/video-comments\",\"description\":\"Returns user comments for a specified Bilibili video by AV or BV identifier. Supports sorting comments by popularity or post time, with cursor-based pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"av_id\",\"type\":\"string\",\"required\":false,\"description\":\"AV ID (choose one of av_id or bv_id)\"},{\"name\":\"bv_id\",\"type\":\"string\",\"required\":false,\"description\":\"BV ID (choose one of av_id or bv_id)\"},{\"name\":\"mode\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort mode (3=hot, 2=time)\",\"default\":\"3\"},{\"name\":\"next_offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/app/video-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/app/video-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/app/video-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/app/video-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/app/video-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/app/video-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/app/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/app/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/app/video-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video comments" + modelName: "Bilibili Video Comments (App)" modelId: "bilibili/app/video-comments" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/all-live-areas.md b/model-api-reference/platform-apis/bilibili/web/all-live-areas.md index 1a69c3e5..e76831c8 100644 --- a/model-api-reference/platform-apis/bilibili/web/all-live-areas.md +++ b/model-api-reference/platform-apis/bilibili/web/all-live-areas.md @@ -1,13 +1,13 @@ --- -title: "Get a list of all live areas API Reference" -description: "SandBase API operation bilibili/web/all-live-areas." +title: "Bilibili Streaming Areas API Reference" +description: "Bilibili Streaming Areas API reference for SandBase. Use model bilibili/web/all-live-areas with /v1/api/bilibili/web/all-live-areas; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/all-live-areas" -apiReferenceJson: "{\"title\":\"Get a list of all live areas\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/all-live-areas\",\"description\":\"Get a list of all live areas\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/all-live-areas \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bilibili/web/all-live-areas\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"bilibili/web/all-live-areas\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/all-live-areas\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"bilibili/web/all-live-areas\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/all-live-areas\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/all-live-areas\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/all-live-areas\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/all-live-areas\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/all-live-areas\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/all-live-areas\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/all-live-areas\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili Streaming Areas\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/all-live-areas\",\"description\":\"Returns the complete list of streaming broadcast areas and categories on Bilibili. This endpoint provides category identifiers and partition structures without requiring any parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/all-live-areas \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/all-live-areas\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/all-live-areas\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/all-live-areas\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/all-live-areas\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/all-live-areas\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/all-live-areas\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/all-live-areas\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/all-live-areas\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get a list of all live areas" + modelName: "Bilibili Streaming Areas" modelId: "bilibili/web/all-live-areas" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/bv-to-aid.md b/model-api-reference/platform-apis/bilibili/web/bv-to-aid.md index 4a4c8dae..36923fe2 100644 --- a/model-api-reference/platform-apis/bilibili/web/bv-to-aid.md +++ b/model-api-reference/platform-apis/bilibili/web/bv-to-aid.md @@ -1,13 +1,13 @@ --- -title: "Generate aid by bvid API Reference" -description: "SandBase API operation bilibili/web/bv-to-aid." +title: "Bilibili BV to AID Converter API Reference" +description: "Bilibili BV to AID Converter API reference for SandBase. Use model bilibili/web/bv-to-aid with /v1/api/bilibili/web/bv-to-aid; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/bv-to-aid" -apiReferenceJson: "{\"title\":\"Generate aid by bvid\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/bv-to-aid\",\"description\":\"Generate aid by bvid\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"bv_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/bv-to-aid \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"bv_id\\\": \\\"BV1M1421t7hT\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"bv_id\\\": \\\"BV1M1421t7hT\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/bv-to-aid\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"bv_id\\\": \\\"BV1M1421t7hT\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/bv-to-aid\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/bv-to-aid\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/bv-to-aid\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/bv-to-aid\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/bv-to-aid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/bv-to-aid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/bv-to-aid\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili BV to AID Converter\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/bv-to-aid\",\"description\":\"Converts a Bilibili BV identifier to its corresponding numeric AID value. Input the target video BV string to return the legacy video identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"bv_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/bv-to-aid \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"bv_id\\\": \\\"BV1M1421t7hT\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"bv_id\\\": \\\"BV1M1421t7hT\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/bv-to-aid\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"bv_id\\\": \\\"BV1M1421t7hT\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/bv-to-aid\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/bv-to-aid\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/bv-to-aid\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/bv-to-aid\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/bv-to-aid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/bv-to-aid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/bv-to-aid\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate aid by bvid" + modelName: "Bilibili BV to AID Converter" modelId: "bilibili/web/bv-to-aid" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/collect-folders.md b/model-api-reference/platform-apis/bilibili/web/collect-folders.md index 37f64a64..a1419f27 100644 --- a/model-api-reference/platform-apis/bilibili/web/collect-folders.md +++ b/model-api-reference/platform-apis/bilibili/web/collect-folders.md @@ -1,13 +1,13 @@ --- -title: "Get user collection folders API Reference" -description: "SandBase API operation bilibili/web/collect-folders." +title: "Bilibili User Collection Folders API Reference" +description: "SandBase API reference for model bilibili/web/collect-folders. Call /v1/api/bilibili/web/collect-folders; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/collect-folders" -apiReferenceJson: "{\"title\":\"Get user collection folders\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/collect-folders\",\"description\":\"Get user collection folders\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User UID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/collect-folders \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/collect-folders\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/collect-folders\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/collect-folders\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/collect-folders\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/collect-folders\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/collect-folders\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/collect-folders\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/collect-folders\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili User Collection Folders\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/collect-folders\",\"description\":\"Returns the collection folders owned by a specific Bilibili user. Supply the user identifier via `uid` to inspect their public collection folders.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User UID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/collect-folders \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"1437582453\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"1437582453\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/collect-folders\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"1437582453\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/collect-folders\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/collect-folders\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/collect-folders\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/collect-folders\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/collect-folders\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/collect-folders\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/collect-folders\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user collection folders" + modelName: "Bilibili User Collection Folders" modelId: "bilibili/web/collect-folders" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/com-popular.md b/model-api-reference/platform-apis/bilibili/web/com-popular.md index 8b0effb3..5ba26f52 100644 --- a/model-api-reference/platform-apis/bilibili/web/com-popular.md +++ b/model-api-reference/platform-apis/bilibili/web/com-popular.md @@ -1,13 +1,13 @@ --- -title: "Get comprehensive popular video information API Reference" -description: "SandBase API operation bilibili/web/com-popular." +title: "Bilibili Comprehensive Popular Videos API Reference" +description: "SandBase API reference for model bilibili/web/com-popular. Call /v1/api/bilibili/web/com-popular; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/com-popular" -apiReferenceJson: "{\"title\":\"Get comprehensive popular video information\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/com-popular\",\"description\":\"Get comprehensive popular video information\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pn\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/com-popular \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bilibili/web/com-popular\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"bilibili/web/com-popular\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/com-popular\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"bilibili/web/com-popular\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/com-popular\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/com-popular\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/com-popular\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/com-popular\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/com-popular\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/com-popular\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/com-popular\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili Comprehensive Popular Videos\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/com-popular\",\"description\":\"Returns a comprehensive list of trending videos on Bilibili, including video metadata, author details, and engagement statistics across pages.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pn\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/com-popular \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/com-popular\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/com-popular\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/com-popular\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/com-popular\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/com-popular\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/com-popular\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/com-popular\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/com-popular\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get comprehensive popular video information" + modelName: "Bilibili Comprehensive Popular Videos" modelId: "bilibili/web/com-popular" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/comment-reply.md b/model-api-reference/platform-apis/bilibili/web/comment-reply.md index dc188e5e..cb129f46 100644 --- a/model-api-reference/platform-apis/bilibili/web/comment-reply.md +++ b/model-api-reference/platform-apis/bilibili/web/comment-reply.md @@ -1,13 +1,13 @@ --- -title: "Get reply to the specified comment API Reference" -description: "SandBase API operation bilibili/web/comment-reply." +title: "Bilibili Comment Replies API Reference" +description: "Bilibili Comment Replies API reference for SandBase. Use model bilibili/web/comment-reply with /v1/api/bilibili/web/comment-reply; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/comment-reply" -apiReferenceJson: "{\"title\":\"Get reply to the specified comment\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/comment-reply\",\"description\":\"Get reply to the specified comment\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"bv_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"pn\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\"},{\"name\":\"rpid\",\"type\":\"string\",\"required\":true,\"description\":\"Reply id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/comment-reply \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"bv_id\\\": \\\"bv_id\\\",\\n \\\"rpid\\\": \\\"rpid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"bv_id\\\": \\\"bv_id\\\",\\n \\\"rpid\\\": \\\"rpid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/comment-reply\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"bv_id\\\": \\\"bv_id\\\",\\n \\\"rpid\\\": \\\"rpid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/comment-reply\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/comment-reply\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/comment-reply\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/comment-reply\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/comment-reply\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/comment-reply\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/comment-reply\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili Comment Replies\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/comment-reply\",\"description\":\"Returns replies to a specific comment on a Bilibili video by video ID and comment ID. Supports pagination to browse threaded discussion replies.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"bv_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"pn\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\"},{\"name\":\"rpid\",\"type\":\"string\",\"required\":true,\"description\":\"Reply id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/comment-reply \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"bv_id\\\": \\\"bv_id\\\",\\n \\\"rpid\\\": \\\"rpid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"bv_id\\\": \\\"bv_id\\\",\\n \\\"rpid\\\": \\\"rpid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/comment-reply\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"bv_id\\\": \\\"bv_id\\\",\\n \\\"rpid\\\": \\\"rpid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/comment-reply\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/comment-reply\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/comment-reply\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/comment-reply\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/comment-reply\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/comment-reply\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/comment-reply\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get reply to the specified comment" + modelName: "Bilibili Comment Replies" modelId: "bilibili/web/comment-reply" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/dynamic-detail-v2.md b/model-api-reference/platform-apis/bilibili/web/dynamic-detail-v2.md index 331d2b00..495428fa 100644 --- a/model-api-reference/platform-apis/bilibili/web/dynamic-detail-v2.md +++ b/model-api-reference/platform-apis/bilibili/web/dynamic-detail-v2.md @@ -1,13 +1,13 @@ --- -title: "Get dynamic detail v2 API Reference" -description: "SandBase API operation bilibili/web/dynamic-detail-v2." +title: "Bilibili Dynamic Details (V2) API Reference" +description: "SandBase API reference for model bilibili/web/dynamic-detail-v2. Call /v1/api/bilibili/web/dynamic-detail-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/dynamic-detail-v2" -apiReferenceJson: "{\"title\":\"Get dynamic detail v2\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/dynamic-detail-v2\",\"description\":\"Get detail information of specified dynamic (v2 API) Use this endpoint for video dynamics (DYNAMIC_TYPE_AV) module_stat only contains comment / forward / like; for favorite / coin on image / text / article dynamics use the v1 endpoint\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"dynamic_id\",\"type\":\"string\",\"required\":true,\"description\":\"Dynamic id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/dynamic-detail-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"dynamic_id\\\": \\\"1172584638000922630\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"dynamic_id\\\": \\\"1172584638000922630\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/dynamic-detail-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"dynamic_id\\\": \\\"1172584638000922630\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/dynamic-detail-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/dynamic-detail-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/dynamic-detail-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/dynamic-detail-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/dynamic-detail-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/dynamic-detail-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/dynamic-detail-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili Dynamic Details (V2)\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/dynamic-detail-v2\",\"description\":\"Returns detailed data for a specific Bilibili dynamic post using its dynamic ID. Designed for video dynamics, providing author modules and engagement metrics such as comments, shares, and likes.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"dynamic_id\",\"type\":\"string\",\"required\":true,\"description\":\"Dynamic id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/dynamic-detail-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"dynamic_id\\\": \\\"1172584638000922630\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"dynamic_id\\\": \\\"1172584638000922630\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/dynamic-detail-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"dynamic_id\\\": \\\"1172584638000922630\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/dynamic-detail-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/dynamic-detail-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/dynamic-detail-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/dynamic-detail-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/dynamic-detail-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/dynamic-detail-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/dynamic-detail-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get dynamic detail v2" + modelName: "Bilibili Dynamic Details (V2)" modelId: "bilibili/web/dynamic-detail-v2" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/dynamic-detail.md b/model-api-reference/platform-apis/bilibili/web/dynamic-detail.md index 3b5eb681..1a93fca6 100644 --- a/model-api-reference/platform-apis/bilibili/web/dynamic-detail.md +++ b/model-api-reference/platform-apis/bilibili/web/dynamic-detail.md @@ -1,13 +1,13 @@ --- -title: "Get dynamic detail API Reference" -description: "SandBase API operation bilibili/web/dynamic-detail." +title: "Bilibili Dynamic Detail API Reference" +description: "Bilibili Dynamic Detail API reference for SandBase. Use model bilibili/web/dynamic-detail with /v1/api/bilibili/web/dynamic-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/dynamic-detail" -apiReferenceJson: "{\"title\":\"Get dynamic detail\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/dynamic-detail\",\"description\":\"Get detail information of specified dynamic (v1 API) For image / text / article dynamics; returns full module_stat (with favorite / coin) For video dynamics (DYNAMIC_TYPE_AV) use the v2 endpoint instead\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"dynamic_id\",\"type\":\"string\",\"required\":true,\"description\":\"Dynamic id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/dynamic-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"dynamic_id\\\": \\\"1172584638000922630\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"dynamic_id\\\": \\\"1172584638000922630\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/dynamic-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"dynamic_id\\\": \\\"1172584638000922630\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/dynamic-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/dynamic-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/dynamic-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/dynamic-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/dynamic-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/dynamic-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/dynamic-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili Dynamic Detail\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/dynamic-detail\",\"description\":\"Returns detailed information for a specified Bilibili dynamic post, such as image, text, or article dynamics, using its unique dynamic ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"dynamic_id\",\"type\":\"string\",\"required\":true,\"description\":\"Dynamic id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/dynamic-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"dynamic_id\\\": \\\"1172584638000922630\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"dynamic_id\\\": \\\"1172584638000922630\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/dynamic-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"dynamic_id\\\": \\\"1172584638000922630\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/dynamic-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/dynamic-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/dynamic-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/dynamic-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/dynamic-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/dynamic-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/dynamic-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get dynamic detail" + modelName: "Bilibili Dynamic Detail" modelId: "bilibili/web/dynamic-detail" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/general-search.md b/model-api-reference/platform-apis/bilibili/web/general-search.md index 5dd7ff36..13f7d0c2 100644 --- a/model-api-reference/platform-apis/bilibili/web/general-search.md +++ b/model-api-reference/platform-apis/bilibili/web/general-search.md @@ -1,13 +1,13 @@ --- -title: "Get general search data API Reference" -description: "SandBase API operation bilibili/web/general-search." +title: "Bilibili Web General Search API Reference" +description: "Bilibili Web General Search API reference for SandBase. Use model bilibili/web/general-search with /v1/api/bilibili/web/general-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/general-search" -apiReferenceJson: "{\"title\":\"Get general search data\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/general-search\",\"description\":\"Get general search data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration filter\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"order\",\"type\":\"string\",\"required\":true,\"description\":\"Order method\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":true,\"description\":\"Page number\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":true,\"description\":\"Number per page\"},{\"name\":\"pubtime_begin_s\",\"type\":\"integer\",\"required\":false,\"description\":\"Start date, 10-digit timestamp, must be less than end date\",\"default\":\"0\"},{\"name\":\"pubtime_end_s\",\"type\":\"integer\",\"required\":false,\"description\":\"End date, 10-digit timestamp, must be greater than start date\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/general-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\",\\n \\\"order\\\": \\\"totalrank\\\",\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 20\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\",\\n \\\"order\\\": \\\"totalrank\\\",\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 20\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/general-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\",\\n \\\"order\\\": \\\"totalrank\\\",\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 20\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/general-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/general-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/general-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/general-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/general-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/general-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/general-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili Web General Search\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/general-search\",\"description\":\"Returns search results from Bilibili based on a search keyword, with sorting options and filters for duration and publication date range.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration filter\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"order\",\"type\":\"string\",\"required\":true,\"description\":\"Order method\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":true,\"description\":\"Page number\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":true,\"description\":\"Number per page\"},{\"name\":\"pubtime_begin_s\",\"type\":\"integer\",\"required\":false,\"description\":\"Start date, 10-digit timestamp, must be less than end date\",\"default\":\"0\"},{\"name\":\"pubtime_end_s\",\"type\":\"integer\",\"required\":false,\"description\":\"End date, 10-digit timestamp, must be greater than start date\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/general-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\",\\n \\\"order\\\": \\\"totalrank\\\",\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 20\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\",\\n \\\"order\\\": \\\"totalrank\\\",\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 20\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/general-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\",\\n \\\"order\\\": \\\"totalrank\\\",\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 20\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/general-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/general-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/general-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/general-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/general-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/general-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/general-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get general search data" + modelName: "Bilibili Web General Search" modelId: "bilibili/web/general-search" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/get-user-id.md b/model-api-reference/platform-apis/bilibili/web/get-user-id.md index 58049ec1..c7e2a090 100644 --- a/model-api-reference/platform-apis/bilibili/web/get-user-id.md +++ b/model-api-reference/platform-apis/bilibili/web/get-user-id.md @@ -1,13 +1,13 @@ --- -title: "Extract user ID API Reference" -description: "SandBase API operation bilibili/web/get-user-id." +title: "Bilibili User ID Extraction API Reference" +description: "Bilibili User ID Extraction API reference for SandBase. Use model bilibili/web/get-user-id with /v1/api/bilibili/web/get-user-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/get-user-id" -apiReferenceJson: "{\"title\":\"Extract user ID\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/get-user-id\",\"description\":\"Extract user ID\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_link\",\"type\":\"string\",\"required\":true,\"description\":\"User share link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/get-user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"share_link\\\": \\\"https://space.bilibili.com/178360345\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"share_link\\\": \\\"https://space.bilibili.com/178360345\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/get-user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"share_link\\\": \\\"https://space.bilibili.com/178360345\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/get-user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/get-user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/get-user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/get-user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/get-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/get-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/get-user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili User ID Extraction\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/get-user-id\",\"description\":\"Extracts and returns a Bilibili user ID from a provided space share link. Takes a user profile URL and resolves the numeric account identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_link\",\"type\":\"string\",\"required\":true,\"description\":\"User share link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/get-user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"share_link\\\": \\\"https://space.bilibili.com/178360345\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"share_link\\\": \\\"https://space.bilibili.com/178360345\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/get-user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"share_link\\\": \\\"https://space.bilibili.com/178360345\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/get-user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/get-user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/get-user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/get-user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/get-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/get-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/get-user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Extract user ID" + modelName: "Bilibili User ID Extraction" modelId: "bilibili/web/get-user-id" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/hot-search.md b/model-api-reference/platform-apis/bilibili/web/hot-search.md index 8cd5bb6b..8a267f82 100644 --- a/model-api-reference/platform-apis/bilibili/web/hot-search.md +++ b/model-api-reference/platform-apis/bilibili/web/hot-search.md @@ -1,13 +1,13 @@ --- -title: "Get hot search data API Reference" -description: "SandBase API operation bilibili/web/hot-search." +title: "Bilibili Hot Searches API Reference" +description: "Bilibili Hot Searches API reference for SandBase. Use model bilibili/web/hot-search with /v1/api/bilibili/web/hot-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/hot-search" -apiReferenceJson: "{\"title\":\"Get hot search data\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/hot-search\",\"description\":\"Get hot search data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"integer\",\"required\":true,\"description\":\"Return number\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/hot-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"limit\\\": 10\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"limit\\\": 10\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/hot-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"limit\\\": 10\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/hot-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/hot-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/hot-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/hot-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/hot-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/hot-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/hot-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili Hot Searches\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/hot-search\",\"description\":\"Returns current trending search keywords along with their heat scores from Bilibili. Results are restricted according to the specified count limit.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"integer\",\"required\":true,\"description\":\"Return number\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/hot-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"limit\\\": 10\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"limit\\\": 10\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/hot-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"limit\\\": 10\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/hot-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/hot-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/hot-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/hot-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/hot-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/hot-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/hot-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get hot search data" + modelName: "Bilibili Hot Searches" modelId: "bilibili/web/hot-search" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/live-room-detail.md b/model-api-reference/platform-apis/bilibili/web/live-room-detail.md index 7ec914f1..90cd8a2e 100644 --- a/model-api-reference/platform-apis/bilibili/web/live-room-detail.md +++ b/model-api-reference/platform-apis/bilibili/web/live-room-detail.md @@ -1,13 +1,13 @@ --- -title: "Get information of specified live room API Reference" -description: "SandBase API operation bilibili/web/live-room-detail." +title: "Bilibili Live Room Details API Reference" +description: "SandBase API reference for model bilibili/web/live-room-detail. Call /v1/api/bilibili/web/live-room-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/live-room-detail" -apiReferenceJson: "{\"title\":\"Get information of specified live room\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/live-room-detail\",\"description\":\"Get information of specified live room\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Live room ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/live-room-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"room_id\\\": \\\"22816111\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"room_id\\\": \\\"22816111\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/live-room-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"room_id\\\": \\\"22816111\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/live-room-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/live-room-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/live-room-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/live-room-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/live-room-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/live-room-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/live-room-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili Live Room Details\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/live-room-detail\",\"description\":\"Returns detailed metadata and status information for a specified Bilibili live broadcast room based on the provided room identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Live room ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/live-room-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"room_id\\\": \\\"22816111\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"room_id\\\": \\\"22816111\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/live-room-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"room_id\\\": \\\"22816111\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/live-room-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/live-room-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/live-room-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/live-room-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/live-room-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/live-room-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/live-room-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get information of specified live room" + modelName: "Bilibili Live Room Details" modelId: "bilibili/web/live-room-detail" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/live-streamers.md b/model-api-reference/platform-apis/bilibili/web/live-streamers.md deleted file mode 100644 index 6280788e..00000000 --- a/model-api-reference/platform-apis/bilibili/web/live-streamers.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get live streamers of specified live area API Reference" -description: "SandBase API operation bilibili/web/live-streamers." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/bilibili/web/live-streamers" -apiReferenceJson: "{\"title\":\"Get live streamers of specified live area\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/live-streamers\",\"description\":\"Get live streamers of specified live area\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"area_id\",\"type\":\"string\",\"required\":true,\"description\":\"Live area ID\"},{\"name\":\"pn\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/live-streamers \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"area_id\\\": \\\"area_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"area_id\\\": \\\"area_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/live-streamers\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"area_id\\\": \\\"area_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/live-streamers\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/live-streamers\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/live-streamers\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/live-streamers\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/live-streamers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/live-streamers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/live-streamers\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get live streamers of specified live area" - modelId: "bilibili/web/live-streamers" - vendor: "Bilibili" - vendorSlug: "bilibili" - modelSlug: "web/live-streamers" - protocol: "API Reference" - endpoint: "/v1/api/bilibili/web/live-streamers" - publishedAt: "" - capabilities: ["api","bilibili"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/bilibili/web/live-videos.md b/model-api-reference/platform-apis/bilibili/web/live-videos.md index 81a286e8..b7ac46ec 100644 --- a/model-api-reference/platform-apis/bilibili/web/live-videos.md +++ b/model-api-reference/platform-apis/bilibili/web/live-videos.md @@ -1,13 +1,13 @@ --- -title: "Get live video data of specified room API Reference" -description: "SandBase API operation bilibili/web/live-videos." +title: "Bilibili Room Stream Data API Reference" +description: "Bilibili Room Stream Data API reference for SandBase. Use model bilibili/web/live-videos with /v1/api/bilibili/web/live-videos; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/live-videos" -apiReferenceJson: "{\"title\":\"Get live video data of specified room\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/live-videos\",\"description\":\"Get live video data of specified room\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Live room ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/live-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"room_id\\\": \\\"1815229528\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"room_id\\\": \\\"1815229528\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/live-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"room_id\\\": \\\"1815229528\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/live-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/live-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/live-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/live-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/live-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/live-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/live-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili Room Stream Data\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/live-videos\",\"description\":\"Returns stream URLs and playback connection details for a specific Bilibili broadcast room. Filter using the unique room identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Live room ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/live-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"room_id\\\": \\\"1815229528\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"room_id\\\": \\\"1815229528\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/live-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"room_id\\\": \\\"1815229528\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/live-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/live-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/live-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/live-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/live-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/live-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/live-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get live video data of specified room" + modelName: "Bilibili Room Stream Data" modelId: "bilibili/web/live-videos" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/one-video-v2.md b/model-api-reference/platform-apis/bilibili/web/one-video-v2.md index c66fb2ca..92dd9e01 100644 --- a/model-api-reference/platform-apis/bilibili/web/one-video-v2.md +++ b/model-api-reference/platform-apis/bilibili/web/one-video-v2.md @@ -1,13 +1,13 @@ --- -title: "Get single video data V2 API Reference — Bilibili / One Video V2" -description: "SandBase API operation bilibili/web/one-video-v2." +title: "Bilibili Video Details (V2) API Reference" +description: "Bilibili Video Details (V2) API reference for SandBase. Use model bilibili/web/one-video-v2 with /v1/api/bilibili/web/one-video-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/one-video-v2" -apiReferenceJson: "{\"title\":\"Get single video data V2\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/one-video-v2\",\"description\":\"Get single video data V2\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"a_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"c_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video cid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/one-video-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"a_id\\\": \\\"a_id\\\",\\n \\\"c_id\\\": \\\"c_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"a_id\\\": \\\"a_id\\\",\\n \\\"c_id\\\": \\\"c_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/one-video-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"a_id\\\": \\\"a_id\\\",\\n \\\"c_id\\\": \\\"c_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/one-video-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/one-video-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/one-video-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/one-video-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/one-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/one-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/one-video-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili Video Details (V2)\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/one-video-v2\",\"description\":\"Returns detailed metadata and playback information for a specific Bilibili video using its unique video and CID identifiers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"a_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"c_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video cid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/one-video-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"a_id\\\": \\\"a_id\\\",\\n \\\"c_id\\\": \\\"c_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"a_id\\\": \\\"a_id\\\",\\n \\\"c_id\\\": \\\"c_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/one-video-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"a_id\\\": \\\"a_id\\\",\\n \\\"c_id\\\": \\\"c_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/one-video-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/one-video-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/one-video-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/one-video-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/one-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/one-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/one-video-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video data V2" + modelName: "Bilibili Video Details (V2)" modelId: "bilibili/web/one-video-v2" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/one-video-v3.md b/model-api-reference/platform-apis/bilibili/web/one-video-v3.md index faab3004..a00e4ced 100644 --- a/model-api-reference/platform-apis/bilibili/web/one-video-v3.md +++ b/model-api-reference/platform-apis/bilibili/web/one-video-v3.md @@ -1,13 +1,13 @@ --- -title: "Get single video data V3 API Reference" -description: "SandBase API operation bilibili/web/one-video-v3." +title: "Bilibili Single Video Details API Reference" +description: "Bilibili Single Video Details API reference for SandBase. Use model bilibili/web/one-video-v3 with /v1/api/bilibili/web/one-video-v3; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/one-video-v3" -apiReferenceJson: "{\"title\":\"Get single video data V3\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/one-video-v3\",\"description\":\"Get single video data V3\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Video URL\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/one-video-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://www.bilibili.com/video/BV1S5uKzzE4r\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://www.bilibili.com/video/BV1S5uKzzE4r\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/one-video-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://www.bilibili.com/video/BV1S5uKzzE4r\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/one-video-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/one-video-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/one-video-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/one-video-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/one-video-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/one-video-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/one-video-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili Single Video Details\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/one-video-v3\",\"description\":\"Returns detailed metadata for a single Bilibili video, including season information, episode titles, duration, and post timestamps via its URL.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Video URL\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/one-video-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://www.bilibili.com/video/BV1S5uKzzE4r\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://www.bilibili.com/video/BV1S5uKzzE4r\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/one-video-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://www.bilibili.com/video/BV1S5uKzzE4r\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/one-video-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/one-video-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/one-video-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/one-video-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/one-video-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/one-video-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/one-video-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video data V3" + modelName: "Bilibili Single Video Details" modelId: "bilibili/web/one-video-v3" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/one-video.md b/model-api-reference/platform-apis/bilibili/web/one-video.md index 3efa14ef..b87242b7 100644 --- a/model-api-reference/platform-apis/bilibili/web/one-video.md +++ b/model-api-reference/platform-apis/bilibili/web/one-video.md @@ -1,13 +1,13 @@ --- -title: "Get single video data API Reference — Bilibili Web / One Video" -description: "SandBase API operation bilibili/web/one-video." +title: "Bilibili Video Details API Reference" +description: "Bilibili Video Details API reference for SandBase. Use model bilibili/web/one-video with /v1/api/bilibili/web/one-video; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/one-video" -apiReferenceJson: "{\"title\":\"Get single video data\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/one-video\",\"description\":\"Get single video data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"bv_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/one-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"bv_id\\\": \\\"BV1M1421t7hT\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"bv_id\\\": \\\"BV1M1421t7hT\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/one-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"bv_id\\\": \\\"BV1M1421t7hT\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/one-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/one-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/one-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/one-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/one-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili Video Details\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/one-video\",\"description\":\"Returns detailed metadata and honor tags for a single Bilibili video based on its unique BV identifier, including recommendation status.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"bv_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/one-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"bv_id\\\": \\\"BV1M1421t7hT\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"bv_id\\\": \\\"BV1M1421t7hT\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/one-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"bv_id\\\": \\\"BV1M1421t7hT\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/one-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/one-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/one-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/one-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/one-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video data" + modelName: "Bilibili Video Details" modelId: "bilibili/web/one-video" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/user-collection-videos.md b/model-api-reference/platform-apis/bilibili/web/user-collection-videos.md index 07d1c6a3..b2b84b3c 100644 --- a/model-api-reference/platform-apis/bilibili/web/user-collection-videos.md +++ b/model-api-reference/platform-apis/bilibili/web/user-collection-videos.md @@ -1,13 +1,13 @@ --- -title: "Gets video data from a collection folder API Reference" -description: "SandBase API operation bilibili/web/user-collection-videos." +title: "Bilibili User Collection Folder Videos API Reference" +description: "SandBase API reference for model bilibili/web/user-collection-videos. Call /v1/api/bilibili/web/user-collection-videos; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/user-collection-videos" -apiReferenceJson: "{\"title\":\"Gets video data from a collection folder\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/user-collection-videos\",\"description\":\"Gets video data from a collection folder\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"folder_id\",\"type\":\"string\",\"required\":true,\"description\":\"collection folder id\"},{\"name\":\"pn\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/user-collection-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"folder_id\\\": \\\"folder_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"folder_id\\\": \\\"folder_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/user-collection-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"folder_id\\\": \\\"folder_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/user-collection-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/user-collection-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/user-collection-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/user-collection-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/user-collection-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/user-collection-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/user-collection-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili User Collection Folder Videos\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/user-collection-videos\",\"description\":\"Returns video data stored within a specified collection folder on Bilibili. Supports pagination to browse through items in the folder.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"folder_id\",\"type\":\"string\",\"required\":true,\"description\":\"collection folder id\"},{\"name\":\"pn\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/user-collection-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"folder_id\\\": \\\"folder_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"folder_id\\\": \\\"folder_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/user-collection-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"folder_id\\\": \\\"folder_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/user-collection-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/user-collection-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/user-collection-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/user-collection-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/user-collection-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/user-collection-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/user-collection-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Gets video data from a collection folder" + modelName: "Bilibili User Collection Folder Videos" modelId: "bilibili/web/user-collection-videos" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/user-dynamic.md b/model-api-reference/platform-apis/bilibili/web/user-dynamic.md index 9a75bb31..0ce78e4f 100644 --- a/model-api-reference/platform-apis/bilibili/web/user-dynamic.md +++ b/model-api-reference/platform-apis/bilibili/web/user-dynamic.md @@ -1,13 +1,13 @@ --- -title: "Get dynamic information of specified user API Reference" -description: "SandBase API operation bilibili/web/user-dynamic." +title: "Bilibili User Dynamics API Reference" +description: "Bilibili User Dynamics API reference for SandBase. Use model bilibili/web/user-dynamic with /v1/api/bilibili/web/user-dynamic; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/user-dynamic" -apiReferenceJson: "{\"title\":\"Get dynamic information of specified user\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/user-dynamic\",\"description\":\"Get dynamic information of specified user\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"offset\",\"default\":\"\\\"\\\"\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User UID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/user-dynamic \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"178360345\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"178360345\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/user-dynamic\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"178360345\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/user-dynamic\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/user-dynamic\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/user-dynamic\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/user-dynamic\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/user-dynamic\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/user-dynamic\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/user-dynamic\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili User Dynamics\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/user-dynamic\",\"description\":\"Retrieves dynamic feed posts and timeline updates for a specified Bilibili user by UID, with optional offset-based pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"offset\",\"default\":\"\\\"\\\"\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User UID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/user-dynamic \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"178360345\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"178360345\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/user-dynamic\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"178360345\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/user-dynamic\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/user-dynamic\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/user-dynamic\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/user-dynamic\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/user-dynamic\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/user-dynamic\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/user-dynamic\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get dynamic information of specified user" + modelName: "Bilibili User Dynamics" modelId: "bilibili/web/user-dynamic" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/user-post-videos.md b/model-api-reference/platform-apis/bilibili/web/user-post-videos.md index feb20963..54bffe05 100644 --- a/model-api-reference/platform-apis/bilibili/web/user-post-videos.md +++ b/model-api-reference/platform-apis/bilibili/web/user-post-videos.md @@ -1,13 +1,13 @@ --- -title: "Get user homepage video data API Reference — Bilibili Post Videos" -description: "SandBase API operation bilibili/web/user-post-videos." +title: "Bilibili User Post Videos API Reference" +description: "SandBase API reference for model bilibili/web/user-post-videos. Call /v1/api/bilibili/web/user-post-videos; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/user-post-videos" -apiReferenceJson: "{\"title\":\"Get user homepage video data\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/user-post-videos\",\"description\":\"Get user post video data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"order\",\"type\":\"string\",\"required\":false,\"description\":\"Order method\",\"default\":\"pubdate\"},{\"name\":\"pn\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User UID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/user-post-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"178360345\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"178360345\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/user-post-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"178360345\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/user-post-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/user-post-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/user-post-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/user-post-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/user-post-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/user-post-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/user-post-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili User Post Videos\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/user-post-videos\",\"description\":\"Returns videos posted on a Bilibili user's homepage. Query by user identifier with options to control sorting order and page number.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"order\",\"type\":\"string\",\"required\":false,\"description\":\"Order method\",\"default\":\"pubdate\"},{\"name\":\"pn\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User UID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/user-post-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"178360345\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"178360345\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/user-post-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"178360345\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/user-post-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/user-post-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/user-post-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/user-post-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/user-post-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/user-post-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/user-post-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user homepage video data" + modelName: "Bilibili User Post Videos" modelId: "bilibili/web/user-post-videos" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/user-profile.md b/model-api-reference/platform-apis/bilibili/web/user-profile.md index 6e3755b6..4a0d11c3 100644 --- a/model-api-reference/platform-apis/bilibili/web/user-profile.md +++ b/model-api-reference/platform-apis/bilibili/web/user-profile.md @@ -1,13 +1,13 @@ --- -title: "Get information of specified user — 1jqvmx API" -description: "SandBase API operation bilibili/web/user-profile." +title: "Bilibili User Profile API Reference" +description: "Bilibili User Profile API reference for SandBase. Use model bilibili/web/user-profile with /v1/api/bilibili/web/user-profile; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/user-profile" -apiReferenceJson: "{\"title\":\"Get information of specified user\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/user-profile\",\"description\":\"Get information of specified user\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User UID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili User Profile\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/user-profile\",\"description\":\"Returns profile details and charging sponsor information for a specified Bilibili account based on the provided user UID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User UID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"1437582453\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"1437582453\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"1437582453\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get information of specified user" + modelName: "Bilibili User Profile" modelId: "bilibili/web/user-profile" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/user-relation-stat.md b/model-api-reference/platform-apis/bilibili/web/user-relation-stat.md index 1dba2aa5..de8143c3 100644 --- a/model-api-reference/platform-apis/bilibili/web/user-relation-stat.md +++ b/model-api-reference/platform-apis/bilibili/web/user-relation-stat.md @@ -1,13 +1,13 @@ --- -title: "Get user relation stat (following and followers) API Reference" -description: "SandBase API operation bilibili/web/user-relation-stat." +title: "Bilibili User Relation Statistics API Reference" +description: "SandBase API reference for model bilibili/web/user-relation-stat. Call /v1/api/bilibili/web/user-relation-stat; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/user-relation-stat" -apiReferenceJson: "{\"title\":\"Get user relation stat (following and followers)\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/user-relation-stat\",\"description\":\"Get user relation stat (following count and follower count)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User UID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/user-relation-stat \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"178360345\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"178360345\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/user-relation-stat\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"178360345\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/user-relation-stat\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/user-relation-stat\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/user-relation-stat\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/user-relation-stat\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/user-relation-stat\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/user-relation-stat\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/user-relation-stat\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili User Relation Statistics\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/user-relation-stat\",\"description\":\"Returns relationship statistics, including following and follower counts, for a specified Bilibili account using their user ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User UID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/user-relation-stat \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"178360345\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"178360345\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/user-relation-stat\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"178360345\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/user-relation-stat\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/user-relation-stat\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/user-relation-stat\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/user-relation-stat\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/user-relation-stat\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/user-relation-stat\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/user-relation-stat\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user relation stat (following and followers)" + modelName: "Bilibili User Relation Statistics" modelId: "bilibili/web/user-relation-stat" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/user-up-stat.md b/model-api-reference/platform-apis/bilibili/web/user-up-stat.md index 2e573f52..02905ee3 100644 --- a/model-api-reference/platform-apis/bilibili/web/user-up-stat.md +++ b/model-api-reference/platform-apis/bilibili/web/user-up-stat.md @@ -1,13 +1,13 @@ --- -title: "Get UP stat (total views and likes) API Reference" -description: "SandBase API operation bilibili/web/user-up-stat." +title: "Bilibili Creator View and Like Statistics API Reference" +description: "SandBase API reference for model bilibili/web/user-up-stat. Call /v1/api/bilibili/web/user-up-stat; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/user-up-stat" -apiReferenceJson: "{\"title\":\"Get UP stat (total views and likes)\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/user-up-stat\",\"description\":\"Get UP stat (total video views and total likes)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User UID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/user-up-stat \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"178360345\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"178360345\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/user-up-stat\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"178360345\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/user-up-stat\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/user-up-stat\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/user-up-stat\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/user-up-stat\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/user-up-stat\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/user-up-stat\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/user-up-stat\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili Creator View and Like Statistics\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/user-up-stat\",\"description\":\"Returns total video view and like counts for a specified Bilibili creator account. Lookup requires the user unique identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User UID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/user-up-stat \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"178360345\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"178360345\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/user-up-stat\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"178360345\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/user-up-stat\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/user-up-stat\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/user-up-stat\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/user-up-stat\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/user-up-stat\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/user-up-stat\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/user-up-stat\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get UP stat (total views and likes)" + modelName: "Bilibili Creator View and Like Statistics" modelId: "bilibili/web/user-up-stat" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/video-comments.md b/model-api-reference/platform-apis/bilibili/web/video-comments.md index dab61f23..5578c68d 100644 --- a/model-api-reference/platform-apis/bilibili/web/video-comments.md +++ b/model-api-reference/platform-apis/bilibili/web/video-comments.md @@ -1,13 +1,13 @@ --- -title: "Get comments on the specified video API Reference" -description: "SandBase API operation bilibili/web/video-comments." +title: "Bilibili Video Comments (Web) API Reference" +description: "SandBase API reference for model bilibili/web/video-comments. Call /v1/api/bilibili/web/video-comments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/video-comments" -apiReferenceJson: "{\"title\":\"Get comments on the specified video\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/video-comments\",\"description\":\"Get comments on the specified video\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"bv_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"pn\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/video-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"bv_id\\\": \\\"BV1M1421t7hT\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"bv_id\\\": \\\"BV1M1421t7hT\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"bv_id\\\": \\\"BV1M1421t7hT\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/video-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/video-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/video-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/video-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili Video Comments (Web)\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/video-comments\",\"description\":\"Returns comment threads and reply metadata for a specific Bilibili video. Query by video ID with optional page numbering.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"bv_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"pn\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/video-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"bv_id\\\": \\\"BV1M1421t7hT\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"bv_id\\\": \\\"BV1M1421t7hT\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"bv_id\\\": \\\"BV1M1421t7hT\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/video-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/video-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/video-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/video-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get comments on the specified video" + modelName: "Bilibili Video Comments (Web)" modelId: "bilibili/web/video-comments" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/video-danmaku.md b/model-api-reference/platform-apis/bilibili/web/video-danmaku.md index a725490b..70322262 100644 --- a/model-api-reference/platform-apis/bilibili/web/video-danmaku.md +++ b/model-api-reference/platform-apis/bilibili/web/video-danmaku.md @@ -1,13 +1,13 @@ --- -title: "Get Video Danmaku API Reference" -description: "SandBase API operation bilibili/web/video-danmaku." +title: "Bilibili Video Danmaku API Reference" +description: "Bilibili Video Danmaku API reference for SandBase. Use model bilibili/web/video-danmaku with /v1/api/bilibili/web/video-danmaku; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/video-danmaku" -apiReferenceJson: "{\"title\":\"Get Video Danmaku\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/video-danmaku\",\"description\":\"Get Video Danmaku\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cid\",\"type\":\"string\",\"required\":true,\"description\":\"Video cid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/video-danmaku \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cid\\\": \\\"1639235405\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cid\\\": \\\"1639235405\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-danmaku\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cid\\\": \\\"1639235405\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-danmaku\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/video-danmaku\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/video-danmaku\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/video-danmaku\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/video-danmaku\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/video-danmaku\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/video-danmaku\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili Video Danmaku\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/video-danmaku\",\"description\":\"Returns timed on-screen danmaku comments for a specified Bilibili video in XML format using the video content identifier (cid).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cid\",\"type\":\"string\",\"required\":true,\"description\":\"Video cid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/video-danmaku \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"cid\\\": \\\"1639235405\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"cid\\\": \\\"1639235405\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-danmaku\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"cid\\\": \\\"1639235405\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-danmaku\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/video-danmaku\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/video-danmaku\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/video-danmaku\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/video-danmaku\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/video-danmaku\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/video-danmaku\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Video Danmaku" + modelName: "Bilibili Video Danmaku" modelId: "bilibili/web/video-danmaku" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/video-detail.md b/model-api-reference/platform-apis/bilibili/web/video-detail.md index 57645e46..c2e26fc7 100644 --- a/model-api-reference/platform-apis/bilibili/web/video-detail.md +++ b/model-api-reference/platform-apis/bilibili/web/video-detail.md @@ -1,13 +1,13 @@ --- -title: "Get single video detail API Reference" -description: "SandBase API operation bilibili/web/video-detail." +title: "Bilibili Web Video Details API Reference" +description: "Bilibili Web Video Details API reference for SandBase. Use model bilibili/web/video-detail with /v1/api/bilibili/web/video-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/video-detail" -apiReferenceJson: "{\"title\":\"Get single video detail\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/video-detail\",\"description\":\"Get single video detail\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aid\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/video-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"aid\\\": \\\"114902186396822\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"aid\\\": \\\"114902186396822\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"aid\\\": \\\"114902186396822\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/video-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/video-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/video-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/video-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/video-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/video-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili Web Video Details\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/video-detail\",\"description\":\"Returns detailed metadata, season sections, and episode listings for a specific Bilibili video using its unique video identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aid\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/video-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"aid\\\": \\\"114902186396822\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"aid\\\": \\\"114902186396822\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"aid\\\": \\\"114902186396822\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/video-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/video-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/video-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/video-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/video-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/video-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video detail" + modelName: "Bilibili Web Video Details" modelId: "bilibili/web/video-detail" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/video-parts.md b/model-api-reference/platform-apis/bilibili/web/video-parts.md index ea3fc110..9db94914 100644 --- a/model-api-reference/platform-apis/bilibili/web/video-parts.md +++ b/model-api-reference/platform-apis/bilibili/web/video-parts.md @@ -1,13 +1,13 @@ --- -title: "Get Video Parts By bvid API Reference" -description: "SandBase API operation bilibili/web/video-parts." +title: "Bilibili Video Parts API Reference" +description: "Bilibili Video Parts API reference for SandBase. Use model bilibili/web/video-parts with /v1/api/bilibili/web/video-parts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/video-parts" -apiReferenceJson: "{\"title\":\"Get Video Parts By bvid\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/video-parts\",\"description\":\"Get Video Parts By bvid\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"bv_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/video-parts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"bv_id\\\": \\\"bv_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"bv_id\\\": \\\"bv_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-parts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"bv_id\\\": \\\"bv_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-parts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/video-parts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/video-parts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/video-parts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/video-parts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/video-parts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/video-parts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili Video Parts\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/video-parts\",\"description\":\"Returns video part details for a specified Bilibili video using its video ID. The response includes the duration and creation timestamp for each segment.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"bv_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/video-parts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"bv_id\\\": \\\"BV1dFad6aEz9\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"bv_id\\\": \\\"BV1dFad6aEz9\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-parts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"bv_id\\\": \\\"BV1dFad6aEz9\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-parts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/video-parts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/video-parts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/video-parts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/video-parts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/video-parts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/video-parts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Video Parts By bvid" + modelName: "Bilibili Video Parts" modelId: "bilibili/web/video-parts" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/video-play-info.md b/model-api-reference/platform-apis/bilibili/web/video-play-info.md index af3bac5d..6cefd0c6 100644 --- a/model-api-reference/platform-apis/bilibili/web/video-play-info.md +++ b/model-api-reference/platform-apis/bilibili/web/video-play-info.md @@ -1,13 +1,13 @@ --- -title: "Get single video play info API Reference" -description: "SandBase API operation bilibili/web/video-play-info." +title: "Bilibili Single Video Play Info API Reference" +description: "SandBase API reference for model bilibili/web/video-play-info. Call /v1/api/bilibili/web/video-play-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/video-play-info" -apiReferenceJson: "{\"title\":\"Get single video play info\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/video-play-info\",\"description\":\"Get single video play info\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Video URL\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/video-play-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://www.bilibili.com/video/BV1S5uKzzE4r\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://www.bilibili.com/video/BV1S5uKzzE4r\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-play-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://www.bilibili.com/video/BV1S5uKzzE4r\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-play-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/video-play-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/video-play-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/video-play-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/video-play-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/video-play-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/video-play-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili Single Video Play Info\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/video-play-info\",\"description\":\"Returns playback stream information, including video stream URLs, MIME types, and frame rates, for a single Bilibili video URL.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Video URL\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/video-play-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://www.bilibili.com/video/BV1S5uKzzE4r\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://www.bilibili.com/video/BV1S5uKzzE4r\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-play-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://www.bilibili.com/video/BV1S5uKzzE4r\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-play-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/video-play-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/video-play-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/video-play-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/video-play-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/video-play-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/video-play-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video play info" + modelName: "Bilibili Single Video Play Info" modelId: "bilibili/web/video-play-info" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/video-playurl.md b/model-api-reference/platform-apis/bilibili/web/video-playurl.md index 02c7f2c2..7c0b483b 100644 --- a/model-api-reference/platform-apis/bilibili/web/video-playurl.md +++ b/model-api-reference/platform-apis/bilibili/web/video-playurl.md @@ -1,13 +1,13 @@ --- -title: "Get video playurl API Reference" -description: "SandBase API operation bilibili/web/video-playurl." +title: "Bilibili Video Playback URL API Reference" +description: "Bilibili Video Playback URL API reference for SandBase. Use model bilibili/web/video-playurl with /v1/api/bilibili/web/video-playurl; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/video-playurl" -apiReferenceJson: "{\"title\":\"Get video playurl\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/video-playurl\",\"description\":\"Get video playurl\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"bv_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"cid\",\"type\":\"string\",\"required\":true,\"description\":\"Video cid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/video-playurl \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"bv_id\\\": \\\"BV1y7411Q7Eq\\\",\\n \\\"cid\\\": \\\"171776208\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"bv_id\\\": \\\"BV1y7411Q7Eq\\\",\\n \\\"cid\\\": \\\"171776208\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-playurl\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"bv_id\\\": \\\"BV1y7411Q7Eq\\\",\\n \\\"cid\\\": \\\"171776208\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-playurl\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/video-playurl\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/video-playurl\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/video-playurl\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/video-playurl\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/video-playurl\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/video-playurl\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili Video Playback URL\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/video-playurl\",\"description\":\"Returns video playback stream URLs and DASH metadata for a specified Bilibili video. Requires both the video identifier and the content identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"bv_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"cid\",\"type\":\"string\",\"required\":true,\"description\":\"Video cid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/video-playurl \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"bv_id\\\": \\\"BV1y7411Q7Eq\\\",\\n \\\"cid\\\": \\\"171776208\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"bv_id\\\": \\\"BV1y7411Q7Eq\\\",\\n \\\"cid\\\": \\\"171776208\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-playurl\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"bv_id\\\": \\\"BV1y7411Q7Eq\\\",\\n \\\"cid\\\": \\\"171776208\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-playurl\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/video-playurl\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/video-playurl\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/video-playurl\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/video-playurl\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/video-playurl\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/video-playurl\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video playurl" + modelName: "Bilibili Video Playback URL" modelId: "bilibili/web/video-playurl" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/video-subtitle.md b/model-api-reference/platform-apis/bilibili/web/video-subtitle.md index 51b3574b..a434f398 100644 --- a/model-api-reference/platform-apis/bilibili/web/video-subtitle.md +++ b/model-api-reference/platform-apis/bilibili/web/video-subtitle.md @@ -1,13 +1,13 @@ --- -title: "Get video subtitle info API Reference" -description: "SandBase API operation bilibili/web/video-subtitle." +title: "Bilibili Video Subtitle Details API Reference" +description: "SandBase API reference for model bilibili/web/video-subtitle. Call /v1/api/bilibili/web/video-subtitle; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/bilibili/web/video-subtitle" -apiReferenceJson: "{\"title\":\"Get video subtitle info\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/video-subtitle\",\"description\":\"Get video subtitle info\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"a_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"c_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video cid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/video-subtitle \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"a_id\\\": \\\"114006081739452\\\",\\n \\\"c_id\\\": \\\"28400484458\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"a_id\\\": \\\"114006081739452\\\",\\n \\\"c_id\\\": \\\"28400484458\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-subtitle\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"a_id\\\": \\\"114006081739452\\\",\\n \\\"c_id\\\": \\\"28400484458\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-subtitle\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/video-subtitle\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/video-subtitle\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/video-subtitle\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/video-subtitle\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/video-subtitle\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/video-subtitle\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Bilibili Video Subtitle Details\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/video-subtitle\",\"description\":\"Returns subtitle data for a specified Bilibili video based on its video ID and CID. Helps retrieve available caption tracks and related metadata.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"a_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"c_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video cid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/video-subtitle \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"a_id\\\": \\\"114006081739452\\\",\\n \\\"c_id\\\": \\\"28400484458\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"a_id\\\": \\\"114006081739452\\\",\\n \\\"c_id\\\": \\\"28400484458\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-subtitle\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"a_id\\\": \\\"114006081739452\\\",\\n \\\"c_id\\\": \\\"28400484458\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/video-subtitle\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/video-subtitle\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/video-subtitle\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/video-subtitle\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/video-subtitle\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/video-subtitle\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/video-subtitle\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video subtitle info" + modelName: "Bilibili Video Subtitle Details" modelId: "bilibili/web/video-subtitle" vendor: "Bilibili" vendorSlug: "bilibili" diff --git a/model-api-reference/platform-apis/bilibili/web/vip-video-playurl.md b/model-api-reference/platform-apis/bilibili/web/vip-video-playurl.md deleted file mode 100644 index fc59f6a0..00000000 --- a/model-api-reference/platform-apis/bilibili/web/vip-video-playurl.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get VIP video playurl API Reference" -description: "SandBase API operation bilibili/web/vip-video-playurl." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/bilibili/web/vip-video-playurl" -apiReferenceJson: "{\"title\":\"Get VIP video playurl\",\"operation\":\"Bilibili API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/bilibili/web/vip-video-playurl\",\"description\":\"Get VIP video playurl\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"bv_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"cid\",\"type\":\"string\",\"required\":true,\"description\":\"Video cid\"},{\"name\":\"cookie\",\"type\":\"string\",\"required\":true,\"description\":\"VIP User Cookie\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, bilibili\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/bilibili/web/vip-video-playurl \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"bv_id\\\": \\\"bv_id\\\",\\n \\\"cid\\\": \\\"cid\\\",\\n \\\"cookie\\\": \\\"cookie\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"bv_id\\\": \\\"bv_id\\\",\\n \\\"cid\\\": \\\"cid\\\",\\n \\\"cookie\\\": \\\"cookie\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/bilibili/web/vip-video-playurl\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"bv_id\\\": \\\"bv_id\\\",\\n \\\"cid\\\": \\\"cid\\\",\\n \\\"cookie\\\": \\\"cookie\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/bilibili/web/vip-video-playurl\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"bilibili/web/vip-video-playurl\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"bilibili/web/vip-video-playurl\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"bilibili/web/vip-video-playurl\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"bilibili/web/vip-video-playurl\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"bilibili/web/vip-video-playurl\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"bilibili/web/vip-video-playurl\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get VIP video playurl" - modelId: "bilibili/web/vip-video-playurl" - vendor: "Bilibili" - vendorSlug: "bilibili" - modelSlug: "web/vip-video-playurl" - protocol: "API Reference" - endpoint: "/v1/api/bilibili/web/vip-video-playurl" - publishedAt: "" - capabilities: ["api","bilibili"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/cloudsway/search.md b/model-api-reference/platform-apis/cloudsway/search.md index 71dc0c88..8eaca4c8 100644 --- a/model-api-reference/platform-apis/cloudsway/search.md +++ b/model-api-reference/platform-apis/cloudsway/search.md @@ -1,13 +1,13 @@ --- -title: "Cloudsway Search API Reference" -description: "SandBase API operation cloudsway/search." +title: "Cloudsway Web Search API Reference" +description: "Cloudsway Web Search API reference for SandBase. Use model cloudsway/search with /v1/api/cloudsway/search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/cloudsway/search" -apiReferenceJson: "{\"title\":\"Cloudsway Search\",\"operation\":\"Cloudsway API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/cloudsway/search\",\"description\":\"Cloudsway SmartSearch is a web search API that returns ranked web results with optional full-text content and dynamic summaries.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"The search query string.\",\"constraints\":\"Length: 1 to unlimited\"},{\"name\":\"max_results\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of results to return.\",\"default\":\"10\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"search_depth\",\"type\":\"string\",\"required\":false,\"description\":\"basic: fast, low-latency search (~1s). advanced: multi-step reasoning with higher quality results (4-40s), costs more.\",\"default\":\"basic\",\"constraints\":\"Allowed values: basic, advanced\"},{\"name\":\"topic\",\"type\":\"string\",\"required\":false,\"description\":\"Content category to focus on.\",\"default\":\"general\",\"constraints\":\"Allowed values: general, news, academic, company, people, finance\"},{\"name\":\"include_highlights\",\"type\":\"boolean\",\"required\":false,\"description\":\"Return key excerpts relevant to the query.\",\"default\":\"true\"},{\"name\":\"include_text\",\"type\":\"boolean\",\"required\":false,\"description\":\"Return full page text content for each result.\",\"default\":\"false\"},{\"name\":\"include_summary\",\"type\":\"boolean\",\"required\":false,\"description\":\"Return a short summary of each result.\",\"default\":\"false\"},{\"name\":\"max_characters\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum characters for text content per result.\",\"default\":\"3000\",\"constraints\":\"Range: 1 to 10000\"},{\"name\":\"include_domains\",\"type\":\"array\",\"required\":false,\"description\":\"Only return results from these domains.\"},{\"name\":\"exclude_domains\",\"type\":\"array\",\"required\":false,\"description\":\"Exclude results from these domains.\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":false,\"description\":\"Only return results published after this date. Format: YYYY-MM-DD.\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":false,\"description\":\"Only return results published before this date. Format: YYYY-MM-DD.\"},{\"name\":\"country\",\"type\":\"string\",\"required\":false,\"description\":\"Two-letter ISO country code for localized results.\",\"constraints\":\"Allowed values: US, GB, CN, JP, DE, FR, KR, IN, CA, AU, SG, BR, RU, IT, ES, NL, SE, CH, IL, AE\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"web-search\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/cloudsway/search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"OpenAI Codex documentation\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"OpenAI Codex documentation\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/cloudsway/search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"OpenAI Codex documentation\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/cloudsway/search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"cloudsway/search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"cloudsway/search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"cloudsway/search\\\",\\\"outputs\\\":[{\\\"data\\\":{\\\"results\\\":[{\\\"title\\\":\\\"completed_data_results_0__title\\\",\\\"url\\\":\\\"https://example.com/resource\\\"}]}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"cloudsway/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"cloudsway/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"cloudsway/search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {\\n \\\"results\\\": [\\n {\\n \\\"title\\\": \\\"completed_data_results_0__title\\\",\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n }\\n ]\\n }\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Cloudsway Web Search\",\"operation\":\"Cloudsway API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/cloudsway/search\",\"description\":\"Web search API for AI agents with topic focus (news, academic, company, finance and more), country, date range and domain filters, plus optional full text, summaries and highlights.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"The search query string.\",\"constraints\":\"Length: 1 to unlimited\"},{\"name\":\"max_results\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of results to return.\",\"default\":\"10\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"search_depth\",\"type\":\"string\",\"required\":false,\"description\":\"basic: fast, low-latency search (~1s). advanced: multi-step reasoning with higher quality results (4-40s), costs more.\",\"default\":\"basic\",\"constraints\":\"Allowed values: basic, advanced\"},{\"name\":\"topic\",\"type\":\"string\",\"required\":false,\"description\":\"Content category to focus on.\",\"default\":\"general\",\"constraints\":\"Allowed values: general, news, academic, company, people, finance\"},{\"name\":\"include_highlights\",\"type\":\"boolean\",\"required\":false,\"description\":\"Return key excerpts relevant to the query.\",\"default\":\"true\"},{\"name\":\"include_text\",\"type\":\"boolean\",\"required\":false,\"description\":\"Return full page text content for each result.\",\"default\":\"false\"},{\"name\":\"include_summary\",\"type\":\"boolean\",\"required\":false,\"description\":\"Return a short summary of each result.\",\"default\":\"false\"},{\"name\":\"max_characters\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum characters for text content per result.\",\"default\":\"3000\",\"constraints\":\"Range: 1 to 10000\"},{\"name\":\"include_domains\",\"type\":\"array\",\"required\":false,\"description\":\"Only return results from these domains.\"},{\"name\":\"exclude_domains\",\"type\":\"array\",\"required\":false,\"description\":\"Exclude results from these domains.\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":false,\"description\":\"Only return results published after this date. Format: YYYY-MM-DD.\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":false,\"description\":\"Only return results published before this date. Format: YYYY-MM-DD.\"},{\"name\":\"country\",\"type\":\"string\",\"required\":false,\"description\":\"Two-letter ISO country code for localized results.\",\"constraints\":\"Allowed values: US, GB, CN, JP, DE, FR, KR, IN, CA, AU, SG, BR, RU, IT, ES, NL, SE, CH, IL, AE\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"web-search\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/cloudsway/search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"OpenAI Codex documentation\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"OpenAI Codex documentation\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/cloudsway/search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"OpenAI Codex documentation\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/cloudsway/search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"cloudsway/search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"cloudsway/search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"cloudsway/search\\\",\\\"outputs\\\":[{\\\"data\\\":{\\\"results\\\":[{\\\"title\\\":\\\"completed_data_results_0__title\\\",\\\"url\\\":\\\"https://example.com/resource\\\"}]}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"cloudsway/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"cloudsway/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"cloudsway/search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {\\n \\\"results\\\": [\\n {\\n \\\"title\\\": \\\"completed_data_results_0__title\\\",\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n }\\n ]\\n }\\n }\\n ]\\n}\"}}" seo: - modelName: "Cloudsway Search" + modelName: "Cloudsway Web Search" modelId: "cloudsway/search" vendor: "Cloudsway" vendorSlug: "cloudsway" diff --git a/model-api-reference/platform-apis/dataforseo/v3/app_data/apple/app_info/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/app_data/apple/app_info/live/advanced.md deleted file mode 100644 index a6fc6860..00000000 --- a/model-api-reference/platform-apis/dataforseo/v3/app_data/apple/app_info/live/advanced.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "App Data Apple App Info API Reference" -description: "SandBase API operation dataforseo/v3/app_data/apple/app_info/live/advanced." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/dataforseo/v3/app_data/apple/app_info/live/advanced" -apiReferenceJson: "{\"title\":\"App Data Apple App Info\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/app_data/apple/app_info/live/advanced\",\"description\":\"Apple App Store app info.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"app, apple, mobile\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/app_data/apple/app_info/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/app_data/apple/app_info/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/app_data/apple/app_info/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/app_data/apple/app_info/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/app_data/apple/app_info/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/app_data/apple/app_info/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/app_data/apple/app_info/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/app_data/apple/app_info/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/app_data/apple/app_info/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/app_data/apple/app_info/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/app_data/apple/app_info/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/app_data/apple/app_info/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "App Data Apple App Info" - modelId: "dataforseo/v3/app_data/apple/app_info/live/advanced" - vendor: "DataForSEO" - vendorSlug: "dataforseo" - modelSlug: "v3/app_data/apple/app_info/live/advanced" - protocol: "API Reference" - endpoint: "/v1/api/dataforseo/v3/app_data/apple/app_info/live/advanced" - publishedAt: "2024-01-01T00:00:00Z" - capabilities: ["app","apple","mobile"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/dataforseo/v3/app_data/apple/app_reviews/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/app_data/apple/app_reviews/live/advanced.md deleted file mode 100644 index 076e6749..00000000 --- a/model-api-reference/platform-apis/dataforseo/v3/app_data/apple/app_reviews/live/advanced.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "App Data Apple App Reviews API Reference" -description: "SandBase API operation dataforseo/v3/app_data/apple/app_reviews/live/advanced." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/dataforseo/v3/app_data/apple/app_reviews/live/advanced" -apiReferenceJson: "{\"title\":\"App Data Apple App Reviews\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/app_data/apple/app_reviews/live/advanced\",\"description\":\"Apple App Store reviews.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"app, apple, reviews, mobile\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/app_data/apple/app_reviews/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/app_data/apple/app_reviews/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/app_data/apple/app_reviews/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/app_data/apple/app_reviews/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/app_data/apple/app_reviews/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/app_data/apple/app_reviews/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/app_data/apple/app_reviews/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/app_data/apple/app_reviews/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/app_data/apple/app_reviews/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/app_data/apple/app_reviews/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/app_data/apple/app_reviews/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/app_data/apple/app_reviews/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "App Data Apple App Reviews" - modelId: "dataforseo/v3/app_data/apple/app_reviews/live/advanced" - vendor: "DataForSEO" - vendorSlug: "dataforseo" - modelSlug: "v3/app_data/apple/app_reviews/live/advanced" - protocol: "API Reference" - endpoint: "/v1/api/dataforseo/v3/app_data/apple/app_reviews/live/advanced" - publishedAt: "2024-01-01T00:00:00Z" - capabilities: ["app","apple","reviews","mobile"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/dataforseo/v3/app_data/google/app_info/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/app_data/google/app_info/live/advanced.md deleted file mode 100644 index 3e84a438..00000000 --- a/model-api-reference/platform-apis/dataforseo/v3/app_data/google/app_info/live/advanced.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "App Data Google App Info API Reference" -description: "SandBase API operation dataforseo/v3/app_data/google/app_info/live/advanced." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/dataforseo/v3/app_data/google/app_info/live/advanced" -apiReferenceJson: "{\"title\":\"App Data Google App Info\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/app_data/google/app_info/live/advanced\",\"description\":\"Google Play app information.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"app, google, mobile\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/app_data/google/app_info/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/app_data/google/app_info/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/app_data/google/app_info/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/app_data/google/app_info/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/app_data/google/app_info/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/app_data/google/app_info/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/app_data/google/app_info/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/app_data/google/app_info/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/app_data/google/app_info/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/app_data/google/app_info/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/app_data/google/app_info/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/app_data/google/app_info/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "App Data Google App Info" - modelId: "dataforseo/v3/app_data/google/app_info/live/advanced" - vendor: "DataForSEO" - vendorSlug: "dataforseo" - modelSlug: "v3/app_data/google/app_info/live/advanced" - protocol: "API Reference" - endpoint: "/v1/api/dataforseo/v3/app_data/google/app_info/live/advanced" - publishedAt: "2024-01-01T00:00:00Z" - capabilities: ["app","google","mobile"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/dataforseo/v3/app_data/google/app_reviews/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/app_data/google/app_reviews/live/advanced.md deleted file mode 100644 index d1065dce..00000000 --- a/model-api-reference/platform-apis/dataforseo/v3/app_data/google/app_reviews/live/advanced.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "App Data Google App Reviews API Reference" -description: "SandBase API operation dataforseo/v3/app_data/google/app_reviews/live/advanced." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/dataforseo/v3/app_data/google/app_reviews/live/advanced" -apiReferenceJson: "{\"title\":\"App Data Google App Reviews\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/app_data/google/app_reviews/live/advanced\",\"description\":\"Google Play app reviews.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"app, google, reviews, mobile\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/app_data/google/app_reviews/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/app_data/google/app_reviews/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/app_data/google/app_reviews/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/app_data/google/app_reviews/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/app_data/google/app_reviews/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/app_data/google/app_reviews/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/app_data/google/app_reviews/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/app_data/google/app_reviews/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/app_data/google/app_reviews/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/app_data/google/app_reviews/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/app_data/google/app_reviews/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/app_data/google/app_reviews/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "App Data Google App Reviews" - modelId: "dataforseo/v3/app_data/google/app_reviews/live/advanced" - vendor: "DataForSEO" - vendorSlug: "dataforseo" - modelSlug: "v3/app_data/google/app_reviews/live/advanced" - protocol: "API Reference" - endpoint: "/v1/api/dataforseo/v3/app_data/google/app_reviews/live/advanced" - publishedAt: "2024-01-01T00:00:00Z" - capabilities: ["app","google","reviews","mobile"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/dataforseo/v3/app_data/google/app_searches/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/app_data/google/app_searches/live/advanced.md deleted file mode 100644 index 1558b93a..00000000 --- a/model-api-reference/platform-apis/dataforseo/v3/app_data/google/app_searches/live/advanced.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "App Data Google App Searches API Reference" -description: "SandBase API operation dataforseo/v3/app_data/google/app_searches/live/advanced." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/dataforseo/v3/app_data/google/app_searches/live/advanced" -apiReferenceJson: "{\"title\":\"App Data Google App Searches\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/app_data/google/app_searches/live/advanced\",\"description\":\"Google Play search results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"app, google, mobile\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/app_data/google/app_searches/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/app_data/google/app_searches/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/app_data/google/app_searches/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/app_data/google/app_searches/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/app_data/google/app_searches/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/app_data/google/app_searches/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/app_data/google/app_searches/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/app_data/google/app_searches/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/app_data/google/app_searches/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/app_data/google/app_searches/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/app_data/google/app_searches/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/app_data/google/app_searches/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "App Data Google App Searches" - modelId: "dataforseo/v3/app_data/google/app_searches/live/advanced" - vendor: "DataForSEO" - vendorSlug: "dataforseo" - modelSlug: "v3/app_data/google/app_searches/live/advanced" - protocol: "API Reference" - endpoint: "/v1/api/dataforseo/v3/app_data/google/app_searches/live/advanced" - publishedAt: "2024-01-01T00:00:00Z" - capabilities: ["app","google","mobile"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/dataforseo/v3/backlinks/anchors/live.md b/model-api-reference/platform-apis/dataforseo/v3/backlinks/anchors/live.md index 0cf53767..0cdf0b4e 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/backlinks/anchors/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/backlinks/anchors/live.md @@ -1,13 +1,13 @@ --- -title: "Backlinks Anchors API Reference" -description: "SandBase API operation dataforseo/v3/backlinks/anchors/live." +title: "DataForSEO Backlinks Anchors API Reference" +description: "SandBase API reference for model dataforseo/v3/backlinks/anchors/live. Call /v1/api/dataforseo/v3/backlinks/anchors/live; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/backlinks/anchors/live" -apiReferenceJson: "{\"title\":\"Backlinks Anchors\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/backlinks/anchors/live\",\"description\":\"Anchor text distribution.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"backlinks, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/anchors/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/anchors/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/anchors/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/anchors/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/anchors/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/anchors/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/anchors/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/anchors/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/anchors/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/anchors/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/anchors/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/anchors/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Backlinks Anchors\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/backlinks/anchors/live\",\"description\":\"Returns anchor text distribution metrics for backlinks pointing to a target website or page. Helps SEO professionals analyze link profile diversity and anchor text optimization.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"backlinks, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/anchors/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/anchors/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/anchors/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/anchors/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/anchors/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/anchors/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/anchors/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/anchors/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/anchors/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Backlinks Anchors" + modelName: "DataForSEO Backlinks Anchors" modelId: "dataforseo/v3/backlinks/anchors/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/backlinks/backlinks/live.md b/model-api-reference/platform-apis/dataforseo/v3/backlinks/backlinks/live.md index c06c72de..362a8fbf 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/backlinks/backlinks/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/backlinks/backlinks/live.md @@ -1,13 +1,13 @@ --- -title: "Backlinks List API Reference" -description: "SandBase API operation dataforseo/v3/backlinks/backlinks/live." +title: "DataForSEO Backlinks List API Reference" +description: "SandBase API reference for model dataforseo/v3/backlinks/backlinks/live. Call /v1/api/dataforseo/v3/backlinks/backlinks/live; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/backlinks/backlinks/live" -apiReferenceJson: "{\"title\":\"Backlinks List\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/backlinks/backlinks/live\",\"description\":\"List of backlinks pointing to a target.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"backlinks, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/backlinks/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/backlinks/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/backlinks/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/backlinks/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/backlinks/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/backlinks/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/backlinks/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/backlinks/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/backlinks/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/backlinks/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/backlinks/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/backlinks/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Backlinks List\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/backlinks/backlinks/live\",\"description\":\"Returns a list of external backlinks pointing to a specified target domain or webpage. Helps SEO teams audit incoming link profiles and evaluate referring page details.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"backlinks, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/backlinks/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/backlinks/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/backlinks/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/backlinks/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/backlinks/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/backlinks/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/backlinks/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/backlinks/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/backlinks/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Backlinks List" + modelName: "DataForSEO Backlinks List" modelId: "dataforseo/v3/backlinks/backlinks/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/backlinks/bulk_ranks/live.md b/model-api-reference/platform-apis/dataforseo/v3/backlinks/bulk_ranks/live.md index 8a4c0552..f960471e 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/backlinks/bulk_ranks/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/backlinks/bulk_ranks/live.md @@ -1,13 +1,13 @@ --- -title: "Backlinks Bulk Ranks API Reference" -description: "SandBase API operation dataforseo/v3/backlinks/bulk_ranks/live." +title: "DataForSEO Backlinks Bulk Ranks API Reference" +description: "SandBase API reference for model dataforseo/v3/backlinks/bulk_ranks/live. Call /v1/api/dataforseo/v3/backlinks/bulk_ranks/live; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/backlinks/bulk_ranks/live" -apiReferenceJson: "{\"title\":\"Backlinks Bulk Ranks\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/backlinks/bulk_ranks/live\",\"description\":\"Bulk domain/page rank check.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"backlinks, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/bulk_ranks/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/bulk_ranks/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/bulk_ranks/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/bulk_ranks/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/bulk_ranks/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/bulk_ranks/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/bulk_ranks/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/bulk_ranks/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/bulk_ranks/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/bulk_ranks/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/bulk_ranks/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/bulk_ranks/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Backlinks Bulk Ranks\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/backlinks/bulk_ranks/live\",\"description\":\"Returns rank metrics for multiple domains or pages in bulk. Evaluates backlink authority and score indicators across a list of target URLs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"backlinks, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/bulk_ranks/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/bulk_ranks/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/bulk_ranks/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/bulk_ranks/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/bulk_ranks/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/bulk_ranks/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/bulk_ranks/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/bulk_ranks/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/bulk_ranks/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Backlinks Bulk Ranks" + modelName: "DataForSEO Backlinks Bulk Ranks" modelId: "dataforseo/v3/backlinks/bulk_ranks/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/backlinks/competitors/live.md b/model-api-reference/platform-apis/dataforseo/v3/backlinks/competitors/live.md index 75617424..1d075634 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/backlinks/competitors/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/backlinks/competitors/live.md @@ -1,13 +1,13 @@ --- -title: "Backlinks Competitors API Reference" -description: "SandBase API operation dataforseo/v3/backlinks/competitors/live." +title: "DataForSEO Backlinks Competitors API Reference" +description: "SandBase API reference for model dataforseo/v3/backlinks/competitors/live. Call /v1/api/dataforseo/v3/backlinks/competitors/live; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/backlinks/competitors/live" -apiReferenceJson: "{\"title\":\"Backlinks Competitors\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/backlinks/competitors/live\",\"description\":\"Domains competing for similar backlinks.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"backlinks, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/competitors/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/competitors/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/competitors/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/competitors/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/competitors/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/competitors/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/competitors/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/competitors/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/competitors/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/competitors/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/competitors/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/competitors/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Backlinks Competitors\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/backlinks/competitors/live\",\"description\":\"Returns domains that compete for similar backlink profiles. Analyze competitor backlink sources and compare link-building overlaps across related websites.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"backlinks, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/competitors/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/competitors/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/competitors/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/competitors/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/competitors/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/competitors/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/competitors/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/competitors/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/competitors/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Backlinks Competitors" + modelName: "DataForSEO Backlinks Competitors" modelId: "dataforseo/v3/backlinks/competitors/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/backlinks/domain_pages/live.md b/model-api-reference/platform-apis/dataforseo/v3/backlinks/domain_pages/live.md index 7c5dac4d..da8a2fd8 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/backlinks/domain_pages/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/backlinks/domain_pages/live.md @@ -1,13 +1,13 @@ --- -title: "Backlinks Domain Pages API Reference" -description: "SandBase API operation dataforseo/v3/backlinks/domain_pages/live." +title: "DataForSEO Backlinks Domain Pages API Reference" +description: "SandBase API reference for model dataforseo/v3/backlinks/domain_pages/live. Call /v1/api/dataforseo/v3/backlinks/domain_pages/live; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/backlinks/domain_pages/live" -apiReferenceJson: "{\"title\":\"Backlinks Domain Pages\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/backlinks/domain_pages/live\",\"description\":\"Pages with backlink data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"backlinks, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/domain_pages/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/domain_pages/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/domain_pages/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/domain_pages/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/domain_pages/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/domain_pages/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/domain_pages/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/domain_pages/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/domain_pages/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/domain_pages/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/domain_pages/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/domain_pages/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Backlinks Domain Pages\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/backlinks/domain_pages/live\",\"description\":\"Returns a list of pages on a target domain along with their backlink metrics and link profile statistics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"backlinks, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/domain_pages/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/domain_pages/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/domain_pages/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/domain_pages/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/domain_pages/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/domain_pages/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/domain_pages/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/domain_pages/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/domain_pages/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Backlinks Domain Pages" + modelName: "DataForSEO Backlinks Domain Pages" modelId: "dataforseo/v3/backlinks/domain_pages/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/backlinks/referring_domains/live.md b/model-api-reference/platform-apis/dataforseo/v3/backlinks/referring_domains/live.md index 9f4ba4cf..64a1620a 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/backlinks/referring_domains/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/backlinks/referring_domains/live.md @@ -1,13 +1,13 @@ --- -title: "Backlinks Referring Domains API Reference" -description: "SandBase API operation dataforseo/v3/backlinks/referring_domains/live." +title: "DataForSEO Backlinks Referring Domains API Reference" +description: "SandBase API reference: dataforseo/v3/backlinks/referring_domains/live via /v1/api/dataforseo/v3/backlinks/referring_domains/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/backlinks/referring_domains/live" -apiReferenceJson: "{\"title\":\"Backlinks Referring Domains\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/backlinks/referring_domains/live\",\"description\":\"Domains linking to a target.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"backlinks, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/referring_domains/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/referring_domains/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/referring_domains/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/referring_domains/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/referring_domains/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/referring_domains/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/referring_domains/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/referring_domains/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/referring_domains/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/referring_domains/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/referring_domains/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/referring_domains/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Backlinks Referring Domains\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/backlinks/referring_domains/live\",\"description\":\"Returns a list of referring domains that link to a specified target domain or page. Inspect inbound domain metrics, link counts, and authority data for SEO research.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"backlinks, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/referring_domains/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/referring_domains/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/referring_domains/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/referring_domains/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/referring_domains/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/referring_domains/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/referring_domains/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/referring_domains/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/referring_domains/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Backlinks Referring Domains" + modelName: "DataForSEO Backlinks Referring Domains" modelId: "dataforseo/v3/backlinks/referring_domains/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/backlinks/referring_pages/live.md b/model-api-reference/platform-apis/dataforseo/v3/backlinks/referring_pages/live.md deleted file mode 100644 index af1e477f..00000000 --- a/model-api-reference/platform-apis/dataforseo/v3/backlinks/referring_pages/live.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Backlinks Referring Pages API Reference" -description: "SandBase API operation dataforseo/v3/backlinks/referring_pages/live." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/dataforseo/v3/backlinks/referring_pages/live" -apiReferenceJson: "{\"title\":\"Backlinks Referring Pages\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/backlinks/referring_pages/live\",\"description\":\"Pages linking to a target.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"backlinks, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/referring_pages/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/referring_pages/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/referring_pages/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/referring_pages/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/referring_pages/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/referring_pages/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/referring_pages/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/referring_pages/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/referring_pages/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/referring_pages/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/referring_pages/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/referring_pages/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Backlinks Referring Pages" - modelId: "dataforseo/v3/backlinks/referring_pages/live" - vendor: "DataForSEO" - vendorSlug: "dataforseo" - modelSlug: "v3/backlinks/referring_pages/live" - protocol: "API Reference" - endpoint: "/v1/api/dataforseo/v3/backlinks/referring_pages/live" - publishedAt: "2024-01-01T00:00:00Z" - capabilities: ["backlinks","seo"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/dataforseo/v3/backlinks/summary/live.md b/model-api-reference/platform-apis/dataforseo/v3/backlinks/summary/live.md index 2585cee8..5c95f633 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/backlinks/summary/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/backlinks/summary/live.md @@ -1,13 +1,13 @@ --- -title: "Backlinks Summary API Reference" -description: "SandBase API operation dataforseo/v3/backlinks/summary/live." +title: "DataForSEO Backlinks Summary API Reference" +description: "SandBase API reference for model dataforseo/v3/backlinks/summary/live. Call /v1/api/dataforseo/v3/backlinks/summary/live; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/backlinks/summary/live" -apiReferenceJson: "{\"title\":\"Backlinks Summary\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/backlinks/summary/live\",\"description\":\"Overview of backlink profile metrics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"backlinks, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/summary/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/summary/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/summary/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/summary/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/summary/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/summary/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/summary/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/summary/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/summary/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/summary/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/summary/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/summary/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Backlinks Summary\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/backlinks/summary/live\",\"description\":\"Returns high-level backlink profile metrics and overview data for a target domain or URL. Helps evaluate link authority and overall link counts for SEO analysis.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"backlinks, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/summary/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/summary/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/backlinks/summary/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/summary/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/summary/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/summary/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/summary/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/backlinks/summary/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/backlinks/summary/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Backlinks Summary" + modelName: "DataForSEO Backlinks Summary" modelId: "dataforseo/v3/backlinks/summary/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/business_data/google/hotel_searches/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/business_data/google/hotel_searches/live/advanced.md index a1526cb2..5975d3fe 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/business_data/google/hotel_searches/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/business_data/google/hotel_searches/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "Business Data Google Hotels API Reference" -description: "SandBase API operation dataforseo/v3/business_data/google/hotel_searches/live/advanced." +title: "DataForSEO Google Hotel Search Advanced API Reference" +description: "SandBase API reference for dataforseo/v3/business_data/google/hotel_searches/live/advanced. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/business_data/google/hotel_searches/live/advanced" -apiReferenceJson: "{\"title\":\"Business Data Google Hotels\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/business_data/google/hotel_searches/live/advanced\",\"description\":\"Google Hotel search results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"business, google, hotels, travel\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/business_data/google/hotel_searches/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/business_data/google/hotel_searches/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/business_data/google/hotel_searches/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/business_data/google/hotel_searches/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/business_data/google/hotel_searches/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/business_data/google/hotel_searches/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/google/hotel_searches/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/google/hotel_searches/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/google/hotel_searches/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/google/hotel_searches/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/google/hotel_searches/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/business_data/google/hotel_searches/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Hotel Search Advanced\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/business_data/google/hotel_searches/live/advanced\",\"description\":\"Returns detailed Google Hotel search results and business data for target locations. Provides hotel listings, guest ratings, and business attributes directly from Google.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"business, google, hotels, travel\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/business_data/google/hotel_searches/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/business_data/google/hotel_searches/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/business_data/google/hotel_searches/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/google/hotel_searches/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/google/hotel_searches/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/google/hotel_searches/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/google/hotel_searches/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/google/hotel_searches/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/business_data/google/hotel_searches/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Business Data Google Hotels" + modelName: "DataForSEO Google Hotel Search Advanced" modelId: "dataforseo/v3/business_data/google/hotel_searches/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/business_data/google/my_business_info/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/business_data/google/my_business_info/live/advanced.md index 16e6f3c1..6c78edc6 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/business_data/google/my_business_info/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/business_data/google/my_business_info/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "Business Data Google My Business API Reference" -description: "SandBase API operation dataforseo/v3/business_data/google/my_business_info/live/advanced." +title: "DataForSEO Google Business Listing Info API Reference" +description: "SandBase API reference for dataforseo/v3/business_data/google/my_business_info/live/advanced. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/business_data/google/my_business_info/live/advanced" -apiReferenceJson: "{\"title\":\"Business Data Google My Business\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/business_data/google/my_business_info/live/advanced\",\"description\":\"Google My Business listing info.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"business, google, local\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/business_data/google/my_business_info/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/business_data/google/my_business_info/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/business_data/google/my_business_info/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/business_data/google/my_business_info/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/business_data/google/my_business_info/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/business_data/google/my_business_info/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/google/my_business_info/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/google/my_business_info/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/google/my_business_info/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/google/my_business_info/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/google/my_business_info/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/business_data/google/my_business_info/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Business Listing Info\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/business_data/google/my_business_info/live/advanced\",\"description\":\"Returns comprehensive Google Business Profile data, including local listing details, customer reviews, ratings, and business attributes for targeted locations.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"business, google, local\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/business_data/google/my_business_info/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/business_data/google/my_business_info/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/business_data/google/my_business_info/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/google/my_business_info/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/google/my_business_info/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/google/my_business_info/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/google/my_business_info/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/google/my_business_info/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/business_data/google/my_business_info/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Business Data Google My Business" + modelName: "DataForSEO Google Business Listing Info" modelId: "dataforseo/v3/business_data/google/my_business_info/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/business_data/google/reviews/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/business_data/google/reviews/live/advanced.md deleted file mode 100644 index 6a008459..00000000 --- a/model-api-reference/platform-apis/dataforseo/v3/business_data/google/reviews/live/advanced.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Business Data Google Reviews API Reference" -description: "SandBase API operation dataforseo/v3/business_data/google/reviews/live/advanced." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/dataforseo/v3/business_data/google/reviews/live/advanced" -apiReferenceJson: "{\"title\":\"Business Data Google Reviews\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/business_data/google/reviews/live/advanced\",\"description\":\"Google business reviews.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"business, google, reviews, local\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/business_data/google/reviews/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/business_data/google/reviews/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/business_data/google/reviews/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/business_data/google/reviews/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/business_data/google/reviews/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/business_data/google/reviews/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/google/reviews/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/google/reviews/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/google/reviews/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/google/reviews/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/google/reviews/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/business_data/google/reviews/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Business Data Google Reviews" - modelId: "dataforseo/v3/business_data/google/reviews/live/advanced" - vendor: "DataForSEO" - vendorSlug: "dataforseo" - modelSlug: "v3/business_data/google/reviews/live/advanced" - protocol: "API Reference" - endpoint: "/v1/api/dataforseo/v3/business_data/google/reviews/live/advanced" - publishedAt: "2024-01-01T00:00:00Z" - capabilities: ["business","google","reviews","local"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/dataforseo/v3/business_data/trustpilot/reviews/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/business_data/trustpilot/reviews/live/advanced.md deleted file mode 100644 index 34cdbf43..00000000 --- a/model-api-reference/platform-apis/dataforseo/v3/business_data/trustpilot/reviews/live/advanced.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Business Data Trustpilot Reviews API Reference" -description: "SandBase API operation dataforseo/v3/business_data/trustpilot/reviews/live/advanced." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/dataforseo/v3/business_data/trustpilot/reviews/live/advanced" -apiReferenceJson: "{\"title\":\"Business Data Trustpilot Reviews\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/business_data/trustpilot/reviews/live/advanced\",\"description\":\"Trustpilot business reviews.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"business, trustpilot, reviews\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/business_data/trustpilot/reviews/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/business_data/trustpilot/reviews/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/business_data/trustpilot/reviews/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/business_data/trustpilot/reviews/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/business_data/trustpilot/reviews/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/business_data/trustpilot/reviews/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/trustpilot/reviews/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/trustpilot/reviews/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/trustpilot/reviews/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/trustpilot/reviews/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/trustpilot/reviews/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/business_data/trustpilot/reviews/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Business Data Trustpilot Reviews" - modelId: "dataforseo/v3/business_data/trustpilot/reviews/live/advanced" - vendor: "DataForSEO" - vendorSlug: "dataforseo" - modelSlug: "v3/business_data/trustpilot/reviews/live/advanced" - protocol: "API Reference" - endpoint: "/v1/api/dataforseo/v3/business_data/trustpilot/reviews/live/advanced" - publishedAt: "2024-01-01T00:00:00Z" - capabilities: ["business","trustpilot","reviews"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/dataforseo/v3/business_data/yelp/reviews/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/business_data/yelp/reviews/live/advanced.md deleted file mode 100644 index 83fc9cd2..00000000 --- a/model-api-reference/platform-apis/dataforseo/v3/business_data/yelp/reviews/live/advanced.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Business Data Yelp Reviews API Reference" -description: "SandBase API operation dataforseo/v3/business_data/yelp/reviews/live/advanced." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/dataforseo/v3/business_data/yelp/reviews/live/advanced" -apiReferenceJson: "{\"title\":\"Business Data Yelp Reviews\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/business_data/yelp/reviews/live/advanced\",\"description\":\"Yelp business reviews.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"business, yelp, reviews\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/business_data/yelp/reviews/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/business_data/yelp/reviews/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/business_data/yelp/reviews/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/business_data/yelp/reviews/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/business_data/yelp/reviews/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/business_data/yelp/reviews/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/yelp/reviews/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/yelp/reviews/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/yelp/reviews/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/yelp/reviews/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/yelp/reviews/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/business_data/yelp/reviews/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Business Data Yelp Reviews" - modelId: "dataforseo/v3/business_data/yelp/reviews/live/advanced" - vendor: "DataForSEO" - vendorSlug: "dataforseo" - modelSlug: "v3/business_data/yelp/reviews/live/advanced" - protocol: "API Reference" - endpoint: "/v1/api/dataforseo/v3/business_data/yelp/reviews/live/advanced" - publishedAt: "2024-01-01T00:00:00Z" - capabilities: ["business","yelp","reviews"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/dataforseo/v3/business_data/yelp/search/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/business_data/yelp/search/live/advanced.md deleted file mode 100644 index 64a4de7c..00000000 --- a/model-api-reference/platform-apis/dataforseo/v3/business_data/yelp/search/live/advanced.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Business Data Yelp Search API Reference" -description: "SandBase API operation dataforseo/v3/business_data/yelp/search/live/advanced." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/dataforseo/v3/business_data/yelp/search/live/advanced" -apiReferenceJson: "{\"title\":\"Business Data Yelp Search\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/business_data/yelp/search/live/advanced\",\"description\":\"Yelp business search.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"business, yelp, local\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/business_data/yelp/search/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/business_data/yelp/search/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/business_data/yelp/search/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/business_data/yelp/search/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/business_data/yelp/search/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/business_data/yelp/search/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/yelp/search/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/yelp/search/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/yelp/search/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/yelp/search/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/business_data/yelp/search/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/business_data/yelp/search/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Business Data Yelp Search" - modelId: "dataforseo/v3/business_data/yelp/search/live/advanced" - vendor: "DataForSEO" - vendorSlug: "dataforseo" - modelSlug: "v3/business_data/yelp/search/live/advanced" - protocol: "API Reference" - endpoint: "/v1/api/dataforseo/v3/business_data/yelp/search/live/advanced" - publishedAt: "2024-01-01T00:00:00Z" - capabilities: ["business","yelp","local"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/dataforseo/v3/content_analysis/rating_distribution/live.md b/model-api-reference/platform-apis/dataforseo/v3/content_analysis/rating_distribution/live.md index 5b0f7e08..f8f15b8d 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/content_analysis/rating_distribution/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/content_analysis/rating_distribution/live.md @@ -1,13 +1,13 @@ --- -title: "Content Analysis Ratings API Reference" -description: "SandBase API operation dataforseo/v3/content_analysis/rating_distribution/live." +title: "DataForSEO Content Analysis Rating Distribution API Reference" +description: "SandBase API reference for dataforseo/v3/content_analysis/rating_distribution/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/content_analysis/rating_distribution/live" -apiReferenceJson: "{\"title\":\"Content Analysis Ratings\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/content_analysis/rating_distribution/live\",\"description\":\"Rating distribution across sources.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"content, analysis, ratings\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/content_analysis/rating_distribution/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/content_analysis/rating_distribution/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/content_analysis/rating_distribution/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/content_analysis/rating_distribution/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/content_analysis/rating_distribution/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/content_analysis/rating_distribution/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/rating_distribution/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/rating_distribution/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/rating_distribution/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/rating_distribution/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/rating_distribution/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/content_analysis/rating_distribution/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Content Analysis Rating Distribution\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/content_analysis/rating_distribution/live\",\"description\":\"Returns the distribution of ratings across analyzed web content and media sources. Helps evaluate audience sentiment and review scores across aggregated citations.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"content, analysis, ratings\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/content_analysis/rating_distribution/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/content_analysis/rating_distribution/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/content_analysis/rating_distribution/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/rating_distribution/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/rating_distribution/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/rating_distribution/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/rating_distribution/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/rating_distribution/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/content_analysis/rating_distribution/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Content Analysis Ratings" + modelName: "DataForSEO Content Analysis Rating Distribution" modelId: "dataforseo/v3/content_analysis/rating_distribution/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/content_analysis/search/live.md b/model-api-reference/platform-apis/dataforseo/v3/content_analysis/search/live.md index e55c54db..cbbe85e2 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/content_analysis/search/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/content_analysis/search/live.md @@ -1,13 +1,13 @@ --- -title: "Content Analysis Search API Reference" -description: "SandBase API operation dataforseo/v3/content_analysis/search/live." +title: "DataForSEO Content Analysis Search API Reference" +description: "SandBase API reference for model dataforseo/v3/content_analysis/search/live. Call /v1/api/dataforseo/v3/content_analysis/search/live; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/content_analysis/search/live" -apiReferenceJson: "{\"title\":\"Content Analysis Search\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/content_analysis/search/live\",\"description\":\"Search web content by topic.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"content, analysis, nlp\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/content_analysis/search/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/content_analysis/search/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/content_analysis/search/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/content_analysis/search/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/content_analysis/search/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/content_analysis/search/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/search/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/search/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/search/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/search/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/search/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/content_analysis/search/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Content Analysis Search\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/content_analysis/search/live\",\"description\":\"Returns web content analysis results matching specified search topics. Useful for evaluating online content, monitoring discussions, and performing natural language processing workflows across web sources.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"content, analysis, nlp\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/content_analysis/search/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/content_analysis/search/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/content_analysis/search/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/search/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/search/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/search/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/search/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/search/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/content_analysis/search/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Content Analysis Search" + modelName: "DataForSEO Content Analysis Search" modelId: "dataforseo/v3/content_analysis/search/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/content_analysis/sentiment_analysis/live.md b/model-api-reference/platform-apis/dataforseo/v3/content_analysis/sentiment_analysis/live.md index c682ba09..09c81fa5 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/content_analysis/sentiment_analysis/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/content_analysis/sentiment_analysis/live.md @@ -1,13 +1,13 @@ --- -title: "Content Analysis Sentiment API Reference" -description: "SandBase API operation dataforseo/v3/content_analysis/sentiment_analysis/live." +title: "DataForSEO Content Sentiment Analysis API Reference" +description: "SandBase API reference for dataforseo/v3/content_analysis/sentiment_analysis/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/content_analysis/sentiment_analysis/live" -apiReferenceJson: "{\"title\":\"Content Analysis Sentiment\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/content_analysis/sentiment_analysis/live\",\"description\":\"Sentiment analysis for content.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"content, analysis, sentiment, nlp\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/content_analysis/sentiment_analysis/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/content_analysis/sentiment_analysis/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/content_analysis/sentiment_analysis/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/content_analysis/sentiment_analysis/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/content_analysis/sentiment_analysis/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/content_analysis/sentiment_analysis/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/sentiment_analysis/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/sentiment_analysis/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/sentiment_analysis/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/sentiment_analysis/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/sentiment_analysis/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/content_analysis/sentiment_analysis/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Content Sentiment Analysis\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/content_analysis/sentiment_analysis/live\",\"description\":\"Evaluates text content to determine sentiment scores and emotional tone. Returns sentiment classifications and polarity metrics across analyzed web content.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"content, analysis, sentiment, nlp\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/content_analysis/sentiment_analysis/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/content_analysis/sentiment_analysis/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/content_analysis/sentiment_analysis/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/sentiment_analysis/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/sentiment_analysis/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/sentiment_analysis/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/sentiment_analysis/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/sentiment_analysis/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/content_analysis/sentiment_analysis/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Content Analysis Sentiment" + modelName: "DataForSEO Content Sentiment Analysis" modelId: "dataforseo/v3/content_analysis/sentiment_analysis/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/content_analysis/summary/live.md b/model-api-reference/platform-apis/dataforseo/v3/content_analysis/summary/live.md index 3dcd5a74..33fa6bb7 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/content_analysis/summary/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/content_analysis/summary/live.md @@ -1,13 +1,13 @@ --- -title: "Content Analysis Summary API Reference" -description: "SandBase API operation dataforseo/v3/content_analysis/summary/live." +title: "DataForSEO Content Analysis Summary API Reference" +description: "SandBase API reference for model dataforseo/v3/content_analysis/summary/live. Call /v1/api/dataforseo/v3/content_analysis/summary/live; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/content_analysis/summary/live" -apiReferenceJson: "{\"title\":\"Content Analysis Summary\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/content_analysis/summary/live\",\"description\":\"Aggregated content metrics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"content, analysis\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/content_analysis/summary/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/content_analysis/summary/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/content_analysis/summary/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/content_analysis/summary/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/content_analysis/summary/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/content_analysis/summary/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/summary/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/summary/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/summary/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/summary/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/summary/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/content_analysis/summary/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Content Analysis Summary\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/content_analysis/summary/live\",\"description\":\"Returns aggregated content metrics and high-level citation statistics for content analysis workflows. Evaluates summary indicators across analyzed online content.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"content, analysis\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/content_analysis/summary/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/content_analysis/summary/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/content_analysis/summary/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/summary/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/summary/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/summary/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/summary/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/content_analysis/summary/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/content_analysis/summary/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Content Analysis Summary" + modelName: "DataForSEO Content Analysis Summary" modelId: "dataforseo/v3/content_analysis/summary/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live.md b/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live.md index f8345f9d..630a41e4 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live.md @@ -1,13 +1,13 @@ --- -title: "Labs Google Bulk Keyword Difficulty API Reference" -description: "SandBase API operation dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live." +title: "DataForSEO Labs Google Bulk Keyword Difficulty API Reference" +description: "SandBase API reference for dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live" -apiReferenceJson: "{\"title\":\"Labs Google Bulk Keyword Difficulty\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live\",\"description\":\"Keyword difficulty scores in bulk.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"labs, keywords, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Labs Google Bulk Keyword Difficulty\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live\",\"description\":\"Returns Google keyword difficulty metrics in bulk for target search queries. Enables large-scale SEO competition analysis across multiple keywords simultaneously.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"labs, keywords, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Labs Google Bulk Keyword Difficulty" + modelName: "DataForSEO Labs Google Bulk Keyword Difficulty" modelId: "dataforseo/v3/dataforseo_labs/google/bulk_keyword_difficulty/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/competitors_domain/live.md b/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/competitors_domain/live.md index 1efd1129..cefa1b61 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/competitors_domain/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/competitors_domain/live.md @@ -1,13 +1,13 @@ --- -title: "Labs Google Competitors Domain API Reference" -description: "SandBase API operation dataforseo/v3/dataforseo_labs/google/competitors_domain/live." +title: "DataForSEO Google Competitors Domain API Reference" +description: "SandBase API reference for dataforseo/v3/dataforseo_labs/google/competitors_domain/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/dataforseo_labs/google/competitors_domain/live" -apiReferenceJson: "{\"title\":\"Labs Google Competitors Domain\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/dataforseo_labs/google/competitors_domain/live\",\"description\":\"Competing domains analysis.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"labs, competitors, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/competitors_domain/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/competitors_domain/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/competitors_domain/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/competitors_domain/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/competitors_domain/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/competitors_domain/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/competitors_domain/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/competitors_domain/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/competitors_domain/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/competitors_domain/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/competitors_domain/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/competitors_domain/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Competitors Domain\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/dataforseo_labs/google/competitors_domain/live\",\"description\":\"Returns Google organic search competitor domains and comparative ranking metrics for a specified domain, enabling competitive research and market analysis.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"labs, competitors, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/competitors_domain/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/competitors_domain/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/competitors_domain/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/competitors_domain/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/competitors_domain/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/competitors_domain/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/competitors_domain/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/competitors_domain/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/competitors_domain/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Labs Google Competitors Domain" + modelName: "DataForSEO Google Competitors Domain" modelId: "dataforseo/v3/dataforseo_labs/google/competitors_domain/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/domain_intersection/live.md b/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/domain_intersection/live.md index 53658693..93e47666 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/domain_intersection/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/domain_intersection/live.md @@ -1,13 +1,13 @@ --- -title: "Labs Google Domain Intersection API Reference" -description: "SandBase API operation dataforseo/v3/dataforseo_labs/google/domain_intersection/live." +title: "DataForSEO Google Domain Intersection API Reference" +description: "SandBase API reference for dataforseo/v3/dataforseo_labs/google/domain_intersection/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/dataforseo_labs/google/domain_intersection/live" -apiReferenceJson: "{\"title\":\"Labs Google Domain Intersection\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/dataforseo_labs/google/domain_intersection/live\",\"description\":\"Common keywords between domains.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"labs, domain, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/domain_intersection/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/domain_intersection/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/domain_intersection/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/domain_intersection/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/domain_intersection/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/domain_intersection/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/domain_intersection/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/domain_intersection/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/domain_intersection/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/domain_intersection/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/domain_intersection/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/domain_intersection/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Domain Intersection\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/dataforseo_labs/google/domain_intersection/live\",\"description\":\"Returns common Google search keywords shared between specified domains. Helps analyze competitive keyword overlap and search ranking intersections.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"labs, domain, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/domain_intersection/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/domain_intersection/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/domain_intersection/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/domain_intersection/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/domain_intersection/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/domain_intersection/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/domain_intersection/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/domain_intersection/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/domain_intersection/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Labs Google Domain Intersection" + modelName: "DataForSEO Google Domain Intersection" modelId: "dataforseo/v3/dataforseo_labs/google/domain_intersection/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live.md b/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live.md index 2f8de1f9..23899eee 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live.md @@ -1,13 +1,13 @@ --- -title: "Labs Google Domain Rank Overview API Reference" -description: "SandBase API operation dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live." +title: "DataForSEO Google Domain Rank Overview API Reference" +description: "SandBase API reference for dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live" -apiReferenceJson: "{\"title\":\"Labs Google Domain Rank Overview\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live\",\"description\":\"Domain ranking metrics overview.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"labs, domain, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Domain Rank Overview\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live\",\"description\":\"Returns Google domain ranking overview metrics and search visibility details. It provides high-level ranking metrics to evaluate domain performance across search engine results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"labs, domain, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Labs Google Domain Rank Overview" + modelName: "DataForSEO Google Domain Rank Overview" modelId: "dataforseo/v3/dataforseo_labs/google/domain_rank_overview/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/historical_search_volume/live.md b/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/historical_search_volume/live.md index b5dc1f52..182da555 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/historical_search_volume/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/historical_search_volume/live.md @@ -1,13 +1,13 @@ --- -title: "Labs Google Historical Search Volume API Reference" -description: "SandBase API operation dataforseo/v3/dataforseo_labs/google/historical_search_volume/live." +title: "DataForSEO Google Historical Search Volume API Reference" +description: "SandBase API reference for dataforseo/v3/dataforseo_labs/google/historical_search_volume/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/dataforseo_labs/google/historical_search_volume/live" -apiReferenceJson: "{\"title\":\"Labs Google Historical Search Volume\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/dataforseo_labs/google/historical_search_volume/live\",\"description\":\"Historical monthly search volumes.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"labs, keywords, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/historical_search_volume/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/historical_search_volume/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/historical_search_volume/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/historical_search_volume/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/historical_search_volume/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/historical_search_volume/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/historical_search_volume/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/historical_search_volume/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/historical_search_volume/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/historical_search_volume/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/historical_search_volume/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/historical_search_volume/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Historical Search Volume\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/dataforseo_labs/google/historical_search_volume/live\",\"description\":\"Get historical Google search volume for keywords from DataForSEO Labs: monthly searches, CPC, competition and keyword properties by location and language.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"labs, keywords, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/historical_search_volume/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/historical_search_volume/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/historical_search_volume/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/historical_search_volume/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/historical_search_volume/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/historical_search_volume/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/historical_search_volume/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/historical_search_volume/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/historical_search_volume/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Labs Google Historical Search Volume" + modelName: "DataForSEO Google Historical Search Volume" modelId: "dataforseo/v3/dataforseo_labs/google/historical_search_volume/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/keyword_ideas/live.md b/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/keyword_ideas/live.md index c7207f3e..1868c116 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/keyword_ideas/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/keyword_ideas/live.md @@ -1,13 +1,13 @@ --- -title: "Labs Google Keyword Ideas API Reference" -description: "SandBase API operation dataforseo/v3/dataforseo_labs/google/keyword_ideas/live." +title: "DataForSEO Google Keyword Ideas API Reference" +description: "SandBase API reference for dataforseo/v3/dataforseo_labs/google/keyword_ideas/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/dataforseo_labs/google/keyword_ideas/live" -apiReferenceJson: "{\"title\":\"Labs Google Keyword Ideas\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/dataforseo_labs/google/keyword_ideas/live\",\"description\":\"Keyword ideas with volume and CPC.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"labs, keywords, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/keyword_ideas/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/keyword_ideas/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/keyword_ideas/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/keyword_ideas/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/keyword_ideas/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/keyword_ideas/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keyword_ideas/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keyword_ideas/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keyword_ideas/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keyword_ideas/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keyword_ideas/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/keyword_ideas/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Keyword Ideas\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/dataforseo_labs/google/keyword_ideas/live\",\"description\":\"Returns Google keyword suggestions alongside search volume and CPC metrics for SEO analysis. Helps research related search queries and evaluate keyword potential.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"labs, keywords, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/keyword_ideas/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/keyword_ideas/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/keyword_ideas/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keyword_ideas/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keyword_ideas/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keyword_ideas/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keyword_ideas/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keyword_ideas/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/keyword_ideas/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Labs Google Keyword Ideas" + modelName: "DataForSEO Google Keyword Ideas" modelId: "dataforseo/v3/dataforseo_labs/google/keyword_ideas/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live.md b/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live.md index 29a21111..8fe8ad49 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live.md @@ -1,13 +1,13 @@ --- -title: "Labs Google Keyword Suggestions API Reference" -description: "SandBase API operation dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live." +title: "DataForSEO Labs Google Keyword Suggestions API Reference" +description: "SandBase API reference for dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live" -apiReferenceJson: "{\"title\":\"Labs Google Keyword Suggestions\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live\",\"description\":\"Keyword suggestions with metrics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"labs, keywords, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Labs Google Keyword Suggestions\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live\",\"description\":\"Returns Google keyword suggestions alongside relevant search metrics from DataForSEO Labs. Enables discovery of related search terms and query opportunities.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"labs, keywords, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Labs Google Keyword Suggestions" + modelName: "DataForSEO Labs Google Keyword Suggestions" modelId: "dataforseo/v3/dataforseo_labs/google/keyword_suggestions/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/keywords_for_site/live.md b/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/keywords_for_site/live.md index 5cf5823c..ec009bd9 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/keywords_for_site/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/keywords_for_site/live.md @@ -1,13 +1,13 @@ --- -title: "Labs Google Keywords for Site API Reference" -description: "SandBase API operation dataforseo/v3/dataforseo_labs/google/keywords_for_site/live." +title: "DataForSEO Google Keywords for Site API Reference" +description: "SandBase API reference for dataforseo/v3/dataforseo_labs/google/keywords_for_site/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/dataforseo_labs/google/keywords_for_site/live" -apiReferenceJson: "{\"title\":\"Labs Google Keywords for Site\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/dataforseo_labs/google/keywords_for_site/live\",\"description\":\"Keywords a domain ranks for.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"labs, keywords, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/keywords_for_site/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/keywords_for_site/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/keywords_for_site/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/keywords_for_site/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/keywords_for_site/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/keywords_for_site/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keywords_for_site/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keywords_for_site/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keywords_for_site/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keywords_for_site/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keywords_for_site/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/keywords_for_site/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Keywords for Site\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/dataforseo_labs/google/keywords_for_site/live\",\"description\":\"DataForSEO Google Keywords for Site returns Google search keywords that a specified domain ranks for, sourced from the DataForSEO Labs database.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"labs, keywords, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/keywords_for_site/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/keywords_for_site/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/keywords_for_site/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keywords_for_site/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keywords_for_site/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keywords_for_site/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keywords_for_site/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/keywords_for_site/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/keywords_for_site/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Labs Google Keywords for Site" + modelName: "DataForSEO Google Keywords for Site" modelId: "dataforseo/v3/dataforseo_labs/google/keywords_for_site/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/page_intersection/live.md b/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/page_intersection/live.md index 5ccc4e81..d7f5e219 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/page_intersection/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/page_intersection/live.md @@ -1,13 +1,13 @@ --- -title: "Labs Google Page Intersection API Reference" -description: "SandBase API operation dataforseo/v3/dataforseo_labs/google/page_intersection/live." +title: "DataForSEO Google Page Intersection API Reference" +description: "SandBase API reference for dataforseo/v3/dataforseo_labs/google/page_intersection/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/dataforseo_labs/google/page_intersection/live" -apiReferenceJson: "{\"title\":\"Labs Google Page Intersection\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/dataforseo_labs/google/page_intersection/live\",\"description\":\"Keywords shared between pages.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"labs, domain, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/page_intersection/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/page_intersection/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/page_intersection/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/page_intersection/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/page_intersection/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/page_intersection/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/page_intersection/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/page_intersection/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/page_intersection/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/page_intersection/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/page_intersection/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/page_intersection/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Page Intersection\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/dataforseo_labs/google/page_intersection/live\",\"description\":\"Returns search keywords shared between multiple specified Google pages. Helps analyze overlapping search terms to evaluate organic search visibility and competitor overlap.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"labs, domain, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/page_intersection/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/page_intersection/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/page_intersection/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/page_intersection/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/page_intersection/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/page_intersection/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/page_intersection/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/page_intersection/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/page_intersection/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Labs Google Page Intersection" + modelName: "DataForSEO Google Page Intersection" modelId: "dataforseo/v3/dataforseo_labs/google/page_intersection/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/ranked_keywords/live.md b/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/ranked_keywords/live.md index 8e66002b..42bff7e5 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/ranked_keywords/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/ranked_keywords/live.md @@ -1,13 +1,13 @@ --- -title: "Labs Google Ranked Keywords API Reference" -description: "SandBase API operation dataforseo/v3/dataforseo_labs/google/ranked_keywords/live." +title: "DataForSEO Google Ranked Keywords API Reference" +description: "SandBase API reference for dataforseo/v3/dataforseo_labs/google/ranked_keywords/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/dataforseo_labs/google/ranked_keywords/live" -apiReferenceJson: "{\"title\":\"Labs Google Ranked Keywords\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/dataforseo_labs/google/ranked_keywords/live\",\"description\":\"All keywords a domain ranks for.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"labs, keywords, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/ranked_keywords/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/ranked_keywords/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/ranked_keywords/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/ranked_keywords/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/ranked_keywords/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/ranked_keywords/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/ranked_keywords/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/ranked_keywords/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/ranked_keywords/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/ranked_keywords/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/ranked_keywords/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/ranked_keywords/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Ranked Keywords\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/dataforseo_labs/google/ranked_keywords/live\",\"description\":\"Returns all Google search keywords for which a specified domain currently ranks. Provides ranking keyword metrics and organic search performance data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"labs, keywords, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/ranked_keywords/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/ranked_keywords/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/ranked_keywords/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/ranked_keywords/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/ranked_keywords/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/ranked_keywords/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/ranked_keywords/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/ranked_keywords/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/ranked_keywords/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Labs Google Ranked Keywords" + modelName: "DataForSEO Google Ranked Keywords" modelId: "dataforseo/v3/dataforseo_labs/google/ranked_keywords/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/related_keywords/live.md b/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/related_keywords/live.md index 954cb9a3..3e50ff00 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/related_keywords/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/related_keywords/live.md @@ -1,13 +1,13 @@ --- -title: "Labs Google Related Keywords API Reference" -description: "SandBase API operation dataforseo/v3/dataforseo_labs/google/related_keywords/live." +title: "DataForSEO Google Related Keywords API Reference" +description: "SandBase API reference for dataforseo/v3/dataforseo_labs/google/related_keywords/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/dataforseo_labs/google/related_keywords/live" -apiReferenceJson: "{\"title\":\"Labs Google Related Keywords\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/dataforseo_labs/google/related_keywords/live\",\"description\":\"Related keywords with shared SERP.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"labs, keywords, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/related_keywords/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/related_keywords/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/related_keywords/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/related_keywords/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/related_keywords/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/related_keywords/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/related_keywords/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/related_keywords/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/related_keywords/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/related_keywords/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/related_keywords/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/related_keywords/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Related Keywords\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/dataforseo_labs/google/related_keywords/live\",\"description\":\"Returns related search terms that share Google SERP rankings with specified keywords. Helps identify semantically connected queries and search patterns.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"labs, keywords, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/related_keywords/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/related_keywords/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/related_keywords/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/related_keywords/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/related_keywords/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/related_keywords/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/related_keywords/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/related_keywords/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/related_keywords/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Labs Google Related Keywords" + modelName: "DataForSEO Google Related Keywords" modelId: "dataforseo/v3/dataforseo_labs/google/related_keywords/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/serp_competitors/live.md b/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/serp_competitors/live.md index 089fcc6a..494f4aeb 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/serp_competitors/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/dataforseo_labs/google/serp_competitors/live.md @@ -1,13 +1,13 @@ --- -title: "Labs Google SERP Competitors API Reference" -description: "SandBase API operation dataforseo/v3/dataforseo_labs/google/serp_competitors/live." +title: "DataForSEO Google SERP Competitors API Reference" +description: "SandBase API reference for dataforseo/v3/dataforseo_labs/google/serp_competitors/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/dataforseo_labs/google/serp_competitors/live" -apiReferenceJson: "{\"title\":\"Labs Google SERP Competitors\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/dataforseo_labs/google/serp_competitors/live\",\"description\":\"Competitor domains for keywords.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"labs, competitors, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/serp_competitors/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/serp_competitors/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/serp_competitors/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/serp_competitors/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/serp_competitors/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/serp_competitors/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/serp_competitors/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/serp_competitors/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/serp_competitors/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/serp_competitors/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/serp_competitors/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/serp_competitors/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google SERP Competitors\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/dataforseo_labs/google/serp_competitors/live\",\"description\":\"Returns competitor domains ranking for target keywords in Google search results. Analyzes search visibility metrics and domain overlap across organic search rankings.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"labs, competitors, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/serp_competitors/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/serp_competitors/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/dataforseo_labs/google/serp_competitors/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/serp_competitors/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/serp_competitors/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/serp_competitors/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/serp_competitors/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/dataforseo_labs/google/serp_competitors/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/dataforseo_labs/google/serp_competitors/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Labs Google SERP Competitors" + modelName: "DataForSEO Google SERP Competitors" modelId: "dataforseo/v3/dataforseo_labs/google/serp_competitors/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live.md b/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live.md index ec63d822..9ccd74fe 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live.md @@ -1,13 +1,13 @@ --- -title: "Domain Analytics Aggregation API Reference" -description: "SandBase API operation dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live." +title: "DataForSEO Domain Technology Aggregations API Reference" +description: "SandBase API reference for dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live" -apiReferenceJson: "{\"title\":\"Domain Analytics Aggregation\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live\",\"description\":\"Aggregated technology data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"domain, technologies\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Domain Technology Aggregations\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live\",\"description\":\"Returns aggregated domain technology data across tracked websites. Analyze the distribution and adoption trends of specific web technologies and platforms.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"domain, technologies\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Domain Analytics Aggregation" + modelName: "DataForSEO Domain Technology Aggregations" modelId: "dataforseo/v3/domain_analytics/technologies/aggregation_technologies/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/domain_technologies/live.md b/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/domain_technologies/live.md index 8ef37b79..0a0e5171 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/domain_technologies/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/domain_technologies/live.md @@ -1,13 +1,13 @@ --- -title: "Domain Analytics Technologies API Reference" -description: "SandBase API operation dataforseo/v3/domain_analytics/technologies/domain_technologies/live." +title: "DataForSEO Domain Technologies API Reference" +description: "SandBase API reference for dataforseo/v3/domain_analytics/technologies/domain_technologies/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/domain_analytics/technologies/domain_technologies/live" -apiReferenceJson: "{\"title\":\"Domain Analytics Technologies\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/domain_analytics/technologies/domain_technologies/live\",\"description\":\"Technologies used by a domain.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"domain, technologies\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/domain_technologies/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/technologies/domain_technologies/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/technologies/domain_technologies/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/domain_technologies/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/technologies/domain_technologies/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/domain_technologies/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domain_technologies/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domain_technologies/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domain_technologies/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domain_technologies/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domain_technologies/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/technologies/domain_technologies/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Domain Technologies\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/domain_analytics/technologies/domain_technologies/live\",\"description\":\"Returns technology stack details and software detected on a target website. Use this endpoint to inspect frameworks, libraries, and tools active on a specified domain.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"domain, technologies\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/domain_technologies/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/domain_technologies/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/domain_technologies/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domain_technologies/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domain_technologies/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domain_technologies/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domain_technologies/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domain_technologies/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/technologies/domain_technologies/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Domain Analytics Technologies" + modelName: "DataForSEO Domain Technologies" modelId: "dataforseo/v3/domain_analytics/technologies/domain_technologies/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live.md b/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live.md index e1511cd0..fed8dc75 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live.md @@ -1,13 +1,13 @@ --- -title: "Domain Analytics By HTML Terms API Reference" -description: "SandBase API operation dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live." +title: "DataForSEO Domains by HTML Terms API Reference" +description: "SandBase API reference for dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live" -apiReferenceJson: "{\"title\":\"Domain Analytics By HTML Terms\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live\",\"description\":\"Find domains by HTML patterns.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"domain, technologies\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Domains by HTML Terms\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live\",\"description\":\"Finds domains that contain specific HTML patterns or terms. Returns matching domain profiles and technology footprints based on the analyzed web markup.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"domain, technologies\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Domain Analytics By HTML Terms" + modelName: "DataForSEO Domains by HTML Terms" modelId: "dataforseo/v3/domain_analytics/technologies/domains_by_html_terms/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/domains_by_technology/live.md b/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/domains_by_technology/live.md index 93e8d93f..7c3be24b 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/domains_by_technology/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/domains_by_technology/live.md @@ -1,13 +1,13 @@ --- -title: "Domain Analytics Domains By Tech API Reference" -description: "SandBase API operation dataforseo/v3/domain_analytics/technologies/domains_by_technology/live." +title: "DataForSEO Domains by Technology API Reference" +description: "SandBase API reference for dataforseo/v3/domain_analytics/technologies/domains_by_technology/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/domain_analytics/technologies/domains_by_technology/live" -apiReferenceJson: "{\"title\":\"Domain Analytics Domains By Tech\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/domain_analytics/technologies/domains_by_technology/live\",\"description\":\"Find domains using a technology.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"domain, technologies\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/domains_by_technology/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/technologies/domains_by_technology/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/technologies/domains_by_technology/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/domains_by_technology/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/technologies/domains_by_technology/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/domains_by_technology/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domains_by_technology/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domains_by_technology/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domains_by_technology/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domains_by_technology/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domains_by_technology/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/technologies/domains_by_technology/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Domains by Technology\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/domain_analytics/technologies/domains_by_technology/live\",\"description\":\"Returns a list of websites and domains that utilize a specific technology or software stack. Useful for analyzing competitor adoption, market share, and tech stack distribution.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"domain, technologies\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/domains_by_technology/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/domains_by_technology/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/domains_by_technology/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domains_by_technology/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domains_by_technology/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domains_by_technology/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domains_by_technology/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/domains_by_technology/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/technologies/domains_by_technology/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Domain Analytics Domains By Tech" + modelName: "DataForSEO Domains by Technology" modelId: "dataforseo/v3/domain_analytics/technologies/domains_by_technology/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/technology_stats/live.md b/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/technology_stats/live.md index 23e04880..466b7487 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/technology_stats/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/technologies/technology_stats/live.md @@ -1,13 +1,13 @@ --- -title: "Domain Analytics Tech Stats API Reference" -description: "SandBase API operation dataforseo/v3/domain_analytics/technologies/technology_stats/live." +title: "DataForSEO Domain Analytics Technology Stats API Reference" +description: "SandBase API reference for dataforseo/v3/domain_analytics/technologies/technology_stats/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/domain_analytics/technologies/technology_stats/live" -apiReferenceJson: "{\"title\":\"Domain Analytics Tech Stats\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/domain_analytics/technologies/technology_stats/live\",\"description\":\"Technology usage statistics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"domain, technologies\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/technology_stats/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/technologies/technology_stats/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/technologies/technology_stats/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/technology_stats/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/technologies/technology_stats/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/technology_stats/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/technology_stats/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/technology_stats/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/technology_stats/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/technology_stats/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/technology_stats/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/technologies/technology_stats/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Domain Analytics Technology Stats\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/domain_analytics/technologies/technology_stats/live\",\"description\":\"Returns aggregated technology usage statistics across websites and web domains. Enables analysis of market adoption and trends for specific web technologies.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"domain, technologies\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/technology_stats/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/technology_stats/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/technologies/technology_stats/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/technology_stats/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/technology_stats/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/technology_stats/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/technology_stats/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/technologies/technology_stats/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/technologies/technology_stats/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Domain Analytics Tech Stats" + modelName: "DataForSEO Domain Analytics Technology Stats" modelId: "dataforseo/v3/domain_analytics/technologies/technology_stats/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/whois/live.md b/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/whois/live.md index f4a6bb7c..f55ded89 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/whois/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/domain_analytics/whois/live.md @@ -1,13 +1,13 @@ --- -title: "Domain Analytics WHOIS API Reference" -description: "SandBase API operation dataforseo/v3/domain_analytics/whois/live." +title: "DataForSEO Domain Analytics WHOIS API Reference" +description: "SandBase API reference for model dataforseo/v3/domain_analytics/whois/live. Call /v1/api/dataforseo/v3/domain_analytics/whois/live; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/domain_analytics/whois/live" -apiReferenceJson: "{\"title\":\"Domain Analytics WHOIS\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/domain_analytics/whois/live\",\"description\":\"WHOIS domain registration data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"domain, whois\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/whois/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/whois/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/whois/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/whois/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/whois/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/whois/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/whois/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/whois/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/whois/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/whois/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/whois/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/whois/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Domain Analytics WHOIS\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/domain_analytics/whois/live\",\"description\":\"Returns WHOIS domain registration records and ownership analytics for specified web domains. Retrieves registrar information, registration dates, and domain status details.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"domain, whois\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/whois/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/whois/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/domain_analytics/whois/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/whois/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/whois/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/whois/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/whois/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/domain_analytics/whois/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/domain_analytics/whois/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Domain Analytics WHOIS" + modelName: "DataForSEO Domain Analytics WHOIS" modelId: "dataforseo/v3/domain_analytics/whois/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/keywords_data/bing/keywords_for_keywords/live.md b/model-api-reference/platform-apis/dataforseo/v3/keywords_data/bing/keywords_for_keywords/live.md index 3bf70beb..2d3499bf 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/keywords_data/bing/keywords_for_keywords/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/keywords_data/bing/keywords_for_keywords/live.md @@ -1,13 +1,13 @@ --- -title: "Keywords Bing for Keywords API Reference" -description: "SandBase API operation dataforseo/v3/keywords_data/bing/keywords_for_keywords/live." +title: "DataForSEO Bing Keywords for Keywords API Reference" +description: "SandBase API reference for dataforseo/v3/keywords_data/bing/keywords_for_keywords/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/keywords_data/bing/keywords_for_keywords/live" -apiReferenceJson: "{\"title\":\"Keywords Bing for Keywords\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/keywords_data/bing/keywords_for_keywords/live\",\"description\":\"Keyword suggestions from Bing seeds.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"keywords, bing\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/bing/keywords_for_keywords/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/bing/keywords_for_keywords/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/bing/keywords_for_keywords/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/bing/keywords_for_keywords/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/bing/keywords_for_keywords/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/bing/keywords_for_keywords/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/keywords_for_keywords/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/keywords_for_keywords/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/keywords_for_keywords/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/keywords_for_keywords/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/keywords_for_keywords/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/bing/keywords_for_keywords/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Bing Keywords for Keywords\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/keywords_data/bing/keywords_for_keywords/live\",\"description\":\"Returns keyword suggestions and search volume metrics from Bing based on specified seed terms. Provides related search queries to support SEO analysis and search campaign planning.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"keywords, bing\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/bing/keywords_for_keywords/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/bing/keywords_for_keywords/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/bing/keywords_for_keywords/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/keywords_for_keywords/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/keywords_for_keywords/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/keywords_for_keywords/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/keywords_for_keywords/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/keywords_for_keywords/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/bing/keywords_for_keywords/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Keywords Bing for Keywords" + modelName: "DataForSEO Bing Keywords for Keywords" modelId: "dataforseo/v3/keywords_data/bing/keywords_for_keywords/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/keywords_data/bing/keywords_for_site/live.md b/model-api-reference/platform-apis/dataforseo/v3/keywords_data/bing/keywords_for_site/live.md index 8a9a1390..a65375f2 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/keywords_data/bing/keywords_for_site/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/keywords_data/bing/keywords_for_site/live.md @@ -1,13 +1,13 @@ --- -title: "Keywords Bing for Site API Reference" -description: "SandBase API operation dataforseo/v3/keywords_data/bing/keywords_for_site/live." +title: "DataForSEO Bing Keywords for Site API Reference" +description: "SandBase API reference for dataforseo/v3/keywords_data/bing/keywords_for_site/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/keywords_data/bing/keywords_for_site/live" -apiReferenceJson: "{\"title\":\"Keywords Bing for Site\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/keywords_data/bing/keywords_for_site/live\",\"description\":\"Keyword suggestions from Bing.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"keywords, bing\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/bing/keywords_for_site/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/bing/keywords_for_site/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/bing/keywords_for_site/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/bing/keywords_for_site/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/bing/keywords_for_site/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/bing/keywords_for_site/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/keywords_for_site/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/keywords_for_site/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/keywords_for_site/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/keywords_for_site/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/keywords_for_site/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/bing/keywords_for_site/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Bing Keywords for Site\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/keywords_data/bing/keywords_for_site/live\",\"description\":\"Returns Bing keyword suggestions and search metrics associated with a specified target website. Helps teams discover search terms relevant to a site domain.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"keywords, bing\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/bing/keywords_for_site/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/bing/keywords_for_site/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/bing/keywords_for_site/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/keywords_for_site/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/keywords_for_site/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/keywords_for_site/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/keywords_for_site/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/keywords_for_site/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/bing/keywords_for_site/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Keywords Bing for Site" + modelName: "DataForSEO Bing Keywords for Site" modelId: "dataforseo/v3/keywords_data/bing/keywords_for_site/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/keywords_data/bing/search_volume/live.md b/model-api-reference/platform-apis/dataforseo/v3/keywords_data/bing/search_volume/live.md index 2c80a3b1..ac4c9203 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/keywords_data/bing/search_volume/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/keywords_data/bing/search_volume/live.md @@ -1,13 +1,13 @@ --- -title: "Keywords Bing Search Volume API Reference" -description: "SandBase API operation dataforseo/v3/keywords_data/bing/search_volume/live." +title: "DataForSEO Bing Keyword Search Volume API Reference" +description: "SandBase API reference for dataforseo/v3/keywords_data/bing/search_volume/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/keywords_data/bing/search_volume/live" -apiReferenceJson: "{\"title\":\"Keywords Bing Search Volume\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/keywords_data/bing/search_volume/live\",\"description\":\"Search volume data from Bing.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"keywords, bing\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/bing/search_volume/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/bing/search_volume/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/bing/search_volume/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/bing/search_volume/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/bing/search_volume/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/bing/search_volume/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/search_volume/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/search_volume/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/search_volume/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/search_volume/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/search_volume/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/bing/search_volume/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Bing Keyword Search Volume\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/keywords_data/bing/search_volume/live\",\"description\":\"Returns search volume metrics from Bing for specified target keywords. Helps track search query popularity and monthly demand trends directly on the Bing search engine.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"keywords, bing\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/bing/search_volume/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/bing/search_volume/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/bing/search_volume/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/search_volume/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/search_volume/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/search_volume/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/search_volume/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/bing/search_volume/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/bing/search_volume/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Keywords Bing Search Volume" + modelName: "DataForSEO Bing Keyword Search Volume" modelId: "dataforseo/v3/keywords_data/bing/search_volume/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live.md b/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live.md index c7b6424a..1acff735 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live.md @@ -1,13 +1,13 @@ --- -title: "Keywords Google Ads Traffic API Reference" -description: "SandBase API operation dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live." +title: "DataForSEO Google Ads Traffic by Keywords API Reference" +description: "SandBase API reference for dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live" -apiReferenceJson: "{\"title\":\"Keywords Google Ads Traffic\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live\",\"description\":\"Estimated ad traffic by keywords.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"keywords, google, ads\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Ads Traffic by Keywords\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live\",\"description\":\"Returns estimated Google Ads ad traffic metrics for specified search terms. It provides estimates for search volume, potential impressions, clicks, and advertising performance.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"keywords, google, ads\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Keywords Google Ads Traffic" + modelName: "DataForSEO Google Ads Traffic by Keywords" modelId: "dataforseo/v3/keywords_data/google_ads/ad_traffic_by_keywords/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live.md b/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live.md index 0b936a5a..5f958fc6 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live.md @@ -1,13 +1,13 @@ --- -title: "Keywords Google Ads for Keywords API Reference" -description: "SandBase API operation dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live." +title: "DataForSEO Google Ads Keywords for Keywords API Reference" +description: "SandBase API reference for dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live" -apiReferenceJson: "{\"title\":\"Keywords Google Ads for Keywords\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live\",\"description\":\"Keyword suggestions from seed keywords.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"keywords, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Ads Keywords for Keywords\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live\",\"description\":\"Returns relevant Google Ads keyword suggestions based on specified seed keywords. Provides search volume metrics and related search queries directly from Google Ads data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"keywords, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Keywords Google Ads for Keywords" + modelName: "DataForSEO Google Ads Keywords for Keywords" modelId: "dataforseo/v3/keywords_data/google_ads/keywords_for_keywords/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_ads/keywords_for_site/live.md b/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_ads/keywords_for_site/live.md index d0ddeb68..58017481 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_ads/keywords_for_site/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_ads/keywords_for_site/live.md @@ -1,13 +1,13 @@ --- -title: "Keywords Google Ads for Site API Reference" -description: "SandBase API operation dataforseo/v3/keywords_data/google_ads/keywords_for_site/live." +title: "DataForSEO Google Ads Keywords for Site API Reference" +description: "SandBase API reference for dataforseo/v3/keywords_data/google_ads/keywords_for_site/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/keywords_data/google_ads/keywords_for_site/live" -apiReferenceJson: "{\"title\":\"Keywords Google Ads for Site\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/keywords_data/google_ads/keywords_for_site/live\",\"description\":\"Keyword suggestions for a website.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"keywords, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_ads/keywords_for_site/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/google_ads/keywords_for_site/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/google_ads/keywords_for_site/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_ads/keywords_for_site/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/google_ads/keywords_for_site/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_ads/keywords_for_site/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/keywords_for_site/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/keywords_for_site/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/keywords_for_site/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/keywords_for_site/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/keywords_for_site/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/google_ads/keywords_for_site/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Ads Keywords for Site\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/keywords_data/google_ads/keywords_for_site/live\",\"description\":\"Returns Google Ads keyword suggestions tailored to a target website or webpage. Helps discover relevant search terms and search advertising keywords based on site content.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"keywords, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_ads/keywords_for_site/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_ads/keywords_for_site/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_ads/keywords_for_site/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/keywords_for_site/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/keywords_for_site/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/keywords_for_site/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/keywords_for_site/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/keywords_for_site/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/google_ads/keywords_for_site/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Keywords Google Ads for Site" + modelName: "DataForSEO Google Ads Keywords for Site" modelId: "dataforseo/v3/keywords_data/google_ads/keywords_for_site/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_ads/search_volume/live.md b/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_ads/search_volume/live.md index 7c17feab..f965c3c2 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_ads/search_volume/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_ads/search_volume/live.md @@ -1,13 +1,13 @@ --- -title: "Keywords Google Ads Search Volume API Reference" -description: "SandBase API operation dataforseo/v3/keywords_data/google_ads/search_volume/live." +title: "DataForSEO Google Ads Keyword Search Volume API Reference" +description: "SandBase API reference for dataforseo/v3/keywords_data/google_ads/search_volume/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/keywords_data/google_ads/search_volume/live" -apiReferenceJson: "{\"title\":\"Keywords Google Ads Search Volume\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/keywords_data/google_ads/search_volume/live\",\"description\":\"Search volume and competition for keywords.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"keywords, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_ads/search_volume/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/google_ads/search_volume/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/google_ads/search_volume/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_ads/search_volume/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/google_ads/search_volume/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_ads/search_volume/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/search_volume/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/search_volume/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/search_volume/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/search_volume/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/search_volume/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/google_ads/search_volume/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Ads Keyword Search Volume\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/keywords_data/google_ads/search_volume/live\",\"description\":\"Get Google Ads search volume, CPC, competition and 12-month trend for up to 1,000 keywords per request, by location and language.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"keywords, google, seo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_ads/search_volume/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_ads/search_volume/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_ads/search_volume/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/search_volume/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/search_volume/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/search_volume/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/search_volume/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_ads/search_volume/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/google_ads/search_volume/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Keywords Google Ads Search Volume" + modelName: "DataForSEO Google Ads Keyword Search Volume" modelId: "dataforseo/v3/keywords_data/google_ads/search_volume/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_trends/explore/live.md b/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_trends/explore/live.md index d56f9a1a..d602c728 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_trends/explore/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/keywords_data/google_trends/explore/live.md @@ -1,13 +1,13 @@ --- -title: "Keywords Google Trends Explore API Reference" -description: "SandBase API operation dataforseo/v3/keywords_data/google_trends/explore/live." +title: "DataForSEO Google Trends API Reference" +description: "SandBase API reference for dataforseo/v3/keywords_data/google_trends/explore/live. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/keywords_data/google_trends/explore/live" -apiReferenceJson: "{\"title\":\"Keywords Google Trends Explore\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/keywords_data/google_trends/explore/live\",\"description\":\"Google Trends interest over time.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"keywords, google, trends\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_trends/explore/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/google_trends/explore/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/google_trends/explore/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_trends/explore/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/google_trends/explore/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_trends/explore/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_trends/explore/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_trends/explore/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_trends/explore/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_trends/explore/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_trends/explore/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/google_trends/explore/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Trends\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/keywords_data/google_trends/explore/live\",\"description\":\"Get Google Trends interest over time for up to 5 keywords by location, language and time range, with weekly values on a 0–100 scale.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"keywords, google, trends\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_trends/explore/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_trends/explore/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/keywords_data/google_trends/explore/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_trends/explore/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_trends/explore/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_trends/explore/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_trends/explore/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/keywords_data/google_trends/explore/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/keywords_data/google_trends/explore/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Keywords Google Trends Explore" + modelName: "DataForSEO Google Trends" modelId: "dataforseo/v3/keywords_data/google_trends/explore/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/merchant/amazon/products/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/merchant/amazon/products/live/advanced.md index cbc10fb7..cde1f031 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/merchant/amazon/products/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/merchant/amazon/products/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "Merchant Amazon Products API Reference" -description: "SandBase API operation dataforseo/v3/merchant/amazon/products/live/advanced." +title: "DataForSEO Merchant Amazon Products API Reference" +description: "SandBase API reference for dataforseo/v3/merchant/amazon/products/live/advanced. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/merchant/amazon/products/live/advanced" -apiReferenceJson: "{\"title\":\"Merchant Amazon Products\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/merchant/amazon/products/live/advanced\",\"description\":\"Amazon product data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"merchant, amazon, ecommerce\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/merchant/amazon/products/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/merchant/amazon/products/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/merchant/amazon/products/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/merchant/amazon/products/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/merchant/amazon/products/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/merchant/amazon/products/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/amazon/products/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/amazon/products/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/amazon/products/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/amazon/products/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/amazon/products/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/merchant/amazon/products/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Merchant Amazon Products\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/merchant/amazon/products/live/advanced\",\"description\":\"Returns real-time advanced product data from Amazon merchant search results. Provides item details, ratings, seller information, and ranking positions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"merchant, amazon, ecommerce\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/merchant/amazon/products/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/merchant/amazon/products/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/merchant/amazon/products/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/amazon/products/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/amazon/products/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/amazon/products/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/amazon/products/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/amazon/products/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/merchant/amazon/products/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Merchant Amazon Products" + modelName: "DataForSEO Merchant Amazon Products" modelId: "dataforseo/v3/merchant/amazon/products/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/merchant/amazon/sellers/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/merchant/amazon/sellers/live/advanced.md index 3804f899..6db10e16 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/merchant/amazon/sellers/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/merchant/amazon/sellers/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "Merchant Amazon Sellers API Reference" -description: "SandBase API operation dataforseo/v3/merchant/amazon/sellers/live/advanced." +title: "DataForSEO Merchant Amazon Sellers API Reference" +description: "SandBase API reference for dataforseo/v3/merchant/amazon/sellers/live/advanced. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/merchant/amazon/sellers/live/advanced" -apiReferenceJson: "{\"title\":\"Merchant Amazon Sellers\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/merchant/amazon/sellers/live/advanced\",\"description\":\"Amazon seller information.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"merchant, amazon, ecommerce\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/merchant/amazon/sellers/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/merchant/amazon/sellers/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/merchant/amazon/sellers/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/merchant/amazon/sellers/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/merchant/amazon/sellers/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/merchant/amazon/sellers/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/amazon/sellers/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/amazon/sellers/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/amazon/sellers/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/amazon/sellers/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/amazon/sellers/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/merchant/amazon/sellers/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Merchant Amazon Sellers\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/merchant/amazon/sellers/live/advanced\",\"description\":\"Retrieves real-time Amazon seller information and merchant data across e-commerce listings. Returns merchant profiles, ratings, and seller metrics for competitive analysis.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"merchant, amazon, ecommerce\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/merchant/amazon/sellers/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/merchant/amazon/sellers/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/merchant/amazon/sellers/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/amazon/sellers/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/amazon/sellers/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/amazon/sellers/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/amazon/sellers/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/amazon/sellers/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/merchant/amazon/sellers/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Merchant Amazon Sellers" + modelName: "DataForSEO Merchant Amazon Sellers" modelId: "dataforseo/v3/merchant/amazon/sellers/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/merchant/google/products/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/merchant/google/products/live/advanced.md index 951c631f..42670977 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/merchant/google/products/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/merchant/google/products/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "Merchant Google Products API Reference" -description: "SandBase API operation dataforseo/v3/merchant/google/products/live/advanced." +title: "DataForSEO Google Shopping Products API Reference" +description: "SandBase API reference for dataforseo/v3/merchant/google/products/live/advanced. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/merchant/google/products/live/advanced" -apiReferenceJson: "{\"title\":\"Merchant Google Products\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/merchant/google/products/live/advanced\",\"description\":\"Google Shopping product data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"merchant, google, ecommerce\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/merchant/google/products/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/merchant/google/products/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/merchant/google/products/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/merchant/google/products/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/merchant/google/products/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/merchant/google/products/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/google/products/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/google/products/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/google/products/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/google/products/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/google/products/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/merchant/google/products/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Shopping Products\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/merchant/google/products/live/advanced\",\"description\":\"Returns Google Shopping product listings and merchant details for ecommerce research. Inspect product data directly from live Google Merchant search results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"merchant, google, ecommerce\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/merchant/google/products/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/merchant/google/products/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/merchant/google/products/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/google/products/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/google/products/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/google/products/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/google/products/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/google/products/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/merchant/google/products/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Merchant Google Products" + modelName: "DataForSEO Google Shopping Products" modelId: "dataforseo/v3/merchant/google/products/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/merchant/google/sellers/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/merchant/google/sellers/live/advanced.md index a2f23682..e080d2ba 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/merchant/google/sellers/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/merchant/google/sellers/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "Merchant Google Sellers API Reference" -description: "SandBase API operation dataforseo/v3/merchant/google/sellers/live/advanced." +title: "DataForSEO Merchant Google Sellers API Reference" +description: "SandBase API reference for dataforseo/v3/merchant/google/sellers/live/advanced. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/merchant/google/sellers/live/advanced" -apiReferenceJson: "{\"title\":\"Merchant Google Sellers\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/merchant/google/sellers/live/advanced\",\"description\":\"Google Shopping seller info.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"merchant, google, ecommerce\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/merchant/google/sellers/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/merchant/google/sellers/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/merchant/google/sellers/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/merchant/google/sellers/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/merchant/google/sellers/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/merchant/google/sellers/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/google/sellers/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/google/sellers/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/google/sellers/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/google/sellers/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/google/sellers/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/merchant/google/sellers/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Merchant Google Sellers\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/merchant/google/sellers/live/advanced\",\"description\":\"Returns detailed seller profiles and merchant listing information from Google Shopping in real time. Inspect merchant ratings, store performance, and product availability.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"merchant, google, ecommerce\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/merchant/google/sellers/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/merchant/google/sellers/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/merchant/google/sellers/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/google/sellers/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/google/sellers/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/google/sellers/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/google/sellers/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/merchant/google/sellers/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/merchant/google/sellers/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Merchant Google Sellers" + modelName: "DataForSEO Merchant Google Sellers" modelId: "dataforseo/v3/merchant/google/sellers/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/on_page/content_parsing/live.md b/model-api-reference/platform-apis/dataforseo/v3/on_page/content_parsing/live.md index 9fbf7972..dea272a7 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/on_page/content_parsing/live.md +++ b/model-api-reference/platform-apis/dataforseo/v3/on_page/content_parsing/live.md @@ -1,13 +1,13 @@ --- -title: "OnPage Content Parsing API Reference" -description: "SandBase API operation dataforseo/v3/on_page/content_parsing/live." +title: "DataForSEO OnPage Content Parsing API Reference" +description: "SandBase API reference for model dataforseo/v3/on_page/content_parsing/live. Call /v1/api/dataforseo/v3/on_page/content_parsing/live; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/on_page/content_parsing/live" -apiReferenceJson: "{\"title\":\"OnPage Content Parsing\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/on_page/content_parsing/live\",\"description\":\"Extract structured content from a page.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"onpage, content, parsing\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/content_parsing/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/on_page/content_parsing/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/on_page/content_parsing/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/content_parsing/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/on_page/content_parsing/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/content_parsing/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/content_parsing/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/content_parsing/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/content_parsing/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/content_parsing/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/content_parsing/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/on_page/content_parsing/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO OnPage Content Parsing\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/on_page/content_parsing/live\",\"description\":\"Parses and returns structured on-page content directly from a specified webpage URL. Inspect page elements, headings, text blocks, and page layout details for SEO analysis.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"onpage, content, parsing\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/content_parsing/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/content_parsing/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/content_parsing/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/content_parsing/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/content_parsing/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/content_parsing/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/content_parsing/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/content_parsing/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/on_page/content_parsing/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "OnPage Content Parsing" + modelName: "DataForSEO OnPage Content Parsing" modelId: "dataforseo/v3/on_page/content_parsing/live" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/on_page/duplicate_tags.md b/model-api-reference/platform-apis/dataforseo/v3/on_page/duplicate_tags.md index 9d725ebf..dda9656e 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/on_page/duplicate_tags.md +++ b/model-api-reference/platform-apis/dataforseo/v3/on_page/duplicate_tags.md @@ -1,13 +1,13 @@ --- -title: "OnPage Duplicate Tags API Reference" -description: "SandBase API operation dataforseo/v3/on_page/duplicate_tags." +title: "DataForSEO OnPage Duplicate Tags API Reference" +description: "SandBase API reference for model dataforseo/v3/on_page/duplicate_tags. Call /v1/api/dataforseo/v3/on_page/duplicate_tags; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/on_page/duplicate_tags" -apiReferenceJson: "{\"title\":\"OnPage Duplicate Tags\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/on_page/duplicate_tags\",\"description\":\"Find duplicate meta tags.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"onpage, seo, audit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/duplicate_tags \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/on_page/duplicate_tags\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/on_page/duplicate_tags\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/duplicate_tags\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/on_page/duplicate_tags\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/duplicate_tags\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/duplicate_tags\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/duplicate_tags\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/duplicate_tags\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/duplicate_tags\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/duplicate_tags\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/on_page/duplicate_tags\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO OnPage Duplicate Tags\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/on_page/duplicate_tags\",\"description\":\"Returns instances of duplicate meta tags found during an on-page SEO crawl. Inspect duplicated titles, descriptions, and other tags across crawled pages to diagnose SEO issues.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"onpage, seo, audit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/duplicate_tags \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/duplicate_tags\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/duplicate_tags\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/duplicate_tags\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/duplicate_tags\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/duplicate_tags\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/duplicate_tags\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/duplicate_tags\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/on_page/duplicate_tags\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "OnPage Duplicate Tags" + modelName: "DataForSEO OnPage Duplicate Tags" modelId: "dataforseo/v3/on_page/duplicate_tags" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/on_page/instant_pages.md b/model-api-reference/platform-apis/dataforseo/v3/on_page/instant_pages.md index 476197a8..d661d896 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/on_page/instant_pages.md +++ b/model-api-reference/platform-apis/dataforseo/v3/on_page/instant_pages.md @@ -1,13 +1,13 @@ --- -title: "OnPage Instant Pages API Reference" -description: "SandBase API operation dataforseo/v3/on_page/instant_pages." +title: "DataForSEO OnPage Instant Pages API Reference" +description: "SandBase API reference for model dataforseo/v3/on_page/instant_pages. Call /v1/api/dataforseo/v3/on_page/instant_pages; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/on_page/instant_pages" -apiReferenceJson: "{\"title\":\"OnPage Instant Pages\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/on_page/instant_pages\",\"description\":\"Quick page-level SEO audit.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"onpage, seo, audit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/instant_pages \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/on_page/instant_pages\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/on_page/instant_pages\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/instant_pages\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/on_page/instant_pages\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/instant_pages\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/instant_pages\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/instant_pages\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/instant_pages\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/instant_pages\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/instant_pages\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/on_page/instant_pages\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO OnPage Instant Pages\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/on_page/instant_pages\",\"description\":\"Returns instant page-level on-page SEO audit metrics for analyzed web pages. Inspect technical SEO elements and on-page optimization signals for audit workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"onpage, seo, audit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/instant_pages \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/instant_pages\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/instant_pages\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/instant_pages\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/instant_pages\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/instant_pages\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/instant_pages\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/instant_pages\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/on_page/instant_pages\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "OnPage Instant Pages" + modelName: "DataForSEO OnPage Instant Pages" modelId: "dataforseo/v3/on_page/instant_pages" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/on_page/keyword_density/live.md b/model-api-reference/platform-apis/dataforseo/v3/on_page/keyword_density/live.md deleted file mode 100644 index 217d0961..00000000 --- a/model-api-reference/platform-apis/dataforseo/v3/on_page/keyword_density/live.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "OnPage Keyword Density API Reference" -description: "SandBase API operation dataforseo/v3/on_page/keyword_density/live." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/dataforseo/v3/on_page/keyword_density/live" -apiReferenceJson: "{\"title\":\"OnPage Keyword Density\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/on_page/keyword_density/live\",\"description\":\"Keyword density analysis.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"onpage, seo, content\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/keyword_density/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/on_page/keyword_density/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/on_page/keyword_density/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/keyword_density/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/on_page/keyword_density/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/keyword_density/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/keyword_density/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/keyword_density/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/keyword_density/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/keyword_density/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/keyword_density/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/on_page/keyword_density/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "OnPage Keyword Density" - modelId: "dataforseo/v3/on_page/keyword_density/live" - vendor: "DataForSEO" - vendorSlug: "dataforseo" - modelSlug: "v3/on_page/keyword_density/live" - protocol: "API Reference" - endpoint: "/v1/api/dataforseo/v3/on_page/keyword_density/live" - publishedAt: "2024-01-01T00:00:00Z" - capabilities: ["onpage","seo","content"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/dataforseo/v3/on_page/lighthouse/live/json.md b/model-api-reference/platform-apis/dataforseo/v3/on_page/lighthouse/live/json.md index 36b8871c..b82b6bc4 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/on_page/lighthouse/live/json.md +++ b/model-api-reference/platform-apis/dataforseo/v3/on_page/lighthouse/live/json.md @@ -1,13 +1,13 @@ --- -title: "OnPage Lighthouse API Reference" -description: "SandBase API operation dataforseo/v3/on_page/lighthouse/live/json." +title: "DataForSEO OnPage Lighthouse Audit API Reference" +description: "SandBase API reference for model dataforseo/v3/on_page/lighthouse/live/json. Call /v1/api/dataforseo/v3/on_page/lighthouse/live/json; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/on_page/lighthouse/live/json" -apiReferenceJson: "{\"title\":\"OnPage Lighthouse\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/on_page/lighthouse/live/json\",\"description\":\"Google Lighthouse audit.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"onpage, performance, lighthouse\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/lighthouse/live/json \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/on_page/lighthouse/live/json\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/on_page/lighthouse/live/json\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/lighthouse/live/json\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/on_page/lighthouse/live/json\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/lighthouse/live/json\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/lighthouse/live/json\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/lighthouse/live/json\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/lighthouse/live/json\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/lighthouse/live/json\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/lighthouse/live/json\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/on_page/lighthouse/live/json\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO OnPage Lighthouse Audit\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/on_page/lighthouse/live/json\",\"description\":\"Returns real-time Google Lighthouse audit data and web performance metrics for target web pages. Helps assess on-page speed, accessibility, best practices, and search optimization standards.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"onpage, performance, lighthouse\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/lighthouse/live/json \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/lighthouse/live/json\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/lighthouse/live/json\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/lighthouse/live/json\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/lighthouse/live/json\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/lighthouse/live/json\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/lighthouse/live/json\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/lighthouse/live/json\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/on_page/lighthouse/live/json\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "OnPage Lighthouse" + modelName: "DataForSEO OnPage Lighthouse Audit" modelId: "dataforseo/v3/on_page/lighthouse/live/json" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/on_page/page_screenshot.md b/model-api-reference/platform-apis/dataforseo/v3/on_page/page_screenshot.md index 6a59a43a..ae701d13 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/on_page/page_screenshot.md +++ b/model-api-reference/platform-apis/dataforseo/v3/on_page/page_screenshot.md @@ -1,142 +1,22 @@ --- -title: "OnPage Page Screenshot API Reference" -description: "SandBase API operation page_screenshot." +title: "DataForSEO Website Screenshot API Reference" +description: "SandBase API reference for model dataforseo/v3/on_page/page_screenshot. Call /v1/api/dataforseo/v3/on_page/page_screenshot; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" -apiReference: - title: "OnPage Page Screenshot" - operation: "DataForSEO API Operation" - method: POST - path: "/v1/run" - description: "Capture a high-quality screenshot of a webpage with desktop, mobile, or tablet viewport settings." - groups: - - title: "Request body" - description: "Submit the public SandBase model identifier and screenshot options." - fields: - - name: model - type: string - required: true - description: "Model identifier. Set to dataforseo/v3/on_page/page_screenshot." - default: "dataforseo/v3/on_page/page_screenshot" - - name: url - type: string - required: true - description: "Absolute URL of the page to capture." - - name: browser_preset - type: string - required: false - description: "Viewport preset." - constraints: "Allowed values: desktop, mobile, tablet" - default: desktop - - name: full_page_screenshot - type: boolean - required: false - description: "Capture the full page when true; capture only the viewport when false." - default: true - - name: browser_screen_width - type: integer - required: false - description: "Custom viewport width in pixels. Overrides browser_preset." - constraints: "Range: 240 to 9999" - - name: browser_screen_height - type: integer - required: false - description: "Custom viewport height in pixels. Overrides browser_preset." - constraints: "Range: 240 to 9999" - - name: browser_screen_scale_factor - type: number - required: false - description: "Custom device scale factor. Overrides browser_preset." - constraints: "Range: 0.5 to 3" - - name: disable_cookie_popup - type: boolean - required: false - description: "Dismiss cookie-consent dialogs when true." - default: false - - name: accept_language - type: string - required: false - description: "Accept-Language header sent while loading the page." - - name: custom_user_agent - type: string - required: false - description: "Custom browser user-agent string." - - name: ip_pool_for_scan - type: string - required: false - description: "Proxy pool location." - constraints: "Allowed values: us, de" - - name: switch_pool - type: boolean - required: false - description: "Use additional proxy pools when true." - - - title: "Response Schema" - description: "The unified run envelope contains the operation result in outputs[0].data." - fields: - - name: id - type: string - required: true - description: "Opaque SandBase run identifier." - - name: status - type: string - required: true - description: "Current run status." - constraints: "Allowed values: pending, running, completed, failed, timeout" - - name: model - type: string - required: true - description: "Public SandBase model name used for this run." - - name: outputs - type: array - required: false - description: "Present when the run completes successfully." - - name: error - type: object - required: false - description: "Present for failed or timeout runs." - - name: usage - type: object - required: false - description: "Usage details when available." - examples: - - label: cURL - language: bash - code: |- - curl -X POST https://api.sandbase.ai/v1/run \ - -H "Authorization: Bearer $SANDBASE_API_KEY" \ - -H "Content-Type: application/json" \ - -d '{ - "model": "dataforseo/v3/on_page/page_screenshot", - "url": "https://dataforseo.com/apis", - "browser_preset": "desktop", - "full_page_screenshot": true - }' - response: - status: "200 OK" - code: |- - { - "id": "f3d2e8a1-7c4b-4a12-9d2e-123456789abc", - "status": "completed", - "model": "dataforseo/v3/on_page/page_screenshot", - "outputs": [{"data": {"screenshot_url": "https://media.sandbase.ai/files/..."}}] - } +apiReferenceKey: "api/dataforseo/v3/on_page/page_screenshot" +apiReferenceJson: "{\"title\":\"DataForSEO Website Screenshot\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/on_page/page_screenshot\",\"description\":\"Capture a full-page or viewport screenshot of any URL in desktop, mobile or tablet view. Options for custom screen size, language, user agent and dismissing cookie pop-ups.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"accept_language\",\"type\":\"string\",\"required\":false,\"description\":\"language header for accessing the website optional field all locale formats are supported (xx, xx-XX, xxx-XX, etc.) Note: if you do not specify this parameter, some websites may deny access\"},{\"name\":\"browser_preset\",\"type\":\"string\",\"required\":false,\"description\":\"preset for browser screen parameters optional field possible values: desktop, mobile, tablet desktop: 1920x1080, scale 1 mobile: 390x844, scale 3 tablet: 1024x1366, scale 2\"},{\"name\":\"browser_screen_height\",\"type\":\"integer\",\"required\":false,\"description\":\"browser screen height in pixels optional field minimum value: 240 maximum value: 9999 if set, browser_preset is ignored\"},{\"name\":\"browser_screen_scale_factor\",\"type\":\"number\",\"required\":false,\"description\":\"browser screen scale factor optional field minimum value: 0.5 maximum value: 3 if set, browser_preset is ignored\"},{\"name\":\"browser_screen_width\",\"type\":\"integer\",\"required\":false,\"description\":\"browser screen width in pixels optional field minimum value: 240 maximum value: 9999 if set, browser_preset is ignored\"},{\"name\":\"custom_user_agent\",\"type\":\"string\",\"required\":false,\"description\":\"custom user agent optional field custom user agent for crawling a website default value: Mozilla/5.0 (compatible; RSiteAuditor)\"},{\"name\":\"disable_cookie_popup\",\"type\":\"boolean\",\"required\":false,\"description\":\"disable the cookie popup optional field set to true to dismiss cookie consent dialogs default value: false\"},{\"name\":\"full_page_screenshot\",\"type\":\"boolean\",\"required\":false,\"description\":\"take a screenshot of the full page optional field set to false to capture only the visible viewport default value: true\"},{\"name\":\"ip_pool_for_scan\",\"type\":\"string\",\"required\":false,\"description\":\"proxy pool location optional field possible values: us, de\"},{\"name\":\"switch_pool\",\"type\":\"boolean\",\"required\":false,\"description\":\"switch proxy pool optional field if true, additional proxy pools will be used to obtain the requested data\"},{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"page url required field absolute URL of the page to capture a screenshot of example: https://dataforseo.com/apis\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"onpage, screenshot, rendering\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/page_screenshot \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://dataforseo.com/apis\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://dataforseo.com/apis\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/page_screenshot\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://dataforseo.com/apis\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/page_screenshot\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/page_screenshot\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/page_screenshot\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/page_screenshot\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/page_screenshot\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/page_screenshot\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/on_page/page_screenshot\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "OnPage Page Screenshot" + modelName: "DataForSEO Website Screenshot" modelId: "dataforseo/v3/on_page/page_screenshot" vendor: "DataForSEO" vendorSlug: "dataforseo" modelSlug: "v3/on_page/page_screenshot" protocol: "API Reference" - endpoint: "/v1/run" - publishedAt: "2026-08-29T00:00:00Z" - capabilities: ["onpage", "screenshot", "rendering"] + endpoint: "/v1/api/dataforseo/v3/on_page/page_screenshot" + publishedAt: "2024-01-01T00:00:00Z" + capabilities: ["onpage","screenshot","rendering"] category: "APIs" --- - -Use a public URL that the rendering service can reach. The response data is -operation-specific; inspect `outputs[0].data` for the returned screenshot URL -and persist it before its media retention period expires. diff --git a/model-api-reference/platform-apis/dataforseo/v3/on_page/raw_html/live.md b/model-api-reference/platform-apis/dataforseo/v3/on_page/raw_html/live.md deleted file mode 100644 index 65c40668..00000000 --- a/model-api-reference/platform-apis/dataforseo/v3/on_page/raw_html/live.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "OnPage Raw HTML API Reference" -description: "SandBase API operation dataforseo/v3/on_page/raw_html/live." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/dataforseo/v3/on_page/raw_html/live" -apiReferenceJson: "{\"title\":\"OnPage Raw HTML\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/on_page/raw_html/live\",\"description\":\"Get raw HTML of a page.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"onpage, crawl\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/raw_html/live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/on_page/raw_html/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/on_page/raw_html/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/raw_html/live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/on_page/raw_html/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/on_page/raw_html/live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/raw_html/live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/raw_html/live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/raw_html/live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/raw_html/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/on_page/raw_html/live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/on_page/raw_html/live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "OnPage Raw HTML" - modelId: "dataforseo/v3/on_page/raw_html/live" - vendor: "DataForSEO" - vendorSlug: "dataforseo" - modelSlug: "v3/on_page/raw_html/live" - protocol: "API Reference" - endpoint: "/v1/api/dataforseo/v3/on_page/raw_html/live" - publishedAt: "2024-01-01T00:00:00Z" - capabilities: ["onpage","crawl"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/baidu/organic/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/serp/baidu/organic/live/advanced.md index 85baf5fb..e2cfd009 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/baidu/organic/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/baidu/organic/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "SERP Baidu Organic Live API Reference" -description: "SandBase API operation dataforseo/v3/serp/baidu/organic/live/advanced." +title: "DataForSEO Baidu Organic SERP Advanced API Reference" +description: "SandBase API reference: dataforseo/v3/serp/baidu/organic/live/advanced via /v1/api/dataforseo/v3/serp/baidu/organic/live/advanced. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/baidu/organic/live/advanced" -apiReferenceJson: "{\"title\":\"SERP Baidu Organic Live\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/baidu/organic/live/advanced\",\"description\":\"Baidu organic search results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, baidu, organic\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/baidu/organic/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/baidu/organic/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/baidu/organic/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/baidu/organic/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/baidu/organic/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/baidu/organic/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/baidu/organic/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/baidu/organic/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/baidu/organic/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/baidu/organic/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/baidu/organic/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/baidu/organic/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Baidu Organic SERP Advanced\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/baidu/organic/live/advanced\",\"description\":\"Retrieves advanced organic search engine results pages from Baidu. Returns organic listings, ranking positions, and associated search metadata for search queries.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, baidu, organic\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/baidu/organic/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/baidu/organic/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/baidu/organic/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/baidu/organic/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/baidu/organic/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/baidu/organic/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/baidu/organic/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/baidu/organic/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/baidu/organic/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Baidu Organic Live" + modelName: "DataForSEO Baidu Organic SERP Advanced" modelId: "dataforseo/v3/serp/baidu/organic/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/baidu/paid/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/serp/baidu/paid/live/advanced.md index 7d2f478a..3352e637 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/baidu/paid/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/baidu/paid/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "SERP Baidu Paid Live API Reference" -description: "SandBase API operation dataforseo/v3/serp/baidu/paid/live/advanced." +title: "DataForSEO Baidu Sponsored SERP API Reference" +description: "SandBase API reference for model dataforseo/v3/serp/baidu/paid/live/advanced. Call /v1/api/dataforseo/v3/serp/baidu/paid/live/advanced; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/baidu/paid/live/advanced" -apiReferenceJson: "{\"title\":\"SERP Baidu Paid Live\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/baidu/paid/live/advanced\",\"description\":\"Baidu paid search results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, baidu, paid\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/baidu/paid/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/baidu/paid/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/baidu/paid/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/baidu/paid/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/baidu/paid/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/baidu/paid/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/baidu/paid/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/baidu/paid/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/baidu/paid/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/baidu/paid/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/baidu/paid/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/baidu/paid/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Baidu Sponsored SERP\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/baidu/paid/live/advanced\",\"description\":\"Returns real-time Baidu sponsored search engine results pages. Provides ad positions, titles, URLs, and related advertising data for specified search queries.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, baidu, paid\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/baidu/paid/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/baidu/paid/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/baidu/paid/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/baidu/paid/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/baidu/paid/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/baidu/paid/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/baidu/paid/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/baidu/paid/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/baidu/paid/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Baidu Paid Live" + modelName: "DataForSEO Baidu Sponsored SERP" modelId: "dataforseo/v3/serp/baidu/paid/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/bing/local_pack/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/serp/bing/local_pack/live/advanced.md index 3d0dbc90..576a09d0 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/bing/local_pack/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/bing/local_pack/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "SERP Bing Local Pack Live API Reference" -description: "SandBase API operation dataforseo/v3/serp/bing/local_pack/live/advanced." +title: "DataForSEO Bing Local Pack SERP API Reference" +description: "SandBase API reference: dataforseo/v3/serp/bing/local_pack/live/advanced via /v1/api/dataforseo/v3/serp/bing/local_pack/live/advanced. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/bing/local_pack/live/advanced" -apiReferenceJson: "{\"title\":\"SERP Bing Local Pack Live\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/bing/local_pack/live/advanced\",\"description\":\"Bing Local Pack business listings.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, bing, local\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/local_pack/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/bing/local_pack/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/bing/local_pack/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/local_pack/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/bing/local_pack/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/local_pack/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/local_pack/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/local_pack/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/local_pack/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/local_pack/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/local_pack/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/bing/local_pack/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Bing Local Pack SERP\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/bing/local_pack/live/advanced\",\"description\":\"Returns Bing Local Pack business listings from search engine results pages in real time. Provides structured local business data including names, addresses, ratings, and map details.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, bing, local\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/local_pack/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/local_pack/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/local_pack/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/local_pack/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/local_pack/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/local_pack/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/local_pack/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/local_pack/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/bing/local_pack/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Bing Local Pack Live" + modelName: "DataForSEO Bing Local Pack SERP" modelId: "dataforseo/v3/serp/bing/local_pack/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/bing/news/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/serp/bing/news/live/advanced.md index 5f279b0e..8e368290 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/bing/news/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/bing/news/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "SERP Bing News Live API Reference" -description: "SandBase API operation dataforseo/v3/serp/bing/news/live/advanced." +title: "DataForSEO Bing News SERP Advanced API Reference" +description: "SandBase API reference for model dataforseo/v3/serp/bing/news/live/advanced. Call /v1/api/dataforseo/v3/serp/bing/news/live/advanced; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/bing/news/live/advanced" -apiReferenceJson: "{\"title\":\"SERP Bing News Live\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/bing/news/live/advanced\",\"description\":\"Bing News search results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, bing, news\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/news/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/bing/news/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/bing/news/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/news/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/bing/news/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/news/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/news/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/news/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/news/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/news/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/news/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/bing/news/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Bing News SERP Advanced\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/bing/news/live/advanced\",\"description\":\"Returns real-time Bing News search engine results page (SERP) data. Delivers advanced news listings, source details, and ranking positions directly from Bing News.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, bing, news\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/news/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/news/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/news/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/news/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/news/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/news/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/news/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/news/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/bing/news/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Bing News Live" + modelName: "DataForSEO Bing News SERP Advanced" modelId: "dataforseo/v3/serp/bing/news/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/bing/organic/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/serp/bing/organic/live/advanced.md index 93d9bee7..77b88926 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/bing/organic/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/bing/organic/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "SERP Bing Organic Live API Reference" -description: "SandBase API operation dataforseo/v3/serp/bing/organic/live/advanced." +title: "DataForSEO Bing Organic Search API Reference" +description: "SandBase API reference: dataforseo/v3/serp/bing/organic/live/advanced via /v1/api/dataforseo/v3/serp/bing/organic/live/advanced. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/bing/organic/live/advanced" -apiReferenceJson: "{\"title\":\"SERP Bing Organic Live\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/bing/organic/live/advanced\",\"description\":\"Bing organic search results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, bing, organic\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/organic/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/bing/organic/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/bing/organic/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/organic/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/bing/organic/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/organic/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/organic/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/organic/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/organic/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/organic/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/organic/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/bing/organic/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Bing Organic Search\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/bing/organic/live/advanced\",\"description\":\"Returns real-time organic search engine results pages from Bing with advanced item data. Provides detailed ranking elements and structured SERP positions for organic listings.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, bing, organic\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/organic/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/organic/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/organic/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/organic/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/organic/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/organic/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/organic/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/organic/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/bing/organic/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Bing Organic Live" + modelName: "DataForSEO Bing Organic Search" modelId: "dataforseo/v3/serp/bing/organic/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/bing/paid/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/serp/bing/paid/live/advanced.md index b25916da..49da2b13 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/bing/paid/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/bing/paid/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "SERP Bing Paid Live API Reference" -description: "SandBase API operation dataforseo/v3/serp/bing/paid/live/advanced." +title: "DataForSEO Bing Sponsored SERP API Reference" +description: "SandBase API reference for model dataforseo/v3/serp/bing/paid/live/advanced. Call /v1/api/dataforseo/v3/serp/bing/paid/live/advanced; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/bing/paid/live/advanced" -apiReferenceJson: "{\"title\":\"SERP Bing Paid Live\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/bing/paid/live/advanced\",\"description\":\"Bing Ads paid search results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, bing, ads, paid\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/paid/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/bing/paid/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/bing/paid/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/paid/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/bing/paid/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/paid/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/paid/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/paid/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/paid/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/paid/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/paid/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/bing/paid/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Bing Sponsored SERP\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/bing/paid/live/advanced\",\"description\":\"Returns advanced sponsored search engine results from Bing for targeted queries, delivering details on ad placements, titles, and landing pages.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, bing, ads, paid\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/paid/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/paid/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/paid/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/paid/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/paid/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/paid/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/paid/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/paid/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/bing/paid/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Bing Paid Live" + modelName: "DataForSEO Bing Sponsored SERP" modelId: "dataforseo/v3/serp/bing/paid/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/bing/shopping/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/serp/bing/shopping/live/advanced.md index 6ce90bb5..7158a79d 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/bing/shopping/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/bing/shopping/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "SERP Bing Shopping Live API Reference" -description: "SandBase API operation dataforseo/v3/serp/bing/shopping/live/advanced." +title: "DataForSEO Bing Shopping SERP Advanced API Reference" +description: "SandBase API reference: dataforseo/v3/serp/bing/shopping/live/advanced via /v1/api/dataforseo/v3/serp/bing/shopping/live/advanced. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/bing/shopping/live/advanced" -apiReferenceJson: "{\"title\":\"SERP Bing Shopping Live\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/bing/shopping/live/advanced\",\"description\":\"Bing Shopping product listings.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, bing, shopping\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/shopping/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/bing/shopping/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/bing/shopping/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/shopping/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/bing/shopping/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/shopping/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/shopping/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/shopping/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/shopping/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/shopping/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/shopping/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/bing/shopping/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Bing Shopping SERP Advanced\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/bing/shopping/live/advanced\",\"description\":\"Returns real-time Bing Shopping product listings and search engine results page data. Delivers structured item details, merchant listings, and shopping SERP elements for requested queries.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, bing, shopping\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/shopping/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/shopping/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/bing/shopping/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/shopping/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/shopping/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/shopping/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/shopping/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/bing/shopping/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/bing/shopping/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Bing Shopping Live" + modelName: "DataForSEO Bing Shopping SERP Advanced" modelId: "dataforseo/v3/serp/bing/shopping/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/google/autocomplete/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/serp/google/autocomplete/live/advanced.md index ceee8341..75150c0a 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/google/autocomplete/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/google/autocomplete/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "SERP Google Autocomplete Live API Reference" -description: "SandBase API operation dataforseo/v3/serp/google/autocomplete/live/advanced." +title: "DataForSEO Google Autocomplete Advanced API Reference" +description: "SandBase API reference for dataforseo/v3/serp/google/autocomplete/live/advanced. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/google/autocomplete/live/advanced" -apiReferenceJson: "{\"title\":\"SERP Google Autocomplete Live\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/autocomplete/live/advanced\",\"description\":\"Google autocomplete suggestions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google, autocomplete\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/autocomplete/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/autocomplete/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/autocomplete/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/autocomplete/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/autocomplete/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/autocomplete/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/autocomplete/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/autocomplete/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/autocomplete/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/autocomplete/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/autocomplete/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/autocomplete/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Autocomplete Advanced\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/autocomplete/live/advanced\",\"description\":\"Returns real-time Google autocomplete search suggestions and related keyword prompts. Delivers SERP autocomplete data for market research and search query analysis.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google, autocomplete\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/autocomplete/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/autocomplete/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/autocomplete/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/autocomplete/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/autocomplete/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/autocomplete/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/autocomplete/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/autocomplete/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/autocomplete/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Google Autocomplete Live" + modelName: "DataForSEO Google Autocomplete Advanced" modelId: "dataforseo/v3/serp/google/autocomplete/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/google/events/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/serp/google/events/live/advanced.md index 802e3fbd..086927f9 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/google/events/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/google/events/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "SERP Google Events Live API Reference" -description: "SandBase API operation dataforseo/v3/serp/google/events/live/advanced." +title: "DataForSEO Google Events Advanced Search API Reference" +description: "SandBase API reference: dataforseo/v3/serp/google/events/live/advanced via /v1/api/dataforseo/v3/serp/google/events/live/advanced. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/google/events/live/advanced" -apiReferenceJson: "{\"title\":\"SERP Google Events Live\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/events/live/advanced\",\"description\":\"Google Events search results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google, events\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/events/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/events/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/events/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/events/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/events/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/events/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/events/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/events/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/events/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/events/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/events/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/events/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Events Advanced Search\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/events/live/advanced\",\"description\":\"Returns real-time Google Events search engine results pages. Delivers structured listings for local and global events directly from Google search.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google, events\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/events/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/events/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/events/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/events/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/events/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/events/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/events/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/events/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/events/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Google Events Live" + modelName: "DataForSEO Google Events Advanced Search" modelId: "dataforseo/v3/serp/google/events/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/google/images/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/serp/google/images/live/advanced.md index f0ef5a48..5a7b773f 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/google/images/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/google/images/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "SERP Google Images Live API Reference" -description: "SandBase API operation dataforseo/v3/serp/google/images/live/advanced." +title: "DataForSEO Google Images SERP API Reference" +description: "SandBase API reference: dataforseo/v3/serp/google/images/live/advanced via /v1/api/dataforseo/v3/serp/google/images/live/advanced. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/google/images/live/advanced" -apiReferenceJson: "{\"title\":\"SERP Google Images Live\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/images/live/advanced\",\"description\":\"Google Images search results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google, images\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/images/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/images/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/images/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/images/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/images/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/images/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/images/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/images/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/images/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/images/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/images/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/images/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Images SERP\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/images/live/advanced\",\"description\":\"Returns Google Images search engine results pages with detailed image metadata. Provides real-time SERP data for visual search queries across Google Images.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google, images\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/images/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/images/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/images/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/images/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/images/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/images/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/images/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/images/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/images/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Google Images Live" + modelName: "DataForSEO Google Images SERP" modelId: "dataforseo/v3/serp/google/images/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/google/jobs/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/serp/google/jobs/live/advanced.md index 6e2f0079..51e6259e 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/google/jobs/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/google/jobs/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "SERP Google Jobs Live API Reference" -description: "SandBase API operation dataforseo/v3/serp/google/jobs/live/advanced." +title: "DataForSEO Google Jobs Advanced SERP API Reference" +description: "SandBase API reference: dataforseo/v3/serp/google/jobs/live/advanced via /v1/api/dataforseo/v3/serp/google/jobs/live/advanced. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/google/jobs/live/advanced" -apiReferenceJson: "{\"title\":\"SERP Google Jobs Live\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/jobs/live/advanced\",\"description\":\"Google Jobs search results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google, jobs\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/jobs/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/jobs/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/jobs/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/jobs/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/jobs/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/jobs/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/jobs/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/jobs/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/jobs/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/jobs/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/jobs/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/jobs/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Jobs Advanced SERP\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/jobs/live/advanced\",\"description\":\"Returns advanced Google Jobs search engine results pages. Provides detailed structured data on job postings, employers, locations, and hiring platforms directly from Google SERP.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google, jobs\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/jobs/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/jobs/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/jobs/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/jobs/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/jobs/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/jobs/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/jobs/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/jobs/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/jobs/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Google Jobs Live" + modelName: "DataForSEO Google Jobs Advanced SERP" modelId: "dataforseo/v3/serp/google/jobs/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/google/knowledge_graph/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/serp/google/knowledge_graph/live/advanced.md index cf99e865..495d87b8 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/google/knowledge_graph/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/google/knowledge_graph/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "SERP Google Knowledge Graph Live API Reference" -description: "SandBase API operation dataforseo/v3/serp/google/knowledge_graph/live/advanced." +title: "DataForSEO Google Knowledge Graph API Reference" +description: "SandBase API reference for dataforseo/v3/serp/google/knowledge_graph/live/advanced. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/google/knowledge_graph/live/advanced" -apiReferenceJson: "{\"title\":\"SERP Google Knowledge Graph Live\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/knowledge_graph/live/advanced\",\"description\":\"Google Knowledge Graph entities.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/knowledge_graph/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/knowledge_graph/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/knowledge_graph/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/knowledge_graph/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/knowledge_graph/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/knowledge_graph/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/knowledge_graph/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/knowledge_graph/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/knowledge_graph/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/knowledge_graph/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/knowledge_graph/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/knowledge_graph/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Knowledge Graph\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/knowledge_graph/live/advanced\",\"description\":\"Returns Google Knowledge Graph entity details directly from live search engine results pages. Provides structured entity attributes, related search elements, and context for specific entities.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/knowledge_graph/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/knowledge_graph/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/knowledge_graph/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/knowledge_graph/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/knowledge_graph/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/knowledge_graph/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/knowledge_graph/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/knowledge_graph/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/knowledge_graph/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Google Knowledge Graph Live" + modelName: "DataForSEO Google Knowledge Graph" modelId: "dataforseo/v3/serp/google/knowledge_graph/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/google/local_finder/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/serp/google/local_finder/live/advanced.md index 5d01a7ab..b6a32a04 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/google/local_finder/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/google/local_finder/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "SERP Google Local Finder Live API Reference" -description: "SandBase API operation dataforseo/v3/serp/google/local_finder/live/advanced." +title: "DataForSEO Google Local Finder Advanced API Reference" +description: "SandBase API reference for dataforseo/v3/serp/google/local_finder/live/advanced. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/google/local_finder/live/advanced" -apiReferenceJson: "{\"title\":\"SERP Google Local Finder Live\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/local_finder/live/advanced\",\"description\":\"Google Local Finder results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google, local\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/local_finder/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/local_finder/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/local_finder/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/local_finder/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/local_finder/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/local_finder/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/local_finder/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/local_finder/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/local_finder/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/local_finder/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/local_finder/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/local_finder/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Local Finder Advanced\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/local_finder/live/advanced\",\"description\":\"Returns real-time Google Local Finder search engine results page data. Retrieves local business listings, map results, and advanced SERP elements based on search queries.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google, local\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/local_finder/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/local_finder/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/local_finder/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/local_finder/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/local_finder/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/local_finder/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/local_finder/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/local_finder/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/local_finder/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Google Local Finder Live" + modelName: "DataForSEO Google Local Finder Advanced" modelId: "dataforseo/v3/serp/google/local_finder/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/google/maps/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/serp/google/maps/live/advanced.md index 71bb4f85..add33837 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/google/maps/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/google/maps/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "SERP Google Maps Live API Reference" -description: "SandBase API operation dataforseo/v3/serp/google/maps/live/advanced." +title: "DataForSEO Google Maps Local SERP API Reference" +description: "SandBase API reference: dataforseo/v3/serp/google/maps/live/advanced via /v1/api/dataforseo/v3/serp/google/maps/live/advanced. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/google/maps/live/advanced" -apiReferenceJson: "{\"title\":\"SERP Google Maps Live\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/maps/live/advanced\",\"description\":\"Google Maps local business results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google, maps, local\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/maps/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/maps/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/maps/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/maps/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/maps/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/maps/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/maps/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/maps/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/maps/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/maps/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/maps/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/maps/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Maps Local SERP\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/maps/live/advanced\",\"description\":\"Returns real-time Google Maps search engine results pages and local business listings. Supports local SEO monitoring and geographical business discovery directly from Google Maps.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google, maps, local\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/maps/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/maps/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/maps/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/maps/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/maps/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/maps/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/maps/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/maps/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/maps/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Google Maps Live" + modelName: "DataForSEO Google Maps Local SERP" modelId: "dataforseo/v3/serp/google/maps/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/google/news/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/serp/google/news/live/advanced.md index bb88fba8..f2bda55c 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/google/news/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/google/news/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "SERP Google News Live API Reference" -description: "SandBase API operation dataforseo/v3/serp/google/news/live/advanced." +title: "DataForSEO Google News SERP API Reference" +description: "SandBase API reference: dataforseo/v3/serp/google/news/live/advanced via /v1/api/dataforseo/v3/serp/google/news/live/advanced. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/google/news/live/advanced" -apiReferenceJson: "{\"title\":\"SERP Google News Live\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/news/live/advanced\",\"description\":\"Google News search results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google, news\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/news/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/news/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/news/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/news/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/news/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/news/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/news/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/news/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/news/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/news/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/news/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/news/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google News SERP\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/news/live/advanced\",\"description\":\"Get live Google News results for any keyword, location and language: headlines, sources, URLs, dates and rank.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google, news\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/news/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/news/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/news/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/news/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/news/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/news/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/news/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/news/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/news/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Google News Live" + modelName: "DataForSEO Google News SERP" modelId: "dataforseo/v3/serp/google/news/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/google/organic/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/serp/google/organic/live/advanced.md index 35ab2ba6..912ad045 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/google/organic/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/google/organic/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "SERP Google Organic Live API Reference" -description: "SandBase API operation dataforseo/v3/serp/google/organic/live/advanced." +title: "DataForSEO Google SERP (Advanced) API Reference" +description: "SandBase API reference: dataforseo/v3/serp/google/organic/live/advanced via /v1/api/dataforseo/v3/serp/google/organic/live/advanced. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/google/organic/live/advanced" -apiReferenceJson: "{\"title\":\"SERP Google Organic Live\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/organic/live/advanced\",\"description\":\"Google organic search results in real-time.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google, organic\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/organic/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/organic/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/organic/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/organic/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/organic/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/organic/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/organic/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/organic/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/organic/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/organic/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/organic/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/organic/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google SERP (Advanced)\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/organic/live/advanced\",\"description\":\"Get live Google organic search results for any keyword, location and language, including AI Overviews, featured snippets, People Also Ask and other SERP features, with rank positions and URLs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google, organic\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/organic/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/organic/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/organic/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/organic/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/organic/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/organic/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/organic/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/organic/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/organic/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Google Organic Live" + modelName: "DataForSEO Google SERP (Advanced)" modelId: "dataforseo/v3/serp/google/organic/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/google/organic/live/regular.md b/model-api-reference/platform-apis/dataforseo/v3/serp/google/organic/live/regular.md index b04e4d9e..ba11c888 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/google/organic/live/regular.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/google/organic/live/regular.md @@ -1,13 +1,13 @@ --- -title: "SERP Google Organic Live Regular API Reference" -description: "SandBase API operation dataforseo/v3/serp/google/organic/live/regular." +title: "DataForSEO Google SERP (Regular) API Reference" +description: "SandBase API reference: dataforseo/v3/serp/google/organic/live/regular via /v1/api/dataforseo/v3/serp/google/organic/live/regular. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/google/organic/live/regular" -apiReferenceJson: "{\"title\":\"SERP Google Organic Live Regular\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/organic/live/regular\",\"description\":\"Google organic results (regular format).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google, organic\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/organic/live/regular \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/organic/live/regular\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/organic/live/regular\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/organic/live/regular\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/organic/live/regular\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/organic/live/regular\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/organic/live/regular\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/organic/live/regular\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/organic/live/regular\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/organic/live/regular\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/organic/live/regular\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/organic/live/regular\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google SERP (Regular)\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/organic/live/regular\",\"description\":\"Get live Google organic results for any keyword, location and language in a compact format: rank, title, URL, domain and description for each organic result.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google, organic\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/organic/live/regular \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/organic/live/regular\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/organic/live/regular\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/organic/live/regular\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/organic/live/regular\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/organic/live/regular\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/organic/live/regular\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/organic/live/regular\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/organic/live/regular\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Google Organic Live Regular" + modelName: "DataForSEO Google SERP (Regular)" modelId: "dataforseo/v3/serp/google/organic/live/regular" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/google/paid/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/serp/google/paid/live/advanced.md index 09580005..23e1c6b0 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/google/paid/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/google/paid/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "SERP Google Paid Live API Reference" -description: "SandBase API operation dataforseo/v3/serp/google/paid/live/advanced." +title: "DataForSEO Google Sponsored SERP Advanced API Reference" +description: "SandBase API reference: dataforseo/v3/serp/google/paid/live/advanced via /v1/api/dataforseo/v3/serp/google/paid/live/advanced. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/google/paid/live/advanced" -apiReferenceJson: "{\"title\":\"SERP Google Paid Live\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/paid/live/advanced\",\"description\":\"Google Ads paid search results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google, ads, paid\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/paid/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/paid/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/paid/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/paid/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/paid/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/paid/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/paid/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/paid/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/paid/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/paid/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/paid/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/paid/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Sponsored SERP Advanced\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/paid/live/advanced\",\"description\":\"Returns advanced Google Ads search engine results pages data in real time. Inspect sponsored listings, ad copy, landing URLs, and ad positions across Google search results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google, ads, paid\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/paid/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/paid/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/paid/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/paid/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/paid/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/paid/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/paid/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/paid/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/paid/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Google Paid Live" + modelName: "DataForSEO Google Sponsored SERP Advanced" modelId: "dataforseo/v3/serp/google/paid/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/google/related_searches/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/serp/google/related_searches/live/advanced.md index a0228c44..39f53aa4 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/google/related_searches/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/google/related_searches/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "SERP Google Related Searches Live API Reference" -description: "SandBase API operation dataforseo/v3/serp/google/related_searches/live/advanced." +title: "DataForSEO Google SERP Related Searches API Reference" +description: "SandBase API reference for dataforseo/v3/serp/google/related_searches/live/advanced. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/google/related_searches/live/advanced" -apiReferenceJson: "{\"title\":\"SERP Google Related Searches Live\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/related_searches/live/advanced\",\"description\":\"Google related search queries.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/related_searches/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/related_searches/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/related_searches/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/related_searches/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/related_searches/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/related_searches/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/related_searches/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/related_searches/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/related_searches/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/related_searches/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/related_searches/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/related_searches/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google SERP Related Searches\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/related_searches/live/advanced\",\"description\":\"Returns Google related search queries directly from search engine result pages. It provides search terms and suggestions related to target queries.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/related_searches/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/related_searches/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/related_searches/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/related_searches/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/related_searches/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/related_searches/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/related_searches/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/related_searches/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/related_searches/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Google Related Searches Live" + modelName: "DataForSEO Google SERP Related Searches" modelId: "dataforseo/v3/serp/google/related_searches/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/google/shopping/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/serp/google/shopping/live/advanced.md index 999f2e32..97f9b295 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/google/shopping/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/google/shopping/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "SERP Google Shopping Live API Reference" -description: "SandBase API operation dataforseo/v3/serp/google/shopping/live/advanced." +title: "DataForSEO Google Shopping SERP API Reference" +description: "SandBase API reference: dataforseo/v3/serp/google/shopping/live/advanced via /v1/api/dataforseo/v3/serp/google/shopping/live/advanced. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/google/shopping/live/advanced" -apiReferenceJson: "{\"title\":\"SERP Google Shopping Live\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/shopping/live/advanced\",\"description\":\"Google Shopping product listings.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google, shopping, ecommerce\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/shopping/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/shopping/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/shopping/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/shopping/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/shopping/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/shopping/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/shopping/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/shopping/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/shopping/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/shopping/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/shopping/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/shopping/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Shopping SERP\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/shopping/live/advanced\",\"description\":\"Returns Google Shopping product listings and search engine result pages for ecommerce research. Provides structured data on merchant offers, product details, and seller information.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google, shopping, ecommerce\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/shopping/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/shopping/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/shopping/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/shopping/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/shopping/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/shopping/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/shopping/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/shopping/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/shopping/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Google Shopping Live" + modelName: "DataForSEO Google Shopping SERP" modelId: "dataforseo/v3/serp/google/shopping/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/google/videos/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/serp/google/videos/live/advanced.md index d2ba2177..b377b475 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/google/videos/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/google/videos/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "SERP Google Videos Live API Reference" -description: "SandBase API operation dataforseo/v3/serp/google/videos/live/advanced." +title: "DataForSEO Google Videos SERP API Reference" +description: "SandBase API reference: dataforseo/v3/serp/google/videos/live/advanced via /v1/api/dataforseo/v3/serp/google/videos/live/advanced. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/google/videos/live/advanced" -apiReferenceJson: "{\"title\":\"SERP Google Videos Live\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/videos/live/advanced\",\"description\":\"Google Videos search results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google, videos\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/videos/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/videos/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/videos/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/videos/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/videos/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/videos/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/videos/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/videos/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/videos/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/videos/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/videos/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/videos/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Google Videos SERP\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/google/videos/live/advanced\",\"description\":\"Returns Google Videos search engine results page data. Retrieves advanced video SERP listings directly from Google search.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, google, videos\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/videos/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/videos/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/google/videos/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/videos/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/videos/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/videos/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/videos/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/google/videos/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/google/videos/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Google Videos Live" + modelName: "DataForSEO Google Videos SERP" modelId: "dataforseo/v3/serp/google/videos/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/naver/organic/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/serp/naver/organic/live/advanced.md index a89da845..65378641 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/naver/organic/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/naver/organic/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "SERP Naver Organic Live API Reference" -description: "SandBase API operation dataforseo/v3/serp/naver/organic/live/advanced." +title: "DataForSEO Naver Organic SERP Advanced API Reference" +description: "SandBase API reference: dataforseo/v3/serp/naver/organic/live/advanced via /v1/api/dataforseo/v3/serp/naver/organic/live/advanced. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/naver/organic/live/advanced" -apiReferenceJson: "{\"title\":\"SERP Naver Organic Live\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/naver/organic/live/advanced\",\"description\":\"Naver organic search results (Korean).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, naver, organic\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/naver/organic/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/naver/organic/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/naver/organic/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/naver/organic/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/naver/organic/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/naver/organic/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/naver/organic/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/naver/organic/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/naver/organic/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/naver/organic/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/naver/organic/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/naver/organic/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Naver Organic SERP Advanced\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/naver/organic/live/advanced\",\"description\":\"Returns detailed organic search engine results pages from Naver for Korean search queries. Provides structured SERP data including ranked organic listings and SERP elements.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, naver, organic\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/naver/organic/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/naver/organic/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/naver/organic/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/naver/organic/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/naver/organic/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/naver/organic/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/naver/organic/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/naver/organic/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/naver/organic/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Naver Organic Live" + modelName: "DataForSEO Naver Organic SERP Advanced" modelId: "dataforseo/v3/serp/naver/organic/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/yahoo/organic/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/serp/yahoo/organic/live/advanced.md index e9890e61..ee6b55c6 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/yahoo/organic/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/yahoo/organic/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "SERP Yahoo Organic Live API Reference" -description: "SandBase API operation dataforseo/v3/serp/yahoo/organic/live/advanced." +title: "DataForSEO Yahoo Organic SERP API Reference" +description: "SandBase API reference: dataforseo/v3/serp/yahoo/organic/live/advanced via /v1/api/dataforseo/v3/serp/yahoo/organic/live/advanced. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/yahoo/organic/live/advanced" -apiReferenceJson: "{\"title\":\"SERP Yahoo Organic Live\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/yahoo/organic/live/advanced\",\"description\":\"Yahoo organic search results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, yahoo, organic\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/yahoo/organic/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/yahoo/organic/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/yahoo/organic/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/yahoo/organic/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/yahoo/organic/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/yahoo/organic/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yahoo/organic/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yahoo/organic/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yahoo/organic/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yahoo/organic/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yahoo/organic/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/yahoo/organic/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Yahoo Organic SERP\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/yahoo/organic/live/advanced\",\"description\":\"Returns real-time organic search engine results pages from Yahoo. Delivers detailed rank positions, titles, URLs, and SERP snippet data for specified search queries.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, yahoo, organic\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/yahoo/organic/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/yahoo/organic/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/yahoo/organic/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yahoo/organic/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yahoo/organic/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yahoo/organic/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yahoo/organic/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yahoo/organic/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/yahoo/organic/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Yahoo Organic Live" + modelName: "DataForSEO Yahoo Organic SERP" modelId: "dataforseo/v3/serp/yahoo/organic/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/yahoo/paid/live/advanced.md b/model-api-reference/platform-apis/dataforseo/v3/serp/yahoo/paid/live/advanced.md index 7ef7362b..aded542c 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/yahoo/paid/live/advanced.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/yahoo/paid/live/advanced.md @@ -1,13 +1,13 @@ --- -title: "SERP Yahoo Paid Live API Reference" -description: "SandBase API operation dataforseo/v3/serp/yahoo/paid/live/advanced." +title: "DataForSEO Yahoo Sponsored SERP Advanced API Reference" +description: "SandBase API reference for model dataforseo/v3/serp/yahoo/paid/live/advanced. Call /v1/api/dataforseo/v3/serp/yahoo/paid/live/advanced; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/yahoo/paid/live/advanced" -apiReferenceJson: "{\"title\":\"SERP Yahoo Paid Live\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/yahoo/paid/live/advanced\",\"description\":\"Yahoo paid search results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, yahoo, paid\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/yahoo/paid/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/yahoo/paid/live/advanced\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/yahoo/paid/live/advanced\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/yahoo/paid/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/yahoo/paid/live/advanced\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/yahoo/paid/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yahoo/paid/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yahoo/paid/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yahoo/paid/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yahoo/paid/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yahoo/paid/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/yahoo/paid/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Yahoo Sponsored SERP Advanced\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/yahoo/paid/live/advanced\",\"description\":\"Returns sponsored ad listings from Yahoo search engine results pages in real time. Use this endpoint to inspect search ad positions, advertiser domains, and ad copy.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, yahoo, paid\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/yahoo/paid/live/advanced \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/yahoo/paid/live/advanced\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/yahoo/paid/live/advanced\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yahoo/paid/live/advanced\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yahoo/paid/live/advanced\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yahoo/paid/live/advanced\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yahoo/paid/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yahoo/paid/live/advanced\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/yahoo/paid/live/advanced\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Yahoo Paid Live" + modelName: "DataForSEO Yahoo Sponsored SERP Advanced" modelId: "dataforseo/v3/serp/yahoo/paid/live/advanced" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/yandex/organic/live/regular.md b/model-api-reference/platform-apis/dataforseo/v3/serp/yandex/organic/live/regular.md index fea852a6..6e580a1a 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/yandex/organic/live/regular.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/yandex/organic/live/regular.md @@ -1,13 +1,13 @@ --- -title: "SERP Yandex Organic Live API Reference" -description: "SandBase API operation dataforseo/v3/serp/yandex/organic/live/regular." +title: "DataForSEO Yandex Organic SERP API Reference" +description: "SandBase API reference: dataforseo/v3/serp/yandex/organic/live/regular via /v1/api/dataforseo/v3/serp/yandex/organic/live/regular. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/yandex/organic/live/regular" -apiReferenceJson: "{\"title\":\"SERP Yandex Organic Live\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/yandex/organic/live/regular\",\"description\":\"Yandex organic search results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, yandex, organic\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/yandex/organic/live/regular \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/yandex/organic/live/regular\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/yandex/organic/live/regular\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/yandex/organic/live/regular\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/yandex/organic/live/regular\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/yandex/organic/live/regular\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yandex/organic/live/regular\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yandex/organic/live/regular\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yandex/organic/live/regular\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yandex/organic/live/regular\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yandex/organic/live/regular\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/yandex/organic/live/regular\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Yandex Organic SERP\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/yandex/organic/live/regular\",\"description\":\"Returns regular organic search engine result pages from Yandex in real time. Use this endpoint to inspect ranking positions, snippets, and organic search listings.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, yandex, organic\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/yandex/organic/live/regular \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/yandex/organic/live/regular\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/yandex/organic/live/regular\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yandex/organic/live/regular\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yandex/organic/live/regular\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yandex/organic/live/regular\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yandex/organic/live/regular\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yandex/organic/live/regular\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/yandex/organic/live/regular\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Yandex Organic Live" + modelName: "DataForSEO Yandex Organic SERP" modelId: "dataforseo/v3/serp/yandex/organic/live/regular" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/dataforseo/v3/serp/yandex/paid/live/regular.md b/model-api-reference/platform-apis/dataforseo/v3/serp/yandex/paid/live/regular.md index b3457439..70a66092 100644 --- a/model-api-reference/platform-apis/dataforseo/v3/serp/yandex/paid/live/regular.md +++ b/model-api-reference/platform-apis/dataforseo/v3/serp/yandex/paid/live/regular.md @@ -1,13 +1,13 @@ --- -title: "SERP Yandex Paid Live API Reference" -description: "SandBase API operation dataforseo/v3/serp/yandex/paid/live/regular." +title: "DataForSEO Yandex Sponsored SERP API Reference" +description: "SandBase API reference for model dataforseo/v3/serp/yandex/paid/live/regular. Call /v1/api/dataforseo/v3/serp/yandex/paid/live/regular; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/dataforseo/v3/serp/yandex/paid/live/regular" -apiReferenceJson: "{\"title\":\"SERP Yandex Paid Live\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/yandex/paid/live/regular\",\"description\":\"Yandex paid search results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, yandex, paid\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/yandex/paid/live/regular \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"dataforseo/v3/serp/yandex/paid/live/regular\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/yandex/paid/live/regular\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/yandex/paid/live/regular\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"dataforseo/v3/serp/yandex/paid/live/regular\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/yandex/paid/live/regular\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yandex/paid/live/regular\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yandex/paid/live/regular\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yandex/paid/live/regular\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yandex/paid/live/regular\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yandex/paid/live/regular\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/yandex/paid/live/regular\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"DataForSEO Yandex Sponsored SERP\",\"operation\":\"DataForSEO API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/dataforseo/v3/serp/yandex/paid/live/regular\",\"description\":\"Returns real-time commercial search engine results pages (SERP) from Yandex. It delivers sponsored search listing data directly from search queries.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"serp, yandex, paid\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/dataforseo/v3/serp/yandex/paid/live/regular \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/yandex/paid/live/regular\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/dataforseo/v3/serp/yandex/paid/live/regular\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yandex/paid/live/regular\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yandex/paid/live/regular\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yandex/paid/live/regular\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yandex/paid/live/regular\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"dataforseo/v3/serp/yandex/paid/live/regular\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"dataforseo/v3/serp/yandex/paid/live/regular\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "SERP Yandex Paid Live" + modelName: "DataForSEO Yandex Sponsored SERP" modelId: "dataforseo/v3/serp/yandex/paid/live/regular" vendor: "DataForSEO" vendorSlug: "dataforseo" diff --git a/model-api-reference/platform-apis/douyin/app-v3/add-video-play-count.md b/model-api-reference/platform-apis/douyin/app-v3/add-video-play-count.md deleted file mode 100644 index ed686429..00000000 --- a/model-api-reference/platform-apis/douyin/app-v3/add-video-play-count.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Increase the number of plays of the work according to API Ref" -description: "SandBase API operation douyin/app-v3/add-video-play-count." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/app-v3/add-video-play-count" -apiReferenceJson: "{\"title\":\"Increase the number of plays of the work according to the video ID\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/add-video-play-count\",\"description\":\"Increase the number of plays of the work according to the video ID This interface uses guest Cookie by default. If you need to use the Cookie of the logged-in user, please pass it in the parameters. Each call to a single work increases the number of plays by 1. After about `1000` calls, Douyin will restrict it. You need to wait for a period of time (such as 2 hours) before continuing to call. This restriction is for the work, not for the interface. When browsing the work without logging in, using different IP browsers or browsing the work in the APP, the number of plays of the work will not increase. You can carry the Cookie of the Douyin web page to request this interface, but it is not guaranteed to be effective and needs to be tested by yourself. The above restrictions are based on test results, and the specific restrictions may vary, for reference only.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_type\",\"type\":\"integer\",\"required\":true,\"description\":\"Video type, 0: Video 1: Graphic and text, can be obtained from the single work data interface.\"},{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"Optional, use guest Cookie by default\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id, alias aweme_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/add-video-play-count \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"aweme_type\\\": 1,\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"aweme_type\\\": 1,\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/add-video-play-count\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"aweme_type\\\": 1,\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/add-video-play-count\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/add-video-play-count\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/add-video-play-count\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/add-video-play-count\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/add-video-play-count\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/add-video-play-count\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/add-video-play-count\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Increase the number of plays of the work according to the video ID" - modelId: "douyin/app-v3/add-video-play-count" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "app-v3/add-video-play-count" - protocol: "API Reference" - endpoint: "/v1/api/douyin/app-v3/add-video-play-count" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/app-v3/brand-hot-search-list-detail.md b/model-api-reference/platform-apis/douyin/app-v3/brand-hot-search-list-detail.md index 5b975e84..056f0fa4 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/brand-hot-search-list-detail.md +++ b/model-api-reference/platform-apis/douyin/app-v3/brand-hot-search-list-detail.md @@ -1,13 +1,13 @@ --- -title: "Get Douyin brand hot search list detail data API Reference" -description: "SandBase API operation douyin/app-v3/brand-hot-search-list-detail." +title: "Douyin Brand Hot Search List Detail API Reference" +description: "SandBase API reference for model douyin/app-v3/brand-hot-search-list-detail. Call /v1/api/douyin/app-v3/brand-hot-search-list-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/brand-hot-search-list-detail" -apiReferenceJson: "{\"title\":\"Get Douyin brand hot search list detail data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/brand-hot-search-list-detail\",\"description\":\"Get Douyin brand hot search list detail data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"category_id\",\"type\":\"integer\",\"required\":true,\"description\":\"Category id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/brand-hot-search-list-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"category_id\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"category_id\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/brand-hot-search-list-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"category_id\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/brand-hot-search-list-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/brand-hot-search-list-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/brand-hot-search-list-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/brand-hot-search-list-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/brand-hot-search-list-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/brand-hot-search-list-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/brand-hot-search-list-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Brand Hot Search List Detail\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/brand-hot-search-list-detail\",\"description\":\"Returns detailed brand hot search list data from Douyin for a specific category. Requires a category identifier to filter the ranking results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"category_id\",\"type\":\"integer\",\"required\":true,\"description\":\"Category id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/brand-hot-search-list-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"category_id\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"category_id\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/brand-hot-search-list-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"category_id\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/brand-hot-search-list-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/brand-hot-search-list-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/brand-hot-search-list-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/brand-hot-search-list-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/brand-hot-search-list-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/brand-hot-search-list-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/brand-hot-search-list-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Douyin brand hot search list detail data" + modelName: "Douyin Brand Hot Search List Detail" modelId: "douyin/app-v3/brand-hot-search-list-detail" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/brand-hot-search-list.md b/model-api-reference/platform-apis/douyin/app-v3/brand-hot-search-list.md index e05728e8..66b1b3e4 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/brand-hot-search-list.md +++ b/model-api-reference/platform-apis/douyin/app-v3/brand-hot-search-list.md @@ -1,13 +1,13 @@ --- -title: "Get Douyin brand hot search list data API Reference" -description: "SandBase API operation douyin/app-v3/brand-hot-search-list." +title: "Douyin Brand Hot Search List API Reference" +description: "SandBase API reference for model douyin/app-v3/brand-hot-search-list. Call /v1/api/douyin/app-v3/brand-hot-search-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/brand-hot-search-list" -apiReferenceJson: "{\"title\":\"Get Douyin brand hot search list data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/brand-hot-search-list\",\"description\":\"Get Douyin brand hot search category data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/brand-hot-search-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/app-v3/brand-hot-search-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/app-v3/brand-hot-search-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/brand-hot-search-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/app-v3/brand-hot-search-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/brand-hot-search-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/brand-hot-search-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/brand-hot-search-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/brand-hot-search-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/brand-hot-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/brand-hot-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/brand-hot-search-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Brand Hot Search List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/brand-hot-search-list\",\"description\":\"Returns the current Douyin brand hot search list and category data. Use it to track trending brand searches and popular brand rankings across the platform.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/brand-hot-search-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/brand-hot-search-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/brand-hot-search-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/brand-hot-search-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/brand-hot-search-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/brand-hot-search-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/brand-hot-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/brand-hot-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/brand-hot-search-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Douyin brand hot search list data" + modelName: "Douyin Brand Hot Search List" modelId: "douyin/app-v3/brand-hot-search-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/generate-short-url.md b/model-api-reference/platform-apis/douyin/app-v3/generate-short-url.md index 7801c1b9..01e423fa 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/generate-short-url.md +++ b/model-api-reference/platform-apis/douyin/app-v3/generate-short-url.md @@ -1,13 +1,13 @@ --- -title: "Generate Douyin short link API Reference" -description: "SandBase API operation douyin/app-v3/generate-short-url." +title: "Douyin Short Link Generator API Reference" +description: "SandBase API reference for model douyin/app-v3/generate-short-url. Call /v1/api/douyin/app-v3/generate-short-url; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/generate-short-url" -apiReferenceJson: "{\"title\":\"Generate Douyin short link\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/generate-short-url\",\"description\":\"Generate Douyin short link\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Douyin link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/generate-short-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/generate-short-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/generate-short-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/generate-short-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/generate-short-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/generate-short-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/generate-short-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/generate-short-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/generate-short-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Short Link Generator\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/generate-short-url\",\"description\":\"Converts a standard Douyin web link into a shortened Douyin URL. Returns the shortened link string and operation status for the provided URL.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Douyin link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/generate-short-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://www.douyin.com/video/7691553968815623478\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://www.douyin.com/video/7691553968815623478\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/generate-short-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://www.douyin.com/video/7691553968815623478\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/generate-short-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/generate-short-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/generate-short-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/generate-short-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/generate-short-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/generate-short-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/generate-short-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate Douyin short link" + modelName: "Douyin Short Link Generator" modelId: "douyin/app-v3/generate-short-url" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/generate-video-share-qrcode.md b/model-api-reference/platform-apis/douyin/app-v3/generate-video-share-qrcode.md index 398f5c2c..e7f8ca17 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/generate-video-share-qrcode.md +++ b/model-api-reference/platform-apis/douyin/app-v3/generate-video-share-qrcode.md @@ -1,13 +1,13 @@ --- -title: "Generate Douyin video share QR code API Reference" -description: "SandBase API operation douyin/app-v3/generate-video-share-qrcode." +title: "Douyin Video Share QR Code API Reference" +description: "SandBase API reference for model douyin/app-v3/generate-video-share-qrcode. Call /v1/api/douyin/app-v3/generate-video-share-qrcode; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/generate-video-share-qrcode" -apiReferenceJson: "{\"title\":\"Generate Douyin video share QR code\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/generate-video-share-qrcode\",\"description\":\"Generate Douyin video share QR code\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"object_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id or author uid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/generate-video-share-qrcode \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"object_id\\\": \\\"object_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"object_id\\\": \\\"object_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/generate-video-share-qrcode\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"object_id\\\": \\\"object_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/generate-video-share-qrcode\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/generate-video-share-qrcode\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/generate-video-share-qrcode\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/generate-video-share-qrcode\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/generate-video-share-qrcode\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/generate-video-share-qrcode\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/generate-video-share-qrcode\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Video Share QR Code\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/generate-video-share-qrcode\",\"description\":\"Returns a Douyin share QR code for a designated target. Takes a video ID or author UID to retrieve the scannable code.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"object_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id or author uid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/generate-video-share-qrcode \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"object_id\\\": \\\"object_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"object_id\\\": \\\"object_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/generate-video-share-qrcode\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"object_id\\\": \\\"object_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/generate-video-share-qrcode\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/generate-video-share-qrcode\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/generate-video-share-qrcode\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/generate-video-share-qrcode\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/generate-video-share-qrcode\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/generate-video-share-qrcode\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/generate-video-share-qrcode\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate Douyin video share QR code" + modelName: "Douyin Video Share QR Code" modelId: "douyin/app-v3/generate-video-share-qrcode" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/hashtag-detail.md b/model-api-reference/platform-apis/douyin/app-v3/hashtag-detail.md index d5fef878..34284459 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/hashtag-detail.md +++ b/model-api-reference/platform-apis/douyin/app-v3/hashtag-detail.md @@ -1,13 +1,13 @@ --- -title: "Get details of specified hashtag API Reference — Douyin Detail" -description: "SandBase API operation douyin/app-v3/hashtag-detail." +title: "Douyin Hashtag Details API Reference" +description: "Douyin Hashtag Details API reference for SandBase. Use model douyin/app-v3/hashtag-detail with /v1/api/douyin/app-v3/hashtag-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/hashtag-detail" -apiReferenceJson: "{\"title\":\"Get details of specified hashtag\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/hashtag-detail\",\"description\":\"Get details of specified hashtag\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"ch_id\",\"type\":\"integer\",\"required\":true,\"description\":\"Hashtag id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/hashtag-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"ch_id\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"ch_id\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/hashtag-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"ch_id\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/hashtag-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/hashtag-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/hashtag-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/hashtag-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/hashtag-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/hashtag-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/hashtag-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Hashtag Details\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/hashtag-detail\",\"description\":\"Retrieves comprehensive information and metadata for a specific Douyin hashtag using its unique challenge identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"ch_id\",\"type\":\"integer\",\"required\":true,\"description\":\"Hashtag id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/hashtag-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"ch_id\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"ch_id\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/hashtag-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"ch_id\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/hashtag-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/hashtag-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/hashtag-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/hashtag-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/hashtag-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/hashtag-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/hashtag-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get details of specified hashtag" + modelName: "Douyin Hashtag Details" modelId: "douyin/app-v3/hashtag-detail" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/hashtag-video-list.md b/model-api-reference/platform-apis/douyin/app-v3/hashtag-video-list.md index 55859454..746712f9 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/hashtag-video-list.md +++ b/model-api-reference/platform-apis/douyin/app-v3/hashtag-video-list.md @@ -1,13 +1,13 @@ --- -title: "Get video list of specified hashtag API Reference — Douyin List" -description: "SandBase API operation douyin/app-v3/hashtag-video-list." +title: "Douyin Hashtag Video List API Reference" +description: "SandBase API reference for model douyin/app-v3/hashtag-video-list. Call /v1/api/douyin/app-v3/hashtag-video-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/hashtag-video-list" -apiReferenceJson: "{\"title\":\"Get video list of specified hashtag\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/hashtag-video-list\",\"description\":\"Get video list of specified hashtag\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"ch_id\",\"type\":\"string\",\"required\":true,\"description\":\"Hashtag id\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number Please keep the default, otherwise there will be BUG.\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor, used for paging, the first page is 0, the second page is the cursor value in the first response.\"},{\"name\":\"sort_type\",\"type\":\"integer\",\"required\":false,\"description\":\"0: Comprehensive sorting 1: Most likes 2: Latest release\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/hashtag-video-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"ch_id\\\": \\\"ch_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"ch_id\\\": \\\"ch_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/hashtag-video-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"ch_id\\\": \\\"ch_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/hashtag-video-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/hashtag-video-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/hashtag-video-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/hashtag-video-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/hashtag-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/hashtag-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/hashtag-video-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Hashtag Video List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/hashtag-video-list\",\"description\":\"Returns a list of videos associated with a specific Douyin hashtag. Supports sorting by comprehensive rank, most likes, or available release along with cursor pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"ch_id\",\"type\":\"string\",\"required\":true,\"description\":\"Hashtag id\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number Please keep the default, otherwise there will be BUG.\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor, used for paging, the first page is 0, the second page is the cursor value in the first response.\"},{\"name\":\"sort_type\",\"type\":\"integer\",\"required\":false,\"description\":\"0: Comprehensive sorting 1: Most likes 2: Latest release\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/hashtag-video-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"ch_id\\\": \\\"ch_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"ch_id\\\": \\\"ch_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/hashtag-video-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"ch_id\\\": \\\"ch_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/hashtag-video-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/hashtag-video-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/hashtag-video-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/hashtag-video-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/hashtag-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/hashtag-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/hashtag-video-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video list of specified hashtag" + modelName: "Douyin Hashtag Video List" modelId: "douyin/app-v3/hashtag-video-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/hot-search-list.md b/model-api-reference/platform-apis/douyin/app-v3/hot-search-list.md index 8e9d4d3b..8aa0219d 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/hot-search-list.md +++ b/model-api-reference/platform-apis/douyin/app-v3/hot-search-list.md @@ -1,13 +1,13 @@ --- -title: "Get Douyin hot search list data API Reference" -description: "SandBase API operation douyin/app-v3/hot-search-list." +title: "Douyin Hot Search List API Reference" +description: "Douyin Hot Search List API reference for SandBase. Use model douyin/app-v3/hot-search-list with /v1/api/douyin/app-v3/hot-search-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/hot-search-list" -apiReferenceJson: "{\"title\":\"Get Douyin hot search list data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/hot-search-list\",\"description\":\"Get Douyin hot search list data, including: Hot search list Seeding list Entertainment list Social list Challenge list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"board_sub_type\",\"type\":\"string\",\"required\":false,\"description\":\"- Empty string: Hot search list (default)\",\"default\":\"\\\"\\\"\"},{\"name\":\"board_type\",\"type\":\"string\",\"required\":false,\"description\":\"- 0: Hot search list (default)\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/hot-search-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/app-v3/hot-search-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/app-v3/hot-search-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/hot-search-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/app-v3/hot-search-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/hot-search-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/hot-search-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/hot-search-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/hot-search-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/hot-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/hot-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/hot-search-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Hot Search List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/hot-search-list\",\"description\":\"Get the Douyin hot search list and other boards (seeding, entertainment, social and challenge lists): trending words with heat values and video counts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"board_sub_type\",\"type\":\"string\",\"required\":false,\"description\":\"- Empty string: Hot search list (default)\",\"default\":\"\\\"\\\"\"},{\"name\":\"board_type\",\"type\":\"string\",\"required\":false,\"description\":\"- 0: Hot search list (default)\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/hot-search-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/hot-search-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/hot-search-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/hot-search-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/hot-search-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/hot-search-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/hot-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/hot-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/hot-search-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Douyin hot search list data" + modelName: "Douyin Hot Search List" modelId: "douyin/app-v3/hot-search-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/live-hot-search-list.md b/model-api-reference/platform-apis/douyin/app-v3/live-hot-search-list.md deleted file mode 100644 index 54f5d0d1..00000000 --- a/model-api-reference/platform-apis/douyin/app-v3/live-hot-search-list.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get Douyin live hot search list data API Reference" -description: "SandBase API operation douyin/app-v3/live-hot-search-list." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/app-v3/live-hot-search-list" -apiReferenceJson: "{\"title\":\"Get Douyin live hot search list data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/live-hot-search-list\",\"description\":\"Get Douyin live hot search list data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/live-hot-search-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/app-v3/live-hot-search-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/app-v3/live-hot-search-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/live-hot-search-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/app-v3/live-hot-search-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/live-hot-search-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/live-hot-search-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/live-hot-search-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/live-hot-search-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/live-hot-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/live-hot-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/live-hot-search-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get Douyin live hot search list data" - modelId: "douyin/app-v3/live-hot-search-list" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "app-v3/live-hot-search-list" - protocol: "API Reference" - endpoint: "/v1/api/douyin/app-v3/live-hot-search-list" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/app-v3/multi-video-high-quality-play-url.md b/model-api-reference/platform-apis/douyin/app-v3/multi-video-high-quality-play-url.md index 1263ed40..6580cb62 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/multi-video-high-quality-play-url.md +++ b/model-api-reference/platform-apis/douyin/app-v3/multi-video-high-quality-play-url.md @@ -1,13 +1,13 @@ --- -title: "Batch get the highest quality play URL of videos — 1qdxoe API" -description: "SandBase API operation douyin/app-v3/multi-video-high-quality-play-url." +title: "Douyin Multi-Video High Quality Play URLs API Reference" +description: "SandBase API reference: douyin/app-v3/multi-video-high-quality-play-url via /v1/api/douyin/app-v3/multi-video-high-quality-play-url. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/multi-video-high-quality-play-url" -apiReferenceJson: "{\"title\":\"Batch get the highest quality play URL of videos\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/multi-video-high-quality-play-url\",\"description\":\"This interface is currently on sale for $0.25, and will return to the original price of $0.5 after the event ends. If there are less than 50 videos, they will be charged as 50 videos. Batch get the highest quality (original upload quality) play URL of videos This interface will return the highest quality play URL, the original upload quality refers to the quality of the video when the user uploads it, usually the highest quality video has an uncompressed bitrate and the file header contains metadata. The highest quality video link cannot be obtained directly from the Douyin APP or web version, and must be obtained through this interface. This interface is very suitable for batch obtaining high-definition, watermark-free video links, suitable for scenarios that require high-quality videos, such as video editing, archiving, training models, etc. Use concurrent requests to improve batch acquisition efficiency. Support up to 50 video IDs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_ids\",\"type\":\"string\",\"required\":false,\"description\":\"Video id list, separated by commas, for example: \\\"123,456,789\\\", up to 50.\"},{\"name\":\"region\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional ISO country code (for example, CN, US, or HK). Pass CN for users in mainland China to get China-region CDN URLs for faster downloads.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/multi-video-high-quality-play-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/app-v3/multi-video-high-quality-play-url\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/app-v3/multi-video-high-quality-play-url\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/multi-video-high-quality-play-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/app-v3/multi-video-high-quality-play-url\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/multi-video-high-quality-play-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-high-quality-play-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-high-quality-play-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-high-quality-play-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-high-quality-play-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-high-quality-play-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/multi-video-high-quality-play-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Multi-Video High Quality Play URLs\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/multi-video-high-quality-play-url\",\"description\":\"Returns highest-quality direct video playback URLs for multiple Douyin videos based on comma-separated video IDs, with optional CDN region targeting. This interface is currently on sale for $0.25, and will return to the original price of $0.5 after the event ends. If there are less than 50 videos, they will be charged as 50 videos.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_ids\",\"type\":\"string\",\"required\":false,\"description\":\"Video id list, separated by commas, for example: \\\"123,456,789\\\", up to 50.\"},{\"name\":\"region\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional ISO country code (for example, CN, US, or HK). Pass CN for users in mainland China to get China-region CDN URLs for faster downloads.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/multi-video-high-quality-play-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/multi-video-high-quality-play-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/multi-video-high-quality-play-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-high-quality-play-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-high-quality-play-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-high-quality-play-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-high-quality-play-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-high-quality-play-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/multi-video-high-quality-play-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Batch get the highest quality play URL of videos" + modelName: "Douyin Multi-Video High Quality Play URLs" modelId: "douyin/app-v3/multi-video-high-quality-play-url" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/multi-video-statistics.md b/model-api-reference/platform-apis/douyin/app-v3/multi-video-statistics.md index 7914cc03..9cecbb33 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/multi-video-statistics.md +++ b/model-api-reference/platform-apis/douyin/app-v3/multi-video-statistics.md @@ -1,13 +1,13 @@ --- -title: "Get the statistical data of the Post according to th — 3mp1xo API" -description: "SandBase API operation douyin/app-v3/multi-video-statistics." +title: "Douyin Video Statistics (Batch) API Reference" +description: "SandBase API reference for model douyin/app-v3/multi-video-statistics. Call /v1/api/douyin/app-v3/multi-video-statistics; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/multi-video-statistics" -apiReferenceJson: "{\"title\":\"Get the statistical data of the Post according to the video ID (like count, download count, play count, share count)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/multi-video-statistics\",\"description\":\"Get the statistical data of the Post according to the video ID, support multiple video ids, up to 50 videos at a time. Most of the Douyin interfaces no longer return the number of plays of the Post, and can only be obtained through this interface. Price: 0.025$ each time. List of statistics that can be obtained: Like count (digg_count) Download count (download_count) Play count (play_count) Share count (share_count)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_ids\",\"type\":\"string\",\"required\":true,\"description\":\"Video id, supports multiple video ids, separated by commas, no more than 50, single is also possible, no need for commas.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/multi-video-statistics \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"aweme_ids\\\": \\\"aweme_ids\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"aweme_ids\\\": \\\"aweme_ids\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/multi-video-statistics\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"aweme_ids\\\": \\\"aweme_ids\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/multi-video-statistics\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-statistics\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-statistics\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-statistics\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-statistics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-statistics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/multi-video-statistics\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Video Statistics (Batch)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/multi-video-statistics\",\"description\":\"Get play, like, share and download counts for up to 50 Douyin videos in one request by passing comma-separated video IDs. Price: 0.025$ each time.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_ids\",\"type\":\"string\",\"required\":true,\"description\":\"Video id, supports multiple video ids, separated by commas, no more than 50, single is also possible, no need for commas.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/multi-video-statistics \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"aweme_ids\\\": \\\"7565738211130035491\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"aweme_ids\\\": \\\"7565738211130035491\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/multi-video-statistics\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"aweme_ids\\\": \\\"7565738211130035491\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/multi-video-statistics\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-statistics\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-statistics\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-statistics\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-statistics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-statistics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/multi-video-statistics\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get the statistical data of the Post according to the video ID (like count, download count, play count, share count)" + modelName: "Douyin Video Statistics (Batch)" modelId: "douyin/app-v3/multi-video-statistics" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/multi-video-v2.md b/model-api-reference/platform-apis/douyin/app-v3/multi-video-v2.md index 28f728e0..855c8002 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/multi-video-v2.md +++ b/model-api-reference/platform-apis/douyin/app-v3/multi-video-v2.md @@ -1,13 +1,13 @@ --- -title: "Batch Get Video Information V2 API Reference — Douyin Video V2" -description: "SandBase API operation douyin/app-v3/multi-video-v2." +title: "Douyin Multi Video Information (V2) API Reference" +description: "SandBase API reference for model douyin/app-v3/multi-video-v2. Call /v1/api/douyin/app-v3/multi-video-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/multi-video-v2" -apiReferenceJson: "{\"title\":\"Batch Get Video Information V2\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/multi-video-v2\",\"description\":\"Batch Get Video Information, support photo, video, etc., up to 50 videos at a time, this interface charges a fixed price of 0.001$ * 50 = 0.05$ each time.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/multi-video-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/multi-video-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/multi-video-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/multi-video-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Multi Video Information (V2)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/multi-video-v2\",\"description\":\"Returns metadata and details for multiple Douyin videos in a single batch request using an array provided in the request payload. This interface charges a fixed price of 0.001$ * 50 = 0.05$ each time.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/multi-video-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/multi-video-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/multi-video-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/multi-video-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Batch Get Video Information V2" + modelName: "Douyin Multi Video Information (V2)" modelId: "douyin/app-v3/multi-video-v2" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/multi-video.md b/model-api-reference/platform-apis/douyin/app-v3/multi-video.md index d9d99330..783a2864 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/multi-video.md +++ b/model-api-reference/platform-apis/douyin/app-v3/multi-video.md @@ -1,13 +1,13 @@ --- -title: "Batch Get Video Information V1 API Reference" -description: "SandBase API operation douyin/app-v3/multi-video." +title: "Douyin Batch Video Information (App V3) API Reference" +description: "SandBase API reference for model douyin/app-v3/multi-video. Call /v1/api/douyin/app-v3/multi-video; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/multi-video" -apiReferenceJson: "{\"title\":\"Batch Get Video Information V1\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/multi-video\",\"description\":\"Batch Get Video Information, support photo, video, etc., up to 10 videos at a time, this interface charges a fixed price of 0.001$ * 10 = 0.01$ each time.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/multi-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/multi-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/multi-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/multi-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Batch Video Information (App V3)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/multi-video\",\"description\":\"Retrieves details for multiple Douyin videos in a single call. Accepts an array of video identifiers in the request body to return batch post metadata. This interface charges a fixed price of 0.001$ * 10 = 0.01$ each time.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/multi-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/multi-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/multi-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/multi-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/multi-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Batch Get Video Information V1" + modelName: "Douyin Batch Video Information (App V3)" modelId: "douyin/app-v3/multi-video" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/music-detail.md b/model-api-reference/platform-apis/douyin/app-v3/music-detail.md index d1ad474f..779cdcb3 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/music-detail.md +++ b/model-api-reference/platform-apis/douyin/app-v3/music-detail.md @@ -1,13 +1,13 @@ --- -title: "Get details of specified music API Reference — Douyin Detail" -description: "SandBase API operation douyin/app-v3/music-detail." +title: "Douyin Music Details API Reference" +description: "Douyin Music Details API reference for SandBase. Use model douyin/app-v3/music-detail with /v1/api/douyin/app-v3/music-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/music-detail" -apiReferenceJson: "{\"title\":\"Get details of specified music\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/music-detail\",\"description\":\"Get details of specified music\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"music_id\",\"type\":\"string\",\"required\":true,\"description\":\"Music id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/music-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"music_id\\\": \\\"music_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"music_id\\\": \\\"music_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/music-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"music_id\\\": \\\"music_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/music-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/music-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/music-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/music-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/music-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/music-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/music-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Music Details\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/music-detail\",\"description\":\"Returns detailed information for a specified Douyin audio track using its unique identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"music_id\",\"type\":\"string\",\"required\":true,\"description\":\"Music id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/music-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"music_id\\\": \\\"7348905216869174025\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"music_id\\\": \\\"7348905216869174025\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/music-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"music_id\\\": \\\"7348905216869174025\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/music-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/music-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/music-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/music-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/music-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/music-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/music-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get details of specified music" + modelName: "Douyin Music Details" modelId: "douyin/app-v3/music-detail" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/music-hot-search-list.md b/model-api-reference/platform-apis/douyin/app-v3/music-hot-search-list.md index eda72016..f31afd49 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/music-hot-search-list.md +++ b/model-api-reference/platform-apis/douyin/app-v3/music-hot-search-list.md @@ -1,13 +1,13 @@ --- -title: "Get Douyin music hot search list data API Reference" -description: "SandBase API operation douyin/app-v3/music-hot-search-list." +title: "Douyin Music Hot Search List API Reference" +description: "SandBase API reference for model douyin/app-v3/music-hot-search-list. Call /v1/api/douyin/app-v3/music-hot-search-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/music-hot-search-list" -apiReferenceJson: "{\"title\":\"Get Douyin music hot search list data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/music-hot-search-list\",\"description\":\"Get Douyin music hot search list data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"chart_type\",\"type\":\"string\",\"required\":false,\"description\":\"Chart type, default value is 'hot', supports the following values:\",\"default\":\"hot\"},{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, default value is '0', used for paginating data retrieval. After each request, the next cursor value will be returned, and the `has_more` field indicates whether there is more data available.\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/music-hot-search-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/app-v3/music-hot-search-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/app-v3/music-hot-search-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/music-hot-search-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/app-v3/music-hot-search-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/music-hot-search-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/music-hot-search-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/music-hot-search-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/music-hot-search-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/music-hot-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/music-hot-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/music-hot-search-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Music Hot Search List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/music-hot-search-list\",\"description\":\"Retrieves Douyin hot search music rankings, audio details, and artist metadata based on the selected chart category and pagination cursor.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"chart_type\",\"type\":\"string\",\"required\":false,\"description\":\"Chart type, default value is 'hot', supports the following values: 'hot': Hot chart; 'trending': Trending chart; 'original': Original chart\",\"default\":\"hot\"},{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, default value is '0', used for paginating data retrieval. After each request, the next cursor value will be returned, and the `has_more` field indicates whether there is more data available.\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/music-hot-search-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/music-hot-search-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/music-hot-search-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/music-hot-search-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/music-hot-search-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/music-hot-search-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/music-hot-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/music-hot-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/music-hot-search-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Douyin music hot search list data" + modelName: "Douyin Music Hot Search List" modelId: "douyin/app-v3/music-hot-search-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/music-video-list.md b/model-api-reference/platform-apis/douyin/app-v3/music-video-list.md index ef90d639..93be59d6 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/music-video-list.md +++ b/model-api-reference/platform-apis/douyin/app-v3/music-video-list.md @@ -1,13 +1,13 @@ --- -title: "Get video list of specified music API Reference — Douyin List" -description: "SandBase API operation douyin/app-v3/music-video-list." +title: "Douyin Music Video List API Reference" +description: "SandBase API reference for model douyin/app-v3/music-video-list. Call /v1/api/douyin/app-v3/music-video-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/music-video-list" -apiReferenceJson: "{\"title\":\"Get video list of specified music\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/music-video-list\",\"description\":\"Get video list of specified music\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number Please keep the default, otherwise there will be BUG.\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor, used for paging, the first page is 0, the second page is the cursor value in the first response.\"},{\"name\":\"music_id\",\"type\":\"string\",\"required\":true,\"description\":\"Music id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/music-video-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"music_id\\\": \\\"music_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"music_id\\\": \\\"music_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/music-video-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"music_id\\\": \\\"music_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/music-video-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/music-video-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/music-video-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/music-video-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/music-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/music-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/music-video-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Music Video List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/music-video-list\",\"description\":\"Returns a paginated list of Douyin videos that feature a specified audio track, identified by its music ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number Please keep the default, otherwise there will be BUG.\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor, used for paging, the first page is 0, the second page is the cursor value in the first response.\"},{\"name\":\"music_id\",\"type\":\"string\",\"required\":true,\"description\":\"Music id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/music-video-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"music_id\\\": \\\"7348905216869174025\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"music_id\\\": \\\"7348905216869174025\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/music-video-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"music_id\\\": \\\"7348905216869174025\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/music-video-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/music-video-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/music-video-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/music-video-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/music-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/music-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/music-video-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video list of specified music" + modelName: "Douyin Music Video List" modelId: "douyin/app-v3/music-video-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/one-video-by-share-url.md b/model-api-reference/platform-apis/douyin/app-v3/one-video-by-share-url.md index f26a6490..7584f7a2 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/one-video-by-share-url.md +++ b/model-api-reference/platform-apis/douyin/app-v3/one-video-by-share-url.md @@ -1,13 +1,13 @@ --- -title: "Get single video data by sharing link API Reference — Douyin URL" -description: "SandBase API operation douyin/app-v3/one-video-by-share-url." +title: "Douyin Single Video by Share URL API Reference" +description: "SandBase API reference for model douyin/app-v3/one-video-by-share-url. Call /v1/api/douyin/app-v3/one-video-by-share-url; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/one-video-by-share-url" -apiReferenceJson: "{\"title\":\"Get single video data by sharing link\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/one-video-by-share-url\",\"description\":\"Get single video data by sharing link\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_url\",\"type\":\"string\",\"required\":true,\"description\":\"Share link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/one-video-by-share-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"share_url\\\": \\\"https://www.douyin.com/video/7512756548356492544\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"share_url\\\": \\\"https://www.douyin.com/video/7512756548356492544\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/one-video-by-share-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"share_url\\\": \\\"https://www.douyin.com/video/7512756548356492544\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/one-video-by-share-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-by-share-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-by-share-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-by-share-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-by-share-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-by-share-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/one-video-by-share-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Single Video by Share URL\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/one-video-by-share-url\",\"description\":\"Returns detailed video metadata and playback stream specifications for a specific Douyin post using its public share link.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_url\",\"type\":\"string\",\"required\":true,\"description\":\"Share link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/one-video-by-share-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"share_url\\\": \\\"https://www.douyin.com/video/7512756548356492544\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"share_url\\\": \\\"https://www.douyin.com/video/7512756548356492544\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/one-video-by-share-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"share_url\\\": \\\"https://www.douyin.com/video/7512756548356492544\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/one-video-by-share-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-by-share-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-by-share-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-by-share-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-by-share-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-by-share-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/one-video-by-share-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video data by sharing link" + modelName: "Douyin Single Video by Share URL" modelId: "douyin/app-v3/one-video-by-share-url" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/one-video-v2.md b/model-api-reference/platform-apis/douyin/app-v3/one-video-v2.md index 156e2af8..b062b6e9 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/one-video-v2.md +++ b/model-api-reference/platform-apis/douyin/app-v3/one-video-v2.md @@ -1,13 +1,13 @@ --- -title: "Get single video data V2 API Reference — Douyin V3 / One Video V2" -description: "SandBase API operation douyin/app-v3/one-video-v2." +title: "Douyin Single Video Data (App V3) API Reference" +description: "SandBase API reference for model douyin/app-v3/one-video-v2. Call /v1/api/douyin/app-v3/one-video-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/one-video-v2" -apiReferenceJson: "{\"title\":\"Get single video data V2\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/one-video-v2\",\"description\":\"Get single video data, support photo, video, etc.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/one-video-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"aweme_id\\\": \\\"7448118827402972455\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"aweme_id\\\": \\\"7448118827402972455\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/one-video-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"aweme_id\\\": \\\"7448118827402972455\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/one-video-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/one-video-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Single Video Data (App V3)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/one-video-v2\",\"description\":\"Returns detailed metadata for a single Douyin item, including video and photo posts, using the specific video identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/one-video-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"aweme_id\\\": \\\"7448118827402972455\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"aweme_id\\\": \\\"7448118827402972455\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/one-video-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"aweme_id\\\": \\\"7448118827402972455\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/one-video-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/one-video-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video data V2" + modelName: "Douyin Single Video Data (App V3)" modelId: "douyin/app-v3/one-video-v2" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/one-video-v3.md b/model-api-reference/platform-apis/douyin/app-v3/one-video-v3.md index 051099fc..301cba60 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/one-video-v3.md +++ b/model-api-reference/platform-apis/douyin/app-v3/one-video-v3.md @@ -1,13 +1,13 @@ --- -title: "Get single video data V3 (No copyright API Ref" -description: "SandBase API operation douyin/app-v3/one-video-v3." +title: "Douyin Video Detail API Reference" +description: "Douyin Video Detail API reference for SandBase. Use model douyin/app-v3/one-video-v3 with /v1/api/douyin/app-v3/one-video-v3; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/one-video-v3" -apiReferenceJson: "{\"title\":\"Get single video data V3 (No copyright restrictions)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/one-video-v3\",\"description\":\"Get single video data, support article, photo, video, etc. V3 version of the interface, which solves the copyright restriction problem and can obtain more restricted content, such as content with Reason 8 returned by V1 and V2 versions and some articles or short dramas.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/one-video-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"aweme_id\\\": \\\"7592116912205630761\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"aweme_id\\\": \\\"7592116912205630761\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/one-video-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"aweme_id\\\": \\\"7592116912205630761\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/one-video-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/one-video-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Video Detail\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/one-video-v3\",\"description\":\"Get the full data of a single Douyin post by ID (video, photo or article): description, author, hashtags, music, statistics and play URLs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/one-video-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"aweme_id\\\": \\\"7592116912205630761\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"aweme_id\\\": \\\"7592116912205630761\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/one-video-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"aweme_id\\\": \\\"7592116912205630761\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/one-video-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/one-video-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/one-video-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video data V3 (No copyright restrictions)" + modelName: "Douyin Video Detail" modelId: "douyin/app-v3/one-video-v3" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/one-video.md b/model-api-reference/platform-apis/douyin/app-v3/one-video.md index ba58ee82..b85aa72c 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/one-video.md +++ b/model-api-reference/platform-apis/douyin/app-v3/one-video.md @@ -1,13 +1,13 @@ --- -title: "Get single video data API Reference — Douyin App V3 / One Video" -description: "SandBase API operation douyin/app-v3/one-video." +title: "Douyin Single Video Details API Reference" +description: "Douyin Single Video Details API reference for SandBase. Use model douyin/app-v3/one-video with /v1/api/douyin/app-v3/one-video; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/one-video" -apiReferenceJson: "{\"title\":\"Get single video data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/one-video\",\"description\":\"Get single video data, support photo, video, etc.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/one-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"aweme_id\\\": \\\"7448118827402972455\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"aweme_id\\\": \\\"7448118827402972455\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/one-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"aweme_id\\\": \\\"7448118827402972455\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/one-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/one-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/one-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/one-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/one-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Single Video Details\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/one-video\",\"description\":\"Returns detailed metadata for a single Douyin video or photo post using its video ID. Includes video stream formats, bitrates, and quality options.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/one-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"aweme_id\\\": \\\"7448118827402972455\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"aweme_id\\\": \\\"7448118827402972455\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/one-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"aweme_id\\\": \\\"7448118827402972455\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/one-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/one-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/one-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/one-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/one-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video data" + modelName: "Douyin Single Video Details" modelId: "douyin/app-v3/one-video" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/open-app-to-keyword-search.md b/model-api-reference/platform-apis/douyin/app-v3/open-app-to-keyword-search.md index 128b9ec4..4b97d88f 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/open-app-to-keyword-search.md +++ b/model-api-reference/platform-apis/douyin/app-v3/open-app-to-keyword-search.md @@ -1,13 +1,13 @@ --- -title: "Generate Douyin share link, call Douyin APP, and jum — x4s3tm API" -description: "SandBase API operation douyin/app-v3/open-app-to-keyword-search." +title: "Douyin Keyword Search Share Link API Reference" +description: "SandBase API reference for model douyin/app-v3/open-app-to-keyword-search. Call /v1/api/douyin/app-v3/open-app-to-keyword-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/open-app-to-keyword-search" -apiReferenceJson: "{\"title\":\"Generate Douyin share link, call Douyin APP, and jump to the specified keyword search result\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/open-app-to-keyword-search\",\"description\":\"Generate Douyin share link, call Douyin APP, and jump to the specified keyword search result\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/open-app-to-keyword-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/open-app-to-keyword-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"人工智能\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/open-app-to-keyword-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-keyword-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-keyword-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-keyword-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-keyword-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-keyword-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/open-app-to-keyword-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Keyword Search Share Link\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/open-app-to-keyword-search\",\"description\":\"Returns a Douyin short share link that launches the Douyin application directly to search results for a specified query term.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/open-app-to-keyword-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/open-app-to-keyword-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"人工智能\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/open-app-to-keyword-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-keyword-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-keyword-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-keyword-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-keyword-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-keyword-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/open-app-to-keyword-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate Douyin share link, call Douyin APP, and jump to the specified keyword search result" + modelName: "Douyin Keyword Search Share Link" modelId: "douyin/app-v3/open-app-to-keyword-search" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/open-app-to-send-private-message.md b/model-api-reference/platform-apis/douyin/app-v3/open-app-to-send-private-message.md index 90988820..017b0e70 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/open-app-to-send-private-message.md +++ b/model-api-reference/platform-apis/douyin/app-v3/open-app-to-send-private-message.md @@ -1,13 +1,13 @@ --- -title: "Generate Douyin share link, call Douyin APP, and send API Ref" -description: "SandBase API operation douyin/app-v3/open-app-to-send-private-message." +title: "Douyin Direct Message Deep Link API Reference" +description: "SandBase API reference: douyin/app-v3/open-app-to-send-private-message via /v1/api/douyin/app-v3/open-app-to-send-private-message. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/open-app-to-send-private-message" -apiReferenceJson: "{\"title\":\"Generate Douyin share link, call Douyin APP, and send private messages to specified users\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/open-app-to-send-private-message\",\"description\":\"Generate Douyin share link, call Douyin APP, and send private messages to specified users\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_uid\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/open-app-to-send-private-message \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\",\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\",\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/open-app-to-send-private-message\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\",\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/open-app-to-send-private-message\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-send-private-message\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-send-private-message\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-send-private-message\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-send-private-message\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-send-private-message\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/open-app-to-send-private-message\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Direct Message Deep Link\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/open-app-to-send-private-message\",\"description\":\"Generates a Douyin deep link to open the mobile application directly to a user conversation. Requires the target user's uid and sec_uid to return a shortened URL.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_uid\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/open-app-to-send-private-message \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sec_uid\\\": \\\"sec_uid\\\",\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sec_uid\\\": \\\"sec_uid\\\",\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/open-app-to-send-private-message\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sec_uid\\\": \\\"sec_uid\\\",\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/open-app-to-send-private-message\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-send-private-message\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-send-private-message\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-send-private-message\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-send-private-message\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-send-private-message\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/open-app-to-send-private-message\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate Douyin share link, call Douyin APP, and send private messages to specified users" + modelName: "Douyin Direct Message Deep Link" modelId: "douyin/app-v3/open-app-to-send-private-message" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/open-app-to-user-profile.md b/model-api-reference/platform-apis/douyin/app-v3/open-app-to-user-profile.md index 89b2210e..60c50905 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/open-app-to-user-profile.md +++ b/model-api-reference/platform-apis/douyin/app-v3/open-app-to-user-profile.md @@ -1,13 +1,13 @@ --- -title: "Generate Douyin share link, call Douyin APP, and jum — xrt46t API" -description: "SandBase API operation douyin/app-v3/open-app-to-user-profile." +title: "Douyin User Profile Share Link API Reference" +description: "SandBase API reference for model douyin/app-v3/open-app-to-user-profile. Call /v1/api/douyin/app-v3/open-app-to-user-profile; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/open-app-to-user-profile" -apiReferenceJson: "{\"title\":\"Generate Douyin share link, call Douyin APP, and jump to the specified user profile\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/open-app-to-user-profile\",\"description\":\"Generate Douyin share link, call Douyin APP, and jump to the specified user profile\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_uid\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/open-app-to-user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\",\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\",\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/open-app-to-user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\",\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/open-app-to-user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/open-app-to-user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin User Profile Share Link\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/open-app-to-user-profile\",\"description\":\"Generates a Douyin app share link that redirects to a specific user profile using a provided user ID and secure user ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_uid\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/open-app-to-user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\",\\n \\\"uid\\\": \\\"92769419069\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\",\\n \\\"uid\\\": \\\"92769419069\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/open-app-to-user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\",\\n \\\"uid\\\": \\\"92769419069\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/open-app-to-user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/open-app-to-user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate Douyin share link, call Douyin APP, and jump to the specified user profile" + modelName: "Douyin User Profile Share Link" modelId: "douyin/app-v3/open-app-to-user-profile" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/open-app-to-video-detail.md b/model-api-reference/platform-apis/douyin/app-v3/open-app-to-video-detail.md index 243ca2cb..debad35e 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/open-app-to-video-detail.md +++ b/model-api-reference/platform-apis/douyin/app-v3/open-app-to-video-detail.md @@ -1,13 +1,13 @@ --- -title: "Generate Douyin share link, call Douyin APP, and jum — 3cu7jl API" -description: "SandBase API operation douyin/app-v3/open-app-to-video-detail." +title: "Douyin Video Detail App Link API Reference" +description: "SandBase API reference for model douyin/app-v3/open-app-to-video-detail. Call /v1/api/douyin/app-v3/open-app-to-video-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/open-app-to-video-detail" -apiReferenceJson: "{\"title\":\"Generate Douyin share link, call Douyin APP, and jump to the specified video details page\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/open-app-to-video-detail\",\"description\":\"Generate Douyin share link, call Douyin APP, and jump to the specified video\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/open-app-to-video-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"aweme_id\\\": \\\"7197598285882789120\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"aweme_id\\\": \\\"7197598285882789120\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/open-app-to-video-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"aweme_id\\\": \\\"7197598285882789120\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/open-app-to-video-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-video-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-video-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-video-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-video-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-video-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/open-app-to-video-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Video Detail App Link\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/open-app-to-video-detail\",\"description\":\"Returns a Douyin share URL for a given video ID. The resulting link opens the Douyin mobile application directly to the specified video detail screen.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/open-app-to-video-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"aweme_id\\\": \\\"7197598285882789120\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"aweme_id\\\": \\\"7197598285882789120\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/open-app-to-video-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"aweme_id\\\": \\\"7197598285882789120\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/open-app-to-video-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-video-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-video-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-video-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-video-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/open-app-to-video-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/open-app-to-video-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate Douyin share link, call Douyin APP, and jump to the specified video details page" + modelName: "Douyin Video Detail App Link" modelId: "douyin/app-v3/open-app-to-video-detail" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/register-device.md b/model-api-reference/platform-apis/douyin/app-v3/register-device.md index 579bca5f..671ecbf8 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/register-device.md +++ b/model-api-reference/platform-apis/douyin/app-v3/register-device.md @@ -1,13 +1,13 @@ --- -title: "Douyin APP register device API Reference" -description: "SandBase API operation douyin/app-v3/register-device." +title: "Douyin App Device Registration API Reference" +description: "SandBase API reference for model douyin/app-v3/register-device. Call /v1/api/douyin/app-v3/register-device; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/register-device" -apiReferenceJson: "{\"title\":\"Douyin APP register device\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/register-device\",\"description\":\"Register device in Douyin APP, retrieve device information and device cookies.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"proxy\",\"type\":\"string\",\"required\":false,\"description\":\"Proxy, with http:// or https://, only supports http proxies.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/register-device \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/app-v3/register-device\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/app-v3/register-device\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/register-device\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/app-v3/register-device\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/register-device\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/register-device\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/register-device\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/register-device\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/register-device\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/register-device\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/register-device\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin App Device Registration\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/register-device\",\"description\":\"Registers a device in the Douyin app and returns device parameters such as device ID and version metadata, with an optional HTTP proxy setting.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"proxy\",\"type\":\"string\",\"required\":false,\"description\":\"Proxy, with http:// or https://, only supports http proxies.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/register-device \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/register-device\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/register-device\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/register-device\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/register-device\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/register-device\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/register-device\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/register-device\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/register-device\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Douyin APP register device" + modelName: "Douyin App Device Registration" modelId: "douyin/app-v3/register-device" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/series-detail.md b/model-api-reference/platform-apis/douyin/app-v3/series-detail.md index b1752f22..cb9efa08 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/series-detail.md +++ b/model-api-reference/platform-apis/douyin/app-v3/series-detail.md @@ -1,13 +1,13 @@ --- -title: "Get series detail API Reference" -description: "SandBase API operation douyin/app-v3/series-detail." +title: "Douyin Series Detail API Reference" +description: "Douyin Series Detail API reference for SandBase. Use model douyin/app-v3/series-detail with /v1/api/douyin/app-v3/series-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/series-detail" -apiReferenceJson: "{\"title\":\"Get series detail\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/series-detail\",\"description\":\"Get series/playlet detail information\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"series_id\",\"type\":\"string\",\"required\":true,\"description\":\"Series id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/series-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"series_id\\\": \\\"series_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"series_id\\\": \\\"series_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/series-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"series_id\\\": \\\"series_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/series-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/series-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/series-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/series-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/series-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/series-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/series-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Series Detail\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/series-detail\",\"description\":\"Returns detailed information and UI configuration data for a Douyin playlet or video series using its unique series identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"series_id\",\"type\":\"string\",\"required\":true,\"description\":\"Series id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/series-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"series_id\\\": \\\"7585746250092251178\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"series_id\\\": \\\"7585746250092251178\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/series-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"series_id\\\": \\\"7585746250092251178\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/series-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/series-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/series-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/series-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/series-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/series-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/series-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get series detail" + modelName: "Douyin Series Detail" modelId: "douyin/app-v3/series-detail" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/series-video-list.md b/model-api-reference/platform-apis/douyin/app-v3/series-video-list.md index 9151b5ff..8abfed2e 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/series-video-list.md +++ b/model-api-reference/platform-apis/douyin/app-v3/series-video-list.md @@ -1,13 +1,13 @@ --- -title: "Get series video list API Reference" -description: "SandBase API operation douyin/app-v3/series-video-list." +title: "Douyin Series Video List API Reference" +description: "SandBase API reference for model douyin/app-v3/series-video-list. Call /v1/api/douyin/app-v3/series-video-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/series-video-list" -apiReferenceJson: "{\"title\":\"Get series video list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/series-video-list\",\"description\":\"Get series/playlet video list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor, used for paging, the first page is 0, the second page is usually the value of count (e.g., 15).\"},{\"name\":\"series_id\",\"type\":\"string\",\"required\":true,\"description\":\"Series id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/series-video-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"series_id\\\": \\\"series_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"series_id\\\": \\\"series_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/series-video-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"series_id\\\": \\\"series_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/series-video-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/series-video-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/series-video-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/series-video-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/series-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/series-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/series-video-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Series Video List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/series-video-list\",\"description\":\"Returns the list of videos included in a specific Douyin series or playlet using a series identifier and cursor-based pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor, used for paging, the first page is 0, the second page is usually the value of count (e.g., 15).\"},{\"name\":\"series_id\",\"type\":\"string\",\"required\":true,\"description\":\"Series id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/series-video-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"series_id\\\": \\\"7585746250092251178\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"series_id\\\": \\\"7585746250092251178\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/series-video-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"series_id\\\": \\\"7585746250092251178\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/series-video-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/series-video-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/series-video-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/series-video-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/series-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/series-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/series-video-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get series video list" + modelName: "Douyin Series Video List" modelId: "douyin/app-v3/series-video-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/share-info-by-share-code.md b/model-api-reference/platform-apis/douyin/app-v3/share-info-by-share-code.md deleted file mode 100644 index 3b05d4de..00000000 --- a/model-api-reference/platform-apis/douyin/app-v3/share-info-by-share-code.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get share info by share code API Reference" -description: "SandBase API operation douyin/app-v3/share-info-by-share-code." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/app-v3/share-info-by-share-code" -apiReferenceJson: "{\"title\":\"Get share info by share code\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/share-info-by-share-code\",\"description\":\"Get share info by share code, such as extracting sharer information and article ID from Douyin article share code, and then requesting a single video data interface to get the article content.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_code\",\"type\":\"string\",\"required\":true,\"description\":\"Share code\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/share-info-by-share-code \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"share_code\\\": \\\"share_code\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"share_code\\\": \\\"share_code\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/share-info-by-share-code\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"share_code\\\": \\\"share_code\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/share-info-by-share-code\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/share-info-by-share-code\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/share-info-by-share-code\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/share-info-by-share-code\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/share-info-by-share-code\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/share-info-by-share-code\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/share-info-by-share-code\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get share info by share code" - modelId: "douyin/app-v3/share-info-by-share-code" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "app-v3/share-info-by-share-code" - protocol: "API Reference" - endpoint: "/v1/api/douyin/app-v3/share-info-by-share-code" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/app-v3/user-fans-list.md b/model-api-reference/platform-apis/douyin/app-v3/user-fans-list.md deleted file mode 100644 index 3a1a24f6..00000000 --- a/model-api-reference/platform-apis/douyin/app-v3/user-fans-list.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get user fans list API Reference — Douyin App V3 / User Fans List" -description: "SandBase API operation douyin/app-v3/user-fans-list." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/app-v3/user-fans-list" -apiReferenceJson: "{\"title\":\"Get user fans list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/user-fans-list\",\"description\":\"Get user fans list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number, default is 20, it is recommended to keep it unchanged.\"},{\"name\":\"max_time\",\"type\":\"string\",\"required\":false,\"description\":\"Maximum timestamp, default is 0, get from the returned data later, used for paging.\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User sec_user_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/user-fans-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/app-v3/user-fans-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/app-v3/user-fans-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/user-fans-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/app-v3/user-fans-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/user-fans-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/user-fans-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/user-fans-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/user-fans-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/user-fans-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/user-fans-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/user-fans-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get user fans list" - modelId: "douyin/app-v3/user-fans-list" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "app-v3/user-fans-list" - protocol: "API Reference" - endpoint: "/v1/api/douyin/app-v3/user-fans-list" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/app-v3/user-like-videos.md b/model-api-reference/platform-apis/douyin/app-v3/user-like-videos.md index c14fe9a6..189486e0 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/user-like-videos.md +++ b/model-api-reference/platform-apis/douyin/app-v3/user-like-videos.md @@ -1,13 +1,13 @@ --- -title: "Get user like video data API Reference — Douyin User Like Videos" -description: "SandBase API operation douyin/app-v3/user-like-videos." +title: "Douyin User Liked Videos (App V3) API Reference" +description: "SandBase API reference for model douyin/app-v3/user-like-videos. Call /v1/api/douyin/app-v3/user-like-videos; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/user-like-videos" -apiReferenceJson: "{\"title\":\"Get user like video data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/user-like-videos\",\"description\":\"Get user like video data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"counts\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\"},{\"name\":\"max_cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum cursor, used for paging, the first page is 0, the second page is the max_cursor value in the first response.\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_user_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/user-like-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/user-like-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/user-like-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/user-like-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/user-like-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/user-like-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/user-like-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/user-like-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/user-like-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin User Liked Videos (App V3)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/user-like-videos\",\"description\":\"Returns a list of videos liked by a specific Douyin user. Supports cursor-based pagination and custom item counts per page.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"counts\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\"},{\"name\":\"max_cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum cursor, used for paging, the first page is 0, the second page is the max_cursor value in the first response.\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_user_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/user-like-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sec_user_id\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sec_user_id\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/user-like-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sec_user_id\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/user-like-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/user-like-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/user-like-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/user-like-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/user-like-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/user-like-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/user-like-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user like video data" + modelName: "Douyin User Liked Videos (App V3)" modelId: "douyin/app-v3/user-like-videos" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/user-post-videos.md b/model-api-reference/platform-apis/douyin/app-v3/user-post-videos.md index 7c0dd415..14762c24 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/user-post-videos.md +++ b/model-api-reference/platform-apis/douyin/app-v3/user-post-videos.md @@ -1,13 +1,13 @@ --- -title: "Get user homepage video data API Reference — Douyin Post Videos" -description: "SandBase API operation douyin/app-v3/user-post-videos." +title: "Douyin User Videos API Reference" +description: "Douyin User Videos API reference for SandBase. Use model douyin/app-v3/user-post-videos with /v1/api/douyin/app-v3/user-post-videos; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/user-post-videos" -apiReferenceJson: "{\"title\":\"Get user homepage video data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/user-post-videos\",\"description\":\"Get user homepage video data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum count number, do not exceed 20, it is recommended to keep it unchanged.\"},{\"name\":\"max_cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum cursor, used for paging, the first page is 0, the second page is the max_cursor value in the first response.\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_user_id\"},{\"name\":\"sort_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort type, optional values are as follows:\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/user-post-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/user-post-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/user-post-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/user-post-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/user-post-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/user-post-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/user-post-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/user-post-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/user-post-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin User Videos\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/user-post-videos\",\"description\":\"Get the videos on a Douyin user's profile with descriptions, publish time and play, like, comment and share counts. Sort by available or most popular, with cursor pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum count number, do not exceed 20, it is recommended to keep it unchanged.\"},{\"name\":\"max_cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum cursor, used for paging, the first page is 0, the second page is the max_cursor value in the first response.\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_user_id\"},{\"name\":\"sort_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort type, optional values are as follows: `0`: Latest sorting - default; `1`: Hottest sorting\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/user-post-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sec_user_id\\\": \\\"MS4wLjABAAAAKzTVRAaDq7fTxkJteVYjRsyVPxxofLDAyViyWT43BNRdTjgmqCcolsU_UqRgbzBU\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sec_user_id\\\": \\\"MS4wLjABAAAAKzTVRAaDq7fTxkJteVYjRsyVPxxofLDAyViyWT43BNRdTjgmqCcolsU_UqRgbzBU\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/user-post-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sec_user_id\\\": \\\"MS4wLjABAAAAKzTVRAaDq7fTxkJteVYjRsyVPxxofLDAyViyWT43BNRdTjgmqCcolsU_UqRgbzBU\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/user-post-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/user-post-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/user-post-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/user-post-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/user-post-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/user-post-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/user-post-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user homepage video data" + modelName: "Douyin User Videos" modelId: "douyin/app-v3/user-post-videos" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/user-profile.md b/model-api-reference/platform-apis/douyin/app-v3/user-profile.md index 83e19ace..000d87b4 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/user-profile.md +++ b/model-api-reference/platform-apis/douyin/app-v3/user-profile.md @@ -1,13 +1,13 @@ --- -title: "Get information of specified user API Reference — Douyin Profile" -description: "SandBase API operation douyin/app-v3/user-profile." +title: "Douyin User Profile (App V3) API Reference" +description: "Douyin User Profile (App V3) API reference for SandBase. Use model douyin/app-v3/user-profile with /v1/api/douyin/app-v3/user-profile; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/user-profile" -apiReferenceJson: "{\"title\":\"Get information of specified user\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/user-profile\",\"description\":\"Get information of specified user\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_user_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin User Profile (App V3)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/user-profile\",\"description\":\"Returns profile information and follower statistics for a specified Douyin user based on their unique secure user identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_user_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sec_user_id\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sec_user_id\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sec_user_id\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get information of specified user" + modelName: "Douyin User Profile (App V3)" modelId: "douyin/app-v3/user-profile" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/user-series-list.md b/model-api-reference/platform-apis/douyin/app-v3/user-series-list.md index cc8def0b..2ab5447d 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/user-series-list.md +++ b/model-api-reference/platform-apis/douyin/app-v3/user-series-list.md @@ -1,13 +1,13 @@ --- -title: "Get user series list API Reference" -description: "SandBase API operation douyin/app-v3/user-series-list." +title: "Douyin User Series List API Reference" +description: "SandBase API reference for model douyin/app-v3/user-series-list. Call /v1/api/douyin/app-v3/user-series-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/user-series-list" -apiReferenceJson: "{\"title\":\"Get user series list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/user-series-list\",\"description\":\"Get user's series/playlet collection list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor, used for paging, the first page is 0, the second page is the cursor value in the first response.\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User encrypted id\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/user-series-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/app-v3/user-series-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/app-v3/user-series-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/user-series-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/app-v3/user-series-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/user-series-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/user-series-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/user-series-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/user-series-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/user-series-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/user-series-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/user-series-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin User Series List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/user-series-list\",\"description\":\"Returns a list of video series or playlet collections for a specific Douyin user. Query by user ID or encrypted user ID, with pagination supported via a cursor.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor, used for paging, the first page is 0, the second page is the cursor value in the first response.\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User encrypted id\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/user-series-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/user-series-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/user-series-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/user-series-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/user-series-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/user-series-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/user-series-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/user-series-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/user-series-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user series list" + modelName: "Douyin User Series List" modelId: "douyin/app-v3/user-series-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/video-comment-replies.md b/model-api-reference/platform-apis/douyin/app-v3/video-comment-replies.md index 60e4f375..712536f4 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/video-comment-replies.md +++ b/model-api-reference/platform-apis/douyin/app-v3/video-comment-replies.md @@ -1,13 +1,13 @@ --- -title: "Get comment replies data of specified video — j4eny5 API" -description: "SandBase API operation douyin/app-v3/video-comment-replies." +title: "Douyin Video Comment Replies (App V3) API Reference" +description: "SandBase API reference for model douyin/app-v3/video-comment-replies. Call /v1/api/douyin/app-v3/video-comment-replies; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/video-comment-replies" -apiReferenceJson: "{\"title\":\"Get comment replies data of specified video\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/video-comment-replies\",\"description\":\"Get comment replies data of specified video\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"comment_id\",\"type\":\"string\",\"required\":true,\"description\":\"Comment id\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number Please keep the default, otherwise there will be BUG.\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor, used for paging, the first page is 0, the second page is the cursor value in the first response.\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/video-comment-replies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/video-comment-replies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/video-comment-replies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/video-comment-replies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/video-comment-replies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/video-comment-replies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/video-comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/video-comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/video-comment-replies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Video Comment Replies (App V3)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/video-comment-replies\",\"description\":\"Returns reply comments for a specific comment on a Douyin video based on the video ID and comment ID, with support for cursor-based pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"comment_id\",\"type\":\"string\",\"required\":true,\"description\":\"Comment id\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number Please keep the default, otherwise there will be BUG.\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor, used for paging, the first page is 0, the second page is the cursor value in the first response.\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/video-comment-replies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/video-comment-replies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/video-comment-replies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/video-comment-replies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/video-comment-replies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/video-comment-replies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/video-comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/video-comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/video-comment-replies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get comment replies data of specified video" + modelName: "Douyin Video Comment Replies (App V3)" modelId: "douyin/app-v3/video-comment-replies" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/video-comments.md b/model-api-reference/platform-apis/douyin/app-v3/video-comments.md index 70143f47..b9179dfc 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/video-comments.md +++ b/model-api-reference/platform-apis/douyin/app-v3/video-comments.md @@ -1,13 +1,13 @@ --- -title: "Get single video comments data API Reference — Douyin Comments" -description: "SandBase API operation douyin/app-v3/video-comments." +title: "Douyin Video Comments API Reference" +description: "Douyin Video Comments API reference for SandBase. Use model douyin/app-v3/video-comments with /v1/api/douyin/app-v3/video-comments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/video-comments" -apiReferenceJson: "{\"title\":\"Get single video comments data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/video-comments\",\"description\":\"Get single video comments data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number Please keep the default, otherwise there will be BUG.\",\"default\":\"20\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor, used for paging, the first page is 0, the second page is the cursor value in the first response.\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/video-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"aweme_id\\\": \\\"7448118827402972455\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"aweme_id\\\": \\\"7448118827402972455\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/video-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"aweme_id\\\": \\\"7448118827402972455\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/video-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/video-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/video-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/video-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/video-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Video Comments\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/video-comments\",\"description\":\"Get the comments on a Douyin video: comment text, publish time, like count, reply count and commenter location, with cursor pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number Please keep the default, otherwise there will be BUG.\",\"default\":\"20\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor, used for paging, the first page is 0, the second page is the cursor value in the first response.\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/video-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"aweme_id\\\": \\\"7448118827402972455\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"aweme_id\\\": \\\"7448118827402972455\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/video-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"aweme_id\\\": \\\"7448118827402972455\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/video-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/video-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/video-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/video-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/video-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video comments data" + modelName: "Douyin Video Comments" modelId: "douyin/app-v3/video-comments" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/video-high-quality-play-url.md b/model-api-reference/platform-apis/douyin/app-v3/video-high-quality-play-url.md index 9ef05f34..ea9c8491 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/video-high-quality-play-url.md +++ b/model-api-reference/platform-apis/douyin/app-v3/video-high-quality-play-url.md @@ -1,13 +1,13 @@ --- -title: "Get the highest quality play URL of the video — 5okob6 API" -description: "SandBase API operation douyin/app-v3/video-high-quality-play-url." +title: "Douyin High Quality Video Play URL (App V3) API Reference" +description: "SandBase API reference for model douyin/app-v3/video-high-quality-play-url. Call /v1/api/douyin/app-v3/video-high-quality-play-url; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/video-high-quality-play-url" -apiReferenceJson: "{\"title\":\"Get the highest quality play URL of the video\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/video-high-quality-play-url\",\"description\":\"Price: 0.005$ each time. Get the highest quality (original upload quality) play URL of the video This interface will return the highest quality play URL, the original upload quality refers to the quality of the video when the user uploads it, usually the highest quality video has an uncompressed bitrate and the file header contains metadata. The highest quality video link cannot be obtained directly from the Douyin APP or web version, and must be obtained through this interface. This interface is very suitable for obtaining high-definition, watermark-free video links, suitable for scenarios that require high-quality videos, such as video editing, archiving, training models, etc. Generally, it can be played online, if not, you can try to download it using IDM or a browser and then play it.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":false,\"description\":\"Video id, prefer to use aweme_id, if not available, use share_url.\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Optional, ISO country code (e.g. \\\"CN\\\" / \\\"US\\\" / \\\"HK\\\") used as the request exit region.\"},{\"name\":\"share_url\",\"type\":\"string\",\"required\":false,\"description\":\"Optional, share link, if the video id is provided, this parameter can be omitted.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/video-high-quality-play-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/app-v3/video-high-quality-play-url\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/app-v3/video-high-quality-play-url\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/video-high-quality-play-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/app-v3/video-high-quality-play-url\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/video-high-quality-play-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/video-high-quality-play-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/video-high-quality-play-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/video-high-quality-play-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/video-high-quality-play-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/video-high-quality-play-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/video-high-quality-play-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin High Quality Video Play URL (App V3)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/video-high-quality-play-url\",\"description\":\"Returns the highest quality playback URL for a Douyin video using a video identifier or share link, with optional region filtering. Price: 0.005$ each time.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":false,\"description\":\"Video id, prefer to use aweme_id, if not available, use share_url.\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Optional, ISO country code (e.g. \\\"CN\\\" / \\\"US\\\" / \\\"HK\\\") used as the request exit region.\"},{\"name\":\"share_url\",\"type\":\"string\",\"required\":false,\"description\":\"Optional, share link, if the video id is provided, this parameter can be omitted.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/video-high-quality-play-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/video-high-quality-play-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/video-high-quality-play-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/video-high-quality-play-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/video-high-quality-play-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/video-high-quality-play-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/video-high-quality-play-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/video-high-quality-play-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/video-high-quality-play-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get the highest quality play URL of the video" + modelName: "Douyin High Quality Video Play URL (App V3)" modelId: "douyin/app-v3/video-high-quality-play-url" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/video-mix-detail.md b/model-api-reference/platform-apis/douyin/app-v3/video-mix-detail.md index 3920dcea..ead89253 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/video-mix-detail.md +++ b/model-api-reference/platform-apis/douyin/app-v3/video-mix-detail.md @@ -1,13 +1,13 @@ --- -title: "Get Douyin video mix detail data API Reference" -description: "SandBase API operation douyin/app-v3/video-mix-detail." +title: "Douyin Video Mix Detail API Reference" +description: "SandBase API reference for model douyin/app-v3/video-mix-detail. Call /v1/api/douyin/app-v3/video-mix-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/video-mix-detail" -apiReferenceJson: "{\"title\":\"Get Douyin video mix detail data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/video-mix-detail\",\"description\":\"Get Douyin video mix detail data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"mix_id\",\"type\":\"string\",\"required\":true,\"description\":\"Mix id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/video-mix-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"mix_id\\\": \\\"mix_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"mix_id\\\": \\\"mix_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/video-mix-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"mix_id\\\": \\\"mix_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/video-mix-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/video-mix-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/video-mix-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/video-mix-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/video-mix-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/video-mix-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/video-mix-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Video Mix Detail\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/video-mix-detail\",\"description\":\"Returns detailed information about a specific Douyin video compilation playlist based on the provided mix identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"mix_id\",\"type\":\"string\",\"required\":true,\"description\":\"Mix id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/video-mix-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"mix_id\\\": \\\"7384792941870450726\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"mix_id\\\": \\\"7384792941870450726\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/video-mix-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"mix_id\\\": \\\"7384792941870450726\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/video-mix-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/video-mix-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/video-mix-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/video-mix-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/video-mix-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/video-mix-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/video-mix-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Douyin video mix detail data" + modelName: "Douyin Video Mix Detail" modelId: "douyin/app-v3/video-mix-detail" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/video-mix-post-list.md b/model-api-reference/platform-apis/douyin/app-v3/video-mix-post-list.md index 069c8b91..87f3c58f 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/video-mix-post-list.md +++ b/model-api-reference/platform-apis/douyin/app-v3/video-mix-post-list.md @@ -1,13 +1,13 @@ --- -title: "Get Douyin video mix post list data API Reference" -description: "SandBase API operation douyin/app-v3/video-mix-post-list." +title: "Douyin Video Mix Post List API Reference" +description: "SandBase API reference for model douyin/app-v3/video-mix-post-list. Call /v1/api/douyin/app-v3/video-mix-post-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/video-mix-post-list" -apiReferenceJson: "{\"title\":\"Get Douyin video mix post list data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/video-mix-post-list\",\"description\":\"Get Douyin video mix post list data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number Please keep the default, otherwise there will be BUG.\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor, used for paging, the first page is 0, the second page is the cursor value in the first response.\"},{\"name\":\"mix_id\",\"type\":\"string\",\"required\":true,\"description\":\"Mix id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/video-mix-post-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"mix_id\\\": \\\"mix_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"mix_id\\\": \\\"mix_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/video-mix-post-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"mix_id\\\": \\\"mix_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/video-mix-post-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/video-mix-post-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/video-mix-post-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/video-mix-post-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/video-mix-post-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/video-mix-post-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/video-mix-post-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Video Mix Post List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/video-mix-post-list\",\"description\":\"Returns a list of video posts belonging to a specific Douyin video compilation or mix. Query by mix_id with cursor-based pagination to retrieve post details and metadata.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number Please keep the default, otherwise there will be BUG.\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor, used for paging, the first page is 0, the second page is the cursor value in the first response.\"},{\"name\":\"mix_id\",\"type\":\"string\",\"required\":true,\"description\":\"Mix id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/video-mix-post-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"mix_id\\\": \\\"7384792941870450726\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"mix_id\\\": \\\"7384792941870450726\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/video-mix-post-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"mix_id\\\": \\\"7384792941870450726\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/video-mix-post-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/video-mix-post-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/video-mix-post-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/video-mix-post-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/video-mix-post-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/video-mix-post-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/video-mix-post-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Douyin video mix post list data" + modelName: "Douyin Video Mix Post List" modelId: "douyin/app-v3/video-mix-post-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/app-v3/video-statistics.md b/model-api-reference/platform-apis/douyin/app-v3/video-statistics.md index e0df5228..35aeed4b 100644 --- a/model-api-reference/platform-apis/douyin/app-v3/video-statistics.md +++ b/model-api-reference/platform-apis/douyin/app-v3/video-statistics.md @@ -1,13 +1,13 @@ --- -title: "Get the statistical data of the Post according to th — h053og API" -description: "SandBase API operation douyin/app-v3/video-statistics." +title: "Douyin Video Statistics API Reference" +description: "SandBase API reference for model douyin/app-v3/video-statistics. Call /v1/api/douyin/app-v3/video-statistics; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/app-v3/video-statistics" -apiReferenceJson: "{\"title\":\"Get the statistical data of the Post according to the video ID (like count, download count, play count, share count)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/video-statistics\",\"description\":\"Get the statistical data of the Post according to the video ID Most of the Douyin interfaces no longer return the number of plays of the Post, and can only be obtained through this interface. List of statistics that can be obtained: Like count (digg_count) Download count (download_count) Play count (play_count) Share count (share_count)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_ids\",\"type\":\"string\",\"required\":true,\"description\":\"Video id, supports multiple video ids, separated by commas, no more than 2, single is also possible, no need for commas.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/video-statistics \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"aweme_ids\\\": \\\"7448118827402972455,7126745726494821640\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"aweme_ids\\\": \\\"7448118827402972455,7126745726494821640\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/video-statistics\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"aweme_ids\\\": \\\"7448118827402972455,7126745726494821640\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/video-statistics\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/video-statistics\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/video-statistics\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/video-statistics\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/video-statistics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/video-statistics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/video-statistics\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Video Statistics\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/app-v3/video-statistics\",\"description\":\"Returns statistical metrics including like counts, play counts, and share counts for specified Douyin videos by ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_ids\",\"type\":\"string\",\"required\":true,\"description\":\"Video id, supports multiple video ids, separated by commas, no more than 2, single is also possible, no need for commas.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/app-v3/video-statistics \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"aweme_ids\\\": \\\"7448118827402972455,7126745726494821640\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"aweme_ids\\\": \\\"7448118827402972455,7126745726494821640\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/video-statistics\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"aweme_ids\\\": \\\"7448118827402972455,7126745726494821640\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/app-v3/video-statistics\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/app-v3/video-statistics\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/app-v3/video-statistics\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/app-v3/video-statistics\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/app-v3/video-statistics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/app-v3/video-statistics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/app-v3/video-statistics\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get the statistical data of the Post according to the video ID (like count, download count, play count, share count)" + modelName: "Douyin Video Statistics" modelId: "douyin/app-v3/video-statistics" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/city-list.md b/model-api-reference/platform-apis/douyin/billboard/city-list.md index 61b6e4c2..c61050e1 100644 --- a/model-api-reference/platform-apis/douyin/billboard/city-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/city-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch Chinese city list API Reference" -description: "SandBase API operation douyin/billboard/city-list." +title: "Douyin Billboard City List API Reference" +description: "Douyin Billboard City List API reference for SandBase. Use model douyin/billboard/city-list with /v1/api/douyin/billboard/city-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/city-list" -apiReferenceJson: "{\"title\":\"Fetch Chinese city list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/city-list\",\"description\":\"Get city list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/city-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/billboard/city-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/billboard/city-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/city-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/billboard/city-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/city-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/city-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/city-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/city-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/city-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/city-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/city-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Billboard City List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/city-list\",\"description\":\"Returns the list of Chinese cities supported by Douyin billboard rankings. Use this data to populate regional filters for location-specific trending lists.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/city-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/city-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/city-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/city-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/city-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/city-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/city-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/city-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/city-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch Chinese city list" + modelName: "Douyin Billboard City List" modelId: "douyin/billboard/city-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/content-tag.md b/model-api-reference/platform-apis/douyin/billboard/content-tag.md index 02688e38..5f6aaa38 100644 --- a/model-api-reference/platform-apis/douyin/billboard/content-tag.md +++ b/model-api-reference/platform-apis/douyin/billboard/content-tag.md @@ -1,13 +1,13 @@ --- -title: "Fetch vertical content tags API Reference" -description: "SandBase API operation douyin/billboard/content-tag." +title: "Douyin Billboard Vertical Content Tags API Reference" +description: "SandBase API reference for model douyin/billboard/content-tag. Call /v1/api/douyin/billboard/content-tag; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/content-tag" -apiReferenceJson: "{\"title\":\"Fetch vertical content tags\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/content-tag\",\"description\":\"Get vertical content tags\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/content-tag \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/billboard/content-tag\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/billboard/content-tag\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/content-tag\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/billboard/content-tag\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/content-tag\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/content-tag\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/content-tag\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/content-tag\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/content-tag\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/content-tag\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/content-tag\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Billboard Vertical Content Tags\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/content-tag\",\"description\":\"Returns a list of vertical content tags available on the Douyin billboard platform. Useful for categorizing trending topics and discovering niche content segments.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/content-tag \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/content-tag\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/content-tag\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/content-tag\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/content-tag\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/content-tag\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/content-tag\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/content-tag\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/content-tag\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch vertical content tags" + modelName: "Douyin Billboard Vertical Content Tags" modelId: "douyin/billboard/content-tag" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-account-fans-interest-account-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-account-fans-interest-account-list.md index c5936a2a..73f54118 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-account-fans-interest-account-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-account-fans-interest-account-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch fan interest author 20 users API Reference" -description: "SandBase API operation douyin/billboard/hot-account-fans-interest-account-list." +title: "Douyin Fan Interest Account List API Reference" +description: "SandBase API reference for douyin/billboard/hot-account-fans-interest-account-list. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-account-fans-interest-account-list" -apiReferenceJson: "{\"title\":\"Fetch fan interest author 20 users\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-account-fans-interest-account-list\",\"description\":\"Get the fan interest author 20 users\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-fans-interest-account-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-fans-interest-account-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-fans-interest-account-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-account-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-account-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-account-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-account-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-account-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-account-fans-interest-account-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Fan Interest Account List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-account-fans-interest-account-list\",\"description\":\"Returns a list of 20 accounts that followers of a target creator are interested in on Douyin. Queries Douyin billboard analytics using the creator's unique `sec_uid`.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-fans-interest-account-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-fans-interest-account-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-fans-interest-account-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-account-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-account-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-account-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-account-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-account-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-account-fans-interest-account-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch fan interest author 20 users" + modelName: "Douyin Fan Interest Account List" modelId: "douyin/billboard/hot-account-fans-interest-account-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-account-fans-interest-search-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-account-fans-interest-search-list.md index dec27973..9de3d101 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-account-fans-interest-search-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-account-fans-interest-search-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch fan interest search term in the last 3 days 10 API Ref" -description: "SandBase API operation douyin/billboard/hot-account-fans-interest-search-list." +title: "Douyin Account Fan Interest Search Terms API Reference" +description: "SandBase API reference for douyin/billboard/hot-account-fans-interest-search-list. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-account-fans-interest-search-list" -apiReferenceJson: "{\"title\":\"Fetch fan interest search term in the last 3 days 10 search terms\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-account-fans-interest-search-list\",\"description\":\"Get the fan interest search term in the last 3 days 10 search terms\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-fans-interest-search-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-fans-interest-search-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-fans-interest-search-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-search-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-search-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-search-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-account-fans-interest-search-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Account Fan Interest Search Terms\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-account-fans-interest-search-list\",\"description\":\"Returns the top ten search terms reflecting fan interest over the last three days for a specified Douyin creator account using their user sec_id.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-fans-interest-search-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-fans-interest-search-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-fans-interest-search-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-search-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-search-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-search-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-account-fans-interest-search-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch fan interest search term in the last 3 days 10 search terms" + modelName: "Douyin Account Fan Interest Search Terms" modelId: "douyin/billboard/hot-account-fans-interest-search-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-account-fans-interest-topic-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-account-fans-interest-topic-list.md index f9d3c30e..cd64e16c 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-account-fans-interest-topic-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-account-fans-interest-topic-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch fan interest topic in the last 3 days 10 API Ref" -description: "SandBase API operation douyin/billboard/hot-account-fans-interest-topic-list." +title: "Douyin Account Fan Interest Topics API Reference" +description: "SandBase API reference for douyin/billboard/hot-account-fans-interest-topic-list. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-account-fans-interest-topic-list" -apiReferenceJson: "{\"title\":\"Fetch fan interest topic in the last 3 days 10 topics\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-account-fans-interest-topic-list\",\"description\":\"Get the fan interest topic in the last 3 days 10 topics\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-fans-interest-topic-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-fans-interest-topic-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-fans-interest-topic-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-topic-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-topic-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-topic-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-topic-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-topic-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-account-fans-interest-topic-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Account Fan Interest Topics\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-account-fans-interest-topic-list\",\"description\":\"Returns the top ten topics that an account's followers were interested in over the last three days based on a specified user ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-fans-interest-topic-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-fans-interest-topic-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-fans-interest-topic-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-topic-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-topic-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-topic-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-topic-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-interest-topic-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-account-fans-interest-topic-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch fan interest topic in the last 3 days 10 topics" + modelName: "Douyin Account Fan Interest Topics" modelId: "douyin/billboard/hot-account-fans-interest-topic-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-account-fans-portrait-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-account-fans-portrait-list.md index b632ae08..93f66e7b 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-account-fans-portrait-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-account-fans-portrait-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch fan portrait API Reference" -description: "SandBase API operation douyin/billboard/hot-account-fans-portrait-list." +title: "Douyin Hot Account Fan Portrait API Reference" +description: "SandBase API reference: douyin/billboard/hot-account-fans-portrait-list via /v1/api/douyin/billboard/hot-account-fans-portrait-list. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-account-fans-portrait-list" -apiReferenceJson: "{\"title\":\"Fetch fan portrait\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-account-fans-portrait-list\",\"description\":\"Get the fan portrait\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"option\",\"type\":\"integer\",\"required\":false,\"description\":\"Option\"},{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-fans-portrait-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-fans-portrait-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-fans-portrait-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-portrait-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-portrait-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-portrait-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-portrait-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-portrait-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-account-fans-portrait-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Hot Account Fan Portrait\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-account-fans-portrait-list\",\"description\":\"Returns fan portrait metrics and demographic distribution data for a Douyin account using its secure user ID and portrait option filter.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"option\",\"type\":\"integer\",\"required\":false,\"description\":\"Option\"},{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-fans-portrait-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-fans-portrait-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-fans-portrait-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-portrait-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-portrait-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-portrait-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-portrait-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-fans-portrait-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-account-fans-portrait-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch fan portrait" + modelName: "Douyin Hot Account Fan Portrait" modelId: "douyin/billboard/hot-account-fans-portrait-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-account-item-analysis-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-account-item-analysis-list.md index fbbcb5c8..d7de21ed 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-account-item-analysis-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-account-item-analysis-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch account work analysis - last week API Reference" -description: "SandBase API operation douyin/billboard/hot-account-item-analysis-list." +title: "Douyin Hot Account Work Analysis API Reference" +description: "SandBase API reference: douyin/billboard/hot-account-item-analysis-list via /v1/api/douyin/billboard/hot-account-item-analysis-list. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-account-item-analysis-list" -apiReferenceJson: "{\"title\":\"Fetch account work analysis - last week\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-account-item-analysis-list\",\"description\":\"Get the account work analysis\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-item-analysis-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-item-analysis-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-item-analysis-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-item-analysis-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-item-analysis-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-item-analysis-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-item-analysis-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-item-analysis-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-account-item-analysis-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Hot Account Work Analysis\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-account-item-analysis-list\",\"description\":\"Returns analysis metrics for works associated with a specific hot Douyin account over the last week. Requires the target account user ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-item-analysis-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-item-analysis-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-item-analysis-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-item-analysis-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-item-analysis-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-item-analysis-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-item-analysis-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-item-analysis-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-account-item-analysis-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch account work analysis - last week" + modelName: "Douyin Hot Account Work Analysis" modelId: "douyin/billboard/hot-account-item-analysis-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-account-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-account-list.md index 61003dbc..41b42c4a 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-account-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-account-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch hot account list API Reference" -description: "SandBase API operation douyin/billboard/hot-account-list." +title: "Douyin Hot Account List API Reference" +description: "SandBase API reference for model douyin/billboard/hot-account-list. Call /v1/api/douyin/billboard/hot-account-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-account-list" -apiReferenceJson: "{\"title\":\"Fetch hot account list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-account-list\",\"description\":\"Get the hot account\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, format hour, default 24 hours\",\"default\":\"24\"},{\"name\":\"page_num\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\",\"default\":\"1\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of items per page, default 20\",\"default\":\"10\"},{\"name\":\"query_tag\",\"type\":\"object\",\"required\":false,\"description\":\"Sub-level vertical category tag, empty for all, multiple tags need to be passed in\",\"default\":\"{}\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/billboard/hot-account-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/billboard/hot-account-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/billboard/hot-account-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-account-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Hot Account List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-account-list\",\"description\":\"Returns trending Douyin accounts from the billboard ranking with engagement metrics. Supports filtering by category tag via query_tag and time window via date_window.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, format hour, default 24 hours\",\"default\":\"24\"},{\"name\":\"page_num\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\",\"default\":\"1\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of items per page, default 20\",\"default\":\"10\"},{\"name\":\"query_tag\",\"type\":\"object\",\"required\":false,\"description\":\"Sub-level vertical category tag, empty for all, multiple tags need to be passed in\",\"default\":\"{}\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-account-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch hot account list" + modelName: "Douyin Hot Account List" modelId: "douyin/billboard/hot-account-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-account-search-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-account-search-list.md index 11bddac0..5bb3b7e6 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-account-search-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-account-search-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch account search list API Reference" -description: "SandBase API operation douyin/billboard/hot-account-search-list." +title: "Douyin Hot Account Search API Reference" +description: "SandBase API reference for model douyin/billboard/hot-account-search-list. Call /v1/api/douyin/billboard/hot-account-search-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-account-search-list" -apiReferenceJson: "{\"title\":\"Fetch account search list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-account-search-list\",\"description\":\"Get the search username or Douyin number\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"integer\",\"required\":true,\"description\":\"Cursor, default empty\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search username or Douyin number\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-search-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cursor\\\": 0,\\n \\\"keyword\\\": \\\"华为\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cursor\\\": 0,\\n \\\"keyword\\\": \\\"华为\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-search-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cursor\\\": 0,\\n \\\"keyword\\\": \\\"华为\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-search-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-search-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-search-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-search-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-account-search-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Hot Account Search\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-account-search-list\",\"description\":\"Returns a list of Douyin accounts matching a username or Douyin ID keyword, including follower counts, like totals, and performance metrics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"integer\",\"required\":true,\"description\":\"Cursor, default empty\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search username or Douyin number\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-search-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"cursor\\\": 0,\\n \\\"keyword\\\": \\\"华为\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"cursor\\\": 0,\\n \\\"keyword\\\": \\\"华为\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-search-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"cursor\\\": 0,\\n \\\"keyword\\\": \\\"华为\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-search-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-search-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-search-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-search-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-account-search-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch account search list" + modelName: "Douyin Hot Account Search" modelId: "douyin/billboard/hot-account-search-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-account-trends-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-account-trends-list.md index 008af563..79e71fb0 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-account-trends-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-account-trends-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch account fan data trend API Reference" -description: "SandBase API operation douyin/billboard/hot-account-trends-list." +title: "Douyin Account Metric Trends API Reference" +description: "SandBase API reference for model douyin/billboard/hot-account-trends-list. Call /v1/api/douyin/billboard/hot-account-trends-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-account-trends-list" -apiReferenceJson: "{\"title\":\"Fetch account fan data trend\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-account-trends-list\",\"description\":\"Get the account fan data trend\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, 1 by hour 2 by day\"},{\"name\":\"option\",\"type\":\"integer\",\"required\":false,\"description\":\"Option, 2 New like 3 New work 4 New comment 5 New share\"},{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-trends-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-trends-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-trends-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-trends-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-trends-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-trends-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-trends-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-trends-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-account-trends-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Account Metric Trends\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-account-trends-list\",\"description\":\"Returns metric trend records for a Douyin account over time, including new likes, works, comments, or shares broken down by hour or day.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, 1 by hour 2 by day\"},{\"name\":\"option\",\"type\":\"integer\",\"required\":false,\"description\":\"Option, 2 New like 3 New work 4 New comment 5 New share\"},{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-trends-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-trends-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-account-trends-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-trends-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-trends-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-trends-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-trends-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-account-trends-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-account-trends-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch account fan data trend" + modelName: "Douyin Account Metric Trends" modelId: "douyin/billboard/hot-account-trends-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-calendar-detail.md b/model-api-reference/platform-apis/douyin/billboard/hot-calendar-detail.md index 2d56027a..a8c61ea1 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-calendar-detail.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-calendar-detail.md @@ -1,13 +1,13 @@ --- -title: "Fetch activity calendar detail API Reference" -description: "SandBase API operation douyin/billboard/hot-calendar-detail." +title: "Douyin Billboard Hot Calendar Detail API Reference" +description: "SandBase API reference for model douyin/billboard/hot-calendar-detail. Call /v1/api/douyin/billboard/hot-calendar-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-calendar-detail" -apiReferenceJson: "{\"title\":\"Fetch activity calendar detail\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-calendar-detail\",\"description\":\"Get the activity calendar details\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"calendar_id\",\"type\":\"string\",\"required\":true,\"description\":\"Activity id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-calendar-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"calendar_id\\\": \\\"calendar_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"calendar_id\\\": \\\"calendar_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-calendar-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"calendar_id\\\": \\\"calendar_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-calendar-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-calendar-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-calendar-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-calendar-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-calendar-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-calendar-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-calendar-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Billboard Hot Calendar Detail\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-calendar-detail\",\"description\":\"Returns detailed information for a Douyin billboard hot calendar event based on the specified activity identifier. Use this endpoint to inspect schedule metadata and billboard campaign details.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"calendar_id\",\"type\":\"string\",\"required\":true,\"description\":\"Activity id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-calendar-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"calendar_id\\\": \\\"calendar_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"calendar_id\\\": \\\"calendar_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-calendar-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"calendar_id\\\": \\\"calendar_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-calendar-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-calendar-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-calendar-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-calendar-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-calendar-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-calendar-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-calendar-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch activity calendar detail" + modelName: "Douyin Billboard Hot Calendar Detail" modelId: "douyin/billboard/hot-calendar-detail" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-calendar-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-calendar-list.md index 784ab79c..f4a59095 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-calendar-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-calendar-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch activity calendar API Reference" -description: "SandBase API operation douyin/billboard/hot-calendar-list." +title: "Douyin Billboard Hot Calendar List API Reference" +description: "SandBase API reference for model douyin/billboard/hot-calendar-list. Call /v1/api/douyin/billboard/hot-calendar-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-calendar-list" -apiReferenceJson: "{\"title\":\"Fetch activity calendar\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-calendar-list\",\"description\":\"Get the activity calendar\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"category_code\",\"type\":\"string\",\"required\":false,\"description\":\"Hot list category code, get from hot list category, empty for all\",\"default\":\"\\\"\\\"\"},{\"name\":\"city_code\",\"type\":\"string\",\"required\":false,\"description\":\"City code, get from city list, empty for all\",\"default\":\"\\\"\\\"\"},{\"name\":\"end_date\",\"type\":\"integer\",\"required\":false,\"description\":\"Snapshot end time format 10 digit timestamp\",\"default\":\"1735488000\"},{\"name\":\"start_date\",\"type\":\"integer\",\"required\":false,\"description\":\"Snapshot start time format 10 digit timestamp\",\"default\":\"1734902400\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-calendar-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/billboard/hot-calendar-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/billboard/hot-calendar-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-calendar-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/billboard/hot-calendar-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-calendar-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-calendar-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-calendar-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-calendar-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-calendar-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-calendar-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-calendar-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Billboard Hot Calendar List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-calendar-list\",\"description\":\"Retrieves the Douyin trending activity calendar with event details, schedules, and categories. Supports filtering by date range, city code, and category code.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"category_code\",\"type\":\"string\",\"required\":false,\"description\":\"Hot list category code, get from hot list category, empty for all\",\"default\":\"\\\"\\\"\"},{\"name\":\"city_code\",\"type\":\"string\",\"required\":false,\"description\":\"City code, get from city list, empty for all\",\"default\":\"\\\"\\\"\"},{\"name\":\"end_date\",\"type\":\"integer\",\"required\":false,\"description\":\"Snapshot end time format 10 digit timestamp\",\"default\":\"1735488000\"},{\"name\":\"start_date\",\"type\":\"integer\",\"required\":false,\"description\":\"Snapshot start time format 10 digit timestamp\",\"default\":\"1734902400\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-calendar-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-calendar-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-calendar-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-calendar-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-calendar-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-calendar-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-calendar-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-calendar-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-calendar-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch activity calendar" + modelName: "Douyin Billboard Hot Calendar List" modelId: "douyin/billboard/hot-calendar-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-category-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-category-list.md index 80c6f1f2..668158bc 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-category-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-category-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch hot list category API Reference" -description: "SandBase API operation douyin/billboard/hot-category-list." +title: "Douyin Billboard Hot Category List API Reference" +description: "SandBase API reference for model douyin/billboard/hot-category-list. Call /v1/api/douyin/billboard/hot-category-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-category-list" -apiReferenceJson: "{\"title\":\"Fetch hot list category\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-category-list\",\"description\":\"Get the id and popularity of the hot list category Note: Using start_date and end_date parameters requires removing the snapshot_time parameter Note: snapshot_time and start_date, end_date parameters cannot be empty at the same time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"billboard_type\",\"type\":\"string\",\"required\":true,\"description\":\"Billboard type\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":false,\"description\":\"Snapshot end time\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Hot search term\"},{\"name\":\"snapshot_time\",\"type\":\"string\",\"required\":false,\"description\":\"Snapshot time\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":false,\"description\":\"Snapshot start time\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-category-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"billboard_type\\\": \\\"billboard_type\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"billboard_type\\\": \\\"billboard_type\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-category-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"billboard_type\\\": \\\"billboard_type\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-category-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-category-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-category-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-category-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-category-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-category-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-category-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Billboard Hot Category List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-category-list\",\"description\":\"Returns category IDs and popularity metrics from Douyin hot list billboards. Supports filtering by billboard type, search keywords, and snapshot time ranges.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"billboard_type\",\"type\":\"string\",\"required\":true,\"description\":\"Billboard type\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":false,\"description\":\"Snapshot end time\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Hot search term\"},{\"name\":\"snapshot_time\",\"type\":\"string\",\"required\":false,\"description\":\"Snapshot time\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":false,\"description\":\"Snapshot start time\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-category-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"billboard_type\\\": \\\"billboard_type\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"billboard_type\\\": \\\"billboard_type\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-category-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"billboard_type\\\": \\\"billboard_type\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-category-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-category-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-category-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-category-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-category-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-category-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-category-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch hot list category" + modelName: "Douyin Billboard Hot Category List" modelId: "douyin/billboard/hot-category-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-challenge-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-challenge-list.md index f0bf7742..f9080ee8 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-challenge-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-challenge-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch hot challenge list API Reference" -description: "SandBase API operation douyin/billboard/hot-challenge-list." +title: "Douyin Hot Challenge List API Reference" +description: "SandBase API reference for model douyin/billboard/hot-challenge-list. Call /v1/api/douyin/billboard/hot-challenge-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-challenge-list" -apiReferenceJson: "{\"title\":\"Fetch hot challenge list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-challenge-list\",\"description\":\"Get the challenge list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Hot search term\",\"default\":\"\\\"\\\"\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":true,\"description\":\"Page number\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":true,\"description\":\"Number of items per page\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-challenge-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 10\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 10\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-challenge-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 10\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-challenge-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-challenge-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-challenge-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-challenge-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-challenge-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-challenge-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-challenge-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Hot Challenge List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-challenge-list\",\"description\":\"Returns trending Douyin challenge leaderboard entries with rank, hot score, and video counts. Supports filtering by keyword and page-based pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Hot search term\",\"default\":\"\\\"\\\"\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":true,\"description\":\"Page number\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":true,\"description\":\"Number of items per page\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-challenge-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 10\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 10\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-challenge-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 10\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-challenge-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-challenge-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-challenge-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-challenge-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-challenge-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-challenge-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-challenge-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch hot challenge list" + modelName: "Douyin Hot Challenge List" modelId: "douyin/billboard/hot-challenge-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-city-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-city-list.md index dd3fe163..a9466228 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-city-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-city-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch city hot list API Reference" -description: "SandBase API operation douyin/billboard/hot-city-list." +title: "Douyin City Hot List API Reference" +description: "Douyin City Hot List API reference for SandBase. Use model douyin/billboard/hot-city-list with /v1/api/douyin/billboard/hot-city-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-city-list" -apiReferenceJson: "{\"title\":\"Fetch city hot list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-city-list\",\"description\":\"Get the city hot list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"city_code\",\"type\":\"string\",\"required\":false,\"description\":\"City code, get from city list, empty for all\",\"default\":\"\\\"\\\"\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Hot search term\",\"default\":\"\\\"\\\"\"},{\"name\":\"order\",\"type\":\"string\",\"required\":true,\"description\":\"Sorting method\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":true,\"description\":\"Page number\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":true,\"description\":\"Number of items per page\"},{\"name\":\"sentence_tag\",\"type\":\"string\",\"required\":false,\"description\":\"Hot category tag, get from hot list category, multiple categories separated by commas, empty for all\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-city-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"order\\\": \\\"rank\\\",\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 10\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"order\\\": \\\"rank\\\",\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 10\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-city-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"order\\\": \\\"rank\\\",\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 10\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-city-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-city-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-city-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-city-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-city-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-city-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-city-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin City Hot List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-city-list\",\"description\":\"Returns Douyin trending topics filtered by city location. Allows sorting and filtering by city code, category tags, and search keywords.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"city_code\",\"type\":\"string\",\"required\":false,\"description\":\"City code, get from city list, empty for all\",\"default\":\"\\\"\\\"\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Hot search term\",\"default\":\"\\\"\\\"\"},{\"name\":\"order\",\"type\":\"string\",\"required\":true,\"description\":\"Sorting method\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":true,\"description\":\"Page number\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":true,\"description\":\"Number of items per page\"},{\"name\":\"sentence_tag\",\"type\":\"string\",\"required\":false,\"description\":\"Hot category tag, get from hot list category, multiple categories separated by commas, empty for all\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-city-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"order\\\": \\\"rank\\\",\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 10\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"order\\\": \\\"rank\\\",\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 10\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-city-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"order\\\": \\\"rank\\\",\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 10\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-city-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-city-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-city-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-city-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-city-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-city-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-city-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch city hot list" + modelName: "Douyin City Hot List" modelId: "douyin/billboard/hot-city-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-comment-word-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-comment-word-list.md index da3117cd..8b5f9e46 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-comment-word-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-comment-word-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch work comment analysis word cloud weight API Reference" -description: "SandBase API operation douyin/billboard/hot-comment-word-list." +title: "Douyin Work Hot Comment Word Cloud API Reference" +description: "SandBase API reference for model douyin/billboard/hot-comment-word-list. Call /v1/api/douyin/billboard/hot-comment-word-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-comment-word-list" -apiReferenceJson: "{\"title\":\"Fetch work comment analysis word cloud weight\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-comment-word-list\",\"description\":\"Get the work comment analysis word cloud weight\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Work id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-comment-word-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"aweme_id\\\": \\\"aweme_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"aweme_id\\\": \\\"aweme_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-comment-word-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"aweme_id\\\": \\\"aweme_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-comment-word-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-comment-word-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-comment-word-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-comment-word-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-comment-word-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-comment-word-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-comment-word-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Work Hot Comment Word Cloud\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-comment-word-list\",\"description\":\"Returns word cloud analysis data and keyword weights extracted from comments on a Douyin video. Input a target video identifier to analyze audience feedback topics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Work id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-comment-word-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"aweme_id\\\": \\\"7372484719365098803\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"aweme_id\\\": \\\"7372484719365098803\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-comment-word-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"aweme_id\\\": \\\"7372484719365098803\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-comment-word-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-comment-word-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-comment-word-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-comment-word-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-comment-word-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-comment-word-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-comment-word-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch work comment analysis word cloud weight" + modelName: "Douyin Work Hot Comment Word Cloud" modelId: "douyin/billboard/hot-comment-word-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-item-trends-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-item-trends-list.md index abf4f22d..51308a59 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-item-trends-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-item-trends-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch post data trend API Reference" -description: "SandBase API operation douyin/billboard/hot-item-trends-list." +title: "Douyin Billboard Post Trends API Reference" +description: "SandBase API reference for model douyin/billboard/hot-item-trends-list. Call /v1/api/douyin/billboard/hot-item-trends-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-item-trends-list" -apiReferenceJson: "{\"title\":\"Fetch post data trend\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-item-trends-list\",\"description\":\"Get the work data trend\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":false,\"description\":\"Work id\"},{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, 1 by hour 2 by day\"},{\"name\":\"option\",\"type\":\"integer\",\"required\":false,\"description\":\"Option, 7 Like 8 Share 9 Comment\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-item-trends-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/billboard/hot-item-trends-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/billboard/hot-item-trends-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-item-trends-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/billboard/hot-item-trends-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-item-trends-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-item-trends-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-item-trends-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-item-trends-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-item-trends-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-item-trends-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-item-trends-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Billboard Post Trends\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-item-trends-list\",\"description\":\"Returns engagement trend metrics for a specific Douyin post across hourly or daily time windows, covering likes, shares, and comments.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":false,\"description\":\"Work id\"},{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, 1 by hour 2 by day\"},{\"name\":\"option\",\"type\":\"integer\",\"required\":false,\"description\":\"Option, 7 Like 8 Share 9 Comment\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-item-trends-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-item-trends-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-item-trends-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-item-trends-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-item-trends-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-item-trends-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-item-trends-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-item-trends-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-item-trends-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch post data trend" + modelName: "Douyin Billboard Post Trends" modelId: "douyin/billboard/hot-item-trends-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-rise-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-rise-list.md index 122edc05..857e9057 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-rise-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-rise-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch rising hot list API Reference" -description: "SandBase API operation douyin/billboard/hot-rise-list." +title: "Douyin Rising Hot Search List API Reference" +description: "SandBase API reference for model douyin/billboard/hot-rise-list. Call /v1/api/douyin/billboard/hot-rise-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-rise-list" -apiReferenceJson: "{\"title\":\"Fetch rising hot list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-rise-list\",\"description\":\"Get the rising hot list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Hot search term\"},{\"name\":\"order\",\"type\":\"string\",\"required\":true,\"description\":\"Sorting method\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":true,\"description\":\"Page number\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":true,\"description\":\"Number of items per page\"},{\"name\":\"sentence_tag\",\"type\":\"string\",\"required\":false,\"description\":\"Hot category tag, get from hot list category, multiple categories separated by commas, empty for all\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-rise-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"order\\\": \\\"order\\\",\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"order\\\": \\\"order\\\",\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-rise-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"order\\\": \\\"order\\\",\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-rise-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-rise-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-rise-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-rise-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-rise-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-rise-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-rise-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Rising Hot Search List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-rise-list\",\"description\":\"Returns Douyin rising hot search topics and billboard rankings. Results can be filtered by keyword, sorted by a specified order, and segmented by category tags.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Hot search term\"},{\"name\":\"order\",\"type\":\"string\",\"required\":true,\"description\":\"Sorting method\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":true,\"description\":\"Page number\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":true,\"description\":\"Number of items per page\"},{\"name\":\"sentence_tag\",\"type\":\"string\",\"required\":false,\"description\":\"Hot category tag, get from hot list category, multiple categories separated by commas, empty for all\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-rise-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"order\\\": \\\"order\\\",\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"order\\\": \\\"order\\\",\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-rise-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"order\\\": \\\"order\\\",\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-rise-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-rise-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-rise-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-rise-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-rise-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-rise-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-rise-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch rising hot list" + modelName: "Douyin Rising Hot Search List" modelId: "douyin/billboard/hot-rise-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-total-high-fan-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-total-high-fan-list.md index fc9f230f..5e7f3bc4 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-total-high-fan-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-total-high-fan-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch high fan rate list API Reference" -description: "SandBase API operation douyin/billboard/hot-total-high-fan-list." +title: "Douyin High Fan Rate Billboard API Reference" +description: "SandBase API reference for model douyin/billboard/hot-total-high-fan-list. Call /v1/api/douyin/billboard/hot-total-high-fan-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-total-high-fan-list" -apiReferenceJson: "{\"title\":\"Fetch high fan rate list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-total-high-fan-list\",\"description\":\"Get the high fan rate list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, 1 by hour 2 by day\",\"default\":\"24\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword to filter the billboard, empty for all\",\"default\":\"\\\"\\\"\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of items per page\",\"default\":\"10\"},{\"name\":\"tags\",\"type\":\"array\",\"required\":false,\"description\":\"Sub-level vertical category tag, empty for all, multiple tags need to be passed in\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-fan-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-fan-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-fan-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-fan-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-fan-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-fan-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-fan-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-fan-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-total-high-fan-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin High Fan Rate Billboard\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-total-high-fan-list\",\"description\":\"Returns Douyin billboard rankings for content with high follower conversion rates, filterable by keyword, category tags, and time window.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, 1 by hour 2 by day\",\"default\":\"24\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword to filter the billboard, empty for all\",\"default\":\"\\\"\\\"\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of items per page\",\"default\":\"10\"},{\"name\":\"tags\",\"type\":\"array\",\"required\":false,\"description\":\"Sub-level vertical category tag, empty for all, multiple tags need to be passed in\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-fan-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-fan-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-fan-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-fan-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-fan-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-fan-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-fan-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-fan-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-total-high-fan-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch high fan rate list" + modelName: "Douyin High Fan Rate Billboard" modelId: "douyin/billboard/hot-total-high-fan-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-total-high-like-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-total-high-like-list.md index 817268e3..5d805657 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-total-high-like-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-total-high-like-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch high like rate list API Reference" -description: "SandBase API operation douyin/billboard/hot-total-high-like-list." +title: "Douyin High Like Rate Billboard API Reference" +description: "SandBase API reference for model douyin/billboard/hot-total-high-like-list. Call /v1/api/douyin/billboard/hot-total-high-like-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-total-high-like-list" -apiReferenceJson: "{\"title\":\"Fetch high like rate list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-total-high-like-list\",\"description\":\"Get the high like rate list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, 1 by hour 2 by day\",\"default\":\"24\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword to filter the billboard, empty for all\",\"default\":\"\\\"\\\"\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of items per page\",\"default\":\"10\"},{\"name\":\"tags\",\"type\":\"array\",\"required\":false,\"description\":\"Sub-level vertical category tag, empty for all, multiple tags need to be passed in\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-like-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-like-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-like-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-like-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-like-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-like-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-like-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-like-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-total-high-like-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin High Like Rate Billboard\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-total-high-like-list\",\"description\":\"Returns trending Douyin videos ranked by high like rates. Filter results by category tags, search keywords, time windows, and pagination parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, 1 by hour 2 by day\",\"default\":\"24\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword to filter the billboard, empty for all\",\"default\":\"\\\"\\\"\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of items per page\",\"default\":\"10\"},{\"name\":\"tags\",\"type\":\"array\",\"required\":false,\"description\":\"Sub-level vertical category tag, empty for all, multiple tags need to be passed in\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-like-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-like-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-like-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-like-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-like-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-like-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-like-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-like-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-total-high-like-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch high like rate list" + modelName: "Douyin High Like Rate Billboard" modelId: "douyin/billboard/hot-total-high-like-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-total-high-play-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-total-high-play-list.md index 1c53bc22..43674d90 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-total-high-play-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-total-high-play-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch high completion rate list API Reference" -description: "SandBase API operation douyin/billboard/hot-total-high-play-list." +title: "Douyin High Completion Rate Billboard API Reference" +description: "SandBase API reference for model douyin/billboard/hot-total-high-play-list. Call /v1/api/douyin/billboard/hot-total-high-play-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-total-high-play-list" -apiReferenceJson: "{\"title\":\"Fetch high completion rate list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-total-high-play-list\",\"description\":\"Get the high completion rate list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, 1 by hour 2 by day\",\"default\":\"24\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword to filter the billboard, empty for all\",\"default\":\"\\\"\\\"\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of items per page\",\"default\":\"10\"},{\"name\":\"tags\",\"type\":\"array\",\"required\":false,\"description\":\"Sub-level vertical category tag, empty for all, multiple tags need to be passed in\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-play-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-play-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-play-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-play-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-play-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-play-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-play-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-play-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-total-high-play-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin High Completion Rate Billboard\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-total-high-play-list\",\"description\":\"Returns Douyin billboard rankings for videos with high completion rates. Filter results by search keyword, category tags, time window, and pagination settings.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, 1 by hour 2 by day\",\"default\":\"24\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword to filter the billboard, empty for all\",\"default\":\"\\\"\\\"\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of items per page\",\"default\":\"10\"},{\"name\":\"tags\",\"type\":\"array\",\"required\":false,\"description\":\"Sub-level vertical category tag, empty for all, multiple tags need to be passed in\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-play-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-play-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-play-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-play-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-play-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-play-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-play-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-play-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-total-high-play-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch high completion rate list" + modelName: "Douyin High Completion Rate Billboard" modelId: "douyin/billboard/hot-total-high-play-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-total-high-search-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-total-high-search-list.md index 83e794fd..5deda7c9 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-total-high-search-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-total-high-search-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch search list with rising popularity API Reference" -description: "SandBase API operation douyin/billboard/hot-total-high-search-list." +title: "Douyin Billboard Rising Search List API Reference" +description: "SandBase API reference for model douyin/billboard/hot-total-high-search-list. Call /v1/api/douyin/billboard/hot-total-high-search-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-total-high-search-list" -apiReferenceJson: "{\"title\":\"Fetch search list with rising popularity\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-total-high-search-list\",\"description\":\"Get the search list with rising popularity\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, 1 by hour 2 by day\",\"default\":\"24\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword\",\"default\":\"抖音\"},{\"name\":\"page_num\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of items per page\",\"default\":\"10\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-search-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"抖音\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"抖音\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-search-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"抖音\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-search-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-search-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-search-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-search-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-total-high-search-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Billboard Rising Search List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-total-high-search-list\",\"description\":\"Returns rising search queries and trend data from the Douyin billboard. Supports filtering by search keyword, time window, and standard pagination options.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, 1 by hour 2 by day\",\"default\":\"24\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword\",\"default\":\"抖音\"},{\"name\":\"page_num\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of items per page\",\"default\":\"10\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-search-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"抖音\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"抖音\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-search-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"抖音\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-search-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-search-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-search-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-search-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-total-high-search-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch search list with rising popularity" + modelName: "Douyin Billboard Rising Search List" modelId: "douyin/billboard/hot-total-high-search-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-total-high-topic-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-total-high-topic-list.md index 861d25b6..f0b43cac 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-total-high-topic-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-total-high-topic-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch topic list with rising popularity API Reference" -description: "SandBase API operation douyin/billboard/hot-total-high-topic-list." +title: "Douyin Rising Popularity Topic List API Reference" +description: "SandBase API reference for model douyin/billboard/hot-total-high-topic-list. Call /v1/api/douyin/billboard/hot-total-high-topic-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-total-high-topic-list" -apiReferenceJson: "{\"title\":\"Fetch topic list with rising popularity\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-total-high-topic-list\",\"description\":\"Get the topic list with rising popularity\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, 1 by hour 2 by day\",\"default\":\"24\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword to filter the billboard, empty for all\",\"default\":\"\\\"\\\"\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of items per page\",\"default\":\"10\"},{\"name\":\"tags\",\"type\":\"array\",\"required\":false,\"description\":\"Sub-level vertical category tag, empty for all, multiple tags need to be passed in\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-topic-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-topic-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-topic-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-topic-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-topic-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-topic-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-topic-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-topic-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-total-high-topic-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Rising Popularity Topic List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-total-high-topic-list\",\"description\":\"Returns trending Douyin topics with rising popularity and historical trend metrics. Supports filtering by keyword, vertical category tags, time window, and pagination parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, 1 by hour 2 by day\",\"default\":\"24\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword to filter the billboard, empty for all\",\"default\":\"\\\"\\\"\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of items per page\",\"default\":\"10\"},{\"name\":\"tags\",\"type\":\"array\",\"required\":false,\"description\":\"Sub-level vertical category tag, empty for all, multiple tags need to be passed in\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-topic-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-topic-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-high-topic-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-topic-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-topic-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-topic-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-topic-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-high-topic-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-total-high-topic-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch topic list with rising popularity" + modelName: "Douyin Rising Popularity Topic List" modelId: "douyin/billboard/hot-total-high-topic-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-total-hot-word-detail-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-total-hot-word-detail-list.md index a0854302..bd9214ee 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-total-hot-word-detail-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-total-hot-word-detail-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch content word details API Reference" -description: "SandBase API operation douyin/billboard/hot-total-hot-word-detail-list." +title: "Douyin Billboard Hot Word Details API Reference" +description: "SandBase API reference: douyin/billboard/hot-total-hot-word-detail-list via /v1/api/douyin/billboard/hot-total-hot-word-detail-list. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-total-hot-word-detail-list" -apiReferenceJson: "{\"title\":\"Fetch content word details\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-total-hot-word-detail-list\",\"description\":\"Get the details of content words\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"query_day\",\"type\":\"integer\",\"required\":true,\"description\":\"Query date, format is YYYYMMDD\"},{\"name\":\"word_id\",\"type\":\"string\",\"required\":true,\"description\":\"Content word id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-hot-word-detail-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"query_day\\\": 1,\\n \\\"word_id\\\": \\\"word_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"query_day\\\": 1,\\n \\\"word_id\\\": \\\"word_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-hot-word-detail-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"query_day\\\": 1,\\n \\\"word_id\\\": \\\"word_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-hot-word-detail-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-hot-word-detail-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-hot-word-detail-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-hot-word-detail-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-hot-word-detail-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-hot-word-detail-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-total-hot-word-detail-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Billboard Hot Word Details\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-total-hot-word-detail-list\",\"description\":\"Returns detailed billboard metrics for a specific Douyin content word. Filters include the search keyword, word identifier, and target query date.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"query_day\",\"type\":\"integer\",\"required\":true,\"description\":\"Query date, format is YYYYMMDD\"},{\"name\":\"word_id\",\"type\":\"string\",\"required\":true,\"description\":\"Content word id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-hot-word-detail-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"query_day\\\": 1,\\n \\\"word_id\\\": \\\"word_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"query_day\\\": 1,\\n \\\"word_id\\\": \\\"word_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-hot-word-detail-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"query_day\\\": 1,\\n \\\"word_id\\\": \\\"word_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-hot-word-detail-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-hot-word-detail-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-hot-word-detail-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-hot-word-detail-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-hot-word-detail-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-hot-word-detail-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-total-hot-word-detail-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch content word details" + modelName: "Douyin Billboard Hot Word Details" modelId: "douyin/billboard/hot-total-hot-word-detail-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-total-hot-word-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-total-hot-word-list.md index e639e8cc..71260b93 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-total-hot-word-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-total-hot-word-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch all hot content words API Reference" -description: "SandBase API operation douyin/billboard/hot-total-hot-word-list." +title: "Douyin Hot Content Words API Reference" +description: "SandBase API reference for model douyin/billboard/hot-total-hot-word-list. Call /v1/api/douyin/billboard/hot-total-hot-word-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-total-hot-word-list" -apiReferenceJson: "{\"title\":\"Fetch all hot content words\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-total-hot-word-list\",\"description\":\"Get the list of all content words\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, 1 by hour 2 by day\",\"default\":\"24\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword\",\"default\":\"抖音\"},{\"name\":\"page_num\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of items per page\",\"default\":\"10\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-hot-word-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"抖音\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"抖音\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-hot-word-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"抖音\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-hot-word-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-hot-word-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-hot-word-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-hot-word-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-hot-word-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-hot-word-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-total-hot-word-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Hot Content Words\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-total-hot-word-list\",\"description\":\"Returns trending content words and popularity scores from Douyin billboards. Supports filtering by search keyword, time window, and pagination parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, 1 by hour 2 by day\",\"default\":\"24\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword\",\"default\":\"抖音\"},{\"name\":\"page_num\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of items per page\",\"default\":\"10\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-hot-word-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"抖音\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"抖音\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-hot-word-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"抖音\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-hot-word-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-hot-word-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-hot-word-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-hot-word-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-hot-word-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-hot-word-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-total-hot-word-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch all hot content words" + modelName: "Douyin Hot Content Words" modelId: "douyin/billboard/hot-total-hot-word-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-total-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-total-list.md index 59fc77f1..9464180e 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-total-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-total-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch total hot list API Reference" -description: "SandBase API operation douyin/billboard/hot-total-list." +title: "Douyin Total Hot Billboard API Reference" +description: "SandBase API reference for model douyin/billboard/hot-total-list. Call /v1/api/douyin/billboard/hot-total-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-total-list" -apiReferenceJson: "{\"title\":\"Fetch total hot list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-total-list\",\"description\":\"Get the total hot list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":false,\"description\":\"Snapshot end time format yyyyMMdd\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Hot search term\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":true,\"description\":\"Page number\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":true,\"description\":\"Number of items per page\"},{\"name\":\"sentence_tag\",\"type\":\"string\",\"required\":false,\"description\":\"Hot category tag, get from hot list category, multiple categories separated by commas, empty for all\"},{\"name\":\"snapshot_time\",\"type\":\"string\",\"required\":false,\"description\":\"Snapshot time format yyyyMMddHHmmss\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":false,\"description\":\"Snapshot start time format yyyyMMdd\"},{\"name\":\"type\",\"type\":\"string\",\"required\":true,\"description\":\"Snapshot type snapshot view by time range view by time range.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 1,\\n \\\"type\\\": \\\"type\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 1,\\n \\\"type\\\": \\\"type\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 1,\\n \\\"type\\\": \\\"type\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-total-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Total Hot Billboard\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-total-list\",\"description\":\"Returns Douyin total hot list billboard entries across specified time ranges. Supports filtering by snapshot type, keyword, category tags, and date range with pagination controls.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":false,\"description\":\"Snapshot end time format yyyyMMdd\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Hot search term\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":true,\"description\":\"Page number\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":true,\"description\":\"Number of items per page\"},{\"name\":\"sentence_tag\",\"type\":\"string\",\"required\":false,\"description\":\"Hot category tag, get from hot list category, multiple categories separated by commas, empty for all\"},{\"name\":\"snapshot_time\",\"type\":\"string\",\"required\":false,\"description\":\"Snapshot time format yyyyMMddHHmmss\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":false,\"description\":\"Snapshot start time format yyyyMMdd\"},{\"name\":\"type\",\"type\":\"string\",\"required\":true,\"description\":\"Snapshot type snapshot view by time range view by time range.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 1,\\n \\\"type\\\": \\\"type\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 1,\\n \\\"type\\\": \\\"type\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"page\\\": 1,\\n \\\"page_size\\\": 1,\\n \\\"type\\\": \\\"type\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-total-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch total hot list" + modelName: "Douyin Total Hot Billboard" modelId: "douyin/billboard/hot-total-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-total-low-fan-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-total-low-fan-list.md index 29506717..c86955ef 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-total-low-fan-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-total-low-fan-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch low fan explosion list API Reference" -description: "SandBase API operation douyin/billboard/hot-total-low-fan-list." +title: "Douyin Low Fan Billboard Items API Reference" +description: "SandBase API reference for model douyin/billboard/hot-total-low-fan-list. Call /v1/api/douyin/billboard/hot-total-low-fan-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-total-low-fan-list" -apiReferenceJson: "{\"title\":\"Fetch low fan explosion list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-total-low-fan-list\",\"description\":\"Get the low fan explosion list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, 1 by hour 2 by day\",\"default\":\"24\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword to filter the billboard, empty for all\",\"default\":\"\\\"\\\"\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of items per page\",\"default\":\"10\"},{\"name\":\"tags\",\"type\":\"array\",\"required\":false,\"description\":\"Sub-level vertical category tag, empty for all, multiple tags need to be passed in\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-low-fan-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-low-fan-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-low-fan-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-low-fan-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-low-fan-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-low-fan-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-low-fan-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-low-fan-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-total-low-fan-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Low Fan Billboard Items\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-total-low-fan-list\",\"description\":\"Returns viral Douyin videos produced by creators with low follower counts. Filter results by search keyword, category tags, time window, and pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, 1 by hour 2 by day\",\"default\":\"24\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword to filter the billboard, empty for all\",\"default\":\"\\\"\\\"\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of items per page\",\"default\":\"10\"},{\"name\":\"tags\",\"type\":\"array\",\"required\":false,\"description\":\"Sub-level vertical category tag, empty for all, multiple tags need to be passed in\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-low-fan-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-low-fan-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-low-fan-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-low-fan-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-low-fan-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-low-fan-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-low-fan-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-low-fan-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-total-low-fan-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch low fan explosion list" + modelName: "Douyin Low Fan Billboard Items" modelId: "douyin/billboard/hot-total-low-fan-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-total-search-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-total-search-list.md index 634f139c..d48b9c18 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-total-search-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-total-search-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch search hot list API Reference" -description: "SandBase API operation douyin/billboard/hot-total-search-list." +title: "Douyin Hot Total Search List API Reference" +description: "SandBase API reference for model douyin/billboard/hot-total-search-list. Call /v1/api/douyin/billboard/hot-total-search-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-total-search-list" -apiReferenceJson: "{\"title\":\"Fetch search hot list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-total-search-list\",\"description\":\"Get the search list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, 1 by hour 2 by day\",\"default\":\"24\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword\",\"default\":\"抖音\"},{\"name\":\"page_num\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of items per page\",\"default\":\"10\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-search-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"抖音\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"抖音\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-search-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"抖音\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-search-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-search-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-search-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-search-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-total-search-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Hot Total Search List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-total-search-list\",\"description\":\"Returns Douyin billboard search hot list rankings and search trend metrics. Supports filtering by keyword, date window timeframe, and pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, 1 by hour 2 by day\",\"default\":\"24\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword\",\"default\":\"抖音\"},{\"name\":\"page_num\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of items per page\",\"default\":\"10\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-search-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"抖音\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"抖音\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-search-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"抖音\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-search-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-search-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-search-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-search-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-search-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-total-search-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch search hot list" + modelName: "Douyin Hot Total Search List" modelId: "douyin/billboard/hot-total-search-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-total-topic-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-total-topic-list.md index e0bda48a..99d93b2c 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-total-topic-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-total-topic-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch topic hot list API Reference" -description: "SandBase API operation douyin/billboard/hot-total-topic-list." +title: "Douyin Hot Topic Billboard API Reference" +description: "SandBase API reference for model douyin/billboard/hot-total-topic-list. Call /v1/api/douyin/billboard/hot-total-topic-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-total-topic-list" -apiReferenceJson: "{\"title\":\"Fetch topic hot list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-total-topic-list\",\"description\":\"Get the topic list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, 1 by hour 2 by day\",\"default\":\"24\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword to filter the billboard, empty for all\",\"default\":\"\\\"\\\"\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of items per page\",\"default\":\"10\"},{\"name\":\"tags\",\"type\":\"array\",\"required\":false,\"description\":\"Sub-level vertical category tag, empty for all, multiple tags need to be passed in\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-topic-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-topic-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-topic-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-topic-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-topic-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-topic-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-topic-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-topic-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-total-topic-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Hot Topic Billboard\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-total-topic-list\",\"description\":\"Returns trending topic rankings and historical trend metrics from Douyin. Results can be filtered by keyword, vertical category tags, and time window.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, 1 by hour 2 by day\",\"default\":\"24\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword to filter the billboard, empty for all\",\"default\":\"\\\"\\\"\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of items per page\",\"default\":\"10\"},{\"name\":\"tags\",\"type\":\"array\",\"required\":false,\"description\":\"Sub-level vertical category tag, empty for all, multiple tags need to be passed in\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-topic-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-topic-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-topic-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-topic-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-topic-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-topic-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-topic-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-topic-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-total-topic-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch topic hot list" + modelName: "Douyin Hot Topic Billboard" modelId: "douyin/billboard/hot-total-topic-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-total-video-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-total-video-list.md index d072902f..ec53efe5 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-total-video-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-total-video-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch video hot list API Reference" -description: "SandBase API operation douyin/billboard/hot-total-video-list." +title: "Douyin Hot Video Ranking API Reference" +description: "SandBase API reference for model douyin/billboard/hot-total-video-list. Call /v1/api/douyin/billboard/hot-total-video-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-total-video-list" -apiReferenceJson: "{\"title\":\"Fetch video hot list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-total-video-list\",\"description\":\"Get the video list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, 1 by hour 2 by day\",\"default\":\"24\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword to filter the billboard, empty for all\",\"default\":\"\\\"\\\"\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of items per page\",\"default\":\"10\"},{\"name\":\"sub_type\",\"type\":\"integer\",\"required\":false,\"description\":\"List category, 1001 Video total list 1002 Low fan explosion 1003 High completion rate 1004 High fan growth rate 1005 High like rate\",\"default\":\"1001\"},{\"name\":\"tags\",\"type\":\"array\",\"required\":false,\"description\":\"Sub-level vertical category tag, empty for all, multiple tags need to be passed in\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-video-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-video-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-video-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-video-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-video-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-video-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-total-video-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Hot Video Ranking\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-total-video-list\",\"description\":\"Get Douyin hot video rankings: overall hot videos, low-follower breakouts, high completion, follower growth and like-rate lists, with play, like and follower stats, filters by category and time window.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_window\",\"type\":\"integer\",\"required\":false,\"description\":\"Time window, 1 by hour 2 by day\",\"default\":\"24\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword to filter the billboard, empty for all\",\"default\":\"\\\"\\\"\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of items per page\",\"default\":\"10\"},{\"name\":\"sub_type\",\"type\":\"integer\",\"required\":false,\"description\":\"List category, 1001 Video total list 1002 Low fan explosion 1003 High completion rate 1004 High fan growth rate 1005 High like rate\",\"default\":\"1001\"},{\"name\":\"tags\",\"type\":\"array\",\"required\":false,\"description\":\"Sub-level vertical category tag, empty for all, multiple tags need to be passed in\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-video-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-video-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-total-video-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-video-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-video-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-video-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-total-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-total-video-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch video hot list" + modelName: "Douyin Hot Video Ranking" modelId: "douyin/billboard/hot-total-video-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/billboard/hot-user-portrait-list.md b/model-api-reference/platform-apis/douyin/billboard/hot-user-portrait-list.md index d4c26532..f81252a6 100644 --- a/model-api-reference/platform-apis/douyin/billboard/hot-user-portrait-list.md +++ b/model-api-reference/platform-apis/douyin/billboard/hot-user-portrait-list.md @@ -1,13 +1,13 @@ --- -title: "Fetch work like audience portrait - hot list only API Reference" -description: "SandBase API operation douyin/billboard/hot-user-portrait-list." +title: "Douyin Hot Video Audience Portrait API Reference" +description: "SandBase API reference for model douyin/billboard/hot-user-portrait-list. Call /v1/api/douyin/billboard/hot-user-portrait-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/billboard/hot-user-portrait-list" -apiReferenceJson: "{\"title\":\"Fetch work like audience portrait - hot list only\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-user-portrait-list\",\"description\":\"Get the work like audience portrait\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Work id\"},{\"name\":\"option\",\"type\":\"integer\",\"required\":false,\"description\":\"Option\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-user-portrait-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"aweme_id\\\": \\\"aweme_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"aweme_id\\\": \\\"aweme_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-user-portrait-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"aweme_id\\\": \\\"aweme_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-user-portrait-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-user-portrait-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-user-portrait-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-user-portrait-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-user-portrait-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-user-portrait-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-user-portrait-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Hot Video Audience Portrait\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/billboard/hot-user-portrait-list\",\"description\":\"Returns audience persona and demographic data for trending Douyin videos. Look up user portraits by providing a specific work ID and optional display options.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Work id\"},{\"name\":\"option\",\"type\":\"integer\",\"required\":false,\"description\":\"Option\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/billboard/hot-user-portrait-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"aweme_id\\\": \\\"7372484719365098803\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"aweme_id\\\": \\\"7372484719365098803\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-user-portrait-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"aweme_id\\\": \\\"7372484719365098803\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/billboard/hot-user-portrait-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/billboard/hot-user-portrait-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/billboard/hot-user-portrait-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/billboard/hot-user-portrait-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/billboard/hot-user-portrait-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/billboard/hot-user-portrait-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/billboard/hot-user-portrait-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch work like audience portrait - hot list only" + modelName: "Douyin Hot Video Audience Portrait" modelId: "douyin/billboard/hot-user-portrait-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/creator-v2/author-diagnosis.md b/model-api-reference/platform-apis/douyin/creator-v2/author-diagnosis.md deleted file mode 100644 index 177368b4..00000000 --- a/model-api-reference/platform-apis/douyin/creator-v2/author-diagnosis.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Fetch author diagnosis API Reference" -description: "SandBase API operation douyin/creator-v2/author-diagnosis." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/creator-v2/author-diagnosis" -apiReferenceJson: "{\"title\":\"Fetch author diagnosis\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator-v2/author-diagnosis\",\"description\":\"Get Douyin creator account diagnosis data and optimization suggestions Automatically analyze account performance for the past 7 days Provide assessment and improvement suggestions for key metrics Help creators understand account health and optimize content strategy This API requires valid Douyin Creator Platform Cookie Use POST method, Cookie transmitted in request body, more secure No need to specify time range, system automatically fetches data for past 7 days\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":true,\"description\":\"User's Douyin Creator Platform Cookie (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator-v2/author-diagnosis \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cookie\\\": \\\"cookie\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/author-diagnosis\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/author-diagnosis\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator-v2/author-diagnosis\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator-v2/author-diagnosis\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator-v2/author-diagnosis\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator-v2/author-diagnosis\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator-v2/author-diagnosis\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator-v2/author-diagnosis\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Fetch author diagnosis" - modelId: "douyin/creator-v2/author-diagnosis" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "creator-v2/author-diagnosis" - protocol: "API Reference" - endpoint: "/v1/api/douyin/creator-v2/author-diagnosis" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/creator-v2/item-analysis-involved-vertical.md b/model-api-reference/platform-apis/douyin/creator-v2/item-analysis-involved-vertical.md deleted file mode 100644 index 812af776..00000000 --- a/model-api-reference/platform-apis/douyin/creator-v2/item-analysis-involved-vertical.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Fetch item analysis involved vertical API Reference" -description: "SandBase API operation douyin/creator-v2/item-analysis-involved-vertical." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/creator-v2/item-analysis-involved-vertical" -apiReferenceJson: "{\"title\":\"Fetch item analysis involved vertical\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator-v2/item-analysis-involved-vertical\",\"description\":\"Get the vertical tags involved in submitted items within the specified time period Used as parameters for subsequent calls to the submission analysis interface This API requires users to provide valid Douyin Creator Platform Cookie Use POST method, Cookie is transmitted in request body, more secure\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":true,\"description\":\"User's Douyin Creator Platform Cookie (required, transmitted in request body)\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date in YYYYMMDD format (required)\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date in YYYYMMDD format (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator-v2/item-analysis-involved-vertical \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"end_date\\\": \\\"20251011\\\",\\n \\\"start_date\\\": \\\"20250713\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"end_date\\\": \\\"20251011\\\",\\n \\\"start_date\\\": \\\"20250713\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/item-analysis-involved-vertical\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"end_date\\\": \\\"20251011\\\",\\n \\\"start_date\\\": \\\"20250713\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/item-analysis-involved-vertical\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator-v2/item-analysis-involved-vertical\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator-v2/item-analysis-involved-vertical\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator-v2/item-analysis-involved-vertical\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator-v2/item-analysis-involved-vertical\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator-v2/item-analysis-involved-vertical\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator-v2/item-analysis-involved-vertical\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Fetch item analysis involved vertical" - modelId: "douyin/creator-v2/item-analysis-involved-vertical" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "creator-v2/item-analysis-involved-vertical" - protocol: "API Reference" - endpoint: "/v1/api/douyin/creator-v2/item-analysis-involved-vertical" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/creator-v2/item-analysis-item-performance.md b/model-api-reference/platform-apis/douyin/creator-v2/item-analysis-item-performance.md deleted file mode 100644 index 83873836..00000000 --- a/model-api-reference/platform-apis/douyin/creator-v2/item-analysis-item-performance.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Fetch item analysis item performance API Reference" -description: "SandBase API operation douyin/creator-v2/item-analysis-item-performance." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/creator-v2/item-analysis-item-performance" -apiReferenceJson: "{\"title\":\"Fetch item analysis item performance\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator-v2/item-analysis-item-performance\",\"description\":\"Get performance data for submitted items, including views, likes, comments, shares, etc. Analyze content performance across different genres and verticals This API requires users to provide valid Douyin Creator Platform Cookie Use POST method, Cookie is transmitted in request body, more secure Recommend calling fetch_item_analysis_involved_vertical first to get vertical tags\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":true,\"description\":\"User's Douyin Creator Platform Cookie (required, transmitted in request body)\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date in YYYYMMDD format (required)\"},{\"name\":\"genres\",\"type\":\"array\",\"required\":false,\"description\":\"Genre type list (optional, defaults to all genres)\"},{\"name\":\"metric_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Metric type (optional, defaults to 1)\"},{\"name\":\"primary_verticals\",\"type\":\"array\",\"required\":true,\"description\":\"Vertical tag list (required, obtained from fetch_item_analysis_involved_vertical)\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date in YYYYMMDD format (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator-v2/item-analysis-item-performance \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"end_date\\\": \\\"20251011\\\",\\n \\\"primary_verticals\\\": [\\n \\\"primary_verticals_0_\\\"\\n ],\\n \\\"start_date\\\": \\\"20250713\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"end_date\\\": \\\"20251011\\\",\\n \\\"primary_verticals\\\": [\\n \\\"primary_verticals_0_\\\"\\n ],\\n \\\"start_date\\\": \\\"20250713\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/item-analysis-item-performance\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"end_date\\\": \\\"20251011\\\",\\n \\\"primary_verticals\\\": [\\n \\\"primary_verticals_0_\\\"\\n ],\\n \\\"start_date\\\": \\\"20250713\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/item-analysis-item-performance\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator-v2/item-analysis-item-performance\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator-v2/item-analysis-item-performance\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator-v2/item-analysis-item-performance\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator-v2/item-analysis-item-performance\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator-v2/item-analysis-item-performance\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator-v2/item-analysis-item-performance\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Fetch item analysis item performance" - modelId: "douyin/creator-v2/item-analysis-item-performance" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "creator-v2/item-analysis-item-performance" - protocol: "API Reference" - endpoint: "/v1/api/douyin/creator-v2/item-analysis-item-performance" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/creator-v2/item-analysis-overview.md b/model-api-reference/platform-apis/douyin/creator-v2/item-analysis-overview.md deleted file mode 100644 index d67341d4..00000000 --- a/model-api-reference/platform-apis/douyin/creator-v2/item-analysis-overview.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Fetch item analysis overview API Reference" -description: "SandBase API operation douyin/creator-v2/item-analysis-overview." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/creator-v2/item-analysis-overview" -apiReferenceJson: "{\"title\":\"Fetch item analysis overview\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator-v2/item-analysis-overview\",\"description\":\"Get comprehensive analysis data for account submitted items Including submission performance statistics for different genres and verticals This API requires users to provide valid Douyin Creator Platform Cookie Use POST method, Cookie is transmitted in request body, more secure Recommend calling fetch_item_analysis_involved_vertical first to get vertical tags\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":true,\"description\":\"User's Douyin Creator Platform Cookie (required, transmitted in request body)\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date in YYYYMMDD format (required)\"},{\"name\":\"genres\",\"type\":\"array\",\"required\":false,\"description\":\"Genre type list (optional, defaults to all genres)\"},{\"name\":\"primary_verticals\",\"type\":\"array\",\"required\":true,\"description\":\"Vertical tag list (required, obtained from fetch_item_analysis_involved_vertical)\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date in YYYYMMDD format (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator-v2/item-analysis-overview \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"end_date\\\": \\\"20251011\\\",\\n \\\"primary_verticals\\\": [\\n \\\"primary_verticals_0_\\\"\\n ],\\n \\\"start_date\\\": \\\"20250713\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"end_date\\\": \\\"20251011\\\",\\n \\\"primary_verticals\\\": [\\n \\\"primary_verticals_0_\\\"\\n ],\\n \\\"start_date\\\": \\\"20250713\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/item-analysis-overview\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"end_date\\\": \\\"20251011\\\",\\n \\\"primary_verticals\\\": [\\n \\\"primary_verticals_0_\\\"\\n ],\\n \\\"start_date\\\": \\\"20250713\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/item-analysis-overview\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator-v2/item-analysis-overview\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator-v2/item-analysis-overview\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator-v2/item-analysis-overview\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator-v2/item-analysis-overview\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator-v2/item-analysis-overview\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator-v2/item-analysis-overview\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Fetch item analysis overview" - modelId: "douyin/creator-v2/item-analysis-overview" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "creator-v2/item-analysis-overview" - protocol: "API Reference" - endpoint: "/v1/api/douyin/creator-v2/item-analysis-overview" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/creator-v2/item-audience-others.md b/model-api-reference/platform-apis/douyin/creator-v2/item-audience-others.md deleted file mode 100644 index c227c198..00000000 --- a/model-api-reference/platform-apis/douyin/creator-v2/item-audience-others.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Fetch item audience others analysis API Reference" -description: "SandBase API operation douyin/creator-v2/item-audience-others." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/creator-v2/item-audience-others" -apiReferenceJson: "{\"title\":\"Fetch item audience others analysis\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator-v2/item-audience-others\",\"description\":\"Get Douyin item audience other data analysis, including audience distribution and audience keywords Understand whether the audience are fans and what topics they are interested in This API requires users to provide valid Douyin Creator Platform Cookie Use POST method, Cookie is transmitted in request body, more secure\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":true,\"description\":\"User's Douyin Creator Platform Cookie (required, transmitted in request body)\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Item ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator-v2/item-audience-others \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/item-audience-others\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/item-audience-others\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator-v2/item-audience-others\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator-v2/item-audience-others\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator-v2/item-audience-others\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator-v2/item-audience-others\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator-v2/item-audience-others\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator-v2/item-audience-others\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Fetch item audience others analysis" - modelId: "douyin/creator-v2/item-audience-others" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "creator-v2/item-audience-others" - protocol: "API Reference" - endpoint: "/v1/api/douyin/creator-v2/item-audience-others" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/creator-v2/item-audience-portrait.md b/model-api-reference/platform-apis/douyin/creator-v2/item-audience-portrait.md deleted file mode 100644 index bf073ad2..00000000 --- a/model-api-reference/platform-apis/douyin/creator-v2/item-audience-portrait.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Fetch item audience portrait API Reference" -description: "SandBase API operation douyin/creator-v2/item-audience-portrait." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/creator-v2/item-audience-portrait" -apiReferenceJson: "{\"title\":\"Fetch item audience portrait\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator-v2/item-audience-portrait\",\"description\":\"Get Douyin item audience portrait data Understand viewer demographic characteristics Includes active distribution, gender distribution, region distribution, age distribution Help creators precisely target audiences and optimize content strategy This API requires users to provide valid Douyin Creator Platform Cookie Use POST method, Cookie is transmitted in request body, more secure\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":true,\"description\":\"User's Douyin Creator Platform Cookie (required, transmitted in request body)\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Item ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator-v2/item-audience-portrait \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/item-audience-portrait\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/item-audience-portrait\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator-v2/item-audience-portrait\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator-v2/item-audience-portrait\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator-v2/item-audience-portrait\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator-v2/item-audience-portrait\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator-v2/item-audience-portrait\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator-v2/item-audience-portrait\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Fetch item audience portrait" - modelId: "douyin/creator-v2/item-audience-portrait" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "creator-v2/item-audience-portrait" - protocol: "API Reference" - endpoint: "/v1/api/douyin/creator-v2/item-audience-portrait" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/creator-v2/item-danmaku-analysis.md b/model-api-reference/platform-apis/douyin/creator-v2/item-danmaku-analysis.md deleted file mode 100644 index 7594b788..00000000 --- a/model-api-reference/platform-apis/douyin/creator-v2/item-danmaku-analysis.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Fetch item bullet analysis API Reference" -description: "SandBase API operation douyin/creator-v2/item-danmaku-analysis." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/creator-v2/item-danmaku-analysis" -apiReferenceJson: "{\"title\":\"Fetch item bullet analysis\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator-v2/item-danmaku-analysis\",\"description\":\"Get Douyin item bullet (danmaku) analysis data Understand audience bullet interaction at various video time points Help creators identify hot segments and audience reactions This API requires users to provide valid Douyin Creator Platform Cookie Use POST method, Cookie is transmitted in request body, more secure\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":true,\"description\":\"User's Douyin Creator Platform Cookie (required, transmitted in request body)\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Item ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator-v2/item-danmaku-analysis \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/item-danmaku-analysis\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/item-danmaku-analysis\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator-v2/item-danmaku-analysis\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator-v2/item-danmaku-analysis\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator-v2/item-danmaku-analysis\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator-v2/item-danmaku-analysis\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator-v2/item-danmaku-analysis\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator-v2/item-danmaku-analysis\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Fetch item bullet analysis" - modelId: "douyin/creator-v2/item-danmaku-analysis" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "creator-v2/item-danmaku-analysis" - protocol: "API Reference" - endpoint: "/v1/api/douyin/creator-v2/item-danmaku-analysis" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/creator-v2/item-list-download.md b/model-api-reference/platform-apis/douyin/creator-v2/item-list-download.md deleted file mode 100644 index 016989ab..00000000 --- a/model-api-reference/platform-apis/douyin/creator-v2/item-list-download.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Download item list API Reference" -description: "SandBase API operation douyin/creator-v2/item-list-download." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/creator-v2/item-list-download" -apiReferenceJson: "{\"title\":\"Download item list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator-v2/item-list-download\",\"description\":\"Export detailed data of top 1000 items within the specified time range Support filtering export content by genre types This API is for batch export, not suitable for real-time queries Export tasks are processed asynchronously, need to wait for server to generate file This API requires users to provide valid Douyin Creator Platform Cookie Use POST method, Cookie is transmitted in request body, more secure\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":true,\"description\":\"User's Douyin Creator Platform Cookie (required, transmitted in request body)\"},{\"name\":\"max_cursor\",\"type\":\"integer\",\"required\":true,\"description\":\"Max cursor, i.e., end timestamp in milliseconds (required)\"},{\"name\":\"min_cursor\",\"type\":\"integer\",\"required\":true,\"description\":\"Min cursor, i.e., start timestamp in milliseconds (required)\"},{\"name\":\"need_long_article\",\"type\":\"boolean\",\"required\":false,\"description\":\"Include long articles, default true (optional)\"},{\"name\":\"type_filters\",\"type\":\"array\",\"required\":false,\"description\":\"Genre type filter list, default all [1,2,3,4,5,8] (optional)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator-v2/item-list-download \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"max_cursor\\\": 1,\\n \\\"min_cursor\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"max_cursor\\\": 1,\\n \\\"min_cursor\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/item-list-download\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"max_cursor\\\": 1,\\n \\\"min_cursor\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/item-list-download\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator-v2/item-list-download\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator-v2/item-list-download\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator-v2/item-list-download\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator-v2/item-list-download\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator-v2/item-list-download\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator-v2/item-list-download\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Download item list" - modelId: "douyin/creator-v2/item-list-download" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "creator-v2/item-list-download" - protocol: "API Reference" - endpoint: "/v1/api/douyin/creator-v2/item-list-download" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/creator-v2/item-list.md b/model-api-reference/platform-apis/douyin/creator-v2/item-list.md deleted file mode 100644 index 1715b075..00000000 --- a/model-api-reference/platform-apis/douyin/creator-v2/item-list.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Fetch item list API Reference" -description: "SandBase API operation douyin/creator-v2/item-list." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/creator-v2/item-list" -apiReferenceJson: "{\"title\":\"Fetch item list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator-v2/item-list\",\"description\":\"Get all published items within the specified time range Support pagination query, maximum 100 items per request Data update description: Views, likes, comments, shares, favorites update in real-time Other metrics update hourly This API requires users to provide valid Douyin Creator Platform Cookie Use POST method, Cookie is transmitted in request body, more secure\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":true,\"description\":\"User's Douyin Creator Platform Cookie (required, transmitted in request body)\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of items per page, default 10, max 100 (optional)\"},{\"name\":\"cursor\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Pagination cursor, don't pass for first request, use returned cursor for pagination (optional)\"},{\"name\":\"end_time\",\"type\":\"integer\",\"required\":true,\"description\":\"End timestamp in milliseconds (required)\"},{\"name\":\"fields\",\"type\":\"string\",\"required\":false,\"description\":\"Fields to return, default \\\"metrics,review,visibility\\\" (optional)\"},{\"name\":\"need_cooperation\",\"type\":\"boolean\",\"required\":false,\"description\":\"Need cooperation info, default true (optional)\"},{\"name\":\"need_long_article\",\"type\":\"boolean\",\"required\":false,\"description\":\"Include long articles, default true (optional)\"},{\"name\":\"order_by\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort method, supports 26 types (optional, default 1)\"},{\"name\":\"start_time\",\"type\":\"integer\",\"required\":true,\"description\":\"Start timestamp in milliseconds (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator-v2/item-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"end_time\\\": 1,\\n \\\"start_time\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"end_time\\\": 1,\\n \\\"start_time\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/item-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"end_time\\\": 1,\\n \\\"start_time\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/item-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator-v2/item-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator-v2/item-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator-v2/item-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator-v2/item-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator-v2/item-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator-v2/item-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Fetch item list" - modelId: "douyin/creator-v2/item-list" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "creator-v2/item-list" - protocol: "API Reference" - endpoint: "/v1/api/douyin/creator-v2/item-list" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/creator-v2/item-overview-data.md b/model-api-reference/platform-apis/douyin/creator-v2/item-overview-data.md deleted file mode 100644 index ded3824f..00000000 --- a/model-api-reference/platform-apis/douyin/creator-v2/item-overview-data.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Fetch item overview data API Reference" -description: "SandBase API operation douyin/creator-v2/item-overview-data." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/creator-v2/item-overview-data" -apiReferenceJson: "{\"title\":\"Fetch item overview data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator-v2/item-overview-data\",\"description\":\"Get Douyin item overview data, including traffic metrics, review status, play info, etc. This API requires users to provide valid Douyin Creator Platform Cookie Use POST method, Cookie is transmitted in request body, more secure\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":true,\"description\":\"User's Douyin Creator Platform Cookie (required, transmitted in request body)\"},{\"name\":\"fields\",\"type\":\"string | null\",\"required\":false,\"description\":\"Fields to return, default is \\\"metrics,review,play_info,dou_plus,integrated_incentive,incentive_life,content_analysis\\\"\"},{\"name\":\"ids\",\"type\":\"string\",\"required\":true,\"description\":\"Item ID list, separated by comma (e.g., \\\"7559536212910853422,7559536212910853423\\\")\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator-v2/item-overview-data \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"ids\\\": \\\"ids\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"ids\\\": \\\"ids\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/item-overview-data\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"ids\\\": \\\"ids\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/item-overview-data\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator-v2/item-overview-data\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator-v2/item-overview-data\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator-v2/item-overview-data\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator-v2/item-overview-data\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator-v2/item-overview-data\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator-v2/item-overview-data\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Fetch item overview data" - modelId: "douyin/creator-v2/item-overview-data" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "creator-v2/item-overview-data" - protocol: "API Reference" - endpoint: "/v1/api/douyin/creator-v2/item-overview-data" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/creator-v2/item-play-source.md b/model-api-reference/platform-apis/douyin/creator-v2/item-play-source.md deleted file mode 100644 index c0bbac84..00000000 --- a/model-api-reference/platform-apis/douyin/creator-v2/item-play-source.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Fetch item play source statistics API Reference" -description: "SandBase API operation douyin/creator-v2/item-play-source." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/creator-v2/item-play-source" -apiReferenceJson: "{\"title\":\"Fetch item play source statistics\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator-v2/item-play-source\",\"description\":\"Get Douyin item play source statistics Statistics of the proportion of item views from different sources If a channel is not shown, it means there are no views from that channel yet For newly published items, the recommended page traffic may be low initially, please wait for system distribution This API requires users to provide valid Douyin Creator Platform Cookie Use POST method, Cookie is transmitted in request body, more secure\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":true,\"description\":\"User's Douyin Creator Platform Cookie (required, transmitted in request body)\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Item ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator-v2/item-play-source \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/item-play-source\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/item-play-source\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator-v2/item-play-source\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator-v2/item-play-source\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator-v2/item-play-source\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator-v2/item-play-source\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator-v2/item-play-source\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator-v2/item-play-source\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Fetch item play source statistics" - modelId: "douyin/creator-v2/item-play-source" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "creator-v2/item-play-source" - protocol: "API Reference" - endpoint: "/v1/api/douyin/creator-v2/item-play-source" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/creator-v2/item-search-keyword.md b/model-api-reference/platform-apis/douyin/creator-v2/item-search-keyword.md deleted file mode 100644 index 072e17ba..00000000 --- a/model-api-reference/platform-apis/douyin/creator-v2/item-search-keyword.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Fetch item search keywords statistics API Reference" -description: "SandBase API operation douyin/creator-v2/item-search-keyword." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/creator-v2/item-search-keyword" -apiReferenceJson: "{\"title\":\"Fetch item search keywords statistics\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator-v2/item-search-keyword\",\"description\":\"Get Douyin item search keywords statistics Understand which search keywords users used to find and watch the item Help creators optimize content titles, tags, and descriptions to improve search exposure This API requires users to provide valid Douyin Creator Platform Cookie Use POST method, Cookie is transmitted in request body, more secure\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":true,\"description\":\"User's Douyin Creator Platform Cookie (required, transmitted in request body)\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Item ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator-v2/item-search-keyword \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/item-search-keyword\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/item-search-keyword\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator-v2/item-search-keyword\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator-v2/item-search-keyword\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator-v2/item-search-keyword\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator-v2/item-search-keyword\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator-v2/item-search-keyword\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator-v2/item-search-keyword\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Fetch item search keywords statistics" - modelId: "douyin/creator-v2/item-search-keyword" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "creator-v2/item-search-keyword" - protocol: "API Reference" - endpoint: "/v1/api/douyin/creator-v2/item-search-keyword" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/creator-v2/item-watch-trend.md b/model-api-reference/platform-apis/douyin/creator-v2/item-watch-trend.md deleted file mode 100644 index 5c09bbe7..00000000 --- a/model-api-reference/platform-apis/douyin/creator-v2/item-watch-trend.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Fetch item watch trend analysis API Reference" -description: "SandBase API operation douyin/creator-v2/item-watch-trend." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/creator-v2/item-watch-trend" -apiReferenceJson: "{\"title\":\"Fetch item watch trend analysis\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator-v2/item-watch-trend\",\"description\":\"Get Douyin item watch trend analysis data Understand user behavior patterns while watching the item Help creators optimize video content structure and pacing This API requires users to provide valid Douyin Creator Platform Cookie Use POST method, Cookie is transmitted in request body, more secure\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"analysis_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Analysis type (optional, default is 1)\"},{\"name\":\"cookie\",\"type\":\"string\",\"required\":true,\"description\":\"User's Douyin Creator Platform Cookie (required, transmitted in request body)\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Item ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator-v2/item-watch-trend \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/item-watch-trend\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/item-watch-trend\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator-v2/item-watch-trend\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator-v2/item-watch-trend\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator-v2/item-watch-trend\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator-v2/item-watch-trend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator-v2/item-watch-trend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator-v2/item-watch-trend\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Fetch item watch trend analysis" - modelId: "douyin/creator-v2/item-watch-trend" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "creator-v2/item-watch-trend" - protocol: "API Reference" - endpoint: "/v1/api/douyin/creator-v2/item-watch-trend" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/creator-v2/live-room-history-list.md b/model-api-reference/platform-apis/douyin/creator-v2/live-room-history-list.md deleted file mode 100644 index a725444e..00000000 --- a/model-api-reference/platform-apis/douyin/creator-v2/live-room-history-list.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Fetch live room history list API Reference" -description: "SandBase API operation douyin/creator-v2/live-room-history-list." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/creator-v2/live-room-history-list" -apiReferenceJson: "{\"title\":\"Fetch live room history list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator-v2/live-room-history-list\",\"description\":\"Get Douyin creator's live room history list View all live session data within a specified time range Support querying ongoing and historical live sessions This API requires users to provide valid Douyin Creator Platform Cookie Use POST method, Cookie is transmitted in request body, more secure\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":true,\"description\":\"User's Douyin Creator Platform Cookie (required, transmitted in request body)\"},{\"name\":\"download\",\"type\":\"integer\",\"required\":false,\"description\":\"Download flag (0=No download, 1=Download, default 0)\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date in YYYY-MM-DD format (required, e.g., \\\"2025-10-11\\\")\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Limit per page, default 400, max 400\"},{\"name\":\"need_living\",\"type\":\"integer\",\"required\":false,\"description\":\"Include ongoing live sessions (0=No, 1=Yes, default 1)\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date in YYYY-MM-DD format (required, e.g., \\\"2025-09-11\\\")\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator-v2/live-room-history-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"start_date\\\": \\\"start_date\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"start_date\\\": \\\"start_date\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/live-room-history-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"start_date\\\": \\\"start_date\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator-v2/live-room-history-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator-v2/live-room-history-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator-v2/live-room-history-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator-v2/live-room-history-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator-v2/live-room-history-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator-v2/live-room-history-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator-v2/live-room-history-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Fetch live room history list" - modelId: "douyin/creator-v2/live-room-history-list" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "creator-v2/live-room-history-list" - protocol: "API Reference" - endpoint: "/v1/api/douyin/creator-v2/live-room-history-list" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/creator/creator-activity-detail.md b/model-api-reference/platform-apis/douyin/creator/creator-activity-detail.md index c37dc90e..60bf9a2e 100644 --- a/model-api-reference/platform-apis/douyin/creator/creator-activity-detail.md +++ b/model-api-reference/platform-apis/douyin/creator/creator-activity-detail.md @@ -1,13 +1,13 @@ --- -title: "Get creator activity detail API Reference" -description: "SandBase API operation douyin/creator/creator-activity-detail." +title: "Douyin Creator Activity Details API Reference" +description: "SandBase API reference for model douyin/creator/creator-activity-detail. Call /v1/api/douyin/creator/creator-activity-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/creator/creator-activity-detail" -apiReferenceJson: "{\"title\":\"Get creator activity detail\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-activity-detail\",\"description\":\"Get Douyin creator activity detail data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"activity_id\",\"type\":\"string\",\"required\":true,\"description\":\"Activity ID (obtained from activity list interface)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-activity-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"activity_id\\\": \\\"activity_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"activity_id\\\": \\\"activity_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-activity-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"activity_id\\\": \\\"activity_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-activity-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-activity-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-activity-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-activity-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-activity-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-activity-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-activity-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Creator Activity Details\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-activity-detail\",\"description\":\"Returns detailed information for a specific Douyin creator activity. Queries campaign details using a designated activity identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"activity_id\",\"type\":\"string\",\"required\":true,\"description\":\"Activity ID (obtained from activity list interface)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-activity-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"activity_id\\\": \\\"activity_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"activity_id\\\": \\\"activity_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-activity-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"activity_id\\\": \\\"activity_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-activity-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-activity-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-activity-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-activity-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-activity-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-activity-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-activity-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get creator activity detail" + modelName: "Douyin Creator Activity Details" modelId: "douyin/creator/creator-activity-detail" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/creator/creator-activity-list.md b/model-api-reference/platform-apis/douyin/creator/creator-activity-list.md index b50f62d5..4791ba82 100644 --- a/model-api-reference/platform-apis/douyin/creator/creator-activity-list.md +++ b/model-api-reference/platform-apis/douyin/creator/creator-activity-list.md @@ -1,13 +1,13 @@ --- -title: "Get creator activity list API Reference" -description: "SandBase API operation douyin/creator/creator-activity-list." +title: "Douyin Activity List API Reference" +description: "SandBase API reference for model douyin/creator/creator-activity-list. Call /v1/api/douyin/creator/creator-activity-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/creator/creator-activity-list" -apiReferenceJson: "{\"title\":\"Get creator activity list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-activity-list\",\"description\":\"Get Douyin creator activity list data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_time\",\"type\":\"integer\",\"required\":true,\"description\":\"End timestamp\"},{\"name\":\"start_time\",\"type\":\"integer\",\"required\":true,\"description\":\"Start timestamp\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-activity-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"end_time\\\": 1,\\n \\\"start_time\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"end_time\\\": 1,\\n \\\"start_time\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-activity-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"end_time\\\": 1,\\n \\\"start_time\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-activity-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-activity-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-activity-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-activity-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-activity-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-activity-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-activity-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Activity List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-activity-list\",\"description\":\"Returns activity and campaign records for Douyin accounts within a specified timestamp window between start_time and end_time.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_time\",\"type\":\"integer\",\"required\":true,\"description\":\"End timestamp\"},{\"name\":\"start_time\",\"type\":\"integer\",\"required\":true,\"description\":\"Start timestamp\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-activity-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"end_time\\\": 1,\\n \\\"start_time\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"end_time\\\": 1,\\n \\\"start_time\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-activity-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"end_time\\\": 1,\\n \\\"start_time\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-activity-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-activity-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-activity-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-activity-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-activity-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-activity-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-activity-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get creator activity list" + modelName: "Douyin Activity List" modelId: "douyin/creator/creator-activity-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/creator/creator-content-category.md b/model-api-reference/platform-apis/douyin/creator/creator-content-category.md index 9311bc0d..9edb2f59 100644 --- a/model-api-reference/platform-apis/douyin/creator/creator-content-category.md +++ b/model-api-reference/platform-apis/douyin/creator/creator-content-category.md @@ -1,13 +1,13 @@ --- -title: "Get creator content creation category API Reference" -description: "SandBase API operation douyin/creator/creator-content-category." +title: "Douyin Content Categories API Reference" +description: "SandBase API reference for model douyin/creator/creator-content-category. Call /v1/api/douyin/creator/creator-content-category; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/creator/creator-content-category" -apiReferenceJson: "{\"title\":\"Get creator content creation category\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-content-category\",\"description\":\"Get Douyin creator platform content creation category list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-content-category \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/creator/creator-content-category\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/creator/creator-content-category\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-content-category\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/creator/creator-content-category\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-content-category\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-content-category\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-content-category\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-content-category\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-content-category\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-content-category\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-content-category\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Content Categories\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-content-category\",\"description\":\"Returns the list of content categories available on Douyin. Authors and applications can review official topic classifications without requiring input parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-content-category \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-content-category\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-content-category\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-content-category\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-content-category\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-content-category\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-content-category\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-content-category\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-content-category\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get creator content creation category" + modelName: "Douyin Content Categories" modelId: "douyin/creator/creator-content-category" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/creator/creator-content-course.md b/model-api-reference/platform-apis/douyin/creator/creator-content-course.md index 8f6ffc22..13b13afc 100644 --- a/model-api-reference/platform-apis/douyin/creator/creator-content-course.md +++ b/model-api-reference/platform-apis/douyin/creator/creator-content-course.md @@ -1,13 +1,13 @@ --- -title: "Get creator content creation course API Reference" -description: "SandBase API operation douyin/creator/creator-content-course." +title: "Douyin Creator Content Courses API Reference" +description: "SandBase API reference for model douyin/creator/creator-content-course. Call /v1/api/douyin/creator/creator-content-course; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/creator/creator-content-course" -apiReferenceJson: "{\"title\":\"Get creator content creation course\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-content-course\",\"description\":\"Get Douyin creator platform content creation courses for specified category\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"category_id\",\"type\":\"integer\",\"required\":true,\"description\":\"Category ID (for more category IDs, please refer to the content creation category interface)\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Items per page (recommended 24, range 1-100)\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset (starting position)\",\"constraints\":\"Minimum: 0\"},{\"name\":\"order\",\"type\":\"integer\",\"required\":false,\"description\":\"Order type (1=recommended order, 2=most popular, 3=latest upload)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-content-course \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"category_id\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"category_id\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-content-course\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"category_id\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-content-course\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-content-course\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-content-course\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-content-course\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-content-course\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-content-course\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-content-course\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Creator Content Courses\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-content-course\",\"description\":\"Returns content development courses from the Douyin creator platform for a specified category. Results can be sorted by recommendation, popularity, or upload date.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"category_id\",\"type\":\"integer\",\"required\":true,\"description\":\"Category ID (for more category IDs, please refer to the content creation category interface)\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Items per page (recommended 24, range 1-100)\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset (starting position)\",\"constraints\":\"Minimum: 0\"},{\"name\":\"order\",\"type\":\"integer\",\"required\":false,\"description\":\"Order type (1=recommended order, 2=most popular, 3=latest upload)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-content-course \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"category_id\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"category_id\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-content-course\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"category_id\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-content-course\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-content-course\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-content-course\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-content-course\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-content-course\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-content-course\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-content-course\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get creator content creation course" + modelName: "Douyin Creator Content Courses" modelId: "douyin/creator/creator-content-course" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/creator/creator-hot-challenge-billboard.md b/model-api-reference/platform-apis/douyin/creator/creator-hot-challenge-billboard.md index 43ff3060..5e5bf1e7 100644 --- a/model-api-reference/platform-apis/douyin/creator/creator-hot-challenge-billboard.md +++ b/model-api-reference/platform-apis/douyin/creator/creator-hot-challenge-billboard.md @@ -1,13 +1,13 @@ --- -title: "Get creator hot challenge billboard API Reference" -description: "SandBase API operation douyin/creator/creator-hot-challenge-billboard." +title: "Douyin Hot Challenge Billboard API Reference" +description: "SandBase API reference: douyin/creator/creator-hot-challenge-billboard via /v1/api/douyin/creator/creator-hot-challenge-billboard. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/creator/creator-hot-challenge-billboard" -apiReferenceJson: "{\"title\":\"Get creator hot challenge billboard\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-hot-challenge-billboard\",\"description\":\"Get Douyin creator platform hot challenge billboard data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-challenge-billboard \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/creator/creator-hot-challenge-billboard\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/creator/creator-hot-challenge-billboard\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-challenge-billboard\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/creator/creator-hot-challenge-billboard\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-challenge-billboard\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-challenge-billboard\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-challenge-billboard\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-challenge-billboard\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-challenge-billboard\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-challenge-billboard\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-hot-challenge-billboard\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Hot Challenge Billboard\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-hot-challenge-billboard\",\"description\":\"Returns trending challenge billboard rankings directly from Douyin. Discover active community challenges and monitor popular campaign topics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-challenge-billboard \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-challenge-billboard\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-challenge-billboard\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-challenge-billboard\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-challenge-billboard\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-challenge-billboard\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-challenge-billboard\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-challenge-billboard\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-hot-challenge-billboard\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get creator hot challenge billboard" + modelName: "Douyin Hot Challenge Billboard" modelId: "douyin/creator/creator-hot-challenge-billboard" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/creator/creator-hot-course.md b/model-api-reference/platform-apis/douyin/creator/creator-hot-course.md index 4c62f51d..f4d14d16 100644 --- a/model-api-reference/platform-apis/douyin/creator/creator-hot-course.md +++ b/model-api-reference/platform-apis/douyin/creator/creator-hot-course.md @@ -1,13 +1,13 @@ --- -title: "Get creator hot course API Reference" -description: "SandBase API operation douyin/creator/creator-hot-course." +title: "Douyin Creator Hot Courses API Reference" +description: "SandBase API reference for model douyin/creator/creator-hot-course. Call /v1/api/douyin/creator/creator-hot-course; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/creator/creator-hot-course" -apiReferenceJson: "{\"title\":\"Get creator hot course\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-hot-course\",\"description\":\"Get Douyin creator platform hot course data or selected topic courses\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"category_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Selected topic category ID (empty for hot courses, specific ID for selected topics)\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Items per page (recommended 24, range 1-100)\",\"default\":\"24\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset (starting position)\",\"default\":\"0\",\"constraints\":\"Minimum: 0\"},{\"name\":\"order\",\"type\":\"integer\",\"required\":false,\"description\":\"Order type (1=recommended order, 2=most popular, 3=latest upload)\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-course \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/creator/creator-hot-course\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/creator/creator-hot-course\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-course\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/creator/creator-hot-course\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-course\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-course\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-course\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-course\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-course\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-course\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-hot-course\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Creator Hot Courses\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-hot-course\",\"description\":\"Returns trending creator courses or curated topic lessons from Douyin. Results can be filtered by topic category and sorted by recommendation, popularity, or upload date.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"category_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Selected topic category ID (empty for hot courses, specific ID for selected topics)\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Items per page (recommended 24, range 1-100)\",\"default\":\"24\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset (starting position)\",\"default\":\"0\",\"constraints\":\"Minimum: 0\"},{\"name\":\"order\",\"type\":\"integer\",\"required\":false,\"description\":\"Order type (1=recommended order, 2=most popular, 3=latest upload)\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-course \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-course\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-course\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-course\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-course\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-course\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-course\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-course\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-hot-course\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get creator hot course" + modelName: "Douyin Creator Hot Courses" modelId: "douyin/creator/creator-hot-course" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/creator/creator-hot-music-billboard.md b/model-api-reference/platform-apis/douyin/creator/creator-hot-music-billboard.md index 8d9fbce5..06db2c7a 100644 --- a/model-api-reference/platform-apis/douyin/creator/creator-hot-music-billboard.md +++ b/model-api-reference/platform-apis/douyin/creator/creator-hot-music-billboard.md @@ -1,13 +1,13 @@ --- -title: "Get creator hot music billboard API Reference" -description: "SandBase API operation douyin/creator/creator-hot-music-billboard." +title: "Douyin Creator Hot Music Billboard API Reference" +description: "SandBase API reference for model douyin/creator/creator-hot-music-billboard. Call /v1/api/douyin/creator/creator-hot-music-billboard; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/creator/creator-hot-music-billboard" -apiReferenceJson: "{\"title\":\"Get creator hot music billboard\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-hot-music-billboard\",\"description\":\"Get Douyin creator platform hot music billboard data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"billboard_tag\",\"type\":\"integer\",\"required\":false,\"description\":\"Billboard tag, 0=all, other values can be obtained through config interface\",\"default\":\"0\"},{\"name\":\"order_key\",\"type\":\"integer\",\"required\":false,\"description\":\"Order key (1=highest views, 2=most likes, 4=highest popularity, 5=most submissions)\",\"default\":\"1\"},{\"name\":\"time_filter\",\"type\":\"integer\",\"required\":false,\"description\":\"Time filter (1=24 hours, 2=7 days, 3=30 days)\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-music-billboard \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/creator/creator-hot-music-billboard\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/creator/creator-hot-music-billboard\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-music-billboard\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/creator/creator-hot-music-billboard\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-music-billboard\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-music-billboard\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-music-billboard\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-music-billboard\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-music-billboard\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-music-billboard\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-hot-music-billboard\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Creator Hot Music Billboard\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-hot-music-billboard\",\"description\":\"Returns trending music rankings from the Douyin creator platform. Filters allow sorting by view metrics, like counts, popularity, or submission volumes across customizable time ranges.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"billboard_tag\",\"type\":\"integer\",\"required\":false,\"description\":\"Billboard tag, 0=all, other values can be obtained through config interface\",\"default\":\"0\"},{\"name\":\"order_key\",\"type\":\"integer\",\"required\":false,\"description\":\"Order key (1=highest views, 2=most likes, 4=highest popularity, 5=most submissions)\",\"default\":\"1\"},{\"name\":\"time_filter\",\"type\":\"integer\",\"required\":false,\"description\":\"Time filter (1=24 hours, 2=7 days, 3=30 days)\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-music-billboard \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-music-billboard\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-music-billboard\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-music-billboard\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-music-billboard\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-music-billboard\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-music-billboard\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-music-billboard\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-hot-music-billboard\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get creator hot music billboard" + modelName: "Douyin Creator Hot Music Billboard" modelId: "douyin/creator/creator-hot-music-billboard" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/creator/creator-hot-props-billboard.md b/model-api-reference/platform-apis/douyin/creator/creator-hot-props-billboard.md index e95ee2d6..d5051a98 100644 --- a/model-api-reference/platform-apis/douyin/creator/creator-hot-props-billboard.md +++ b/model-api-reference/platform-apis/douyin/creator/creator-hot-props-billboard.md @@ -1,13 +1,13 @@ --- -title: "Get creator hot props billboard API Reference" -description: "SandBase API operation douyin/creator/creator-hot-props-billboard." +title: "Douyin Creator Hot Props Billboard API Reference" +description: "SandBase API reference for model douyin/creator/creator-hot-props-billboard. Call /v1/api/douyin/creator/creator-hot-props-billboard; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/creator/creator-hot-props-billboard" -apiReferenceJson: "{\"title\":\"Get creator hot props billboard\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-hot-props-billboard\",\"description\":\"Get Douyin creator hot props billboard data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"billboard_tag\",\"type\":\"integer\",\"required\":false,\"description\":\"Billboard tag, 0=all, other values can be obtained through config interface\",\"default\":\"0\"},{\"name\":\"order_key\",\"type\":\"integer\",\"required\":false,\"description\":\"Order key\",\"default\":\"1\"},{\"name\":\"time_filter\",\"type\":\"integer\",\"required\":false,\"description\":\"Time filter\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-props-billboard \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/creator/creator-hot-props-billboard\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/creator/creator-hot-props-billboard\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-props-billboard\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/creator/creator-hot-props-billboard\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-props-billboard\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-props-billboard\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-props-billboard\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-props-billboard\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-props-billboard\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-props-billboard\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-hot-props-billboard\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Creator Hot Props Billboard\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-hot-props-billboard\",\"description\":\"Returns trending creator prop rankings and performance metrics on Douyin. Supports filtering by sorting sequence, time interval, and prop category tag.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"billboard_tag\",\"type\":\"integer\",\"required\":false,\"description\":\"Billboard tag, 0=all, other values can be obtained through config interface\",\"default\":\"0\"},{\"name\":\"order_key\",\"type\":\"integer\",\"required\":false,\"description\":\"Order key\",\"default\":\"1\"},{\"name\":\"time_filter\",\"type\":\"integer\",\"required\":false,\"description\":\"Time filter\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-props-billboard \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-props-billboard\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-props-billboard\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-props-billboard\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-props-billboard\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-props-billboard\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-props-billboard\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-props-billboard\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-hot-props-billboard\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get creator hot props billboard" + modelName: "Douyin Creator Hot Props Billboard" modelId: "douyin/creator/creator-hot-props-billboard" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/creator/creator-hot-spot-billboard.md b/model-api-reference/platform-apis/douyin/creator/creator-hot-spot-billboard.md index 21b8099c..e0262897 100644 --- a/model-api-reference/platform-apis/douyin/creator/creator-hot-spot-billboard.md +++ b/model-api-reference/platform-apis/douyin/creator/creator-hot-spot-billboard.md @@ -1,13 +1,13 @@ --- -title: "Get creator hot spot billboard API Reference" -description: "SandBase API operation douyin/creator/creator-hot-spot-billboard." +title: "Douyin Creator Hot Spot Billboard API Reference" +description: "SandBase API reference for model douyin/creator/creator-hot-spot-billboard. Call /v1/api/douyin/creator/creator-hot-spot-billboard; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/creator/creator-hot-spot-billboard" -apiReferenceJson: "{\"title\":\"Get creator hot spot billboard\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-hot-spot-billboard\",\"description\":\"Get Douyin creator hot spot billboard data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"billboard_tag\",\"type\":\"string\",\"required\":false,\"description\":\"Hot spot tag - multiple tags separated by comma\",\"default\":\"0\"},{\"name\":\"city_code\",\"type\":\"string | null\",\"required\":false,\"description\":\"City code - required when hot_search_type=2\"},{\"name\":\"hot_search_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Hot search type\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-spot-billboard \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/creator/creator-hot-spot-billboard\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/creator/creator-hot-spot-billboard\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-spot-billboard\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/creator/creator-hot-spot-billboard\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-spot-billboard\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-spot-billboard\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-spot-billboard\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-spot-billboard\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-spot-billboard\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-spot-billboard\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-hot-spot-billboard\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Creator Hot Spot Billboard\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-hot-spot-billboard\",\"description\":\"Returns trending hot spot billboard rankings for Douyin creators, including hot scores and query identifiers filtered by search type, tag, or city code.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"billboard_tag\",\"type\":\"string\",\"required\":false,\"description\":\"Hot spot tag - multiple tags separated by comma\",\"default\":\"0\"},{\"name\":\"city_code\",\"type\":\"string | null\",\"required\":false,\"description\":\"City code - required when hot_search_type=2\"},{\"name\":\"hot_search_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Hot search type\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-spot-billboard \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-spot-billboard\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-spot-billboard\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-spot-billboard\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-spot-billboard\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-spot-billboard\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-spot-billboard\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-spot-billboard\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-hot-spot-billboard\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get creator hot spot billboard" + modelName: "Douyin Creator Hot Spot Billboard" modelId: "douyin/creator/creator-hot-spot-billboard" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/creator/creator-hot-topic-billboard.md b/model-api-reference/platform-apis/douyin/creator/creator-hot-topic-billboard.md index 948583d8..5bd92bb1 100644 --- a/model-api-reference/platform-apis/douyin/creator/creator-hot-topic-billboard.md +++ b/model-api-reference/platform-apis/douyin/creator/creator-hot-topic-billboard.md @@ -1,13 +1,13 @@ --- -title: "Get creator hot topic billboard API Reference" -description: "SandBase API operation douyin/creator/creator-hot-topic-billboard." +title: "Douyin Creator Hot Topic Billboard API Reference" +description: "SandBase API reference for model douyin/creator/creator-hot-topic-billboard. Call /v1/api/douyin/creator/creator-hot-topic-billboard; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/creator/creator-hot-topic-billboard" -apiReferenceJson: "{\"title\":\"Get creator hot topic billboard\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-hot-topic-billboard\",\"description\":\"Get Douyin creator hot topic billboard data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"billboard_tag\",\"type\":\"integer\",\"required\":false,\"description\":\"Billboard tag, 0=all, other values can be obtained through config interface\",\"default\":\"0\"},{\"name\":\"order_key\",\"type\":\"integer\",\"required\":false,\"description\":\"Order key\",\"default\":\"1\"},{\"name\":\"time_filter\",\"type\":\"integer\",\"required\":false,\"description\":\"Time filter\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-topic-billboard \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/creator/creator-hot-topic-billboard\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/creator/creator-hot-topic-billboard\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-topic-billboard\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/creator/creator-hot-topic-billboard\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-topic-billboard\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-topic-billboard\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-topic-billboard\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-topic-billboard\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-topic-billboard\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-topic-billboard\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-hot-topic-billboard\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Creator Hot Topic Billboard\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-hot-topic-billboard\",\"description\":\"Returns trending creator topic rankings on Douyin with engagement metrics like play, like, comment, and share counts based on time and tag filters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"billboard_tag\",\"type\":\"integer\",\"required\":false,\"description\":\"Billboard tag, 0=all, other values can be obtained through config interface\",\"default\":\"0\"},{\"name\":\"order_key\",\"type\":\"integer\",\"required\":false,\"description\":\"Order key\",\"default\":\"1\"},{\"name\":\"time_filter\",\"type\":\"integer\",\"required\":false,\"description\":\"Time filter\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-topic-billboard \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-topic-billboard\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-hot-topic-billboard\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-topic-billboard\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-topic-billboard\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-topic-billboard\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-topic-billboard\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-hot-topic-billboard\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-hot-topic-billboard\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get creator hot topic billboard" + modelName: "Douyin Creator Hot Topic Billboard" modelId: "douyin/creator/creator-hot-topic-billboard" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/creator/creator-material-center-billboard.md b/model-api-reference/platform-apis/douyin/creator/creator-material-center-billboard.md index e4a4394c..804d776b 100644 --- a/model-api-reference/platform-apis/douyin/creator/creator-material-center-billboard.md +++ b/model-api-reference/platform-apis/douyin/creator/creator-material-center-billboard.md @@ -1,13 +1,13 @@ --- -title: "Get creator material center billboard API Reference" -description: "SandBase API operation douyin/creator/creator-material-center-billboard." +title: "Douyin Creator Material Center Billboard API Reference" +description: "SandBase API reference: douyin/creator/creator-material-center-billboard via /v1/api/douyin/creator/creator-material-center-billboard. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/creator/creator-material-center-billboard" -apiReferenceJson: "{\"title\":\"Get creator material center billboard\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-material-center-billboard\",\"description\":\"Get Douyin creator material center billboard data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"billboard_tag\",\"type\":\"integer\",\"required\":false,\"description\":\"Billboard tag, 0=all, other values can be obtained through config interface\",\"default\":\"0\"},{\"name\":\"order_key\",\"type\":\"integer\",\"required\":false,\"description\":\"Order key\",\"default\":\"1\"},{\"name\":\"time_filter\",\"type\":\"integer\",\"required\":false,\"description\":\"Time filter\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-material-center-billboard \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/creator/creator-material-center-billboard\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/creator/creator-material-center-billboard\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-material-center-billboard\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/creator/creator-material-center-billboard\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-material-center-billboard\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-billboard\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-billboard\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-billboard\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-billboard\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-billboard\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-material-center-billboard\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Creator Material Center Billboard\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-material-center-billboard\",\"description\":\"Returns trending billboard items from the Douyin Creator Material Center with interaction metrics. Supports filtering by time, billboard tag, and sorting order.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"billboard_tag\",\"type\":\"integer\",\"required\":false,\"description\":\"Billboard tag, 0=all, other values can be obtained through config interface\",\"default\":\"0\"},{\"name\":\"order_key\",\"type\":\"integer\",\"required\":false,\"description\":\"Order key\",\"default\":\"1\"},{\"name\":\"time_filter\",\"type\":\"integer\",\"required\":false,\"description\":\"Time filter\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-material-center-billboard \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-material-center-billboard\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-material-center-billboard\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-billboard\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-billboard\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-billboard\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-billboard\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-billboard\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-material-center-billboard\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get creator material center billboard" + modelName: "Douyin Creator Material Center Billboard" modelId: "douyin/creator/creator-material-center-billboard" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/creator/creator-material-center-config.md b/model-api-reference/platform-apis/douyin/creator/creator-material-center-config.md index d1a9b393..70f2c90a 100644 --- a/model-api-reference/platform-apis/douyin/creator/creator-material-center-config.md +++ b/model-api-reference/platform-apis/douyin/creator/creator-material-center-config.md @@ -1,13 +1,13 @@ --- -title: "Get creator material center config API Reference" -description: "SandBase API operation douyin/creator/creator-material-center-config." +title: "Douyin Material Center Configuration API Reference" +description: "SandBase API reference: douyin/creator/creator-material-center-config via /v1/api/douyin/creator/creator-material-center-config. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/creator/creator-material-center-config" -apiReferenceJson: "{\"title\":\"Get creator material center config\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-material-center-config\",\"description\":\"Get Douyin creator material center configuration\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-material-center-config \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/creator/creator-material-center-config\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/creator/creator-material-center-config\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-material-center-config\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/creator/creator-material-center-config\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-material-center-config\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-config\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-config\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-config\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-config\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-config\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-material-center-config\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Material Center Configuration\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-material-center-config\",\"description\":\"Returns configuration details and settings for the Douyin material center. Provides system parameters and feature availability for account asset workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-material-center-config \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-material-center-config\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-material-center-config\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-config\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-config\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-config\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-config\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-config\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-material-center-config\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get creator material center config" + modelName: "Douyin Material Center Configuration" modelId: "douyin/creator/creator-material-center-config" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/creator/creator-material-center-related.md b/model-api-reference/platform-apis/douyin/creator/creator-material-center-related.md index 4b68c74f..b020f0fc 100644 --- a/model-api-reference/platform-apis/douyin/creator/creator-material-center-related.md +++ b/model-api-reference/platform-apis/douyin/creator/creator-material-center-related.md @@ -1,13 +1,13 @@ --- -title: "Get topic or hot spot related videos API Reference" -description: "SandBase API operation douyin/creator/creator-material-center-related." +title: "Douyin Material Center Related Videos API Reference" +description: "SandBase API reference: douyin/creator/creator-material-center-related via /v1/api/douyin/creator/creator-material-center-related. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/creator/creator-material-center-related" -apiReferenceJson: "{\"title\":\"Get topic or hot spot related videos\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-material-center-related\",\"description\":\"Get related videos for a topic/hot spot/prop/music item in Douyin creator material center Retrieve query_id from upstream billboard endpoints first, then call this API to fetch related videos\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"billboard_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Billboard type\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Items per page (default 20, range 1-100)\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset (starting position for pagination)\",\"constraints\":\"Minimum: 0\"},{\"name\":\"query_id\",\"type\":\"string\",\"required\":true,\"description\":\"Query ID (topic_id / hot_id obtained from billboard endpoints)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-material-center-related \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query_id\\\": \\\"query_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query_id\\\": \\\"query_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-material-center-related\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query_id\\\": \\\"query_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-material-center-related\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-related\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-related\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-related\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-related\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-related\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-material-center-related\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Material Center Related Videos\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/creator-material-center-related\",\"description\":\"Returns related videos for a specific topic, hot spot, prop, or music entry from the Douyin creator material center. Supports pagination controls and filtering by billboard type.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"billboard_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Billboard type\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Items per page (default 20, range 1-100)\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset (starting position for pagination)\",\"constraints\":\"Minimum: 0\"},{\"name\":\"query_id\",\"type\":\"string\",\"required\":true,\"description\":\"Query ID (topic_id / hot_id obtained from billboard endpoints)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/creator-material-center-related \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query_id\\\": \\\"6537523068217103624\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query_id\\\": \\\"6537523068217103624\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-material-center-related\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query_id\\\": \\\"6537523068217103624\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/creator-material-center-related\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-related\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-related\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-related\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-related\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/creator-material-center-related\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/creator-material-center-related\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get topic or hot spot related videos" + modelName: "Douyin Material Center Related Videos" modelId: "douyin/creator/creator-material-center-related" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/creator/industry-category-config.md b/model-api-reference/platform-apis/douyin/creator/industry-category-config.md index d5994eef..3b0ed1f5 100644 --- a/model-api-reference/platform-apis/douyin/creator/industry-category-config.md +++ b/model-api-reference/platform-apis/douyin/creator/industry-category-config.md @@ -1,13 +1,13 @@ --- -title: "Get industry category config API Reference" -description: "SandBase API operation douyin/creator/industry-category-config." +title: "Douyin Creator Industry Category Config API Reference" +description: "SandBase API reference for model douyin/creator/industry-category-config. Call /v1/api/douyin/creator/industry-category-config; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/creator/industry-category-config" -apiReferenceJson: "{\"title\":\"Get industry category config\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/industry-category-config\",\"description\":\"Get industry category configuration from Douyin Creator platform Returns all available industry classification hierarchy Recommend calling this API first before using mission task list API to get complete industry classification info\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/industry-category-config \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/creator/industry-category-config\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/creator/industry-category-config\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/industry-category-config\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/creator/industry-category-config\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/industry-category-config\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/industry-category-config\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/industry-category-config\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/industry-category-config\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/industry-category-config\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/industry-category-config\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/industry-category-config\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Creator Industry Category Config\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/industry-category-config\",\"description\":\"Returns industry category configuration details for Douyin creators. Use this endpoint to inspect supported creator categories and related industry settings.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/industry-category-config \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/industry-category-config\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/industry-category-config\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/industry-category-config\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/industry-category-config\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/industry-category-config\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/industry-category-config\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/industry-category-config\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/industry-category-config\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get industry category config" + modelName: "Douyin Creator Industry Category Config" modelId: "douyin/creator/industry-category-config" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/creator/mission-task-list.md b/model-api-reference/platform-apis/douyin/creator/mission-task-list.md index 66bd5c0d..9552c079 100644 --- a/model-api-reference/platform-apis/douyin/creator/mission-task-list.md +++ b/model-api-reference/platform-apis/douyin/creator/mission-task-list.md @@ -1,13 +1,13 @@ --- -title: "Get mission task list API Reference" -description: "SandBase API operation douyin/creator/mission-task-list." +title: "Douyin Creator Mission Task List API Reference" +description: "SandBase API reference for model douyin/creator/mission-task-list. Call /v1/api/douyin/creator/mission-task-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/creator/mission-task-list" -apiReferenceJson: "{\"title\":\"Get mission task list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/mission-task-list\",\"description\":\"Get mission task list from Douyin Creator platform Supports multiple filtering conditions including industry classification, payment type, platform channel, etc.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor for pagination, 0 for first page\",\"constraints\":\"Minimum: 0\"},{\"name\":\"greater_than_cost_progress\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Cost progress filter (optional)\"},{\"name\":\"industry_lv1\",\"type\":\"integer\",\"required\":false,\"description\":\"Primary industry (-1=All).\"},{\"name\":\"industry_lv2\",\"type\":\"integer\",\"required\":false,\"description\":\"Secondary industry (-1=All).\"},{\"name\":\"keyword\",\"type\":\"string | null\",\"required\":false,\"description\":\"Keyword search (optional, supports task name or task ID)\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of tasks per page, recommended 24\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"mission_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Mission type, usually 1\"},{\"name\":\"pay_type\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Payment type (optional)\"},{\"name\":\"platform_channel\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Platform channel (optional)\"},{\"name\":\"publish_time_start\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Publish start time filter (optional, timestamp format)\"},{\"name\":\"quick_selector_scene\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Quick filter scene (optional)\"},{\"name\":\"tab_scene\",\"type\":\"integer\",\"required\":false,\"description\":\"Scene type\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/mission-task-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/mission-task-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/mission-task-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/mission-task-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/mission-task-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/mission-task-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/mission-task-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/mission-task-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/mission-task-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Creator Mission Task List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/mission-task-list\",\"description\":\"Returns creator mission tasks from Douyin with filtering options. Supports filters for industry classification, search keywords, mission type, and release timeframes.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor for pagination, 0 for first page\",\"constraints\":\"Minimum: 0\"},{\"name\":\"greater_than_cost_progress\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Cost progress filter (optional)\"},{\"name\":\"industry_lv1\",\"type\":\"integer\",\"required\":false,\"description\":\"Primary industry (-1=All).\"},{\"name\":\"industry_lv2\",\"type\":\"integer\",\"required\":false,\"description\":\"Secondary industry (-1=All).\"},{\"name\":\"keyword\",\"type\":\"string | null\",\"required\":false,\"description\":\"Keyword search (optional, supports task name or task ID)\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of tasks per page, recommended 24\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"mission_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Mission type, usually 1\"},{\"name\":\"pay_type\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Payment type (optional)\"},{\"name\":\"platform_channel\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Platform channel (optional)\"},{\"name\":\"publish_time_start\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Publish start time filter (optional, timestamp format)\"},{\"name\":\"quick_selector_scene\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Quick filter scene (optional)\"},{\"name\":\"tab_scene\",\"type\":\"integer\",\"required\":false,\"description\":\"Scene type\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/mission-task-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"keyword\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"keyword\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/mission-task-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"keyword\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/mission-task-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/mission-task-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/mission-task-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/mission-task-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/mission-task-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/mission-task-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/mission-task-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get mission task list" + modelName: "Douyin Creator Mission Task List" modelId: "douyin/creator/mission-task-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/creator/user-search.md b/model-api-reference/platform-apis/douyin/creator/user-search.md index c88c52d1..6a2869f3 100644 --- a/model-api-reference/platform-apis/douyin/creator/user-search.md +++ b/model-api-reference/platform-apis/douyin/creator/user-search.md @@ -1,13 +1,13 @@ --- -title: "Search users API Reference — Douyin Creator / User Search API" -description: "SandBase API operation douyin/creator/user-search." +title: "Douyin User Search (Creator) API Reference" +description: "Douyin User Search (Creator) API reference for SandBase. Use model douyin/creator/user-search with /v1/api/douyin/creator/user-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/creator/user-search" -apiReferenceJson: "{\"title\":\"Search users\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/user-search\",\"description\":\"Search Douyin users by Douyin ID or nickname\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_name\",\"type\":\"string\",\"required\":true,\"description\":\"Username (supports Douyin ID and nickname)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/user-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_name\\\": \\\"user_name\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_name\\\": \\\"user_name\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/user-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_name\\\": \\\"user_name\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/user-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/user-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/user-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/user-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/user-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/user-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/user-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin User Search (Creator)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/user-search\",\"description\":\"Searches for Douyin accounts and returns user profile records matching the query. Looks up profiles using a Douyin ID or user nickname.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_name\",\"type\":\"string\",\"required\":true,\"description\":\"Username (supports Douyin ID and nickname)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/user-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_name\\\": \\\"中国人工智能学会\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_name\\\": \\\"中国人工智能学会\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/user-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_name\\\": \\\"中国人工智能学会\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/user-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/user-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/user-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/user-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/user-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/user-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/user-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search users" + modelName: "Douyin User Search (Creator)" modelId: "douyin/creator/user-search" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/creator/video-danmaku-list.md b/model-api-reference/platform-apis/douyin/creator/video-danmaku-list.md index 0e895ef6..7a9ffdd3 100644 --- a/model-api-reference/platform-apis/douyin/creator/video-danmaku-list.md +++ b/model-api-reference/platform-apis/douyin/creator/video-danmaku-list.md @@ -1,13 +1,13 @@ --- -title: "Get video danmaku list API Reference" -description: "SandBase API operation douyin/creator/video-danmaku-list." +title: "Douyin Creator Video Danmaku List API Reference" +description: "SandBase API reference for model douyin/creator/video-danmaku-list. Call /v1/api/douyin/creator/video-danmaku-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/creator/video-danmaku-list" -apiReferenceJson: "{\"title\":\"Get video danmaku list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/video-danmaku-list\",\"description\":\"Get danmaku list for specified video, supports management and filtering\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Items per page (recommended 20, range 1-100)\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"is_blocked\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to get blocked danmaku (false=normal, true=blocked)\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video item ID (required, get from video link or API)\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset (for pagination, starting position)\",\"constraints\":\"Minimum: 0\"},{\"name\":\"order_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Order type (1=time order, 2=other order)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/video-danmaku-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/video-danmaku-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/video-danmaku-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/video-danmaku-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/video-danmaku-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/video-danmaku-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/video-danmaku-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/video-danmaku-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/video-danmaku-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Creator Video Danmaku List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/creator/video-danmaku-list\",\"description\":\"Returns the danmaku bullet comment list for a specified Douyin video. Filter by blocked status and order results by timestamp or engagement with pagination support.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Items per page (recommended 20, range 1-100)\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"is_blocked\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to get blocked danmaku (false=normal, true=blocked)\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video item ID (required, get from video link or API)\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset (for pagination, starting position)\",\"constraints\":\"Minimum: 0\"},{\"name\":\"order_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Order type (1=time order, 2=other order)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/creator/video-danmaku-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"item_id\\\": \\\"7692766887218950514\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"item_id\\\": \\\"7692766887218950514\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/creator/video-danmaku-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"item_id\\\": \\\"7692766887218950514\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/creator/video-danmaku-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/creator/video-danmaku-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/creator/video-danmaku-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/creator/video-danmaku-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/creator/video-danmaku-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/creator/video-danmaku-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/creator/video-danmaku-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video danmaku list" + modelName: "Douyin Creator Video Danmaku List" modelId: "douyin/creator/video-danmaku-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/douplus/analyse-detail.md b/model-api-reference/platform-apis/douyin/douplus/analyse-detail.md deleted file mode 100644 index 038a581b..00000000 --- a/model-api-reference/platform-apis/douyin/douplus/analyse-detail.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Delivery analysis detail API Reference" -description: "SandBase API operation douyin/douplus/analyse-detail." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/douplus/analyse-detail" -apiReferenceJson: "{\"title\":\"Delivery analysis detail\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/douplus/analyse-detail\",\"description\":\"DOU+ delivery analysis detail (per-order / per-item metric list with paging & sorting); account/video/live by query.analysisType Requires a valid www.douyin.com web Cookie\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":true,\"description\":\"User www.douyin.com web Cookie\"},{\"name\":\"query\",\"type\":\"object\",\"required\":true,\"description\":\"Analysis query object. Key fields: startTime and endTime (timestamps in seconds); analysisType (1=account, 2=video, 3=live); authorSecIdList (account sec_uid list); statusList (delivery status filters); metrics (metric list, for example stat_cost, total_play, total_like, dy_comment, dy_share, dy_follow); SecondaryTargetIds; CollectWayIds. Graph requests also use dimension; detail requests also use page, limit, orderByMetric, and orderByType; video and live analysis also use liveRoomIdList.\"},{\"name\":\"query.analysisType\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: 1, 2, 3\"},{\"name\":\"query.authorSecIdList\",\"type\":\"array\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"query.CollectWayIds\",\"type\":\"array\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"query.endTime\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Pattern: ^[0-9]{10}$\"},{\"name\":\"query.limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Minimum: 1\"},{\"name\":\"query.metrics\",\"type\":\"array\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"query.orderByMetric\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"query.orderByType\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"query.page\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Minimum: 1\"},{\"name\":\"query.SecondaryTargetIds\",\"type\":\"array\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"query.startTime\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Pattern: ^[0-9]{10}$\"},{\"name\":\"query.statusList\",\"type\":\"array\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/douplus/analyse-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"query\\\": {\\n \\\"CollectWayIds\\\": [],\\n \\\"SecondaryTargetIds\\\": [],\\n \\\"analysisType\\\": 1,\\n \\\"authorSecIdList\\\": [],\\n \\\"endTime\\\": \\\"1781625599\\\",\\n \\\"limit\\\": 10,\\n \\\"metrics\\\": [\\n \\\"stat_cost\\\",\\n \\\"total_play\\\",\\n \\\"total_like\\\",\\n \\\"dy_comment\\\"\\n ],\\n \\\"orderByMetric\\\": \\\"create_time\\\",\\n \\\"orderByType\\\": 1,\\n \\\"page\\\": 1,\\n \\\"startTime\\\": \\\"1780934400\\\",\\n \\\"statusList\\\": []\\n }\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"query\\\": {\\n \\\"CollectWayIds\\\": [],\\n \\\"SecondaryTargetIds\\\": [],\\n \\\"analysisType\\\": 1,\\n \\\"authorSecIdList\\\": [],\\n \\\"endTime\\\": \\\"1781625599\\\",\\n \\\"limit\\\": 10,\\n \\\"metrics\\\": [\\n \\\"stat_cost\\\",\\n \\\"total_play\\\",\\n \\\"total_like\\\",\\n \\\"dy_comment\\\"\\n ],\\n \\\"orderByMetric\\\": \\\"create_time\\\",\\n \\\"orderByType\\\": 1,\\n \\\"page\\\": 1,\\n \\\"startTime\\\": \\\"1780934400\\\",\\n \\\"statusList\\\": []\\n }\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/analyse-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"query\\\": {\\n \\\"CollectWayIds\\\": [],\\n \\\"SecondaryTargetIds\\\": [],\\n \\\"analysisType\\\": 1,\\n \\\"authorSecIdList\\\": [],\\n \\\"endTime\\\": \\\"1781625599\\\",\\n \\\"limit\\\": 10,\\n \\\"metrics\\\": [\\n \\\"stat_cost\\\",\\n \\\"total_play\\\",\\n \\\"total_like\\\",\\n \\\"dy_comment\\\"\\n ],\\n \\\"orderByMetric\\\": \\\"create_time\\\",\\n \\\"orderByType\\\": 1,\\n \\\"page\\\": 1,\\n \\\"startTime\\\": \\\"1780934400\\\",\\n \\\"statusList\\\": []\\n }\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/analyse-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/douplus/analyse-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/douplus/analyse-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/douplus/analyse-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/douplus/analyse-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/douplus/analyse-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/douplus/analyse-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Delivery analysis detail" - modelId: "douyin/douplus/analyse-detail" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "douplus/analyse-detail" - protocol: "API Reference" - endpoint: "/v1/api/douyin/douplus/analyse-detail" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/douplus/analyse-graph.md b/model-api-reference/platform-apis/douyin/douplus/analyse-graph.md deleted file mode 100644 index 0ca80d12..00000000 --- a/model-api-reference/platform-apis/douyin/douplus/analyse-graph.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Delivery analysis trend graph API Reference" -description: "SandBase API operation douyin/douplus/analyse-graph." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/douplus/analyse-graph" -apiReferenceJson: "{\"title\":\"Delivery analysis trend graph\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/douplus/analyse-graph\",\"description\":\"DOU+ delivery analysis trend graph (metric curves over time); account/video/live by query.analysisType Requires a valid www.douyin.com web Cookie\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":true,\"description\":\"User www.douyin.com web Cookie\"},{\"name\":\"query\",\"type\":\"object\",\"required\":true,\"description\":\"Analysis query object. Key fields: startTime and endTime (timestamps in seconds); analysisType (1=account, 2=video, 3=live); authorSecIdList (account sec_uid list); statusList (delivery status filters); metrics (metric list, for example stat_cost, total_play, total_like, dy_comment, dy_share, dy_follow); SecondaryTargetIds; CollectWayIds. Graph requests also use dimension; detail requests also use page, limit, orderByMetric, and orderByType; video and live analysis also use liveRoomIdList.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/douplus/analyse-graph \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"query\\\": {}\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"query\\\": {}\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/analyse-graph\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"query\\\": {}\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/analyse-graph\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/douplus/analyse-graph\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/douplus/analyse-graph\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/douplus/analyse-graph\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/douplus/analyse-graph\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/douplus/analyse-graph\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/douplus/analyse-graph\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Delivery analysis trend graph" - modelId: "douyin/douplus/analyse-graph" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "douplus/analyse-graph" - protocol: "API Reference" - endpoint: "/v1/api/douyin/douplus/analyse-graph" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/douplus/analyse-overview.md b/model-api-reference/platform-apis/douyin/douplus/analyse-overview.md deleted file mode 100644 index f32f7080..00000000 --- a/model-api-reference/platform-apis/douyin/douplus/analyse-overview.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Delivery analysis overview API Reference" -description: "SandBase API operation douyin/douplus/analyse-overview." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/douplus/analyse-overview" -apiReferenceJson: "{\"title\":\"Delivery analysis overview\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/douplus/analyse-overview\",\"description\":\"DOU+ delivery analysis overview for account / video / live (query.analysisType: 1=account, 2=video, 3=live) Filter by account, delivery status, target and time range Requires a valid www.douyin.com web Cookie\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":true,\"description\":\"User www.douyin.com web Cookie\"},{\"name\":\"query\",\"type\":\"object\",\"required\":true,\"description\":\"Analysis query object. Key fields: startTime and endTime (timestamps in seconds); analysisType (1=account, 2=video, 3=live); authorSecIdList (account sec_uid list); statusList (delivery status filters); metrics (metric list, for example stat_cost, total_play, total_like, dy_comment, dy_share, dy_follow); SecondaryTargetIds; CollectWayIds. Graph requests also use dimension; detail requests also use page, limit, orderByMetric, and orderByType; video and live analysis also use liveRoomIdList.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/douplus/analyse-overview \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"query\\\": {}\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"query\\\": {}\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/analyse-overview\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"query\\\": {}\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/analyse-overview\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/douplus/analyse-overview\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/douplus/analyse-overview\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/douplus/analyse-overview\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/douplus/analyse-overview\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/douplus/analyse-overview\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/douplus/analyse-overview\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Delivery analysis overview" - modelId: "douyin/douplus/analyse-overview" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "douplus/analyse-overview" - protocol: "API Reference" - endpoint: "/v1/api/douyin/douplus/analyse-overview" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/douplus/calculate-cost.md b/model-api-reference/platform-apis/douyin/douplus/calculate-cost.md deleted file mode 100644 index 6ec2c0c9..00000000 --- a/model-api-reference/platform-apis/douyin/douplus/calculate-cost.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "DOU+ cost estimation API Reference" -description: "SandBase API operation douyin/douplus/calculate-cost." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/douplus/calculate-cost" -apiReferenceJson: "{\"title\":\"DOU+ cost estimation\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/douplus/calculate-cost\",\"description\":\"DOU+ cost estimation: given delivery account + item(s) + target, return budget combos / price / estimate Requires a valid www.douyin.com web Cookie\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":true,\"description\":\"User's www.douyin.com web Cookie (required)\"},{\"name\":\"item_ids\",\"type\":\"string\",\"required\":true,\"description\":\"Item id(s), comma separated (required)\"},{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"sec_uid of the delivery account (required)\"},{\"name\":\"target_id\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Promotion target id, default 31. 31=likes&comments, 32=fans, 33=homepage views, 37=video plays, 45=comment-link clicks, 78=high-quality interaction\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/douplus/calculate-cost \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"item_ids\\\": \\\"item_ids\\\",\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"item_ids\\\": \\\"item_ids\\\",\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/calculate-cost\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"item_ids\\\": \\\"item_ids\\\",\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/calculate-cost\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/douplus/calculate-cost\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/douplus/calculate-cost\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/douplus/calculate-cost\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/douplus/calculate-cost\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/douplus/calculate-cost\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/douplus/calculate-cost\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "DOU+ cost estimation" - modelId: "douyin/douplus/calculate-cost" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "douplus/calculate-cost" - protocol: "API Reference" - endpoint: "/v1/api/douyin/douplus/calculate-cost" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/douplus/promotable-item-list.md b/model-api-reference/platform-apis/douyin/douplus/promotable-item-list.md index f0640465..329e443e 100644 --- a/model-api-reference/platform-apis/douyin/douplus/promotable-item-list.md +++ b/model-api-reference/platform-apis/douyin/douplus/promotable-item-list.md @@ -1,13 +1,13 @@ --- -title: "Get promotable item list (with like & comment API Ref" -description: "SandBase API operation douyin/douplus/promotable-item-list." +title: "Douyin DOU+ Promotable Items API Reference" +description: "SandBase API reference for model douyin/douplus/promotable-item-list. Call /v1/api/douyin/douplus/promotable-item-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/douplus/promotable-item-list" -apiReferenceJson: "{\"title\":\"Get promotable item list (with like & comment counts)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/douplus/promotable-item-list\",\"description\":\"Get the promotable item (video) list for a given Douyin account on the DOU+ delivery page, including like / comment / play counts per item\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aim_ids\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional advanced parameter — optimization objective code(s), comma separated.\"},{\"name\":\"count\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Number of items, default 30\"},{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"sec_uid of the delivery account (required)\"},{\"name\":\"target_id\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Promotion target (the goal card on the DOU+ page), default 31 (likes & comments).\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/douplus/promotable-item-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/promotable-item-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/promotable-item-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/douplus/promotable-item-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/douplus/promotable-item-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/douplus/promotable-item-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/douplus/promotable-item-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/douplus/promotable-item-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/douplus/promotable-item-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin DOU+ Promotable Items\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/douplus/promotable-item-list\",\"description\":\"Returns the promotable video item list for a Douyin account on the DOU+ promotion page. Includes item details based on specified promotion targets and optimization objectives.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aim_ids\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional advanced parameter — optimization objective code(s), comma separated.\"},{\"name\":\"count\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Number of items, default 30\"},{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"sec_uid of the delivery account (required)\"},{\"name\":\"target_id\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Promotion target (the goal card on the DOU+ page), default 31 (likes & comments).\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/douplus/promotable-item-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/promotable-item-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/promotable-item-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/douplus/promotable-item-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/douplus/promotable-item-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/douplus/promotable-item-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/douplus/promotable-item-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/douplus/promotable-item-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/douplus/promotable-item-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get promotable item list (with like & comment counts)" + modelName: "Douyin DOU+ Promotable Items" modelId: "douyin/douplus/promotable-item-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/douplus/promoted-accounts.md b/model-api-reference/platform-apis/douyin/douplus/promoted-accounts.md deleted file mode 100644 index 5f129aee..00000000 --- a/model-api-reference/platform-apis/douyin/douplus/promoted-accounts.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get promoted accounts API Reference" -description: "SandBase API operation douyin/douplus/promoted-accounts." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/douplus/promoted-accounts" -apiReferenceJson: "{\"title\":\"Get promoted accounts\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/douplus/promoted-accounts\",\"description\":\"Get the list of Douyin accounts that have been promoted (have orders) under the current DOU+ account, with cursor pagination Requires a valid www.douyin.com web Cookie\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":true,\"description\":\"User's www.douyin.com web Cookie (required)\"},{\"name\":\"cursor\",\"type\":\"string | null\",\"required\":false,\"description\":\"Pagination cursor, empty for first page, then pass the `sortID` value from the previous response\"},{\"name\":\"limit\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Number of accounts per page, default 20\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/douplus/promoted-accounts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cookie\\\": \\\"cookie\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/promoted-accounts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/promoted-accounts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/douplus/promoted-accounts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/douplus/promoted-accounts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/douplus/promoted-accounts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/douplus/promoted-accounts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/douplus/promoted-accounts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/douplus/promoted-accounts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get promoted accounts" - modelId: "douyin/douplus/promoted-accounts" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "douplus/promoted-accounts" - protocol: "API Reference" - endpoint: "/v1/api/douyin/douplus/promoted-accounts" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/douplus/search-live-room.md b/model-api-reference/platform-apis/douyin/douplus/search-live-room.md deleted file mode 100644 index cf23e996..00000000 --- a/model-api-reference/platform-apis/douyin/douplus/search-live-room.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Search live rooms (by Douyin ID or nickname) API Reference" -description: "SandBase API operation douyin/douplus/search-live-room." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/douplus/search-live-room" -apiReferenceJson: "{\"title\":\"Search live rooms (by Douyin ID or nickname)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/douplus/search-live-room\",\"description\":\"Search DOU+ live rooms by Douyin ID or nickname, with cursor pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string | null\",\"required\":false,\"description\":\"User www.douyin.com web Cookie\"},{\"name\":\"count\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Page size, default 10\"},{\"name\":\"cursor\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Pagination cursor, 0 for first page, then pass the cursor from the previous response\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Douyin ID or nickname (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/douplus/search-live-room \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/search-live-room\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/search-live-room\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/douplus/search-live-room\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/douplus/search-live-room\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/douplus/search-live-room\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/douplus/search-live-room\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/douplus/search-live-room\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/douplus/search-live-room\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Search live rooms (by Douyin ID or nickname)" - modelId: "douyin/douplus/search-live-room" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "douplus/search-live-room" - protocol: "API Reference" - endpoint: "/v1/api/douyin/douplus/search-live-room" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/douplus/search-user-v2.md b/model-api-reference/platform-apis/douyin/douplus/search-user-v2.md deleted file mode 100644 index ecfb2d59..00000000 --- a/model-api-reference/platform-apis/douyin/douplus/search-user-v2.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Search user V2 API Reference — Douyin Douplus / Search User V2" -description: "SandBase API operation douyin/douplus/search-user-v2." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/douplus/search-user-v2" -apiReferenceJson: "{\"title\":\"Search user V2\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/douplus/search-user-v2\",\"description\":\"DOU+ user search V2, with cursor pagination and a search scope\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string | null\",\"required\":false,\"description\":\"User www.douyin.com web Cookie\"},{\"name\":\"count\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Page size, default 10\"},{\"name\":\"cursor\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Pagination cursor, 0 for first page, then pass the cursor from the previous response\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\"},{\"name\":\"scope\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Search scope, default 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/douplus/search-user-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/search-user-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/search-user-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/douplus/search-user-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/douplus/search-user-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/douplus/search-user-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/douplus/search-user-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/douplus/search-user-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/douplus/search-user-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Search user V2" - modelId: "douyin/douplus/search-user-v2" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "douplus/search-user-v2" - protocol: "API Reference" - endpoint: "/v1/api/douyin/douplus/search-user-v2" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/douplus/search-user.md b/model-api-reference/platform-apis/douyin/douplus/search-user.md index b667e206..26471443 100644 --- a/model-api-reference/platform-apis/douyin/douplus/search-user.md +++ b/model-api-reference/platform-apis/douyin/douplus/search-user.md @@ -1,13 +1,13 @@ --- -title: "Search DOU+ user API Reference" -description: "SandBase API operation douyin/douplus/search-user." +title: "Douyin DOU+ User Search API Reference" +description: "Douyin DOU+ User Search API reference for SandBase. Use model douyin/douplus/search-user with /v1/api/douyin/douplus/search-user; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/douplus/search-user" -apiReferenceJson: "{\"title\":\"Search DOU+ user\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/douplus/search-user\",\"description\":\"Search Douyin users in the DOU+ delivery context, by Douyin ID / nickname Supports cursor pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Number of results per page, default 20\"},{\"name\":\"cursor\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Pagination cursor, 0 for first page, then pass the cursor from the previous response\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (Douyin ID / nickname) (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/douplus/search-user \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/search-user\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/search-user\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/douplus/search-user\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/douplus/search-user\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/douplus/search-user\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/douplus/search-user\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/douplus/search-user\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/douplus/search-user\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin DOU+ User Search\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/douplus/search-user\",\"description\":\"Searches for Douyin users in the DOU+ delivery context using a Douyin ID or nickname. Returns matching user profiles with support for cursor-based pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Number of results per page, default 20\"},{\"name\":\"cursor\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Pagination cursor, 0 for first page, then pass the cursor from the previous response\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (Douyin ID / nickname) (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/douplus/search-user \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/search-user\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"人工智能\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/search-user\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/douplus/search-user\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/douplus/search-user\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/douplus/search-user\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/douplus/search-user\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/douplus/search-user\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/douplus/search-user\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search DOU+ user" + modelName: "Douyin DOU+ User Search" modelId: "douyin/douplus/search-user" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/douplus/search-video.md b/model-api-reference/platform-apis/douyin/douplus/search-video.md deleted file mode 100644 index 673b6822..00000000 --- a/model-api-reference/platform-apis/douyin/douplus/search-video.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Search videos (by title) API Reference" -description: "SandBase API operation douyin/douplus/search-video." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/douplus/search-video" -apiReferenceJson: "{\"title\":\"Search videos (by title)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/douplus/search-video\",\"description\":\"Search DOU+ videos by title/keyword, with cursor pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string | null\",\"required\":false,\"description\":\"User www.douyin.com web Cookie\"},{\"name\":\"count\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Page size, default 12\"},{\"name\":\"cursor\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Pagination cursor, 0 for first page, then pass the cursor from the previous response\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Video title or keyword (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/douplus/search-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/search-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/search-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/douplus/search-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/douplus/search-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/douplus/search-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/douplus/search-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/douplus/search-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/douplus/search-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Search videos (by title)" - modelId: "douyin/douplus/search-video" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "douplus/search-video" - protocol: "API Reference" - endpoint: "/v1/api/douyin/douplus/search-video" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/douplus/sec-token.md b/model-api-reference/platform-apis/douyin/douplus/sec-token.md deleted file mode 100644 index e2a0a04a..00000000 --- a/model-api-reference/platform-apis/douyin/douplus/sec-token.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get DOU+ sec_token for POST requests API Reference" -description: "SandBase API operation douyin/douplus/sec-token." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/douplus/sec-token" -apiReferenceJson: "{\"title\":\"Get DOU+ sec_token for POST requests\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/douplus/sec-token\",\"description\":\"Get the sec_token required by DOU+ authenticated POST endpoints (e.g. cost estimation) Requires a valid www.douyin.com web Cookie\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":true,\"description\":\"User's www.douyin.com web Cookie (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/douplus/sec-token \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cookie\\\": \\\"cookie\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/sec-token\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/sec-token\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/douplus/sec-token\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/douplus/sec-token\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/douplus/sec-token\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/douplus/sec-token\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/douplus/sec-token\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/douplus/sec-token\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get DOU+ sec_token for POST requests" - modelId: "douyin/douplus/sec-token" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "douplus/sec-token" - protocol: "API Reference" - endpoint: "/v1/api/douyin/douplus/sec-token" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/douplus/talent-categories.md b/model-api-reference/platform-apis/douyin/douplus/talent-categories.md index 74c65f2d..9c58886a 100644 --- a/model-api-reference/platform-apis/douyin/douplus/talent-categories.md +++ b/model-api-reference/platform-apis/douyin/douplus/talent-categories.md @@ -1,13 +1,13 @@ --- -title: "Get talent categories API Reference" -description: "SandBase API operation douyin/douplus/talent-categories." +title: "Douyin DOU+ Talent Categories API Reference" +description: "SandBase API reference for model douyin/douplus/talent-categories. Call /v1/api/douyin/douplus/talent-categories; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/douplus/talent-categories" -apiReferenceJson: "{\"title\":\"Get talent categories\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/douplus/talent-categories\",\"description\":\"Get the DOU+ talent category list; a category name can be used as the `name` of the talent search endpoint\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string | null\",\"required\":false,\"description\":\"User www.douyin.com web Cookie\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/douplus/talent-categories \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/douplus/talent-categories\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/douplus/talent-categories\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/talent-categories\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/douplus/talent-categories\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/talent-categories\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/douplus/talent-categories\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/douplus/talent-categories\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/douplus/talent-categories\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/douplus/talent-categories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/douplus/talent-categories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/douplus/talent-categories\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin DOU+ Talent Categories\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/douplus/talent-categories\",\"description\":\"Returns the Douyin DOU+ talent category directory. Use this endpoint to retrieve category hierarchies for talent discovery and promotional workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/douplus/talent-categories \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/talent-categories\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/talent-categories\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/douplus/talent-categories\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/douplus/talent-categories\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/douplus/talent-categories\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/douplus/talent-categories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/douplus/talent-categories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/douplus/talent-categories\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get talent categories" + modelName: "Douyin DOU+ Talent Categories" modelId: "douyin/douplus/talent-categories" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/douplus/talents-by-category.md b/model-api-reference/platform-apis/douyin/douplus/talents-by-category.md index 970e651e..1273299e 100644 --- a/model-api-reference/platform-apis/douyin/douplus/talents-by-category.md +++ b/model-api-reference/platform-apis/douyin/douplus/talents-by-category.md @@ -1,13 +1,13 @@ --- -title: "Search talents by category API Reference" -description: "SandBase API operation douyin/douplus/talents-by-category." +title: "Douyin DOU+ Talents by Category API Reference" +description: "SandBase API reference for model douyin/douplus/talents-by-category. Call /v1/api/douyin/douplus/talents-by-category; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/douplus/talents-by-category" -apiReferenceJson: "{\"title\":\"Search talents by category\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/douplus/talents-by-category\",\"description\":\"Search & filter DOU+ talents by category\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string | null\",\"required\":false,\"description\":\"User www.douyin.com web Cookie\"},{\"name\":\"limit\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Page size, default 20\"},{\"name\":\"name\",\"type\":\"string | null\",\"required\":false,\"description\":\"Category name or keyword (from the talent category endpoint); empty for all\"},{\"name\":\"page\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Page index from 0, default 0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/douplus/talents-by-category \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/douplus/talents-by-category\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/douplus/talents-by-category\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/talents-by-category\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/douplus/talents-by-category\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/talents-by-category\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/douplus/talents-by-category\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/douplus/talents-by-category\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/douplus/talents-by-category\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/douplus/talents-by-category\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/douplus/talents-by-category\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/douplus/talents-by-category\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin DOU+ Talents by Category\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/douplus/talents-by-category\",\"description\":\"Returns a list of DOU+ talents filtered by category name or keyword. Supports pagination through page index and page size parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Page size, default 20\"},{\"name\":\"name\",\"type\":\"string | null\",\"required\":false,\"description\":\"Category name or keyword (from the talent category endpoint); empty for all\"},{\"name\":\"page\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Page index from 0, default 0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/douplus/talents-by-category \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/talents-by-category\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/talents-by-category\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/douplus/talents-by-category\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/douplus/talents-by-category\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/douplus/talents-by-category\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/douplus/talents-by-category\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/douplus/talents-by-category\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/douplus/talents-by-category\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search talents by category" + modelName: "Douyin DOU+ Talents by Category" modelId: "douyin/douplus/talents-by-category" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/douplus/user-posts.md b/model-api-reference/platform-apis/douyin/douplus/user-posts.md index d2b85099..b0ed9392 100644 --- a/model-api-reference/platform-apis/douyin/douplus/user-posts.md +++ b/model-api-reference/platform-apis/douyin/douplus/user-posts.md @@ -1,13 +1,13 @@ --- -title: "Get user homepage posts API Reference" -description: "SandBase API operation douyin/douplus/user-posts." +title: "Douyin Douplus User Posts API Reference" +description: "Douyin Douplus User Posts API reference for SandBase. Use model douyin/douplus/user-posts with /v1/api/douyin/douplus/user-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/douplus/user-posts" -apiReferenceJson: "{\"title\":\"Get user homepage posts\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/douplus/user-posts\",\"description\":\"Get a user's homepage works (concise endpoint, cursor pagination)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string | null\",\"required\":false,\"description\":\"User www.douyin.com web Cookie\"},{\"name\":\"count\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Page size, default 10\"},{\"name\":\"cursor\",\"type\":\"string | null\",\"required\":false,\"description\":\"Pagination cursor (string), \\\"0\\\" for first page, then pass the cursor from the previous response\"},{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_uid (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/douplus/user-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/user-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/user-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/douplus/user-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/douplus/user-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/douplus/user-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/douplus/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/douplus/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/douplus/user-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Douplus User Posts\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/douplus/user-posts\",\"description\":\"Returns a concise list of homepage video posts for a specified Douyin user. Supports cursor-based pagination and custom result counts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Page size, default 10\"},{\"name\":\"cursor\",\"type\":\"string | null\",\"required\":false,\"description\":\"Pagination cursor (string), \\\"0\\\" for first page, then pass the cursor from the previous response\"},{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_uid (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/douplus/user-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/user-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/user-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/douplus/user-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/douplus/user-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/douplus/user-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/douplus/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/douplus/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/douplus/user-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user homepage posts" + modelName: "Douyin Douplus User Posts" modelId: "douyin/douplus/user-posts" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/douplus/video-detail.md b/model-api-reference/platform-apis/douyin/douplus/video-detail.md index 53307c5f..04bfc605 100644 --- a/model-api-reference/platform-apis/douyin/douplus/video-detail.md +++ b/model-api-reference/platform-apis/douyin/douplus/video-detail.md @@ -1,13 +1,13 @@ --- -title: "Get video detail (by id or link) API Reference" -description: "SandBase API operation douyin/douplus/video-detail." +title: "Douyin Douplus Video Detail API Reference" +description: "Douyin Douplus Video Detail API reference for SandBase. Use model douyin/douplus/video-detail with /v1/api/douyin/douplus/video-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/douplus/video-detail" -apiReferenceJson: "{\"title\":\"Get video detail (by id or link)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/douplus/video-detail\",\"description\":\"Get a video's detail by its ID or share link/text\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string | null\",\"required\":false,\"description\":\"User www.douyin.com web Cookie\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID, or share link/text (required). e.g. `7651708301280906538`, or a share caption containing a v.douyin.com link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/douplus/video-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"video\\\": \\\"video\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"video\\\": \\\"video\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/video-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"video\\\": \\\"video\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/video-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/douplus/video-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/douplus/video-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/douplus/video-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/douplus/video-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/douplus/video-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/douplus/video-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Douplus Video Detail\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/douplus/video-detail\",\"description\":\"Returns Douyin video details using a direct video ID or a shared link. Input video identifiers or share text containing short links to inspect video metadata.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID, or share link/text (required). e.g. `7651708301280906538`, or a share caption containing a v.douyin.com link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/douplus/video-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"video\\\": \\\"video\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"video\\\": \\\"video\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/video-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"video\\\": \\\"video\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/video-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/douplus/video-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/douplus/video-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/douplus/video-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/douplus/video-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/douplus/video-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/douplus/video-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video detail (by id or link)" + modelName: "Douyin Douplus Video Detail" modelId: "douyin/douplus/video-detail" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/douplus/video-ranking.md b/model-api-reference/platform-apis/douyin/douplus/video-ranking.md index 7e925a27..9faafc34 100644 --- a/model-api-reference/platform-apis/douyin/douplus/video-ranking.md +++ b/model-api-reference/platform-apis/douyin/douplus/video-ranking.md @@ -1,13 +1,13 @@ --- -title: "Get DOU+ video ranking API Reference" -description: "SandBase API operation douyin/douplus/video-ranking." +title: "Douyin DOU+ Video Ranking API Reference" +description: "Douyin DOU+ Video Ranking API reference for SandBase. Use model douyin/douplus/video-ranking with /v1/api/douyin/douplus/video-ranking; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/douplus/video-ranking" -apiReferenceJson: "{\"title\":\"Get DOU+ video ranking\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/douplus/video-ranking\",\"description\":\"Get the DOU+ video ranking board, filterable by time range, category and dimension\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"adv_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Advertiser id, optional\"},{\"name\":\"dim_type\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Ranking dimension, default 5. 1=low-fan hits, 2=high completion, 3=high like-rate, 4=high follower-growth, 5=hotness index\"},{\"name\":\"tag_id\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Category id, default 634 (Entertainment). Full map: 601 Plot, 602 Star, 606 Music, 607 ACGN,\"},{\"name\":\"time_range\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Time range, 1 / 2 / 3, default 2\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/douplus/video-ranking \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/douplus/video-ranking\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/douplus/video-ranking\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/video-ranking\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/douplus/video-ranking\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/video-ranking\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/douplus/video-ranking\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/douplus/video-ranking\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/douplus/video-ranking\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/douplus/video-ranking\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/douplus/video-ranking\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/douplus/video-ranking\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin DOU+ Video Ranking\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/douplus/video-ranking\",\"description\":\"Retrieves DOU+ video leaderboard metrics filterable by category, ranking dimension, and time range. Returns video titles, author details, and engagement statistics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"adv_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Advertiser id, optional\"},{\"name\":\"dim_type\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Ranking dimension, default 5. 1=low-fan hits, 2=high completion, 3=high like-rate, 4=high follower-growth, 5=hotness index\"},{\"name\":\"tag_id\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Category id, default 634 (Entertainment). Full map: 601 Plot, 602 Star, 606 Music, 607 ACGN,\"},{\"name\":\"time_range\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Time range, 1 / 2 / 3, default 2\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/douplus/video-ranking \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/video-ranking\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/douplus/video-ranking\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/douplus/video-ranking\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/douplus/video-ranking\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/douplus/video-ranking\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/douplus/video-ranking\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/douplus/video-ranking\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/douplus/video-ranking\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get DOU+ video ranking" + modelName: "Douyin DOU+ Video Ranking" modelId: "douyin/douplus/video-ranking" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/all-area.md b/model-api-reference/platform-apis/douyin/index/all-area.md index e12e1ded..b2017785 100644 --- a/model-api-reference/platform-apis/douyin/index/all-area.md +++ b/model-api-reference/platform-apis/douyin/index/all-area.md @@ -1,13 +1,13 @@ --- -title: "Get all area list API Reference" -description: "SandBase API operation douyin/index/all-area." +title: "Douyin Index Area List API Reference" +description: "Douyin Index Area List API reference for SandBase. Use model douyin/index/all-area with /v1/api/douyin/index/all-area; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/all-area" -apiReferenceJson: "{\"title\":\"Get all area list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/all-area\",\"description\":\"Get all supported area list for Douyin Index\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/all-area \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/index/all-area\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/index/all-area\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/all-area\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/index/all-area\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/all-area\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/all-area\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/all-area\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/all-area\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/all-area\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/all-area\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/all-area\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Index Area List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/all-area\",\"description\":\"Returns the complete list of supported geographic areas available for Douyin Index queries. Use this data to map regional codes and locations for trend analysis.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/all-area \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/all-area\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/all-area\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/all-area\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/all-area\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/all-area\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/all-area\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/all-area\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/all-area\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get all area list" + modelName: "Douyin Index Area List" modelId: "douyin/index/all-area" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/all-valid-date.md b/model-api-reference/platform-apis/douyin/index/all-valid-date.md index 08e01e3d..7ba4a209 100644 --- a/model-api-reference/platform-apis/douyin/index/all-valid-date.md +++ b/model-api-reference/platform-apis/douyin/index/all-valid-date.md @@ -1,13 +1,13 @@ --- -title: "Get all valid dates API Reference" -description: "SandBase API operation douyin/index/all-valid-date." +title: "Douyin Index Valid Dates API Reference" +description: "Douyin Index Valid Dates API reference for SandBase. Use model douyin/index/all-valid-date with /v1/api/douyin/index/all-valid-date; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/all-valid-date" -apiReferenceJson: "{\"title\":\"Get all valid dates\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/all-valid-date\",\"description\":\"Get the available valid dates for each data type in Douyin Index\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/all-valid-date \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/index/all-valid-date\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/index/all-valid-date\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/all-valid-date\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/index/all-valid-date\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/all-valid-date\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/all-valid-date\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/all-valid-date\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/all-valid-date\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/all-valid-date\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/all-valid-date\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/all-valid-date\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Index Valid Dates\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/all-valid-date\",\"description\":\"Returns the available valid dates available for each data type in Douyin Index. Helps verify data availability before querying index metrics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/all-valid-date \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/all-valid-date\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/all-valid-date\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/all-valid-date\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/all-valid-date\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/all-valid-date\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/all-valid-date\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/all-valid-date\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/all-valid-date\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get all valid dates" + modelName: "Douyin Index Valid Dates" modelId: "douyin/index/all-valid-date" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/brand-cycles.md b/model-api-reference/platform-apis/douyin/index/brand-cycles.md index 241f0162..7e9a3a05 100644 --- a/model-api-reference/platform-apis/douyin/index/brand-cycles.md +++ b/model-api-reference/platform-apis/douyin/index/brand-cycles.md @@ -1,13 +1,13 @@ --- -title: "Get brand cycles API Reference" -description: "SandBase API operation douyin/index/brand-cycles." +title: "Douyin Brand Popularity Cycles API Reference" +description: "Douyin Brand Popularity Cycles API reference for SandBase. Use model douyin/index/brand-cycles with /v1/api/douyin/index/brand-cycles; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/brand-cycles" -apiReferenceJson: "{\"title\":\"Get brand cycles\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/brand-cycles\",\"description\":\"Get brand cycles data (periodic popularity analysis)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_name\",\"type\":\"string\",\"required\":false,\"description\":\"Platform\",\"default\":\"aweme\",\"constraints\":\"Allowed values: aweme, toutiao\"},{\"name\":\"brand_name\",\"type\":\"string\",\"required\":true,\"description\":\"Brand info\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/brand-cycles \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"brand_name\\\": \\\"华为\\\",\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"start_date\\\": \\\"20260406\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"brand_name\\\": \\\"华为\\\",\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"start_date\\\": \\\"20260406\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-cycles\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"brand_name\\\": \\\"华为\\\",\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"start_date\\\": \\\"20260406\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-cycles\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/brand-cycles\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/brand-cycles\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/brand-cycles\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/brand-cycles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/brand-cycles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/brand-cycles\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Brand Popularity Cycles\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/brand-cycles\",\"description\":\"Returns periodic brand popularity and cycle analysis data across platforms for a specified brand name and date range.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_name\",\"type\":\"string\",\"required\":false,\"description\":\"Platform\",\"default\":\"aweme\",\"constraints\":\"Allowed values: aweme, toutiao\"},{\"name\":\"brand_name\",\"type\":\"string\",\"required\":true,\"description\":\"Brand info\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/brand-cycles \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"brand_name\\\": \\\"华为\\\",\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"start_date\\\": \\\"20260406\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"brand_name\\\": \\\"华为\\\",\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"start_date\\\": \\\"20260406\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-cycles\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"brand_name\\\": \\\"华为\\\",\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"start_date\\\": \\\"20260406\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-cycles\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/brand-cycles\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/brand-cycles\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/brand-cycles\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/brand-cycles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/brand-cycles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/brand-cycles\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get brand cycles" + modelName: "Douyin Brand Popularity Cycles" modelId: "douyin/index/brand-cycles" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/brand-hot-videos-time-scope.md b/model-api-reference/platform-apis/douyin/index/brand-hot-videos-time-scope.md index f1e36494..87ad98b9 100644 --- a/model-api-reference/platform-apis/douyin/index/brand-hot-videos-time-scope.md +++ b/model-api-reference/platform-apis/douyin/index/brand-hot-videos-time-scope.md @@ -1,13 +1,13 @@ --- -title: "Brand hot videos time scope API Reference" -description: "SandBase API operation douyin/index/brand-hot-videos-time-scope." +title: "Douyin Brand Hot Videos Time Scope API Reference" +description: "SandBase API reference for model douyin/index/brand-hot-videos-time-scope. Call /v1/api/douyin/index/brand-hot-videos-time-scope; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/brand-hot-videos-time-scope" -apiReferenceJson: "{\"title\":\"Brand hot videos time scope\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/brand-hot-videos-time-scope\",\"description\":\"Get the queryable time scope for the brand hot videos feature Used to determine valid date boundaries before calling other brand endpoints\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/brand-hot-videos-time-scope \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/index/brand-hot-videos-time-scope\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/index/brand-hot-videos-time-scope\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-hot-videos-time-scope\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/index/brand-hot-videos-time-scope\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-hot-videos-time-scope\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/brand-hot-videos-time-scope\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/brand-hot-videos-time-scope\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/brand-hot-videos-time-scope\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/brand-hot-videos-time-scope\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/brand-hot-videos-time-scope\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/brand-hot-videos-time-scope\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Brand Hot Videos Time Scope\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/brand-hot-videos-time-scope\",\"description\":\"Returns the queryable time scope for Douyin brand hot videos. Allows systems to check valid date ranges before querying related brand analytics endpoints.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/brand-hot-videos-time-scope \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-hot-videos-time-scope\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-hot-videos-time-scope\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/brand-hot-videos-time-scope\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/brand-hot-videos-time-scope\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/brand-hot-videos-time-scope\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/brand-hot-videos-time-scope\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/brand-hot-videos-time-scope\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/brand-hot-videos-time-scope\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Brand hot videos time scope" + modelName: "Douyin Brand Hot Videos Time Scope" modelId: "douyin/index/brand-hot-videos-time-scope" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/brand-initiative-rank-weekly.md b/model-api-reference/platform-apis/douyin/index/brand-initiative-rank-weekly.md index 7dca1f39..3927daf5 100644 --- a/model-api-reference/platform-apis/douyin/index/brand-initiative-rank-weekly.md +++ b/model-api-reference/platform-apis/douyin/index/brand-initiative-rank-weekly.md @@ -1,13 +1,13 @@ --- -title: "Get brand initiative rank weekly API Reference" -description: "SandBase API operation douyin/index/brand-initiative-rank-weekly." +title: "Douyin Weekly Brand Initiative Ranking API Reference" +description: "SandBase API reference for model douyin/index/brand-initiative-rank-weekly. Call /v1/api/douyin/index/brand-initiative-rank-weekly; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/brand-initiative-rank-weekly" -apiReferenceJson: "{\"title\":\"Get brand initiative rank weekly\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/brand-initiative-rank-weekly\",\"description\":\"Get brand initiative rank weekly data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_name\",\"type\":\"string\",\"required\":false,\"description\":\"Platform\",\"default\":\"aweme\",\"constraints\":\"Allowed values: aweme, toutiao\"},{\"name\":\"brand_name\",\"type\":\"string\",\"required\":true,\"description\":\"Brand name\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/brand-initiative-rank-weekly \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"brand_name\\\": \\\"华为\\\",\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"start_date\\\": \\\"20260406\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"brand_name\\\": \\\"华为\\\",\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"start_date\\\": \\\"20260406\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-initiative-rank-weekly\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"brand_name\\\": \\\"华为\\\",\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"start_date\\\": \\\"20260406\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-initiative-rank-weekly\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/brand-initiative-rank-weekly\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/brand-initiative-rank-weekly\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/brand-initiative-rank-weekly\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/brand-initiative-rank-weekly\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/brand-initiative-rank-weekly\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/brand-initiative-rank-weekly\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Weekly Brand Initiative Ranking\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/brand-initiative-rank-weekly\",\"description\":\"Returns weekly brand initiative ranking metrics from Douyin Index for a specified brand and date range. Supports filtering by platform such as Douyin or Toutiao.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_name\",\"type\":\"string\",\"required\":false,\"description\":\"Platform\",\"default\":\"aweme\",\"constraints\":\"Allowed values: aweme, toutiao\"},{\"name\":\"brand_name\",\"type\":\"string\",\"required\":true,\"description\":\"Brand name\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/brand-initiative-rank-weekly \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"brand_name\\\": \\\"华为\\\",\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"start_date\\\": \\\"20260406\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"brand_name\\\": \\\"华为\\\",\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"start_date\\\": \\\"20260406\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-initiative-rank-weekly\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"brand_name\\\": \\\"华为\\\",\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"start_date\\\": \\\"20260406\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-initiative-rank-weekly\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/brand-initiative-rank-weekly\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/brand-initiative-rank-weekly\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/brand-initiative-rank-weekly\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/brand-initiative-rank-weekly\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/brand-initiative-rank-weekly\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/brand-initiative-rank-weekly\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get brand initiative rank weekly" + modelName: "Douyin Weekly Brand Initiative Ranking" modelId: "douyin/index/brand-initiative-rank-weekly" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/brand-lines.md b/model-api-reference/platform-apis/douyin/index/brand-lines.md index 1e59bc9b..5e688c56 100644 --- a/model-api-reference/platform-apis/douyin/index/brand-lines.md +++ b/model-api-reference/platform-apis/douyin/index/brand-lines.md @@ -1,13 +1,13 @@ --- -title: "Get brand trend lines API Reference" -description: "SandBase API operation douyin/index/brand-lines." +title: "Douyin Brand Trend Lines API Reference" +description: "Douyin Brand Trend Lines API reference for SandBase. Use model douyin/index/brand-lines with /v1/api/douyin/index/brand-lines; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/brand-lines" -apiReferenceJson: "{\"title\":\"Get brand trend lines\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/brand-lines\",\"description\":\"Get brand trend lines data (popularity over time)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_name\",\"type\":\"string\",\"required\":false,\"description\":\"Platform\",\"default\":\"aweme\",\"constraints\":\"Allowed values: aweme, toutiao\"},{\"name\":\"brand_name\",\"type\":\"string\",\"required\":true,\"description\":\"Brand info\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/brand-lines \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"brand_name\\\": \\\"华为\\\",\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"start_date\\\": \\\"20260406\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"brand_name\\\": \\\"华为\\\",\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"start_date\\\": \\\"20260406\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-lines\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"brand_name\\\": \\\"华为\\\",\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"start_date\\\": \\\"20260406\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-lines\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/brand-lines\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/brand-lines\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/brand-lines\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/brand-lines\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/brand-lines\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/brand-lines\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Brand Trend Lines\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/brand-lines\",\"description\":\"Returns brand trend line metrics and popularity trends over time for a specified brand name and date range across supported platforms.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_name\",\"type\":\"string\",\"required\":false,\"description\":\"Platform\",\"default\":\"aweme\",\"constraints\":\"Allowed values: aweme, toutiao\"},{\"name\":\"brand_name\",\"type\":\"string\",\"required\":true,\"description\":\"Brand info\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/brand-lines \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"brand_name\\\": \\\"华为\\\",\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"start_date\\\": \\\"20260406\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"brand_name\\\": \\\"华为\\\",\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"start_date\\\": \\\"20260406\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-lines\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"brand_name\\\": \\\"华为\\\",\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"start_date\\\": \\\"20260406\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-lines\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/brand-lines\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/brand-lines\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/brand-lines\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/brand-lines\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/brand-lines\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/brand-lines\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get brand trend lines" + modelName: "Douyin Brand Trend Lines" modelId: "douyin/index/brand-lines" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/brand-radar-chart.md b/model-api-reference/platform-apis/douyin/index/brand-radar-chart.md index aaf012d4..be662252 100644 --- a/model-api-reference/platform-apis/douyin/index/brand-radar-chart.md +++ b/model-api-reference/platform-apis/douyin/index/brand-radar-chart.md @@ -1,13 +1,13 @@ --- -title: "Get brand radar chart API Reference" -description: "SandBase API operation douyin/index/brand-radar-chart." +title: "Douyin Brand Radar Chart API Reference" +description: "SandBase API reference for model douyin/index/brand-radar-chart. Call /v1/api/douyin/index/brand-radar-chart; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/brand-radar-chart" -apiReferenceJson: "{\"title\":\"Get brand radar chart\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/brand-radar-chart\",\"description\":\"Get brand radar chart data (multi-dimensional scores)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_name\",\"type\":\"string\",\"required\":false,\"description\":\"Platform selection\",\"default\":\"aweme\",\"constraints\":\"Allowed values: aweme, toutiao\"},{\"name\":\"brand_name\",\"type\":\"string\",\"required\":true,\"description\":\"Brand name\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/brand-radar-chart \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"brand_name\\\": \\\"华为\\\",\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"start_date\\\": \\\"20251015\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"brand_name\\\": \\\"华为\\\",\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"start_date\\\": \\\"20251015\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-radar-chart\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"brand_name\\\": \\\"华为\\\",\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"start_date\\\": \\\"20251015\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-radar-chart\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/brand-radar-chart\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/brand-radar-chart\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/brand-radar-chart\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/brand-radar-chart\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/brand-radar-chart\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/brand-radar-chart\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Brand Radar Chart\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/brand-radar-chart\",\"description\":\"Returns multi-dimensional brand radar chart scores across Douyin or Toutiao. Query by brand name and a custom date range in YYYYMMDD format.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_name\",\"type\":\"string\",\"required\":false,\"description\":\"Platform selection\",\"default\":\"aweme\",\"constraints\":\"Allowed values: aweme, toutiao\"},{\"name\":\"brand_name\",\"type\":\"string\",\"required\":true,\"description\":\"Brand name\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/brand-radar-chart \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"brand_name\\\": \\\"华为\\\",\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"start_date\\\": \\\"20251015\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"brand_name\\\": \\\"华为\\\",\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"start_date\\\": \\\"20251015\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-radar-chart\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"brand_name\\\": \\\"华为\\\",\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"start_date\\\": \\\"20251015\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-radar-chart\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/brand-radar-chart\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/brand-radar-chart\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/brand-radar-chart\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/brand-radar-chart\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/brand-radar-chart\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/brand-radar-chart\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get brand radar chart" + modelName: "Douyin Brand Radar Chart" modelId: "douyin/index/brand-radar-chart" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/brand-suggest.md b/model-api-reference/platform-apis/douyin/index/brand-suggest.md index 714d9199..cf679a18 100644 --- a/model-api-reference/platform-apis/douyin/index/brand-suggest.md +++ b/model-api-reference/platform-apis/douyin/index/brand-suggest.md @@ -1,13 +1,13 @@ --- -title: "Brand search suggest API Reference" -description: "SandBase API operation douyin/index/brand-suggest." +title: "Douyin Brand Search Suggestions API Reference" +description: "SandBase API reference for model douyin/index/brand-suggest. Call /v1/api/douyin/index/brand-suggest; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/brand-suggest" -apiReferenceJson: "{\"title\":\"Brand search suggest\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/brand-suggest\",\"description\":\"Get brand search auto-complete suggestion list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Brand name keyword\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/brand-suggest \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"华为\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"华为\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-suggest\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"华为\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-suggest\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/brand-suggest\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/brand-suggest\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/brand-suggest\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/brand-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/brand-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/brand-suggest\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Brand Search Suggestions\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/brand-suggest\",\"description\":\"Returns a list of brand auto-complete suggestions based on a query keyword. Results include brand identifiers, names, categories, and logo image links.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Brand name keyword\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/brand-suggest \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"华为\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"华为\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-suggest\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"华为\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-suggest\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/brand-suggest\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/brand-suggest\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/brand-suggest\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/brand-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/brand-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/brand-suggest\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Brand search suggest" + modelName: "Douyin Brand Search Suggestions" modelId: "douyin/index/brand-suggest" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/brand-valid-info.md b/model-api-reference/platform-apis/douyin/index/brand-valid-info.md index 7717f49e..5d6ad01a 100644 --- a/model-api-reference/platform-apis/douyin/index/brand-valid-info.md +++ b/model-api-reference/platform-apis/douyin/index/brand-valid-info.md @@ -1,13 +1,13 @@ --- -title: "Get brand index API Reference" -description: "SandBase API operation douyin/index/brand-valid-info." +title: "Douyin Brand Valid Information API Reference" +description: "SandBase API reference for model douyin/index/brand-valid-info. Call /v1/api/douyin/index/brand-valid-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/brand-valid-info" -apiReferenceJson: "{\"title\":\"Get brand index\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/brand-valid-info\",\"description\":\"Get brand valid info and brand index data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword_list\",\"type\":\"string\",\"required\":true,\"description\":\"Brand name list, comma separated\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/brand-valid-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword_list\\\": \\\"华为\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword_list\\\": \\\"华为\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-valid-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword_list\\\": \\\"华为\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-valid-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/brand-valid-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/brand-valid-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/brand-valid-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/brand-valid-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/brand-valid-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/brand-valid-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Brand Valid Information\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/brand-valid-info\",\"description\":\"Returns brand details including brand ID and category information on Douyin. Queries are filtered using comma-separated brand keywords.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword_list\",\"type\":\"string\",\"required\":true,\"description\":\"Brand name list, comma separated\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/brand-valid-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword_list\\\": \\\"华为\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword_list\\\": \\\"华为\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-valid-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword_list\\\": \\\"华为\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/brand-valid-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/brand-valid-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/brand-valid-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/brand-valid-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/brand-valid-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/brand-valid-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/brand-valid-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get brand index" + modelName: "Douyin Brand Valid Information" modelId: "douyin/index/brand-valid-info" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/content-author-portrait.md b/model-api-reference/platform-apis/douyin/index/content-author-portrait.md index 7d75e57f..fcb56f71 100644 --- a/model-api-reference/platform-apis/douyin/index/content-author-portrait.md +++ b/model-api-reference/platform-apis/douyin/index/content-author-portrait.md @@ -1,13 +1,13 @@ --- -title: "Content author portrait API Reference" -description: "SandBase API operation douyin/index/content-author-portrait." +title: "Douyin Content Author Portrait API Reference" +description: "SandBase API reference for model douyin/index/content-author-portrait. Call /v1/api/douyin/index/content-author-portrait; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/content-author-portrait" -apiReferenceJson: "{\"title\":\"Content author portrait\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/content-author-portrait\",\"description\":\"Get creator (author) portrait for a category (i.e. profile of users who post in this category) Used to understand creator demographics: gender, age, region, active time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD, must align with period\"},{\"name\":\"period\",\"type\":\"string\",\"required\":false,\"description\":\"\\\"week\\\" (end_date must be a Sunday) or \\\"month\\\" (end_date must be month-end, e.g. 20260331)\",\"constraints\":\"Allowed values: week, month\"},{\"name\":\"tag_id\",\"type\":\"string\",\"required\":true,\"description\":\"Category ID (**required, does NOT support 0=all**, must pass a specific category ID)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/content-author-portrait \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"tag_id\\\": \\\"tag_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"tag_id\\\": \\\"tag_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-author-portrait\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"tag_id\\\": \\\"tag_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-author-portrait\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/content-author-portrait\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/content-author-portrait\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/content-author-portrait\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/content-author-portrait\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/content-author-portrait\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/content-author-portrait\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Content Author Portrait\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/content-author-portrait\",\"description\":\"Returns demographic profiles of creators posting within a specific category, including gender, age, region, and activity times based on category ID and selected period.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD, must align with period\"},{\"name\":\"period\",\"type\":\"string\",\"required\":false,\"description\":\"\\\"week\\\" (end_date must be a Sunday) or \\\"month\\\" (end_date must be month-end, e.g. 20260331)\",\"constraints\":\"Allowed values: week, month\"},{\"name\":\"tag_id\",\"type\":\"string\",\"required\":true,\"description\":\"Category ID (**required, does NOT support 0=all**, must pass a specific category ID)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/content-author-portrait \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"tag_id\\\": \\\"2027\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"tag_id\\\": \\\"2027\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-author-portrait\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"tag_id\\\": \\\"2027\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-author-portrait\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/content-author-portrait\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/content-author-portrait\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/content-author-portrait\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/content-author-portrait\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/content-author-portrait\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/content-author-portrait\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Content author portrait" + modelName: "Douyin Content Author Portrait" modelId: "douyin/index/content-author-portrait" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/content-consume-trend.md b/model-api-reference/platform-apis/douyin/index/content-consume-trend.md index 678f45e9..a8f67e12 100644 --- a/model-api-reference/platform-apis/douyin/index/content-consume-trend.md +++ b/model-api-reference/platform-apis/douyin/index/content-consume-trend.md @@ -1,13 +1,13 @@ --- -title: "Content consume trend API Reference" -description: "SandBase API operation douyin/index/content-consume-trend." +title: "Douyin Content Consumption Trend API Reference" +description: "SandBase API reference for model douyin/index/content-consume-trend. Call /v1/api/douyin/index/content-consume-trend; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/content-consume-trend" -apiReferenceJson: "{\"title\":\"Content consume trend\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/content-consume-trend\",\"description\":\"Get consumption (play count, watch duration) trend over time for a category Measures actual viewing heat for content in this category\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD (inclusive)\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD (inclusive)\"},{\"name\":\"tag_id\",\"type\":\"string\",\"required\":true,\"description\":\"Category ID (**required, does NOT support 0=all**, must pass a specific category ID)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/content-consume-trend \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"start_date\\\": \\\"start_date\\\",\\n \\\"tag_id\\\": \\\"tag_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"start_date\\\": \\\"start_date\\\",\\n \\\"tag_id\\\": \\\"tag_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-consume-trend\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"start_date\\\": \\\"start_date\\\",\\n \\\"tag_id\\\": \\\"tag_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-consume-trend\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/content-consume-trend\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/content-consume-trend\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/content-consume-trend\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/content-consume-trend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/content-consume-trend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/content-consume-trend\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Content Consumption Trend\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/content-consume-trend\",\"description\":\"Returns content consumption metrics such as play counts and watch duration trends over time for a specified Douyin category within a selected date range.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD (inclusive)\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD (inclusive)\"},{\"name\":\"tag_id\",\"type\":\"string\",\"required\":true,\"description\":\"Category ID (**required, does NOT support 0=all**, must pass a specific category ID)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/content-consume-trend \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"start_date\\\": \\\"1730044800\\\",\\n \\\"tag_id\\\": \\\"2027\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"start_date\\\": \\\"1730044800\\\",\\n \\\"tag_id\\\": \\\"2027\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-consume-trend\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"start_date\\\": \\\"1730044800\\\",\\n \\\"tag_id\\\": \\\"2027\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-consume-trend\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/content-consume-trend\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/content-consume-trend\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/content-consume-trend\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/content-consume-trend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/content-consume-trend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/content-consume-trend\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Content consume trend" + modelName: "Douyin Content Consumption Trend" modelId: "douyin/index/content-consume-trend" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/content-consumer-portrait.md b/model-api-reference/platform-apis/douyin/index/content-consumer-portrait.md index 366e18da..986b410b 100644 --- a/model-api-reference/platform-apis/douyin/index/content-consumer-portrait.md +++ b/model-api-reference/platform-apis/douyin/index/content-consumer-portrait.md @@ -1,13 +1,13 @@ --- -title: "Content consumer portrait API Reference" -description: "SandBase API operation douyin/index/content-consumer-portrait." +title: "Douyin Content Consumer Portrait API Reference" +description: "SandBase API reference for model douyin/index/content-consumer-portrait. Call /v1/api/douyin/index/content-consumer-portrait; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/content-consumer-portrait" -apiReferenceJson: "{\"title\":\"Content consumer portrait\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/content-consumer-portrait\",\"description\":\"Get consumer (viewer) portrait for a category (i.e. profile of users who watch videos in this category) Counterpart to fetch_content_author_portrait: one for creators, one for viewers\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD, must align with period\"},{\"name\":\"period\",\"type\":\"string\",\"required\":false,\"description\":\"\\\"week\\\" (end_date must be a Sunday) or \\\"month\\\" (end_date must be month-end, e.g. 20260331)\",\"constraints\":\"Allowed values: week, month\"},{\"name\":\"tag_id\",\"type\":\"string\",\"required\":true,\"description\":\"Category ID (**required, does NOT support 0=all**, must pass a specific category ID)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/content-consumer-portrait \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"tag_id\\\": \\\"tag_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"tag_id\\\": \\\"tag_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-consumer-portrait\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"tag_id\\\": \\\"tag_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-consumer-portrait\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/content-consumer-portrait\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/content-consumer-portrait\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/content-consumer-portrait\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/content-consumer-portrait\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/content-consumer-portrait\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/content-consumer-portrait\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Content Consumer Portrait\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/content-consumer-portrait\",\"description\":\"Returns consumer viewer portrait data for audience members watching videos in a specified Douyin category over a given week or month.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD, must align with period\"},{\"name\":\"period\",\"type\":\"string\",\"required\":false,\"description\":\"\\\"week\\\" (end_date must be a Sunday) or \\\"month\\\" (end_date must be month-end, e.g. 20260331)\",\"constraints\":\"Allowed values: week, month\"},{\"name\":\"tag_id\",\"type\":\"string\",\"required\":true,\"description\":\"Category ID (**required, does NOT support 0=all**, must pass a specific category ID)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/content-consumer-portrait \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"tag_id\\\": \\\"2027\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"tag_id\\\": \\\"2027\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-consumer-portrait\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"tag_id\\\": \\\"2027\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-consumer-portrait\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/content-consumer-portrait\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/content-consumer-portrait\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/content-consumer-portrait\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/content-consumer-portrait\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/content-consumer-portrait\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/content-consumer-portrait\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Content consumer portrait" + modelName: "Douyin Content Consumer Portrait" modelId: "douyin/index/content-consumer-portrait" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/content-creative-duration.md b/model-api-reference/platform-apis/douyin/index/content-creative-duration.md index be443cda..411c8669 100644 --- a/model-api-reference/platform-apis/douyin/index/content-creative-duration.md +++ b/model-api-reference/platform-apis/douyin/index/content-creative-duration.md @@ -1,13 +1,13 @@ --- -title: "Content creative duration API Reference" -description: "SandBase API operation douyin/index/content-creative-duration." +title: "Douyin Content Creative Duration API Reference" +description: "SandBase API reference for model douyin/index/content-creative-duration. Call /v1/api/douyin/index/content-creative-duration; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/content-creative-duration" -apiReferenceJson: "{\"title\":\"Content creative duration\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/content-creative-duration\",\"description\":\"Get video duration distribution for a category Helps understand creators' preferred video lengths in this category\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD, must align with period\"},{\"name\":\"period\",\"type\":\"string\",\"required\":false,\"description\":\"\\\"week\\\" (end_date must be a Sunday) or \\\"month\\\" (end_date must be month-end)\",\"constraints\":\"Allowed values: week, month\"},{\"name\":\"tag_id\",\"type\":\"string\",\"required\":true,\"description\":\"Category ID (**required, does NOT support 0=all**, must pass a specific category ID)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/content-creative-duration \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"tag_id\\\": \\\"tag_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"tag_id\\\": \\\"tag_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-creative-duration\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"tag_id\\\": \\\"tag_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-creative-duration\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/content-creative-duration\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/content-creative-duration\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/content-creative-duration\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/content-creative-duration\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/content-creative-duration\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/content-creative-duration\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Content Creative Duration\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/content-creative-duration\",\"description\":\"Returns the video duration distribution for a specified Douyin category. Breaks down content duration patterns across weekly or monthly periods.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD, must align with period\"},{\"name\":\"period\",\"type\":\"string\",\"required\":false,\"description\":\"\\\"week\\\" (end_date must be a Sunday) or \\\"month\\\" (end_date must be month-end)\",\"constraints\":\"Allowed values: week, month\"},{\"name\":\"tag_id\",\"type\":\"string\",\"required\":true,\"description\":\"Category ID (**required, does NOT support 0=all**, must pass a specific category ID)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/content-creative-duration \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"tag_id\\\": \\\"2027\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"tag_id\\\": \\\"2027\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-creative-duration\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"tag_id\\\": \\\"2027\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-creative-duration\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/content-creative-duration\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/content-creative-duration\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/content-creative-duration\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/content-creative-duration\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/content-creative-duration\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/content-creative-duration\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Content creative duration" + modelName: "Douyin Content Creative Duration" modelId: "douyin/index/content-creative-duration" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/content-creative-keyword-items.md b/model-api-reference/platform-apis/douyin/index/content-creative-keyword-items.md index 72a88ef5..72393790 100644 --- a/model-api-reference/platform-apis/douyin/index/content-creative-keyword-items.md +++ b/model-api-reference/platform-apis/douyin/index/content-creative-keyword-items.md @@ -1,13 +1,13 @@ --- -title: "Creative keyword related items API Reference" -description: "SandBase API operation douyin/index/content-creative-keyword-items." +title: "Douyin Creative Keyword Related Videos API Reference" +description: "SandBase API reference for model douyin/index/content-creative-keyword-items. Call /v1/api/douyin/index/content-creative-keyword-items; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/content-creative-keyword-items" -apiReferenceJson: "{\"title\":\"Creative keyword related items\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/content-creative-keyword-items\",\"description\":\"Get videos related to a specific hot keyword in a category Used to inspect which videos contribute to a hot keyword\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD. **Must be a Sunday only when period=7**; any day for period=1/3\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Hot keyword (typically from fetch_content_creative_keywords)\"},{\"name\":\"period\",\"type\":\"string\",\"required\":false,\"description\":\"\\\"1\\\" / \\\"3\\\" / \\\"7\\\" days\",\"constraints\":\"Allowed values: 1, 3, 7\"},{\"name\":\"tag_id\",\"type\":\"string\",\"required\":true,\"description\":\"Category ID (same as category_id in fetch_item_query)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/content-creative-keyword-items \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"tag_id\\\": \\\"tag_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"tag_id\\\": \\\"tag_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-creative-keyword-items\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"tag_id\\\": \\\"tag_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-creative-keyword-items\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/content-creative-keyword-items\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/content-creative-keyword-items\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/content-creative-keyword-items\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/content-creative-keyword-items\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/content-creative-keyword-items\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/content-creative-keyword-items\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Creative Keyword Related Videos\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/content-creative-keyword-items\",\"description\":\"Returns videos associated with a specific trending keyword in a category. Filters include category ID, target keyword, analysis period, and end date.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD. **Must be a Sunday only when period=7**; any day for period=1/3\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Hot keyword (typically from fetch_content_creative_keywords)\"},{\"name\":\"period\",\"type\":\"string\",\"required\":false,\"description\":\"\\\"1\\\" / \\\"3\\\" / \\\"7\\\" days\",\"constraints\":\"Allowed values: 1, 3, 7\"},{\"name\":\"tag_id\",\"type\":\"string\",\"required\":true,\"description\":\"Category ID (same as category_id in fetch_item_query)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/content-creative-keyword-items \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"keyword\\\": \\\"人工智能\\\",\\n \\\"tag_id\\\": \\\"2027\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"keyword\\\": \\\"人工智能\\\",\\n \\\"tag_id\\\": \\\"2027\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-creative-keyword-items\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"keyword\\\": \\\"人工智能\\\",\\n \\\"tag_id\\\": \\\"2027\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-creative-keyword-items\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/content-creative-keyword-items\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/content-creative-keyword-items\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/content-creative-keyword-items\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/content-creative-keyword-items\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/content-creative-keyword-items\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/content-creative-keyword-items\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Creative keyword related items" + modelName: "Douyin Creative Keyword Related Videos" modelId: "douyin/index/content-creative-keyword-items" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/content-creative-keywords.md b/model-api-reference/platform-apis/douyin/index/content-creative-keywords.md index b13d98b3..6719783c 100644 --- a/model-api-reference/platform-apis/douyin/index/content-creative-keywords.md +++ b/model-api-reference/platform-apis/douyin/index/content-creative-keywords.md @@ -1,13 +1,13 @@ --- -title: "Content creative keywords API Reference" -description: "SandBase API operation douyin/index/content-creative-keywords." +title: "Douyin Content Creative Keywords API Reference" +description: "SandBase API reference for model douyin/index/content-creative-keywords. Call /v1/api/douyin/index/content-creative-keywords; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/content-creative-keywords" -apiReferenceJson: "{\"title\":\"Content creative keywords\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/content-creative-keywords\",\"description\":\"Get creative hot keywords for a category\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD. **Must be a Sunday only when period=7**; any day for period=1/3\"},{\"name\":\"period\",\"type\":\"string\",\"required\":false,\"description\":\"\\\"1\\\"=last 1 day, \\\"3\\\"=last 3 days, \\\"7\\\"=last 7 days\",\"constraints\":\"Allowed values: 1, 3, 7\"},{\"name\":\"tag_id\",\"type\":\"string\",\"required\":true,\"description\":\"Category ID (same as category_id in fetch_item_query)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/content-creative-keywords \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"tag_id\\\": \\\"tag_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"tag_id\\\": \\\"tag_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-creative-keywords\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"tag_id\\\": \\\"tag_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-creative-keywords\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/content-creative-keywords\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/content-creative-keywords\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/content-creative-keywords\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/content-creative-keywords\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/content-creative-keywords\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/content-creative-keywords\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Content Creative Keywords\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/content-creative-keywords\",\"description\":\"Returns creative hot keywords for a specified category from the Douyin index. Filter keywords by category ID, end date, and time intervals of one, three, or seven days.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD. **Must be a Sunday only when period=7**; any day for period=1/3\"},{\"name\":\"period\",\"type\":\"string\",\"required\":false,\"description\":\"\\\"1\\\"=last 1 day, \\\"3\\\"=last 3 days, \\\"7\\\"=last 7 days\",\"constraints\":\"Allowed values: 1, 3, 7\"},{\"name\":\"tag_id\",\"type\":\"string\",\"required\":true,\"description\":\"Category ID (same as category_id in fetch_item_query)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/content-creative-keywords \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"tag_id\\\": \\\"2027\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"tag_id\\\": \\\"2027\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-creative-keywords\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"tag_id\\\": \\\"2027\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-creative-keywords\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/content-creative-keywords\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/content-creative-keywords\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/content-creative-keywords\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/content-creative-keywords\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/content-creative-keywords\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/content-creative-keywords\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Content creative keywords" + modelName: "Douyin Content Creative Keywords" modelId: "douyin/index/content-creative-keywords" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/content-creative-topic.md b/model-api-reference/platform-apis/douyin/index/content-creative-topic.md index cccd2dd9..66ad6976 100644 --- a/model-api-reference/platform-apis/douyin/index/content-creative-topic.md +++ b/model-api-reference/platform-apis/douyin/index/content-creative-topic.md @@ -1,13 +1,13 @@ --- -title: "Content creative topic API Reference" -description: "SandBase API operation douyin/index/content-creative-topic." +title: "Douyin Content Creative Topics API Reference" +description: "SandBase API reference for model douyin/index/content-creative-topic. Call /v1/api/douyin/index/content-creative-topic; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/content-creative-topic" -apiReferenceJson: "{\"title\":\"Content creative topic\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/content-creative-topic\",\"description\":\"Get creative hot topics for a category\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD. **Must be a Sunday only when period=7**; any day for period=1/3\"},{\"name\":\"period\",\"type\":\"string\",\"required\":false,\"description\":\"\\\"1\\\" / \\\"3\\\" / \\\"7\\\"\",\"default\":\"7\",\"constraints\":\"Allowed values: 1, 3, 7\"},{\"name\":\"rank_type\",\"type\":\"string\",\"required\":false,\"description\":\"\\\"index\\\" or \\\"rise\\\"\",\"default\":\"index\",\"constraints\":\"Allowed values: index, rise\"},{\"name\":\"tag_id\",\"type\":\"string\",\"required\":true,\"description\":\"Category ID (same as category_id in fetch_item_query)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/content-creative-topic \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"end_date\\\": \\\"20260405\\\",\\n \\\"tag_id\\\": \\\"601\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"end_date\\\": \\\"20260405\\\",\\n \\\"tag_id\\\": \\\"601\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-creative-topic\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"end_date\\\": \\\"20260405\\\",\\n \\\"tag_id\\\": \\\"601\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-creative-topic\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/content-creative-topic\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/content-creative-topic\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/content-creative-topic\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/content-creative-topic\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/content-creative-topic\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/content-creative-topic\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Content Creative Topics\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/content-creative-topic\",\"description\":\"Returns trending creative topics for a specific Douyin category. Filter results by category ID, evaluation period, ranking metric, and end date.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD. **Must be a Sunday only when period=7**; any day for period=1/3\"},{\"name\":\"period\",\"type\":\"string\",\"required\":false,\"description\":\"\\\"1\\\" / \\\"3\\\" / \\\"7\\\"\",\"default\":\"7\",\"constraints\":\"Allowed values: 1, 3, 7\"},{\"name\":\"rank_type\",\"type\":\"string\",\"required\":false,\"description\":\"\\\"index\\\" or \\\"rise\\\"\",\"default\":\"index\",\"constraints\":\"Allowed values: index, rise\"},{\"name\":\"tag_id\",\"type\":\"string\",\"required\":true,\"description\":\"Category ID (same as category_id in fetch_item_query)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/content-creative-topic \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"end_date\\\": \\\"20260405\\\",\\n \\\"tag_id\\\": \\\"601\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"end_date\\\": \\\"20260405\\\",\\n \\\"tag_id\\\": \\\"601\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-creative-topic\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"end_date\\\": \\\"20260405\\\",\\n \\\"tag_id\\\": \\\"601\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-creative-topic\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/content-creative-topic\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/content-creative-topic\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/content-creative-topic\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/content-creative-topic\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/content-creative-topic\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/content-creative-topic\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Content creative topic" + modelName: "Douyin Content Creative Topics" modelId: "douyin/index/content-creative-topic" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/content-interact-trend.md b/model-api-reference/platform-apis/douyin/index/content-interact-trend.md index afc6cf83..43908c71 100644 --- a/model-api-reference/platform-apis/douyin/index/content-interact-trend.md +++ b/model-api-reference/platform-apis/douyin/index/content-interact-trend.md @@ -1,13 +1,13 @@ --- -title: "Content interact trend API Reference" -description: "SandBase API operation douyin/index/content-interact-trend." +title: "Douyin Category Content Interaction Trend API Reference" +description: "SandBase API reference for model douyin/index/content-interact-trend. Call /v1/api/douyin/index/content-interact-trend; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/content-interact-trend" -apiReferenceJson: "{\"title\":\"Content interact trend\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/content-interact-trend\",\"description\":\"Get interaction (like/comment/share/favorite) trend over time for a category Measures user engagement intensity for content in this category\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD (inclusive)\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD (inclusive)\"},{\"name\":\"tag_id\",\"type\":\"string\",\"required\":true,\"description\":\"Category ID (**required, does NOT support 0=all**, must pass a specific category ID)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/content-interact-trend \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"end_date\\\": \\\"20260414\\\",\\n \\\"start_date\\\": \\\"20260314\\\",\\n \\\"tag_id\\\": \\\"601\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"end_date\\\": \\\"20260414\\\",\\n \\\"start_date\\\": \\\"20260314\\\",\\n \\\"tag_id\\\": \\\"601\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-interact-trend\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"end_date\\\": \\\"20260414\\\",\\n \\\"start_date\\\": \\\"20260314\\\",\\n \\\"tag_id\\\": \\\"601\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-interact-trend\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/content-interact-trend\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/content-interact-trend\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/content-interact-trend\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/content-interact-trend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/content-interact-trend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/content-interact-trend\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Category Content Interaction Trend\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/content-interact-trend\",\"description\":\"Returns engagement rate trends over time for a specific Douyin content category between selected start and end dates.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD (inclusive)\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD (inclusive)\"},{\"name\":\"tag_id\",\"type\":\"string\",\"required\":true,\"description\":\"Category ID (**required, does NOT support 0=all**, must pass a specific category ID)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/content-interact-trend \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"end_date\\\": \\\"20260414\\\",\\n \\\"start_date\\\": \\\"20260314\\\",\\n \\\"tag_id\\\": \\\"601\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"end_date\\\": \\\"20260414\\\",\\n \\\"start_date\\\": \\\"20260314\\\",\\n \\\"tag_id\\\": \\\"601\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-interact-trend\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"end_date\\\": \\\"20260414\\\",\\n \\\"start_date\\\": \\\"20260314\\\",\\n \\\"tag_id\\\": \\\"601\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-interact-trend\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/content-interact-trend\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/content-interact-trend\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/content-interact-trend\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/content-interact-trend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/content-interact-trend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/content-interact-trend\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Content interact trend" + modelName: "Douyin Category Content Interaction Trend" modelId: "douyin/index/content-interact-trend" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/content-publish-trend.md b/model-api-reference/platform-apis/douyin/index/content-publish-trend.md index f10d3d67..1cae8198 100644 --- a/model-api-reference/platform-apis/douyin/index/content-publish-trend.md +++ b/model-api-reference/platform-apis/douyin/index/content-publish-trend.md @@ -1,13 +1,13 @@ --- -title: "Content publish trend API Reference" -description: "SandBase API operation douyin/index/content-publish-trend." +title: "Douyin Content Volume Trend API Reference" +description: "SandBase API reference for model douyin/index/content-publish-trend. Call /v1/api/douyin/index/content-publish-trend; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/content-publish-trend" -apiReferenceJson: "{\"title\":\"Content publish trend\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/content-publish-trend\",\"description\":\"Get the content publish volume trend over time for a category Helps understand content supply heat changes for a category\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD (inclusive)\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD (inclusive)\"},{\"name\":\"tag_id\",\"type\":\"string\",\"required\":true,\"description\":\"Category ID (**required, does NOT support 0=all**, must pass a specific category ID)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/content-publish-trend \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"start_date\\\": \\\"start_date\\\",\\n \\\"tag_id\\\": \\\"tag_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"start_date\\\": \\\"start_date\\\",\\n \\\"tag_id\\\": \\\"tag_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-publish-trend\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"start_date\\\": \\\"start_date\\\",\\n \\\"tag_id\\\": \\\"tag_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-publish-trend\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/content-publish-trend\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/content-publish-trend\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/content-publish-trend\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/content-publish-trend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/content-publish-trend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/content-publish-trend\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Content Volume Trend\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/content-publish-trend\",\"description\":\"Returns content posting volume trends over time for a specified category. Requires a category identifier alongside inclusive start and end dates.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD (inclusive)\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD (inclusive)\"},{\"name\":\"tag_id\",\"type\":\"string\",\"required\":true,\"description\":\"Category ID (**required, does NOT support 0=all**, must pass a specific category ID)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/content-publish-trend \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"start_date\\\": \\\"start_date\\\",\\n \\\"tag_id\\\": \\\"tag_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"start_date\\\": \\\"start_date\\\",\\n \\\"tag_id\\\": \\\"tag_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-publish-trend\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"start_date\\\": \\\"start_date\\\",\\n \\\"tag_id\\\": \\\"tag_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-publish-trend\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/content-publish-trend\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/content-publish-trend\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/content-publish-trend\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/content-publish-trend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/content-publish-trend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/content-publish-trend\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Content publish trend" + modelName: "Douyin Content Volume Trend" modelId: "douyin/index/content-publish-trend" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/content-valid-date.md b/model-api-reference/platform-apis/douyin/index/content-valid-date.md index bf416699..98e12aea 100644 --- a/model-api-reference/platform-apis/douyin/index/content-valid-date.md +++ b/model-api-reference/platform-apis/douyin/index/content-valid-date.md @@ -1,13 +1,13 @@ --- -title: "Get content valid date API Reference" -description: "SandBase API operation douyin/index/content-valid-date." +title: "Douyin Content Guide Valid Dates API Reference" +description: "SandBase API reference for model douyin/index/content-valid-date. Call /v1/api/douyin/index/content-valid-date; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/content-valid-date" -apiReferenceJson: "{\"title\":\"Get content valid date\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/content-valid-date\",\"description\":\"Get valid date range for the creation guide section Imported from a validated TikHub OpenAPI document. Pricing must be reviewed before enabling.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/content-valid-date \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/index/content-valid-date\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/index/content-valid-date\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-valid-date\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/index/content-valid-date\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-valid-date\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/content-valid-date\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/content-valid-date\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/content-valid-date\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/content-valid-date\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/content-valid-date\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/content-valid-date\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Content Guide Valid Dates\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/content-valid-date\",\"description\":\"Returns the valid date ranges supported by the Douyin content guide index. Helps clients determine allowable date intervals before requesting trend and guide statistics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/content-valid-date \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-valid-date\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/content-valid-date\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/content-valid-date\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/content-valid-date\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/content-valid-date\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/content-valid-date\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/content-valid-date\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/content-valid-date\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get content valid date" + modelName: "Douyin Content Guide Valid Dates" modelId: "douyin/index/content-valid-date" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/current-hot-topic.md b/model-api-reference/platform-apis/douyin/index/current-hot-topic.md index 573ab5b9..9052bf4d 100644 --- a/model-api-reference/platform-apis/douyin/index/current-hot-topic.md +++ b/model-api-reference/platform-apis/douyin/index/current-hot-topic.md @@ -1,13 +1,13 @@ --- -title: "Get current hot topics API Reference" -description: "SandBase API operation douyin/index/current-hot-topic." +title: "Douyin Current Hot Topics Leaderboard API Reference" +description: "SandBase API reference for model douyin/index/current-hot-topic. Call /v1/api/douyin/index/current-hot-topic; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/current-hot-topic" -apiReferenceJson: "{\"title\":\"Get current hot topics\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/current-hot-topic\",\"description\":\"Get Douyin real-time hot topics and trending topics leaderboard\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/current-hot-topic \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/index/current-hot-topic\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/index/current-hot-topic\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/current-hot-topic\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/index/current-hot-topic\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/current-hot-topic\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/current-hot-topic\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/current-hot-topic\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/current-hot-topic\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/current-hot-topic\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/current-hot-topic\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/current-hot-topic\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Current Hot Topics Leaderboard\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/current-hot-topic\",\"description\":\"Returns Douyin real-time hot topics and the trending topics leaderboard. Use this endpoint to observe currently viral subjects and platform-wide discussions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/current-hot-topic \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/current-hot-topic\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/current-hot-topic\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/current-hot-topic\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/current-hot-topic\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/current-hot-topic\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/current-hot-topic\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/current-hot-topic\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/current-hot-topic\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get current hot topics" + modelName: "Douyin Current Hot Topics Leaderboard" modelId: "douyin/index/current-hot-topic" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/daren-compare-users-stable.md b/model-api-reference/platform-apis/douyin/index/daren-compare-users-stable.md index f377a8ae..2e561093 100644 --- a/model-api-reference/platform-apis/douyin/index/daren-compare-users-stable.md +++ b/model-api-reference/platform-apis/douyin/index/daren-compare-users-stable.md @@ -1,13 +1,13 @@ --- -title: "Daren compare users API Reference" -description: "SandBase API operation douyin/index/daren-compare-users-stable." +title: "Douyin Creator Comparison Trends API Reference" +description: "SandBase API reference for model douyin/index/daren-compare-users-stable. Call /v1/api/douyin/index/daren-compare-users-stable; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/daren-compare-users-stable" -apiReferenceJson: "{\"title\":\"Daren compare users\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/daren-compare-users-stable\",\"description\":\"Compare trend data of multiple daren/creators (follower growth, engagement, etc.)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"days\",\"type\":\"string\",\"required\":false,\"description\":\"Comparison period, only 7 or 30\",\"constraints\":\"Allowed values: 7, 30\"},{\"name\":\"user_list\",\"type\":\"string\",\"required\":true,\"description\":\"Daren uid list, comma separated, **max 5**\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/daren-compare-users-stable \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_list\\\": \\\"user_list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_list\\\": \\\"user_list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/daren-compare-users-stable\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_list\\\": \\\"user_list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/daren-compare-users-stable\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/daren-compare-users-stable\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/daren-compare-users-stable\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/daren-compare-users-stable\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/daren-compare-users-stable\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/daren-compare-users-stable\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/daren-compare-users-stable\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Creator Comparison Trends\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/daren-compare-users-stable\",\"description\":\"Returns comparative trend metrics, such as follower growth and engagement, for up to five Douyin creators over a selected 7-day or 30-day timeframe.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"days\",\"type\":\"string\",\"required\":false,\"description\":\"Comparison period, only 7 or 30\",\"constraints\":\"Allowed values: 7, 30\"},{\"name\":\"user_list\",\"type\":\"string\",\"required\":true,\"description\":\"Daren uid list, comma separated, **max 5**\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/daren-compare-users-stable \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_list\\\": \\\"user_list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_list\\\": \\\"user_list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/daren-compare-users-stable\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_list\\\": \\\"user_list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/daren-compare-users-stable\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/daren-compare-users-stable\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/daren-compare-users-stable\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/daren-compare-users-stable\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/daren-compare-users-stable\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/daren-compare-users-stable\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/daren-compare-users-stable\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Daren compare users" + modelName: "Douyin Creator Comparison Trends" modelId: "douyin/index/daren-compare-users-stable" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/daren-great-item-mile-info.md b/model-api-reference/platform-apis/douyin/index/daren-great-item-mile-info.md index 527327b4..b852efed 100644 --- a/model-api-reference/platform-apis/douyin/index/daren-great-item-mile-info.md +++ b/model-api-reference/platform-apis/douyin/index/daren-great-item-mile-info.md @@ -1,13 +1,13 @@ --- -title: "Get daren core metrics API Reference" -description: "SandBase API operation douyin/index/daren-great-item-mile-info." +title: "Douyin Daren Core Metrics API Reference" +description: "SandBase API reference for model douyin/index/daren-great-item-mile-info. Call /v1/api/douyin/index/daren-great-item-mile-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/daren-great-item-mile-info" -apiReferenceJson: "{\"title\":\"Get daren core metrics\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/daren-great-item-mile-info\",\"description\":\"Get daren core metrics data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Douyin uid (numeric, e.g. \\\"3100268042915212\\\")\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/daren-great-item-mile-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/daren-great-item-mile-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/daren-great-item-mile-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/daren-great-item-mile-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/daren-great-item-mile-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/daren-great-item-mile-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/daren-great-item-mile-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/daren-great-item-mile-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/daren-great-item-mile-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Daren Core Metrics\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/daren-great-item-mile-info\",\"description\":\"Returns core milestone and performance metrics for a specified Douyin creator. Queries metrics using the creator's unique numeric user ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Douyin uid (numeric, e.g. \\\"3100268042915212\\\")\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/daren-great-item-mile-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/daren-great-item-mile-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/daren-great-item-mile-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/daren-great-item-mile-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/daren-great-item-mile-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/daren-great-item-mile-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/daren-great-item-mile-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/daren-great-item-mile-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/daren-great-item-mile-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get daren core metrics" + modelName: "Douyin Daren Core Metrics" modelId: "douyin/index/daren-great-item-mile-info" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/daren-great-user-fans-info.md b/model-api-reference/platform-apis/douyin/index/daren-great-user-fans-info.md index 05b5487f..2403ca1e 100644 --- a/model-api-reference/platform-apis/douyin/index/daren-great-user-fans-info.md +++ b/model-api-reference/platform-apis/douyin/index/daren-great-user-fans-info.md @@ -1,13 +1,13 @@ --- -title: "Get daren fans analysis API Reference" -description: "SandBase API operation douyin/index/daren-great-user-fans-info." +title: "Douyin Daren Fan Analysis API Reference" +description: "SandBase API reference for model douyin/index/daren-great-user-fans-info. Call /v1/api/douyin/index/daren-great-user-fans-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/daren-great-user-fans-info" -apiReferenceJson: "{\"title\":\"Get daren fans analysis\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/daren-great-user-fans-info\",\"description\":\"Get daren fans analysis data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Douyin uid (numeric, e.g. \\\"3100268042915212\\\")\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/daren-great-user-fans-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/daren-great-user-fans-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/daren-great-user-fans-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/daren-great-user-fans-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/daren-great-user-fans-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/daren-great-user-fans-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/daren-great-user-fans-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/daren-great-user-fans-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/daren-great-user-fans-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Daren Fan Analysis\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/daren-great-user-fans-info\",\"description\":\"Returns audience and follower analysis data for a specified Douyin influencer. Queries metrics using the influencer's numeric user ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Douyin uid (numeric, e.g. \\\"3100268042915212\\\")\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/daren-great-user-fans-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/daren-great-user-fans-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/daren-great-user-fans-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/daren-great-user-fans-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/daren-great-user-fans-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/daren-great-user-fans-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/daren-great-user-fans-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/daren-great-user-fans-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/daren-great-user-fans-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get daren fans analysis" + modelName: "Douyin Daren Fan Analysis" modelId: "douyin/index/daren-great-user-fans-info" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/daren-great-user-top-video.md b/model-api-reference/platform-apis/douyin/index/daren-great-user-top-video.md index a2fae8ca..9f431c0f 100644 --- a/model-api-reference/platform-apis/douyin/index/daren-great-user-top-video.md +++ b/model-api-reference/platform-apis/douyin/index/daren-great-user-top-video.md @@ -1,13 +1,13 @@ --- -title: "Get daren top videos API Reference" -description: "SandBase API operation douyin/index/daren-great-user-top-video." +title: "Douyin Creator Top Videos API Reference" +description: "SandBase API reference for model douyin/index/daren-great-user-top-video. Call /v1/api/douyin/index/daren-great-user-top-video; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/daren-great-user-top-video" -apiReferenceJson: "{\"title\":\"Get daren top videos\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/daren-great-user-top-video\",\"description\":\"Get daren's top video list in a specified time range\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date, format YYYYMMDD\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date, format YYYYMMDD\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Douyin uid (numeric, e.g. \\\"3100268042915212\\\")\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/daren-great-user-top-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"start_date\\\": \\\"start_date\\\",\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"start_date\\\": \\\"start_date\\\",\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/daren-great-user-top-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"start_date\\\": \\\"start_date\\\",\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/daren-great-user-top-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/daren-great-user-top-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/daren-great-user-top-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/daren-great-user-top-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/daren-great-user-top-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/daren-great-user-top-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/daren-great-user-top-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Creator Top Videos\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/daren-great-user-top-video\",\"description\":\"Returns a Douyin creator's top-performing video list across a specified date range, based on creator ID and date filters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date, format YYYYMMDD\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date, format YYYYMMDD\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Douyin uid (numeric, e.g. \\\"3100268042915212\\\")\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/daren-great-user-top-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"start_date\\\": \\\"start_date\\\",\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"start_date\\\": \\\"start_date\\\",\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/daren-great-user-top-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"start_date\\\": \\\"start_date\\\",\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/daren-great-user-top-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/daren-great-user-top-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/daren-great-user-top-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/daren-great-user-top-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/daren-great-user-top-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/daren-great-user-top-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/daren-great-user-top-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get daren top videos" + modelName: "Douyin Creator Top Videos" modelId: "douyin/index/daren-great-user-top-video" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/daren-similar-users.md b/model-api-reference/platform-apis/douyin/index/daren-similar-users.md index 8431fd1e..795ab955 100644 --- a/model-api-reference/platform-apis/douyin/index/daren-similar-users.md +++ b/model-api-reference/platform-apis/douyin/index/daren-similar-users.md @@ -1,13 +1,13 @@ --- -title: "Get similar daren API Reference" -description: "SandBase API operation douyin/index/daren-similar-users." +title: "Douyin Similar Daren Accounts API Reference" +description: "SandBase API reference for model douyin/index/daren-similar-users. Call /v1/api/douyin/index/daren-similar-users; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/daren-similar-users" -apiReferenceJson: "{\"title\":\"Get similar daren\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/daren-similar-users\",\"description\":\"Get similar daren/creators to a specified user\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Douyin uid (numeric, e.g. \\\"3100268042915212\\\")\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/daren-similar-users \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/daren-similar-users\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/daren-similar-users\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/daren-similar-users\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/daren-similar-users\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/daren-similar-users\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/daren-similar-users\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/daren-similar-users\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/daren-similar-users\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Similar Daren Accounts\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/daren-similar-users\",\"description\":\"Returns a list of similar Douyin daren accounts based on a specified user profile. Supply a target user identifier to discover comparable talent and content channels across the platform.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Douyin uid (numeric, e.g. \\\"3100268042915212\\\")\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/daren-similar-users \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/daren-similar-users\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/daren-similar-users\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/daren-similar-users\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/daren-similar-users\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/daren-similar-users\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/daren-similar-users\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/daren-similar-users\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/daren-similar-users\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get similar daren" + modelName: "Douyin Similar Daren Accounts" modelId: "douyin/index/daren-similar-users" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/daren-sug-great-user-list.md b/model-api-reference/platform-apis/douyin/index/daren-sug-great-user-list.md index f7070434..784e7501 100644 --- a/model-api-reference/platform-apis/douyin/index/daren-sug-great-user-list.md +++ b/model-api-reference/platform-apis/douyin/index/daren-sug-great-user-list.md @@ -1,13 +1,13 @@ --- -title: "Daren search suggest API Reference" -description: "SandBase API operation douyin/index/daren-sug-great-user-list." +title: "Douyin Creator Search Suggestions API Reference" +description: "SandBase API reference for model douyin/index/daren-sug-great-user-list. Call /v1/api/douyin/index/daren-sug-great-user-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/daren-sug-great-user-list" -apiReferenceJson: "{\"title\":\"Daren search suggest\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/daren-sug-great-user-list\",\"description\":\"Search for daren/creators, get suggestion list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Daren nickname keyword\"},{\"name\":\"total\",\"type\":\"string\",\"required\":false,\"description\":\"Return count, default 20\",\"default\":\"20\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/daren-sug-great-user-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/daren-sug-great-user-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"人工智能\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/daren-sug-great-user-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/daren-sug-great-user-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/daren-sug-great-user-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/daren-sug-great-user-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/daren-sug-great-user-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/daren-sug-great-user-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/daren-sug-great-user-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Creator Search Suggestions\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/daren-sug-great-user-list\",\"description\":\"Returns creator suggestions on Douyin matching a query nickname. Includes profile details, content category tags, follower totals, and item counts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Daren nickname keyword\"},{\"name\":\"total\",\"type\":\"string\",\"required\":false,\"description\":\"Return count, default 20\",\"default\":\"20\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/daren-sug-great-user-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/daren-sug-great-user-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"人工智能\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/daren-sug-great-user-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/daren-sug-great-user-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/daren-sug-great-user-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/daren-sug-great-user-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/daren-sug-great-user-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/daren-sug-great-user-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/daren-sug-great-user-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Daren search suggest" + modelName: "Douyin Creator Search Suggestions" modelId: "douyin/index/daren-sug-great-user-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/encrypt-user-id.md b/model-api-reference/platform-apis/douyin/index/encrypt-user-id.md index 0f7eeda5..7f13bdcc 100644 --- a/model-api-reference/platform-apis/douyin/index/encrypt-user-id.md +++ b/model-api-reference/platform-apis/douyin/index/encrypt-user-id.md @@ -1,13 +1,13 @@ --- -title: "Encrypt Douyin uid to user_id API Reference" -description: "SandBase API operation douyin/index/encrypt-user-id." +title: "Douyin Index User ID Encryption API Reference" +description: "SandBase API reference for model douyin/index/encrypt-user-id. Call /v1/api/douyin/index/encrypt-user-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/encrypt-user-id" -apiReferenceJson: "{\"title\":\"Encrypt Douyin uid to user_id\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/encrypt-user-id\",\"description\":\"Convert a Douyin uid (numeric) to the encrypted user_id used internally by Douyin Index API The daren-related endpoints already handle this conversion automatically, so you usually do NOT need to call this endpoint manually Only useful for debugging or when you need the encrypted user_id directly\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"Douyin uid, numeric string\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/encrypt-user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/encrypt-user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/encrypt-user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/encrypt-user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/encrypt-user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/encrypt-user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/encrypt-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/encrypt-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/encrypt-user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Index User ID Encryption\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/encrypt-user-id\",\"description\":\"Converts a standard numeric Douyin uid into the encrypted user_id required by Douyin Index endpoints for debugging or custom queries.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"Douyin uid, numeric string\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/encrypt-user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"92769419069\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"92769419069\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/encrypt-user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"92769419069\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/encrypt-user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/encrypt-user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/encrypt-user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/encrypt-user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/encrypt-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/encrypt-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/encrypt-user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Encrypt Douyin uid to user_id" + modelName: "Douyin Index User ID Encryption" modelId: "douyin/index/encrypt-user-id" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/get-user-sub-word.md b/model-api-reference/platform-apis/douyin/index/get-user-sub-word.md index 22f2b6e3..d8ef288f 100644 --- a/model-api-reference/platform-apis/douyin/index/get-user-sub-word.md +++ b/model-api-reference/platform-apis/douyin/index/get-user-sub-word.md @@ -1,13 +1,13 @@ --- -title: "Get user subscribed keywords API Reference" -description: "SandBase API operation douyin/index/get-user-sub-word." +title: "Douyin Index Subscribed Keywords API Reference" +description: "SandBase API reference for model douyin/index/get-user-sub-word. Call /v1/api/douyin/index/get-user-sub-word; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/get-user-sub-word" -apiReferenceJson: "{\"title\":\"Get user subscribed keywords\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/get-user-sub-word\",\"description\":\"Get subscribed keyword list for the current logged-in user in Douyin Index\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/get-user-sub-word \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/index/get-user-sub-word\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/index/get-user-sub-word\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/get-user-sub-word\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/index/get-user-sub-word\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/get-user-sub-word\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/get-user-sub-word\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/get-user-sub-word\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/get-user-sub-word\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/get-user-sub-word\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/get-user-sub-word\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/get-user-sub-word\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Index Subscribed Keywords\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/get-user-sub-word\",\"description\":\"Returns the list of subscribed keywords configured by the current logged-in user on Douyin Index. Useful for retrieving tracked topics without manual lookup.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/get-user-sub-word \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/get-user-sub-word\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/get-user-sub-word\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/get-user-sub-word\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/get-user-sub-word\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/get-user-sub-word\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/get-user-sub-word\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/get-user-sub-word\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/get-user-sub-word\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user subscribed keywords" + modelName: "Douyin Index Subscribed Keywords" modelId: "douyin/index/get-user-sub-word" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/hot-detail.md b/model-api-reference/platform-apis/douyin/index/hot-detail.md index 3a9cd19a..174aea89 100644 --- a/model-api-reference/platform-apis/douyin/index/hot-detail.md +++ b/model-api-reference/platform-apis/douyin/index/hot-detail.md @@ -1,13 +1,13 @@ --- -title: "Get hot topic detail API Reference" -description: "SandBase API operation douyin/index/hot-detail." +title: "Douyin Hot Topic Detail Analysis API Reference" +description: "Douyin Hot Topic Detail Analysis API reference for SandBase. Use model douyin/index/hot-detail with /v1/api/douyin/index/hot-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/hot-detail" -apiReferenceJson: "{\"title\":\"Get hot topic detail\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/hot-detail\",\"description\":\"Get full analysis of a single hot topic; one request covers every module of the hot topic detail page\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"topic_name\",\"type\":\"string\",\"required\":true,\"description\":\"Hot topic name, obtained from fetch_current_hot_topic results\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/hot-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"topic_name\\\": \\\"人工智能\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"topic_name\\\": \\\"人工智能\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/hot-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"topic_name\\\": \\\"人工智能\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/hot-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/hot-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/hot-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/hot-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/hot-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/hot-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/hot-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Hot Topic Detail Analysis\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/hot-detail\",\"description\":\"Returns comprehensive trend analysis metrics for a specified Douyin hot topic. Requires a topic name sourced from the hot topic list.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"topic_name\",\"type\":\"string\",\"required\":true,\"description\":\"Hot topic name, obtained from fetch_current_hot_topic results\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/hot-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"topic_name\\\": \\\"人工智能\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"topic_name\\\": \\\"人工智能\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/hot-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"topic_name\\\": \\\"人工智能\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/hot-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/hot-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/hot-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/hot-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/hot-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/hot-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/hot-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get hot topic detail" + modelName: "Douyin Hot Topic Detail Analysis" modelId: "douyin/index/hot-detail" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/hot-trend-word.md b/model-api-reference/platform-apis/douyin/index/hot-trend-word.md index f91f7964..d55acb66 100644 --- a/model-api-reference/platform-apis/douyin/index/hot-trend-word.md +++ b/model-api-reference/platform-apis/douyin/index/hot-trend-word.md @@ -1,13 +1,13 @@ --- -title: "Get hot trend words API Reference" -description: "SandBase API operation douyin/index/hot-trend-word." +title: "Douyin Hot Trend Words API Reference" +description: "Douyin Hot Trend Words API reference for SandBase. Use model douyin/index/hot-trend-word with /v1/api/douyin/index/hot-trend-word; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/hot-trend-word" -apiReferenceJson: "{\"title\":\"Get hot trend words\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/hot-trend-word\",\"description\":\"Get hot trend words suggested in the keyword index search box, used as input suggestions for keyword index analysis Note: This is NOT the real-time hot topic leaderboard. For real-time and rocketing hot topics use fetch_current_hot_topic\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_name\",\"type\":\"string\",\"required\":false,\"description\":\"Platform, aweme=Douyin, toutiao=Toutiao (toutiao currently returns empty)\",\"default\":\"aweme\",\"constraints\":\"Allowed values: aweme, toutiao\"},{\"name\":\"type\",\"type\":\"integer\",\"required\":false,\"description\":\"Word type, 0=search words (plain words, id is always \\\"0\\\"),\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/hot-trend-word \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/index/hot-trend-word\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/index/hot-trend-word\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/hot-trend-word\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/index/hot-trend-word\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/hot-trend-word\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/hot-trend-word\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/hot-trend-word\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/hot-trend-word\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/hot-trend-word\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/hot-trend-word\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/hot-trend-word\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Hot Trend Words\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/hot-trend-word\",\"description\":\"Returns trending search words suggested in the keyword index search box. Filter by platform and word type to retrieve relevant search suggestions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_name\",\"type\":\"string\",\"required\":false,\"description\":\"Platform, aweme=Douyin, toutiao=Toutiao (toutiao currently returns empty)\",\"default\":\"aweme\",\"constraints\":\"Allowed values: aweme, toutiao\"},{\"name\":\"type\",\"type\":\"integer\",\"required\":false,\"description\":\"Word type, 0=search words (plain words, id is always \\\"0\\\"),\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/hot-trend-word \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/hot-trend-word\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/hot-trend-word\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/hot-trend-word\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/hot-trend-word\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/hot-trend-word\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/hot-trend-word\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/hot-trend-word\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/hot-trend-word\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get hot trend words" + modelName: "Douyin Hot Trend Words" modelId: "douyin/index/hot-trend-word" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/hot-words.md b/model-api-reference/platform-apis/douyin/index/hot-words.md index 169d8a14..122d1803 100644 --- a/model-api-reference/platform-apis/douyin/index/hot-words.md +++ b/model-api-reference/platform-apis/douyin/index/hot-words.md @@ -1,13 +1,13 @@ --- -title: "Get hot words API Reference" -description: "SandBase API operation douyin/index/hot-words." +title: "Douyin Hot Search Keywords API Reference" +description: "Douyin Hot Search Keywords API reference for SandBase. Use model douyin/index/hot-words with /v1/api/douyin/index/hot-words; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/hot-words" -apiReferenceJson: "{\"title\":\"Get hot words\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/hot-words\",\"description\":\"Get current hot search keywords list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_name\",\"type\":\"string\",\"required\":false,\"description\":\"Platform, aweme=Douyin, toutiao=Toutiao\",\"default\":\"aweme\",\"constraints\":\"Allowed values: aweme, toutiao\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/hot-words \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/index/hot-words\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/index/hot-words\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/hot-words\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/index/hot-words\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/hot-words\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/hot-words\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/hot-words\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/hot-words\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/hot-words\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/hot-words\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/hot-words\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Hot Search Keywords\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/hot-words\",\"description\":\"Returns a list of current trending search keywords and their growth rates on Douyin or Toutiao. Results can be filtered by the target platform application.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_name\",\"type\":\"string\",\"required\":false,\"description\":\"Platform, aweme=Douyin, toutiao=Toutiao\",\"default\":\"aweme\",\"constraints\":\"Allowed values: aweme, toutiao\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/hot-words \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/hot-words\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/hot-words\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/hot-words\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/hot-words\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/hot-words\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/hot-words\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/hot-words\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/hot-words\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get hot words" + modelName: "Douyin Hot Search Keywords" modelId: "douyin/index/hot-words" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/insight-get-rec.md b/model-api-reference/platform-apis/douyin/index/insight-get-rec.md index f954bc93..ee72404a 100644 --- a/model-api-reference/platform-apis/douyin/index/insight-get-rec.md +++ b/model-api-reference/platform-apis/douyin/index/insight-get-rec.md @@ -1,13 +1,13 @@ --- -title: "Get related insight recommendations API Reference" -description: "SandBase API operation douyin/index/insight-get-rec." +title: "Douyin Related Insight Recommendations API Reference" +description: "SandBase API reference for model douyin/index/insight-get-rec. Call /v1/api/douyin/index/insight-get-rec; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/insight-get-rec" -apiReferenceJson: "{\"title\":\"Get related insight recommendations\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/insight-get-rec\",\"description\":\"Get related insight recommendations based on a current report ID Typically used for the \\\"Related\\\" module on a report detail page\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"report_id\",\"type\":\"string\",\"required\":true,\"description\":\"ID of the report currently being viewed (from fetch_report_search\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/insight-get-rec \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"report_id\\\": \\\"report_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"report_id\\\": \\\"report_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/insight-get-rec\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"report_id\\\": \\\"report_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/insight-get-rec\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/insight-get-rec\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/insight-get-rec\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/insight-get-rec\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/insight-get-rec\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/insight-get-rec\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/insight-get-rec\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Related Insight Recommendations\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/insight-get-rec\",\"description\":\"Returns related insight report recommendations for a specified report ID. Useful for populating related content sections on report detail pages.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"report_id\",\"type\":\"string\",\"required\":true,\"description\":\"ID of the report currently being viewed (from fetch_report_search\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/insight-get-rec \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"report_id\\\": \\\"report_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"report_id\\\": \\\"report_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/insight-get-rec\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"report_id\\\": \\\"report_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/insight-get-rec\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/insight-get-rec\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/insight-get-rec\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/insight-get-rec\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/insight-get-rec\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/insight-get-rec\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/insight-get-rec\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get related insight recommendations" + modelName: "Douyin Related Insight Recommendations" modelId: "douyin/index/insight-get-rec" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/insight-recommend.md b/model-api-reference/platform-apis/douyin/index/insight-recommend.md index d3ea92d9..237bfbe9 100644 --- a/model-api-reference/platform-apis/douyin/index/insight-recommend.md +++ b/model-api-reference/platform-apis/douyin/index/insight-recommend.md @@ -1,13 +1,13 @@ --- -title: "Get recommended insight reports API Reference" -description: "SandBase API operation douyin/index/insight-recommend." +title: "Douyin Recommended Insight Reports API Reference" +description: "SandBase API reference for model douyin/index/insight-recommend. Call /v1/api/douyin/index/insight-recommend; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/insight-recommend" -apiReferenceJson: "{\"title\":\"Get recommended insight reports\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/insight-recommend\",\"description\":\"Get the list of recommended trend insight reports on the home page Imported from a validated TikHub OpenAPI document. Pricing must be reviewed before enabling.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/insight-recommend \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/index/insight-recommend\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/index/insight-recommend\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/insight-recommend\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/index/insight-recommend\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/insight-recommend\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/insight-recommend\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/insight-recommend\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/insight-recommend\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/insight-recommend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/insight-recommend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/insight-recommend\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Recommended Insight Reports\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/insight-recommend\",\"description\":\"Returns recommended trend insight reports featured on the Douyin index home page. Useful for tracking high-level platform trends and discovering top reports without specifying filters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/insight-recommend \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/insight-recommend\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/insight-recommend\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/insight-recommend\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/insight-recommend\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/insight-recommend\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/insight-recommend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/insight-recommend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/insight-recommend\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get recommended insight reports" + modelName: "Douyin Recommended Insight Reports" modelId: "douyin/index/insight-recommend" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/item-analysis.md b/model-api-reference/platform-apis/douyin/index/item-analysis.md index 3f563c31..d7657aac 100644 --- a/model-api-reference/platform-apis/douyin/index/item-analysis.md +++ b/model-api-reference/platform-apis/douyin/index/item-analysis.md @@ -1,13 +1,13 @@ --- -title: "Get video comparison analysis API Reference" -description: "SandBase API operation douyin/index/item-analysis." +title: "Douyin Video Comparison Analysis API Reference" +description: "SandBase API reference for model douyin/index/item-analysis. Call /v1/api/douyin/index/item-analysis; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/item-analysis" -apiReferenceJson: "{\"title\":\"Get video comparison analysis\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/item-analysis\",\"description\":\"Get comparison analysis for a video (performance vs. similar videos / benchmark)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID (Douyin aweme id, numeric string)\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/item-analysis \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"end_date\\\": \\\"20260710\\\",\\n \\\"item_id\\\": \\\"7660090930283744575\\\",\\n \\\"start_date\\\": \\\"20260704\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"end_date\\\": \\\"20260710\\\",\\n \\\"item_id\\\": \\\"7660090930283744575\\\",\\n \\\"start_date\\\": \\\"20260704\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-analysis\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"end_date\\\": \\\"20260710\\\",\\n \\\"item_id\\\": \\\"7660090930283744575\\\",\\n \\\"start_date\\\": \\\"20260704\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-analysis\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/item-analysis\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/item-analysis\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/item-analysis\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/item-analysis\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/item-analysis\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/item-analysis\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Video Comparison Analysis\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/item-analysis\",\"description\":\"Returns comparison analysis and metric trends for a Douyin video relative to benchmarks or similar content over a date range, based on the specified video ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID (Douyin aweme id, numeric string)\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/item-analysis \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"end_date\\\": \\\"20260710\\\",\\n \\\"item_id\\\": \\\"7660090930283744575\\\",\\n \\\"start_date\\\": \\\"20260704\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"end_date\\\": \\\"20260710\\\",\\n \\\"item_id\\\": \\\"7660090930283744575\\\",\\n \\\"start_date\\\": \\\"20260704\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-analysis\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"end_date\\\": \\\"20260710\\\",\\n \\\"item_id\\\": \\\"7660090930283744575\\\",\\n \\\"start_date\\\": \\\"20260704\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-analysis\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/item-analysis\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/item-analysis\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/item-analysis\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/item-analysis\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/item-analysis\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/item-analysis\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video comparison analysis" + modelName: "Douyin Video Comparison Analysis" modelId: "douyin/index/item-analysis" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/item-base.md b/model-api-reference/platform-apis/douyin/index/item-base.md deleted file mode 100644 index 9e6e25c8..00000000 --- a/model-api-reference/platform-apis/douyin/index/item-base.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get video detail API Reference — Douyin Index / Item Base API" -description: "SandBase API operation douyin/index/item-base." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/index/item-base" -apiReferenceJson: "{\"title\":\"Get video detail\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/item-base\",\"description\":\"Get the basic detail of a video in Douyin Index video analysis\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID (Douyin aweme id, numeric string)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/item-base \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"item_id\\\": \\\"7660090930283744575\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"item_id\\\": \\\"7660090930283744575\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-base\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"item_id\\\": \\\"7660090930283744575\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-base\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/item-base\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/item-base\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/item-base\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/item-base\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/item-base\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/item-base\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get video detail" - modelId: "douyin/index/item-base" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "index/item-base" - protocol: "API Reference" - endpoint: "/v1/api/douyin/index/item-base" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/index/item-filter-options.md b/model-api-reference/platform-apis/douyin/index/item-filter-options.md index 6af31920..16462f7b 100644 --- a/model-api-reference/platform-apis/douyin/index/item-filter-options.md +++ b/model-api-reference/platform-apis/douyin/index/item-filter-options.md @@ -1,13 +1,13 @@ --- -title: "Get video search filter options API Reference" -description: "SandBase API operation douyin/index/item-filter-options." +title: "Douyin Video Search Filter Options API Reference" +description: "SandBase API reference for model douyin/index/item-filter-options. Call /v1/api/douyin/index/item-filter-options; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/item-filter-options" -apiReferenceJson: "{\"title\":\"Get video search filter options\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/item-filter-options\",\"description\":\"Get all supported filter values for the `fetch_item_query` video search endpoint Returns: categories, duration_types, label_types, date_types Use this endpoint to discover valid IDs before calling `fetch_item_query`\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/item-filter-options \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/index/item-filter-options\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/index/item-filter-options\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-filter-options\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/index/item-filter-options\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-filter-options\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/item-filter-options\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/item-filter-options\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/item-filter-options\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/item-filter-options\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/item-filter-options\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/item-filter-options\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Video Search Filter Options\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/item-filter-options\",\"description\":\"Returns all supported filter options and permissible values for Douyin video search queries. Use these criteria to construct structured search requests.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/item-filter-options \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-filter-options\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-filter-options\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/item-filter-options\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/item-filter-options\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/item-filter-options\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/item-filter-options\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/item-filter-options\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/item-filter-options\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video search filter options" + modelName: "Douyin Video Search Filter Options" modelId: "douyin/index/item-filter-options" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/item-index-interpret.md b/model-api-reference/platform-apis/douyin/index/item-index-interpret.md index d16bbc59..840162e3 100644 --- a/model-api-reference/platform-apis/douyin/index/item-index-interpret.md +++ b/model-api-reference/platform-apis/douyin/index/item-index-interpret.md @@ -1,13 +1,13 @@ --- -title: "Get video index interpretation API Reference" -description: "SandBase API operation douyin/index/item-index-interpret." +title: "Douyin Video Index Interpretation API Reference" +description: "SandBase API reference for model douyin/index/item-index-interpret. Call /v1/api/douyin/index/item-index-interpret; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/item-index-interpret" -apiReferenceJson: "{\"title\":\"Get video index interpretation\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/item-index-interpret\",\"description\":\"Get the interpretation of a video's index (breakdown of each sub-index) Recommended to use together with fetch_item_index\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID (Douyin aweme id, numeric string)\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/item-index-interpret \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"end_date\\\": \\\"20260710\\\",\\n \\\"item_id\\\": \\\"7660090930283744575\\\",\\n \\\"start_date\\\": \\\"20260704\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"end_date\\\": \\\"20260710\\\",\\n \\\"item_id\\\": \\\"7660090930283744575\\\",\\n \\\"start_date\\\": \\\"20260704\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-index-interpret\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"end_date\\\": \\\"20260710\\\",\\n \\\"item_id\\\": \\\"7660090930283744575\\\",\\n \\\"start_date\\\": \\\"20260704\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-index-interpret\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/item-index-interpret\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/item-index-interpret\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/item-index-interpret\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/item-index-interpret\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/item-index-interpret\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/item-index-interpret\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Video Index Interpretation\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/item-index-interpret\",\"description\":\"Returns index breakdown metrics for a specified Douyin video across a date range. It provides sub-index interpretations using a video ID with start and end dates.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID (Douyin aweme id, numeric string)\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/item-index-interpret \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"end_date\\\": \\\"20260710\\\",\\n \\\"item_id\\\": \\\"7660090930283744575\\\",\\n \\\"start_date\\\": \\\"20260704\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"end_date\\\": \\\"20260710\\\",\\n \\\"item_id\\\": \\\"7660090930283744575\\\",\\n \\\"start_date\\\": \\\"20260704\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-index-interpret\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"end_date\\\": \\\"20260710\\\",\\n \\\"item_id\\\": \\\"7660090930283744575\\\",\\n \\\"start_date\\\": \\\"20260704\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-index-interpret\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/item-index-interpret\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/item-index-interpret\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/item-index-interpret\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/item-index-interpret\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/item-index-interpret\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/item-index-interpret\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video index interpretation" + modelName: "Douyin Video Index Interpretation" modelId: "douyin/index/item-index-interpret" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/item-index.md b/model-api-reference/platform-apis/douyin/index/item-index.md index e4506709..247a3ea8 100644 --- a/model-api-reference/platform-apis/douyin/index/item-index.md +++ b/model-api-reference/platform-apis/douyin/index/item-index.md @@ -1,13 +1,13 @@ --- -title: "Get video index trend API Reference" -description: "SandBase API operation douyin/index/item-index." +title: "Douyin Video Index Trend API Reference" +description: "Douyin Video Index Trend API reference for SandBase. Use model douyin/index/item-index with /v1/api/douyin/index/item-index; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/item-index" -apiReferenceJson: "{\"title\":\"Get video index trend\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/item-index\",\"description\":\"Get the video index trend for a video over a date range\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID (Douyin aweme id, numeric string)\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/item-index \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"end_date\\\": \\\"20260710\\\",\\n \\\"item_id\\\": \\\"7660090930283744575\\\",\\n \\\"start_date\\\": \\\"20260704\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"end_date\\\": \\\"20260710\\\",\\n \\\"item_id\\\": \\\"7660090930283744575\\\",\\n \\\"start_date\\\": \\\"20260704\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-index\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"end_date\\\": \\\"20260710\\\",\\n \\\"item_id\\\": \\\"7660090930283744575\\\",\\n \\\"start_date\\\": \\\"20260704\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-index\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/item-index\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/item-index\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/item-index\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/item-index\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/item-index\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/item-index\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Video Index Trend\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/item-index\",\"description\":\"Returns historical index trend data points for a specified Douyin video over a designated period defined by start and end dates.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID (Douyin aweme id, numeric string)\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/item-index \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"end_date\\\": \\\"20260710\\\",\\n \\\"item_id\\\": \\\"7660090930283744575\\\",\\n \\\"start_date\\\": \\\"20260704\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"end_date\\\": \\\"20260710\\\",\\n \\\"item_id\\\": \\\"7660090930283744575\\\",\\n \\\"start_date\\\": \\\"20260704\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-index\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"end_date\\\": \\\"20260710\\\",\\n \\\"item_id\\\": \\\"7660090930283744575\\\",\\n \\\"start_date\\\": \\\"20260704\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-index\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/item-index\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/item-index\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/item-index\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/item-index\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/item-index\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/item-index\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video index trend" + modelName: "Douyin Video Index Trend" modelId: "douyin/index/item-index" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/item-query.md b/model-api-reference/platform-apis/douyin/index/item-query.md index b0b92154..44a574bd 100644 --- a/model-api-reference/platform-apis/douyin/index/item-query.md +++ b/model-api-reference/platform-apis/douyin/index/item-query.md @@ -1,13 +1,13 @@ --- -title: "Video search results API Reference" -description: "SandBase API operation douyin/index/item-query." +title: "Douyin Index Video Search API Reference" +description: "Douyin Index Video Search API reference for SandBase. Use model douyin/index/item-query with /v1/api/douyin/index/item-query; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/item-query" -apiReferenceJson: "{\"title\":\"Video search results\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/item-query\",\"description\":\"Search the Douyin Index video library with 4-dimensional filters: category, duration, label type, publish date Results contain basic video info plus core metrics (plays, likes, followers, etc.)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"category_id\",\"type\":\"string\",\"required\":false,\"description\":\"Category ID (string), default \\\"0\\\"=all\",\"default\":\"0\"},{\"name\":\"date_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Publish date filter, default 0=any\",\"default\":\"0\"},{\"name\":\"duration_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration filter, default 0=any\",\"default\":\"0\"},{\"name\":\"label_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Video type (quality tag), default 0=any\",\"default\":\"0\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required), e.g. \\\"food\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/item-query \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"美食\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"美食\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-query\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"美食\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-query\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/item-query\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/item-query\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/item-query\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/item-query\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/item-query\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/item-query\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Index Video Search\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/item-query\",\"description\":\"Search Douyin Index videos by keyword with filters for post date, duration, category, and label type. Returns video metadata and performance metrics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"category_id\",\"type\":\"string\",\"required\":false,\"description\":\"Category ID (string), default \\\"0\\\"=all\",\"default\":\"0\"},{\"name\":\"date_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Publish date filter, default 0=any\",\"default\":\"0\"},{\"name\":\"duration_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration filter, default 0=any\",\"default\":\"0\"},{\"name\":\"label_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Video type (quality tag), default 0=any\",\"default\":\"0\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required), e.g. \\\"food\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/item-query \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"美食\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"美食\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-query\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"美食\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-query\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/item-query\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/item-query\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/item-query\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/item-query\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/item-query\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/item-query\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Video search results" + modelName: "Douyin Index Video Search" modelId: "douyin/index/item-query" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/item-sug.md b/model-api-reference/platform-apis/douyin/index/item-sug.md index 13b90968..962dc593 100644 --- a/model-api-reference/platform-apis/douyin/index/item-sug.md +++ b/model-api-reference/platform-apis/douyin/index/item-sug.md @@ -1,13 +1,13 @@ --- -title: "Video search suggest API Reference" -description: "SandBase API operation douyin/index/item-sug." +title: "Douyin Video Search Suggestions API Reference" +description: "Douyin Video Search Suggestions API reference for SandBase. Use model douyin/index/item-sug with /v1/api/douyin/index/item-sug; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/item-sug" -apiReferenceJson: "{\"title\":\"Video search suggest\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/item-sug\",\"description\":\"Get keyword auto-complete suggestions for video search\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/item-sug \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"人工智能\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"人工智能\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-sug\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"人工智能\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-sug\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/item-sug\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/item-sug\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/item-sug\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/item-sug\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/item-sug\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/item-sug\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Video Search Suggestions\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/item-sug\",\"description\":\"Returns search suggestions and related video items based on a keyword query. Includes video titles, URLs, like counts, and author nicknames.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/item-sug \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"人工智能\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"人工智能\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-sug\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"人工智能\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-sug\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/item-sug\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/item-sug\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/item-sug\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/item-sug\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/item-sug\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/item-sug\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Video search suggest" + modelName: "Douyin Video Search Suggestions" modelId: "douyin/index/item-sug" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/item-user-profile.md b/model-api-reference/platform-apis/douyin/index/item-user-profile.md index 97e6ae0b..05f8e14f 100644 --- a/model-api-reference/platform-apis/douyin/index/item-user-profile.md +++ b/model-api-reference/platform-apis/douyin/index/item-user-profile.md @@ -1,13 +1,13 @@ --- -title: "Get video audience profile API Reference" -description: "SandBase API operation douyin/index/item-user-profile." +title: "Douyin Video Audience Profile API Reference" +description: "SandBase API reference for model douyin/index/item-user-profile. Call /v1/api/douyin/index/item-user-profile; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/item-user-profile" -apiReferenceJson: "{\"title\":\"Get video audience profile\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/item-user-profile\",\"description\":\"Get the audience portrait for a video\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID (Douyin aweme id, numeric string)\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/item-user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"item_id\\\": \\\"item_id\\\",\\n \\\"start_date\\\": \\\"start_date\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"item_id\\\": \\\"item_id\\\",\\n \\\"start_date\\\": \\\"start_date\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"item_id\\\": \\\"item_id\\\",\\n \\\"start_date\\\": \\\"start_date\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/item-user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/item-user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/item-user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/item-user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/item-user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/item-user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Video Audience Profile\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/item-user-profile\",\"description\":\"Returns the audience portrait and demographic breakdown for a Douyin video across a specified date range. Filter results using item ID and date parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID (Douyin aweme id, numeric string)\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/item-user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"item_id\\\": \\\"7692766887218950514\\\",\\n \\\"start_date\\\": \\\"1730044800\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"item_id\\\": \\\"7692766887218950514\\\",\\n \\\"start_date\\\": \\\"1730044800\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"item_id\\\": \\\"7692766887218950514\\\",\\n \\\"start_date\\\": \\\"1730044800\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/item-user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/item-user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/item-user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/item-user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/item-user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/item-user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/item-user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video audience profile" + modelName: "Douyin Video Audience Profile" modelId: "douyin/index/item-user-profile" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/keyword-valid-date.md b/model-api-reference/platform-apis/douyin/index/keyword-valid-date.md index 8fd22c35..a34857c7 100644 --- a/model-api-reference/platform-apis/douyin/index/keyword-valid-date.md +++ b/model-api-reference/platform-apis/douyin/index/keyword-valid-date.md @@ -1,13 +1,13 @@ --- -title: "Get keyword valid date API Reference" -description: "SandBase API operation douyin/index/keyword-valid-date." +title: "Douyin Index Keyword Valid Dates API Reference" +description: "SandBase API reference for model douyin/index/keyword-valid-date. Call /v1/api/douyin/index/keyword-valid-date; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/keyword-valid-date" -apiReferenceJson: "{\"title\":\"Get keyword valid date\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/keyword-valid-date\",\"description\":\"Get valid date range for specified keywords in Douyin Index\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword_list\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword list, comma separated\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/keyword-valid-date \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword_list\\\": \\\"人工智能\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword_list\\\": \\\"人工智能\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/keyword-valid-date\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword_list\\\": \\\"人工智能\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/keyword-valid-date\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/keyword-valid-date\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/keyword-valid-date\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/keyword-valid-date\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/keyword-valid-date\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/keyword-valid-date\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/keyword-valid-date\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Index Keyword Valid Dates\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/keyword-valid-date\",\"description\":\"Returns the valid date ranges available for specified search terms in the Douyin Index. Queries accept a comma-separated list of keywords to identify data availability periods.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword_list\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword list, comma separated\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/keyword-valid-date \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword_list\\\": \\\"人工智能\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword_list\\\": \\\"人工智能\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/keyword-valid-date\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword_list\\\": \\\"人工智能\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/keyword-valid-date\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/keyword-valid-date\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/keyword-valid-date\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/keyword-valid-date\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/keyword-valid-date\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/keyword-valid-date\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/keyword-valid-date\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get keyword valid date" + modelName: "Douyin Index Keyword Valid Dates" modelId: "douyin/index/keyword-valid-date" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/multi-keyword-hot-trend.md b/model-api-reference/platform-apis/douyin/index/multi-keyword-hot-trend.md index 22826e1a..30029a21 100644 --- a/model-api-reference/platform-apis/douyin/index/multi-keyword-hot-trend.md +++ b/model-api-reference/platform-apis/douyin/index/multi-keyword-hot-trend.md @@ -1,13 +1,13 @@ --- -title: "Get multi-keyword hot trend API Reference" -description: "SandBase API operation douyin/index/multi-keyword-hot-trend." +title: "Douyin Multi Keyword Hot Trend API Reference" +description: "SandBase API reference for model douyin/index/multi-keyword-hot-trend. Call /v1/api/douyin/index/multi-keyword-hot-trend; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/multi-keyword-hot-trend" -apiReferenceJson: "{\"title\":\"Get multi-keyword hot trend\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/multi-keyword-hot-trend\",\"description\":\"Get hot trend data for multiple keywords in a specified time range Compare hot trend changes of multiple keywords\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_name\",\"type\":\"string\",\"required\":false,\"description\":\"Platform, aweme=Douyin, toutiao=Toutiao\",\"constraints\":\"Allowed values: aweme, toutiao\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date, format YYYYMMDD\"},{\"name\":\"keyword_list\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword list, comma separated\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region list, comma separated\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date, format YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/multi-keyword-hot-trend \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"keyword_list\\\": \\\"keyword_list\\\",\\n \\\"start_date\\\": \\\"start_date\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"keyword_list\\\": \\\"keyword_list\\\",\\n \\\"start_date\\\": \\\"start_date\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/multi-keyword-hot-trend\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"keyword_list\\\": \\\"keyword_list\\\",\\n \\\"start_date\\\": \\\"start_date\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/multi-keyword-hot-trend\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/multi-keyword-hot-trend\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/multi-keyword-hot-trend\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/multi-keyword-hot-trend\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/multi-keyword-hot-trend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/multi-keyword-hot-trend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/multi-keyword-hot-trend\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Multi Keyword Hot Trend\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/multi-keyword-hot-trend\",\"description\":\"Returns hot trend data for multiple keywords over a specified date range. Filter by platform and geographical region to compare trend metrics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_name\",\"type\":\"string\",\"required\":false,\"description\":\"Platform, aweme=Douyin, toutiao=Toutiao\",\"constraints\":\"Allowed values: aweme, toutiao\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date, format YYYYMMDD\"},{\"name\":\"keyword_list\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword list, comma separated\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region list, comma separated\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date, format YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/multi-keyword-hot-trend \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"keyword_list\\\": \\\"keyword_list\\\",\\n \\\"start_date\\\": \\\"start_date\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"keyword_list\\\": \\\"keyword_list\\\",\\n \\\"start_date\\\": \\\"start_date\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/multi-keyword-hot-trend\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"keyword_list\\\": \\\"keyword_list\\\",\\n \\\"start_date\\\": \\\"start_date\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/multi-keyword-hot-trend\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/multi-keyword-hot-trend\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/multi-keyword-hot-trend\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/multi-keyword-hot-trend\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/multi-keyword-hot-trend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/multi-keyword-hot-trend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/multi-keyword-hot-trend\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get multi-keyword hot trend" + modelName: "Douyin Multi Keyword Hot Trend" modelId: "douyin/index/multi-keyword-hot-trend" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/multi-keyword-interpretation.md b/model-api-reference/platform-apis/douyin/index/multi-keyword-interpretation.md index 629ce010..5ded7093 100644 --- a/model-api-reference/platform-apis/douyin/index/multi-keyword-interpretation.md +++ b/model-api-reference/platform-apis/douyin/index/multi-keyword-interpretation.md @@ -1,13 +1,13 @@ --- -title: "Get multi-keyword interpretation API Reference" -description: "SandBase API operation douyin/index/multi-keyword-interpretation." +title: "Douyin Multi-Keyword Index Interpretation API Reference" +description: "SandBase API reference for model douyin/index/multi-keyword-interpretation. Call /v1/api/douyin/index/multi-keyword-interpretation; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/multi-keyword-interpretation" -apiReferenceJson: "{\"title\":\"Get multi-keyword interpretation\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/multi-keyword-interpretation\",\"description\":\"Get interpretation data for multiple keywords (composite index, search index, content index, etc.) Recommended to use together with fetch_multi_keyword_hot_trend\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_name\",\"type\":\"string\",\"required\":false,\"description\":\"Platform, aweme=Douyin, toutiao=Toutiao\",\"default\":\"aweme\",\"constraints\":\"Allowed values: aweme, toutiao\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date, YYYYMMDD\"},{\"name\":\"keyword_list\",\"type\":\"string\",\"required\":true,\"description\":\"Comma separated keywords\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region filter, comma separated, empty for all\",\"default\":\"\\\"\\\"\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date, YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/multi-keyword-interpretation \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"keyword_list\\\": \\\"人工智能,华为\\\",\\n \\\"start_date\\\": \\\"20251015\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"keyword_list\\\": \\\"人工智能,华为\\\",\\n \\\"start_date\\\": \\\"20251015\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/multi-keyword-interpretation\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"keyword_list\\\": \\\"人工智能,华为\\\",\\n \\\"start_date\\\": \\\"20251015\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/multi-keyword-interpretation\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/multi-keyword-interpretation\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/multi-keyword-interpretation\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/multi-keyword-interpretation\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/multi-keyword-interpretation\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/multi-keyword-interpretation\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/multi-keyword-interpretation\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Multi-Keyword Index Interpretation\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/multi-keyword-interpretation\",\"description\":\"Returns index interpretation metrics for multiple keywords across selected time periods. Includes comparison metrics like period-over-period and year-over-year differences.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_name\",\"type\":\"string\",\"required\":false,\"description\":\"Platform, aweme=Douyin, toutiao=Toutiao\",\"default\":\"aweme\",\"constraints\":\"Allowed values: aweme, toutiao\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date, YYYYMMDD\"},{\"name\":\"keyword_list\",\"type\":\"string\",\"required\":true,\"description\":\"Comma separated keywords\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region filter, comma separated, empty for all\",\"default\":\"\\\"\\\"\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date, YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/multi-keyword-interpretation \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"keyword_list\\\": \\\"人工智能,华为\\\",\\n \\\"start_date\\\": \\\"20251015\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"keyword_list\\\": \\\"人工智能,华为\\\",\\n \\\"start_date\\\": \\\"20251015\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/multi-keyword-interpretation\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"keyword_list\\\": \\\"人工智能,华为\\\",\\n \\\"start_date\\\": \\\"20251015\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/multi-keyword-interpretation\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/multi-keyword-interpretation\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/multi-keyword-interpretation\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/multi-keyword-interpretation\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/multi-keyword-interpretation\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/multi-keyword-interpretation\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/multi-keyword-interpretation\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get multi-keyword interpretation" + modelName: "Douyin Multi-Keyword Index Interpretation" modelId: "douyin/index/multi-keyword-interpretation" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/portrait.md b/model-api-reference/platform-apis/douyin/index/portrait.md index 3afc6164..cdc98551 100644 --- a/model-api-reference/platform-apis/douyin/index/portrait.md +++ b/model-api-reference/platform-apis/douyin/index/portrait.md @@ -1,13 +1,13 @@ --- -title: "Get crowd portrait API Reference" -description: "SandBase API operation douyin/index/portrait." +title: "Douyin Keyword Crowd Portrait API Reference" +description: "Douyin Keyword Crowd Portrait API reference for SandBase. Use model douyin/index/portrait with /v1/api/douyin/index/portrait; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/portrait" -apiReferenceJson: "{\"title\":\"Get crowd portrait\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/portrait\",\"description\":\"Get crowd portrait analysis for a keyword\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_name\",\"type\":\"string\",\"required\":false,\"description\":\"Platform, aweme=Douyin, toutiao=Toutiao\",\"constraints\":\"Allowed values: aweme, toutiao\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"The keyword to analyze\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/portrait \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"start_date\\\": \\\"start_date\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"start_date\\\": \\\"start_date\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/portrait\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"start_date\\\": \\\"start_date\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/portrait\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/portrait\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/portrait\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/portrait\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/portrait\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/portrait\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/portrait\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Keyword Crowd Portrait\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/portrait\",\"description\":\"Returns crowd portrait analysis for a specific keyword over a defined date range. Allows querying data for Douyin or Toutiao platforms.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_name\",\"type\":\"string\",\"required\":false,\"description\":\"Platform, aweme=Douyin, toutiao=Toutiao\",\"constraints\":\"Allowed values: aweme, toutiao\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"The keyword to analyze\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/portrait \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"keyword\\\": \\\"人工智能\\\",\\n \\\"start_date\\\": \\\"1730044800\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"keyword\\\": \\\"人工智能\\\",\\n \\\"start_date\\\": \\\"1730044800\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/portrait\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"keyword\\\": \\\"人工智能\\\",\\n \\\"start_date\\\": \\\"1730044800\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/portrait\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/portrait\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/portrait\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/portrait\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/portrait\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/portrait\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/portrait\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get crowd portrait" + modelName: "Douyin Keyword Crowd Portrait" modelId: "douyin/index/portrait" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/relation-word.md b/model-api-reference/platform-apis/douyin/index/relation-word.md index a370ac26..b97394f4 100644 --- a/model-api-reference/platform-apis/douyin/index/relation-word.md +++ b/model-api-reference/platform-apis/douyin/index/relation-word.md @@ -1,13 +1,13 @@ --- -title: "Get relation word analysis API Reference" -description: "SandBase API operation douyin/index/relation-word." +title: "Douyin Relation Word Analysis API Reference" +description: "Douyin Relation Word Analysis API reference for SandBase. Use model douyin/index/relation-word with /v1/api/douyin/index/relation-word; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/relation-word" -apiReferenceJson: "{\"title\":\"Get relation word analysis\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/relation-word\",\"description\":\"Get relation word analysis for a keyword, including search and content relation words Shows relation word graph and ranking\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_name\",\"type\":\"string\",\"required\":false,\"description\":\"Platform, aweme=Douyin, toutiao=Toutiao\",\"constraints\":\"Allowed values: aweme, toutiao\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date (**must be a Sunday**), format YYYYMMDD\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"The keyword to analyze\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date (recommend Monday), format YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/relation-word \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"start_date\\\": \\\"start_date\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"start_date\\\": \\\"start_date\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/relation-word\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"end_date\\\": \\\"end_date\\\",\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"start_date\\\": \\\"start_date\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/relation-word\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/relation-word\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/relation-word\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/relation-word\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/relation-word\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/relation-word\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/relation-word\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Relation Word Analysis\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/relation-word\",\"description\":\"Returns search and content relation word graphs and rankings for a keyword. Query by target keyword, platform selection, and weekly date intervals.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_name\",\"type\":\"string\",\"required\":false,\"description\":\"Platform, aweme=Douyin, toutiao=Toutiao\",\"constraints\":\"Allowed values: aweme, toutiao\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date (**must be a Sunday**), format YYYYMMDD\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"The keyword to analyze\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date (recommend Monday), format YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/relation-word \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"keyword\\\": \\\"人工智能\\\",\\n \\\"start_date\\\": \\\"1730044800\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"keyword\\\": \\\"人工智能\\\",\\n \\\"start_date\\\": \\\"1730044800\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/relation-word\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"end_date\\\": \\\"1735660799\\\",\\n \\\"keyword\\\": \\\"人工智能\\\",\\n \\\"start_date\\\": \\\"1730044800\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/relation-word\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/relation-word\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/relation-word\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/relation-word\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/relation-word\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/relation-word\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/relation-word\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get relation word analysis" + modelName: "Douyin Relation Word Analysis" modelId: "douyin/index/relation-word" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/report-detail.md b/model-api-reference/platform-apis/douyin/index/report-detail.md index 1629a67f..83007810 100644 --- a/model-api-reference/platform-apis/douyin/index/report-detail.md +++ b/model-api-reference/platform-apis/douyin/index/report-detail.md @@ -1,13 +1,13 @@ --- -title: "Get report detail API Reference" -description: "SandBase API operation douyin/index/report-detail." +title: "Douyin Trend Report Detail API Reference" +description: "Douyin Trend Report Detail API reference for SandBase. Use model douyin/index/report-detail with /v1/api/douyin/index/report-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/report-detail" -apiReferenceJson: "{\"title\":\"Get report detail\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/report-detail\",\"description\":\"Get full detail of a trend insight report Includes title, cover, publish time, business tags, content body, image assets, and PDF download links\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"report_id\",\"type\":\"string\",\"required\":true,\"description\":\"Report ID (string), obtained from fetch_report_search or\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/report-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"report_id\\\": \\\"report_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"report_id\\\": \\\"report_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/report-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"report_id\\\": \\\"report_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/report-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/report-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/report-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/report-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/report-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/report-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/report-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Trend Report Detail\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/report-detail\",\"description\":\"Returns detailed information for a Douyin trend insight report by report ID, including title, cover image, release time, business tags, body content, image assets, and PDF links.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"report_id\",\"type\":\"string\",\"required\":true,\"description\":\"Report ID (string), obtained from fetch_report_search or\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/report-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"report_id\\\": \\\"report_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"report_id\\\": \\\"report_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/report-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"report_id\\\": \\\"report_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/report-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/report-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/report-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/report-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/report-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/report-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/report-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get report detail" + modelName: "Douyin Trend Report Detail" modelId: "douyin/index/report-detail" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/report-search.md b/model-api-reference/platform-apis/douyin/index/report-search.md index ad75e8b5..ee49205b 100644 --- a/model-api-reference/platform-apis/douyin/index/report-search.md +++ b/model-api-reference/platform-apis/douyin/index/report-search.md @@ -1,13 +1,13 @@ --- -title: "Search trend reports API Reference" -description: "SandBase API operation douyin/index/report-search." +title: "Douyin Trend Report Search API Reference" +description: "Douyin Trend Report Search API reference for SandBase. Use model douyin/index/report-search with /v1/api/douyin/index/report-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/report-search" -apiReferenceJson: "{\"title\":\"Search trend reports\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/report-search\",\"description\":\"Search trend insight reports under Douyin Index\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"business\",\"type\":\"string\",\"required\":false,\"description\":\"comma-separated product list\",\"default\":\"\\\"\\\"\"},{\"name\":\"category\",\"type\":\"string\",\"required\":false,\"description\":\"top-level category ID, default \\\"6\\\"\",\"default\":\"6\"},{\"name\":\"current_page\",\"type\":\"string\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"page_size\",\"type\":\"string\",\"required\":false,\"description\":\"Page size\",\"default\":\"16\"},{\"name\":\"report_time\",\"type\":\"string\",\"required\":false,\"description\":\"comma-separated year list, e.g. \\\"2024,2023\\\"\",\"default\":\"\\\"\\\"\"},{\"name\":\"search\",\"type\":\"string\",\"required\":false,\"description\":\"keyword search\",\"default\":\"\\\"\\\"\"},{\"name\":\"type\",\"type\":\"string\",\"required\":false,\"description\":\"report type, empty for all\",\"default\":\"\\\"\\\"\",\"constraints\":\"Allowed values: , 行业洞察, 产品洞察, 用户洞察, 趋势洞察\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/report-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"search\\\": \\\"\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"search\\\": \\\"\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/report-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"search\\\": \\\"\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/report-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/report-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/report-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/report-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/report-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/report-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/report-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Trend Report Search\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/report-search\",\"description\":\"Returns trend insight reports from Douyin Index. Supports filtering by keyword, report type, product line, category ID, and release year.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"business\",\"type\":\"string\",\"required\":false,\"description\":\"comma-separated product list\",\"default\":\"\\\"\\\"\"},{\"name\":\"category\",\"type\":\"string\",\"required\":false,\"description\":\"top-level category ID, default \\\"6\\\"\",\"default\":\"6\"},{\"name\":\"current_page\",\"type\":\"string\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\"},{\"name\":\"page_size\",\"type\":\"string\",\"required\":false,\"description\":\"Page size\",\"default\":\"16\"},{\"name\":\"report_time\",\"type\":\"string\",\"required\":false,\"description\":\"comma-separated year list, e.g. \\\"2024,2023\\\"\",\"default\":\"\\\"\\\"\"},{\"name\":\"search\",\"type\":\"string\",\"required\":false,\"description\":\"keyword search\",\"default\":\"\\\"\\\"\"},{\"name\":\"type\",\"type\":\"string\",\"required\":false,\"description\":\"report type, empty for all\",\"default\":\"\\\"\\\"\",\"constraints\":\"Allowed values: , 行业洞察, 产品洞察, 用户洞察, 趋势洞察\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/report-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"search\\\": \\\"\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"search\\\": \\\"\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/report-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"search\\\": \\\"\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/report-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/report-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/report-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/report-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/report-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/report-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/report-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search trend reports" + modelName: "Douyin Trend Report Search" modelId: "douyin/index/report-search" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/topic-query.md b/model-api-reference/platform-apis/douyin/index/topic-query.md index 4ce98aa8..fd2aacb9 100644 --- a/model-api-reference/platform-apis/douyin/index/topic-query.md +++ b/model-api-reference/platform-apis/douyin/index/topic-query.md @@ -1,13 +1,13 @@ --- -title: "Topic search results API Reference" -description: "SandBase API operation douyin/index/topic-query." +title: "Douyin Topic Search API Reference" +description: "Douyin Topic Search API reference for SandBase. Use model douyin/index/topic-query with /v1/api/douyin/index/topic-query; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/topic-query" -apiReferenceJson: "{\"title\":\"Topic search results\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/topic-query\",\"description\":\"Search topics, get topic details and related data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_name\",\"type\":\"string\",\"required\":false,\"description\":\"Platform\",\"default\":\"aweme\",\"constraints\":\"Allowed values: aweme, toutiao\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Topic keyword\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/topic-query \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"keyword\\\": \\\"人工智能\\\",\\n \\\"start_date\\\": \\\"20260406\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"keyword\\\": \\\"人工智能\\\",\\n \\\"start_date\\\": \\\"20260406\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/topic-query\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"keyword\\\": \\\"人工智能\\\",\\n \\\"start_date\\\": \\\"20260406\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/topic-query\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/topic-query\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/topic-query\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/topic-query\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/topic-query\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/topic-query\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/topic-query\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Topic Search\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/topic-query\",\"description\":\"Returns Douyin topic performance metrics matching a search term over a specific date range, including item counts, like counts, and view counts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_name\",\"type\":\"string\",\"required\":false,\"description\":\"Platform\",\"default\":\"aweme\",\"constraints\":\"Allowed values: aweme, toutiao\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":true,\"description\":\"End date YYYYMMDD\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Topic keyword\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":true,\"description\":\"Start date YYYYMMDD\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/topic-query \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"keyword\\\": \\\"人工智能\\\",\\n \\\"start_date\\\": \\\"20260406\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"keyword\\\": \\\"人工智能\\\",\\n \\\"start_date\\\": \\\"20260406\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/topic-query\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"end_date\\\": \\\"20260412\\\",\\n \\\"keyword\\\": \\\"人工智能\\\",\\n \\\"start_date\\\": \\\"20260406\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/topic-query\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/topic-query\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/topic-query\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/topic-query\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/topic-query\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/topic-query\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/topic-query\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Topic search results" + modelName: "Douyin Topic Search" modelId: "douyin/index/topic-query" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/topic-suggest.md b/model-api-reference/platform-apis/douyin/index/topic-suggest.md index 8d776603..8ecf7446 100644 --- a/model-api-reference/platform-apis/douyin/index/topic-suggest.md +++ b/model-api-reference/platform-apis/douyin/index/topic-suggest.md @@ -1,13 +1,13 @@ --- -title: "Topic search suggest API Reference" -description: "SandBase API operation douyin/index/topic-suggest." +title: "Douyin Topic Search Suggestions API Reference" +description: "SandBase API reference for model douyin/index/topic-suggest. Call /v1/api/douyin/index/topic-suggest; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/topic-suggest" -apiReferenceJson: "{\"title\":\"Topic search suggest\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/topic-suggest\",\"description\":\"Get topic search auto-complete suggestion list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_name\",\"type\":\"string\",\"required\":false,\"description\":\"Platform, aweme=Douyin, toutiao=Toutiao\",\"default\":\"aweme\",\"constraints\":\"Allowed values: aweme, toutiao\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Topic keyword\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/topic-suggest \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/topic-suggest\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"人工智能\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/topic-suggest\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/topic-suggest\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/topic-suggest\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/topic-suggest\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/topic-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/topic-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/topic-suggest\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Topic Search Suggestions\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/topic-suggest\",\"description\":\"Returns autocomplete topic suggestions based on a search query. Supports filtering by target platform such as Douyin or Toutiao.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_name\",\"type\":\"string\",\"required\":false,\"description\":\"Platform, aweme=Douyin, toutiao=Toutiao\",\"default\":\"aweme\",\"constraints\":\"Allowed values: aweme, toutiao\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Topic keyword\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/topic-suggest \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/topic-suggest\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"人工智能\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/topic-suggest\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/topic-suggest\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/topic-suggest\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/topic-suggest\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/topic-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/topic-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/topic-suggest\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Topic search suggest" + modelName: "Douyin Topic Search Suggestions" modelId: "douyin/index/topic-suggest" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/index/valid-date-for-relation.md b/model-api-reference/platform-apis/douyin/index/valid-date-for-relation.md index 1e945346..7e3b9699 100644 --- a/model-api-reference/platform-apis/douyin/index/valid-date-for-relation.md +++ b/model-api-reference/platform-apis/douyin/index/valid-date-for-relation.md @@ -1,13 +1,13 @@ --- -title: "Get valid date for relation API Reference" -description: "SandBase API operation douyin/index/valid-date-for-relation." +title: "Douyin Relation Analysis Valid Dates API Reference" +description: "SandBase API reference for model douyin/index/valid-date-for-relation. Call /v1/api/douyin/index/valid-date-for-relation; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/index/valid-date-for-relation" -apiReferenceJson: "{\"title\":\"Get valid date for relation\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/valid-date-for-relation\",\"description\":\"Get valid date range for the relation analysis feature\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/valid-date-for-relation \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/index/valid-date-for-relation\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/index/valid-date-for-relation\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/valid-date-for-relation\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/index/valid-date-for-relation\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/valid-date-for-relation\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/valid-date-for-relation\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/valid-date-for-relation\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/valid-date-for-relation\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/valid-date-for-relation\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/valid-date-for-relation\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/valid-date-for-relation\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Relation Analysis Valid Dates\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/index/valid-date-for-relation\",\"description\":\"Returns the valid date range available for relation analysis on Douyin. Use this endpoint to discover supported timeframes before requesting relationship metrics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/index/valid-date-for-relation \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/index/valid-date-for-relation\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/index/valid-date-for-relation\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/index/valid-date-for-relation\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/index/valid-date-for-relation\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/index/valid-date-for-relation\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/index/valid-date-for-relation\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/index/valid-date-for-relation\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/index/valid-date-for-relation\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get valid date for relation" + modelName: "Douyin Relation Analysis Valid Dates" modelId: "douyin/index/valid-date-for-relation" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/search/challenge-search-v1.md b/model-api-reference/platform-apis/douyin/search/challenge-search-v1.md index 9319ef27..06958317 100644 --- a/model-api-reference/platform-apis/douyin/search/challenge-search-v1.md +++ b/model-api-reference/platform-apis/douyin/search/challenge-search-v1.md @@ -1,13 +1,13 @@ --- -title: "Fetch hashtag search V1 API Reference" -description: "SandBase API operation douyin/search/challenge-search-v1." +title: "Douyin Challenge Search API Reference" +description: "SandBase API reference for model douyin/search/challenge-search-v1. Call /v1/api/douyin/search/challenge-search-v1; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/search/challenge-search-v1" -apiReferenceJson: "{\"title\":\"Fetch hashtag search V1\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/challenge-search-v1\",\"description\":\"Fetch hashtag/challenge search results from Douyin App. Returns related hashtag topics including name, view count, participants, and cover images.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"backtrace\",\"type\":\"string\",\"required\":false,\"description\":\"Backtrace for pagination, obtained from the last response\",\"default\":\"\\\"\\\"\"},{\"name\":\"content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Content type filter\",\"default\":\"0\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for first request)\",\"default\":\"0\"},{\"name\":\"filter_duration\",\"type\":\"string\",\"required\":false,\"description\":\"Video duration filter\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"food\\\"\",\"default\":\"猫咪\"},{\"name\":\"publish_time\",\"type\":\"string\",\"required\":false,\"description\":\"Publish time filter\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/challenge-search-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/challenge-search-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/challenge-search-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/challenge-search-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/challenge-search-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/challenge-search-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/challenge-search-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/challenge-search-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/challenge-search-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Challenge Search\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/challenge-search-v1\",\"description\":\"Returns Douyin challenge and hashtag search results matching a query. Supports filtering by date, content type, duration, and sorting method.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"backtrace\",\"type\":\"string\",\"required\":false,\"description\":\"Backtrace for pagination, obtained from the last response\",\"default\":\"\\\"\\\"\"},{\"name\":\"content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Content type filter\",\"default\":\"0\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for first request)\",\"default\":\"0\"},{\"name\":\"filter_duration\",\"type\":\"string\",\"required\":false,\"description\":\"Video duration filter\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"food\\\"\",\"default\":\"猫咪\"},{\"name\":\"publish_time\",\"type\":\"string\",\"required\":false,\"description\":\"Publish time filter\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/challenge-search-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/challenge-search-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/challenge-search-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/challenge-search-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/challenge-search-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/challenge-search-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/challenge-search-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/challenge-search-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/challenge-search-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch hashtag search V1" + modelName: "Douyin Challenge Search" modelId: "douyin/search/challenge-search-v1" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/search/challenge-search-v2.md b/model-api-reference/platform-apis/douyin/search/challenge-search-v2.md index 51ca4406..de4f4f21 100644 --- a/model-api-reference/platform-apis/douyin/search/challenge-search-v2.md +++ b/model-api-reference/platform-apis/douyin/search/challenge-search-v2.md @@ -1,13 +1,13 @@ --- -title: "Fetch hashtag search V2 API Reference" -description: "SandBase API operation douyin/search/challenge-search-v2." +title: "Douyin Hashtag Challenge Search (V2) API Reference" +description: "SandBase API reference for model douyin/search/challenge-search-v2. Call /v1/api/douyin/search/challenge-search-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/search/challenge-search-v2" -apiReferenceJson: "{\"title\":\"Fetch hashtag search V2\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/challenge-search-v2\",\"description\":\"Fetch hashtag/challenge search results from Douyin App using V2 API. Supports searching by keyword and returns detailed challenge information, including name, cover image, view count, and participant count.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"backtrace\",\"type\":\"string\",\"required\":false,\"description\":\"Backtrace for pagination, obtained from the last response\",\"default\":\"\\\"\\\"\"},{\"name\":\"content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Content type filter\",\"default\":\"0\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for first request)\",\"default\":\"0\"},{\"name\":\"filter_duration\",\"type\":\"string\",\"required\":false,\"description\":\"Video duration filter\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"game\\\"\",\"default\":\"猫咪\"},{\"name\":\"publish_time\",\"type\":\"string\",\"required\":false,\"description\":\"Publish time filter\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/challenge-search-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/challenge-search-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/challenge-search-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/challenge-search-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/challenge-search-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/challenge-search-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/challenge-search-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/challenge-search-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/challenge-search-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Hashtag Challenge Search (V2)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/challenge-search-v2\",\"description\":\"Returns Douyin hashtag and challenge search results matching a query keyword. Supports filtering by sort type, content type, post date, and duration with cursor-based pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"backtrace\",\"type\":\"string\",\"required\":false,\"description\":\"Backtrace for pagination, obtained from the last response\",\"default\":\"\\\"\\\"\"},{\"name\":\"content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Content type filter\",\"default\":\"0\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for first request)\",\"default\":\"0\"},{\"name\":\"filter_duration\",\"type\":\"string\",\"required\":false,\"description\":\"Video duration filter\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"game\\\"\",\"default\":\"猫咪\"},{\"name\":\"publish_time\",\"type\":\"string\",\"required\":false,\"description\":\"Publish time filter\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/challenge-search-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/challenge-search-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/challenge-search-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/challenge-search-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/challenge-search-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/challenge-search-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/challenge-search-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/challenge-search-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/challenge-search-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch hashtag search V2" + modelName: "Douyin Hashtag Challenge Search (V2)" modelId: "douyin/search/challenge-search-v2" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/search/challenge-suggest.md b/model-api-reference/platform-apis/douyin/search/challenge-suggest.md index f9f8d461..ad36f471 100644 --- a/model-api-reference/platform-apis/douyin/search/challenge-suggest.md +++ b/model-api-reference/platform-apis/douyin/search/challenge-suggest.md @@ -1,13 +1,13 @@ --- -title: "Fetch hashtag suggestions API Reference" -description: "SandBase API operation douyin/search/challenge-suggest." +title: "Douyin Hashtag Suggestions API Reference" +description: "SandBase API reference for model douyin/search/challenge-suggest. Call /v1/api/douyin/search/challenge-suggest; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/search/challenge-suggest" -apiReferenceJson: "{\"title\":\"Fetch hashtag suggestions\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/challenge-suggest\",\"description\":\"Fetch hashtag/challenge suggestions from Douyin App based on the input keyword. Returns a list of related hashtags including name and view count.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"game\\\"\",\"default\":\"游戏\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/challenge-suggest \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"游戏\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"游戏\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/challenge-suggest\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"游戏\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/challenge-suggest\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/challenge-suggest\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/challenge-suggest\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/challenge-suggest\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/challenge-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/challenge-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/challenge-suggest\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Hashtag Suggestions\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/challenge-suggest\",\"description\":\"Returns a list of suggested Douyin hashtags and challenges matching a query keyword, including challenge IDs and view counts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"game\\\"\",\"default\":\"游戏\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/challenge-suggest \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"游戏\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"游戏\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/challenge-suggest\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"游戏\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/challenge-suggest\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/challenge-suggest\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/challenge-suggest\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/challenge-suggest\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/challenge-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/challenge-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/challenge-suggest\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch hashtag suggestions" + modelName: "Douyin Hashtag Suggestions" modelId: "douyin/search/challenge-suggest" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/search/discuss-search.md b/model-api-reference/platform-apis/douyin/search/discuss-search.md index cad629dc..2c4e97a7 100644 --- a/model-api-reference/platform-apis/douyin/search/discuss-search.md +++ b/model-api-reference/platform-apis/douyin/search/discuss-search.md @@ -1,13 +1,13 @@ --- -title: "Fetch discussion search API Reference" -description: "SandBase API operation douyin/search/discuss-search." +title: "Douyin Discussion Search API Reference" +description: "Douyin Discussion Search API reference for SandBase. Use model douyin/search/discuss-search with /v1/api/douyin/search/discuss-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/search/discuss-search" -apiReferenceJson: "{\"title\":\"Fetch discussion search\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/discuss-search\",\"description\":\"Fetch discussion/Q&A search results from Douyin App. Supports filtering by keyword, sort type, publish time, content type, etc.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"backtrace\",\"type\":\"string\",\"required\":false,\"description\":\"Backtrace for pagination, obtained from the last response\"},{\"name\":\"content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Content type filter\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for first page, use the last response cursor for subsequent pages)\"},{\"name\":\"filter_duration\",\"type\":\"string\",\"required\":false,\"description\":\"Video duration filter\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"study abroad\\\"\"},{\"name\":\"publish_time\",\"type\":\"string\",\"required\":false,\"description\":\"Publish time filter\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID used for pagination\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/discuss-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/discuss-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/discuss-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/discuss-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/discuss-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/discuss-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/discuss-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/discuss-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/discuss-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Discussion Search\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/discuss-search\",\"description\":\"Returns discussion and question-and-answer search results from Douyin. Supports filtering by keyword, sort order, content type, post time, and video duration.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"backtrace\",\"type\":\"string\",\"required\":false,\"description\":\"Backtrace for pagination, obtained from the last response\"},{\"name\":\"content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Content type filter\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for first page, use the last response cursor for subsequent pages)\"},{\"name\":\"filter_duration\",\"type\":\"string\",\"required\":false,\"description\":\"Video duration filter\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"study abroad\\\"\"},{\"name\":\"publish_time\",\"type\":\"string\",\"required\":false,\"description\":\"Publish time filter\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID used for pagination\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/discuss-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"keyword\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"keyword\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/discuss-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"keyword\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/discuss-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/discuss-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/discuss-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/discuss-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/discuss-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/discuss-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/discuss-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch discussion search" + modelName: "Douyin Discussion Search" modelId: "douyin/search/discuss-search" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/search/experience-search.md b/model-api-reference/platform-apis/douyin/search/experience-search.md index f5f1ae98..e5df1d0f 100644 --- a/model-api-reference/platform-apis/douyin/search/experience-search.md +++ b/model-api-reference/platform-apis/douyin/search/experience-search.md @@ -1,13 +1,13 @@ --- -title: "Fetch experience search API Reference" -description: "SandBase API operation douyin/search/experience-search." +title: "Douyin Experience Content Search API Reference" +description: "SandBase API reference for model douyin/search/experience-search. Call /v1/api/douyin/search/experience-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/search/experience-search" -apiReferenceJson: "{\"title\":\"Fetch experience search\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/experience-search\",\"description\":\"Fetch experience (knowledge/tutorial) content search results from Douyin App. Retrieves video results related to knowledge sharing, tutorials, or tips based on the input keyword.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"backtrace\",\"type\":\"string\",\"required\":false,\"description\":\"Backtrace for pagination, obtained from the last response\",\"default\":\"\\\"\\\"\"},{\"name\":\"content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Content type filter (usually fixed to video)\",\"default\":\"0\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for first page)\",\"default\":\"0\"},{\"name\":\"filter_duration\",\"type\":\"string\",\"required\":false,\"description\":\"Video duration filter\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"gaming guide\\\"\",\"default\":\"猫咪\"},{\"name\":\"publish_time\",\"type\":\"string\",\"required\":false,\"description\":\"Publish time filter\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/experience-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/experience-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/experience-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/experience-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/experience-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/experience-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/experience-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/experience-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/experience-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Experience Content Search\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/experience-search\",\"description\":\"Returns Douyin search results for tutorial, knowledge, and experience videos based on keyword queries. Supports filtering by release timing, sorting method, and video duration.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"backtrace\",\"type\":\"string\",\"required\":false,\"description\":\"Backtrace for pagination, obtained from the last response\",\"default\":\"\\\"\\\"\"},{\"name\":\"content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Content type filter (usually fixed to video)\",\"default\":\"0\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for first page)\",\"default\":\"0\"},{\"name\":\"filter_duration\",\"type\":\"string\",\"required\":false,\"description\":\"Video duration filter\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"gaming guide\\\"\",\"default\":\"猫咪\"},{\"name\":\"publish_time\",\"type\":\"string\",\"required\":false,\"description\":\"Publish time filter\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/experience-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/experience-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/experience-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/experience-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/experience-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/experience-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/experience-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/experience-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/experience-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch experience search" + modelName: "Douyin Experience Content Search" modelId: "douyin/search/experience-search" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/search/general-search-v1.md b/model-api-reference/platform-apis/douyin/search/general-search-v1.md index 693b9a55..f8f1bbe2 100644 --- a/model-api-reference/platform-apis/douyin/search/general-search-v1.md +++ b/model-api-reference/platform-apis/douyin/search/general-search-v1.md @@ -1,13 +1,13 @@ --- -title: "Fetch general search V1 API Reference" -description: "SandBase API operation douyin/search/general-search-v1." +title: "Douyin General Search API Reference" +description: "SandBase API reference for model douyin/search/general-search-v1. Call /v1/api/douyin/search/general-search-v1; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/search/general-search-v1" -apiReferenceJson: "{\"title\":\"Fetch general search V1\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/general-search-v1\",\"description\":\"Fetch search results from Douyin App's general search tab (not standalone video search). Supports filtering by keyword, sort type, publish time, video duration, and content type. Supports pagination through `cursor`, `search_id`, and `backtrace`.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"backtrace\",\"type\":\"string\",\"required\":false,\"description\":\"Backtrace identifier (empty for first request, obtained from previous response for pagination)\",\"default\":\"\\\"\\\"\"},{\"name\":\"content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Content type filter\",\"default\":\"0\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for the first page, use the last response cursor for subsequent pages)\",\"default\":\"0\"},{\"name\":\"filter_duration\",\"type\":\"string\",\"required\":false,\"description\":\"Video duration filter\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"cat\\\"\",\"default\":\"猫咪\"},{\"name\":\"publish_time\",\"type\":\"string\",\"required\":false,\"description\":\"Publish time filter\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID (empty for first request, obtained from previous response for pagination)\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/general-search-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/general-search-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/general-search-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/general-search-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/general-search-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/general-search-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/general-search-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/general-search-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/general-search-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin General Search\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/general-search-v1\",\"description\":\"Search Douyin (Chinese TikTok) from the app's general search tab and get videos with descriptions, authors and play, like, comment and share counts. Filter by sort, publish time, duration and content type.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"backtrace\",\"type\":\"string\",\"required\":false,\"description\":\"Backtrace identifier (empty for first request, obtained from previous response for pagination)\",\"default\":\"\\\"\\\"\"},{\"name\":\"content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Content type filter\",\"default\":\"0\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for the first page, use the last response cursor for subsequent pages)\",\"default\":\"0\"},{\"name\":\"filter_duration\",\"type\":\"string\",\"required\":false,\"description\":\"Video duration filter\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"cat\\\"\",\"default\":\"猫咪\"},{\"name\":\"publish_time\",\"type\":\"string\",\"required\":false,\"description\":\"Publish time filter\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID (empty for first request, obtained from previous response for pagination)\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/general-search-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/general-search-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/general-search-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/general-search-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/general-search-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/general-search-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/general-search-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/general-search-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/general-search-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch general search V1" + modelName: "Douyin General Search" modelId: "douyin/search/general-search-v1" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/search/general-search-v2.md b/model-api-reference/platform-apis/douyin/search/general-search-v2.md index 6ef0e697..e4e7b317 100644 --- a/model-api-reference/platform-apis/douyin/search/general-search-v2.md +++ b/model-api-reference/platform-apis/douyin/search/general-search-v2.md @@ -1,13 +1,13 @@ --- -title: "Fetch general search V2 API Reference" -description: "SandBase API operation douyin/search/general-search-v2." +title: "Douyin General Search (V2) API Reference" +description: "SandBase API reference for model douyin/search/general-search-v2. Call /v1/api/douyin/search/general-search-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/search/general-search-v2" -apiReferenceJson: "{\"title\":\"Fetch general search V2\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/general-search-v2\",\"description\":\"Fetch search results from Douyin App's general search tab (not standalone video search). This API may be less stable than V1, serving as a backup. Supports filtering by keyword, sort type, publish time, video duration, and content type. Supports pagination through `cursor`, `search_id`, and `backtrace`.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"backtrace\",\"type\":\"string\",\"required\":false,\"description\":\"Backtrace identifier (empty for first request, obtained from previous response for pagination)\",\"default\":\"\\\"\\\"\"},{\"name\":\"content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Content type filter\",\"default\":\"0\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for the first page, use the last response cursor for subsequent pages)\",\"default\":\"0\"},{\"name\":\"filter_duration\",\"type\":\"string\",\"required\":false,\"description\":\"Video duration filter\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"cat\\\"\",\"default\":\"猫咪\"},{\"name\":\"publish_time\",\"type\":\"string\",\"required\":false,\"description\":\"Publish time filter\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID (empty for first request, obtained from previous response for pagination)\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/general-search-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/general-search-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/general-search-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/general-search-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/general-search-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/general-search-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/general-search-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/general-search-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/general-search-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin General Search (V2)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/general-search-v2\",\"description\":\"Returns search results from Douyin's general search tab. Supports filtering by keyword, sort method, post date, video duration, and content type.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"backtrace\",\"type\":\"string\",\"required\":false,\"description\":\"Backtrace identifier (empty for first request, obtained from previous response for pagination)\",\"default\":\"\\\"\\\"\"},{\"name\":\"content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Content type filter\",\"default\":\"0\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for the first page, use the last response cursor for subsequent pages)\",\"default\":\"0\"},{\"name\":\"filter_duration\",\"type\":\"string\",\"required\":false,\"description\":\"Video duration filter\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"cat\\\"\",\"default\":\"猫咪\"},{\"name\":\"publish_time\",\"type\":\"string\",\"required\":false,\"description\":\"Publish time filter\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID (empty for first request, obtained from previous response for pagination)\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/general-search-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/general-search-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/general-search-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/general-search-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/general-search-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/general-search-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/general-search-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/general-search-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/general-search-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch general search V2" + modelName: "Douyin General Search (V2)" modelId: "douyin/search/general-search-v2" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/search/image-search-v3.md b/model-api-reference/platform-apis/douyin/search/image-search-v3.md index a82f58db..df8d8912 100644 --- a/model-api-reference/platform-apis/douyin/search/image-search-v3.md +++ b/model-api-reference/platform-apis/douyin/search/image-search-v3.md @@ -1,13 +1,13 @@ --- -title: "Fetch image-text search V3 API Reference" -description: "SandBase API operation douyin/search/image-search-v3." +title: "Douyin Image-Text Search API Reference" +description: "SandBase API reference for model douyin/search/image-search-v3. Call /v1/api/douyin/search/image-search-v3; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/search/image-search-v3" -apiReferenceJson: "{\"title\":\"Fetch image-text search V3\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/image-search-v3\",\"description\":\"Fetch image-text content search results from Douyin App. Returns posts with multiple images (aweme_type=68), suitable for gallery-style applications.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for first request)\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword, e.g., \\\"food\\\"\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID for pagination (use value from previous response)\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/image-search-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/image-search-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/image-search-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/image-search-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/image-search-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/image-search-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/image-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/image-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/image-search-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Image-Text Search\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/image-search-v3\",\"description\":\"Returns image-text content search results from Douyin based on a target query keyword. Supports pagination using cursor and search session identifiers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for first request)\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword, e.g., \\\"food\\\"\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID for pagination (use value from previous response)\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/image-search-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/image-search-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/image-search-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/image-search-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/image-search-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/image-search-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/image-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/image-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/image-search-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch image-text search V3" + modelName: "Douyin Image-Text Search" modelId: "douyin/search/image-search-v3" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/search/image-search.md b/model-api-reference/platform-apis/douyin/search/image-search.md index e9a497e0..d7c625fa 100644 --- a/model-api-reference/platform-apis/douyin/search/image-search.md +++ b/model-api-reference/platform-apis/douyin/search/image-search.md @@ -1,13 +1,13 @@ --- -title: "Fetch image search API Reference" -description: "SandBase API operation douyin/search/image-search." +title: "Douyin Image Search API Reference" +description: "Douyin Image Search API reference for SandBase. Use model douyin/search/image-search with /v1/api/douyin/search/image-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/search/image-search" -apiReferenceJson: "{\"title\":\"Fetch image search\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/image-search\",\"description\":\"Fetch image-based search results from Douyin App. Mainly returns posts containing image collections.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"backtrace\",\"type\":\"string\",\"required\":false,\"description\":\"Backtrace for pagination, obtained from the last response\",\"default\":\"\\\"\\\"\"},{\"name\":\"content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Content type (Fixed to 2 for images)\",\"default\":\"0\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for first request)\",\"default\":\"0\"},{\"name\":\"filter_duration\",\"type\":\"string\",\"required\":false,\"description\":\"Video duration filter\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"cat\\\"\",\"default\":\"猫咪\"},{\"name\":\"publish_time\",\"type\":\"string\",\"required\":false,\"description\":\"Publish time filter\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/image-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/image-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/image-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/image-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/image-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/image-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/image-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/image-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/image-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Image Search\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/image-search\",\"description\":\"Returns image-based search results from Douyin matching a search keyword. Supports sorting, content filtering, post date filters, and pagination parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"backtrace\",\"type\":\"string\",\"required\":false,\"description\":\"Backtrace for pagination, obtained from the last response\",\"default\":\"\\\"\\\"\"},{\"name\":\"content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Content type (Fixed to 2 for images)\",\"default\":\"0\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for first request)\",\"default\":\"0\"},{\"name\":\"filter_duration\",\"type\":\"string\",\"required\":false,\"description\":\"Video duration filter\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"cat\\\"\",\"default\":\"猫咪\"},{\"name\":\"publish_time\",\"type\":\"string\",\"required\":false,\"description\":\"Publish time filter\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/image-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/image-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/image-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/image-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/image-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/image-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/image-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/image-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/image-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch image search" + modelName: "Douyin Image Search" modelId: "douyin/search/image-search" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/search/live-search-v1.md b/model-api-reference/platform-apis/douyin/search/live-search-v1.md deleted file mode 100644 index 7bdd58c5..00000000 --- a/model-api-reference/platform-apis/douyin/search/live-search-v1.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Fetch live search V1 API Reference" -description: "SandBase API operation douyin/search/live-search-v1." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/search/live-search-v1" -apiReferenceJson: "{\"title\":\"Fetch live search V1\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/live-search-v1\",\"description\":\"Fetch live stream search results from Douyin App. Returns information about live rooms including streamer profile, cover image, viewer count, and stream URLs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"backtrace\",\"type\":\"string\",\"required\":false,\"description\":\"Backtrace for pagination, obtained from the last response\"},{\"name\":\"content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Content type (fixed for live stream)\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for first request)\"},{\"name\":\"filter_duration\",\"type\":\"string\",\"required\":false,\"description\":\"Video duration filter\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"games\\\"\"},{\"name\":\"publish_time\",\"type\":\"string\",\"required\":false,\"description\":\"Publish time filter\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID for pagination\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/live-search-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/live-search-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/live-search-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/live-search-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/live-search-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/live-search-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/live-search-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/live-search-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/live-search-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Fetch live search V1" - modelId: "douyin/search/live-search-v1" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "search/live-search-v1" - protocol: "API Reference" - endpoint: "/v1/api/douyin/search/live-search-v1" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/search/multi-search.md b/model-api-reference/platform-apis/douyin/search/multi-search.md index de86bdce..b8dc1db9 100644 --- a/model-api-reference/platform-apis/douyin/search/multi-search.md +++ b/model-api-reference/platform-apis/douyin/search/multi-search.md @@ -1,13 +1,13 @@ --- -title: "Fetch multi-type search API Reference" -description: "SandBase API operation douyin/search/multi-search." +title: "Douyin Multi Search API Reference" +description: "Douyin Multi Search API reference for SandBase. Use model douyin/search/multi-search with /v1/api/douyin/search/multi-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/search/multi-search" -apiReferenceJson: "{\"title\":\"Fetch multi-type search\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/multi-search\",\"description\":\"Fetch multiple types of search results (videos, users, music, hashtags, etc.) from Douyin App.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"backtrace\",\"type\":\"string\",\"required\":false,\"description\":\"Backtrace for pagination, obtained from the last response\",\"default\":\"\\\"\\\"\"},{\"name\":\"content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Content type filter\",\"default\":\"0\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for the first page, use the last response cursor for subsequent pages)\",\"default\":\"0\"},{\"name\":\"filter_duration\",\"type\":\"string\",\"required\":false,\"description\":\"Video duration filter\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"Artificial Intelligence\\\"\",\"default\":\"猫咪\"},{\"name\":\"publish_time\",\"type\":\"string\",\"required\":false,\"description\":\"Publish time filter\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID used for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/multi-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/multi-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/multi-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/multi-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/multi-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/multi-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/multi-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/multi-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/multi-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Multi Search\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/multi-search\",\"description\":\"Returns multi-type search results across videos, users, music, and hashtags on Douyin. Supports filtering by keyword, sort order, content type, duration, and post date.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"backtrace\",\"type\":\"string\",\"required\":false,\"description\":\"Backtrace for pagination, obtained from the last response\",\"default\":\"\\\"\\\"\"},{\"name\":\"content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Content type filter\",\"default\":\"0\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for the first page, use the last response cursor for subsequent pages)\",\"default\":\"0\"},{\"name\":\"filter_duration\",\"type\":\"string\",\"required\":false,\"description\":\"Video duration filter\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"Artificial Intelligence\\\"\",\"default\":\"猫咪\"},{\"name\":\"publish_time\",\"type\":\"string\",\"required\":false,\"description\":\"Publish time filter\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID used for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/multi-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/multi-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/multi-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/multi-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/multi-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/multi-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/multi-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/multi-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/multi-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch multi-type search" + modelName: "Douyin Multi Search" modelId: "douyin/search/multi-search" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/search/music-search.md b/model-api-reference/platform-apis/douyin/search/music-search.md index 7140ea66..9ae7e14f 100644 --- a/model-api-reference/platform-apis/douyin/search/music-search.md +++ b/model-api-reference/platform-apis/douyin/search/music-search.md @@ -1,13 +1,13 @@ --- -title: "Fetch music search API Reference" -description: "SandBase API operation douyin/search/music-search." +title: "Douyin Music Search API Reference" +description: "Douyin Music Search API reference for SandBase. Use model douyin/search/music-search with /v1/api/douyin/search/music-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/search/music-search" -apiReferenceJson: "{\"title\":\"Fetch music search\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/music-search\",\"description\":\"Fetch music content search results from Douyin App. Supports filtering by keyword, sort type, etc.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"backtrace\",\"type\":\"string\",\"required\":false,\"description\":\"Backtrace for pagination, obtained from the last response\",\"default\":\"\\\"\\\"\"},{\"name\":\"content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Content type filter\",\"default\":\"0\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for first request)\",\"default\":\"0\"},{\"name\":\"filter_duration\",\"type\":\"string\",\"required\":false,\"description\":\"Video duration filter\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"game background music\\\"\",\"default\":\"猫咪\"},{\"name\":\"publish_time\",\"type\":\"string\",\"required\":false,\"description\":\"Publish time filter\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/music-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/music-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/music-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/music-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/music-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/music-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/music-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/music-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/music-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Music Search\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/music-search\",\"description\":\"Returns music search results from Douyin based on keywords and filters such as sort type, content type, and duration.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"backtrace\",\"type\":\"string\",\"required\":false,\"description\":\"Backtrace for pagination, obtained from the last response\",\"default\":\"\\\"\\\"\"},{\"name\":\"content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Content type filter\",\"default\":\"0\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for first request)\",\"default\":\"0\"},{\"name\":\"filter_duration\",\"type\":\"string\",\"required\":false,\"description\":\"Video duration filter\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"game background music\\\"\",\"default\":\"猫咪\"},{\"name\":\"publish_time\",\"type\":\"string\",\"required\":false,\"description\":\"Publish time filter\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/music-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/music-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/music-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/music-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/music-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/music-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/music-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/music-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/music-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch music search" + modelName: "Douyin Music Search" modelId: "douyin/search/music-search" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/search/school-search.md b/model-api-reference/platform-apis/douyin/search/school-search.md index 7ad06b10..14f5c841 100644 --- a/model-api-reference/platform-apis/douyin/search/school-search.md +++ b/model-api-reference/platform-apis/douyin/search/school-search.md @@ -1,13 +1,13 @@ --- -title: "Fetch school search API Reference" -description: "SandBase API operation douyin/search/school-search." +title: "Douyin School Search API Reference" +description: "Douyin School Search API reference for SandBase. Use model douyin/search/school-search with /v1/api/douyin/search/school-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/search/school-search" -apiReferenceJson: "{\"title\":\"Fetch school search\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/school-search\",\"description\":\"Fetch school information search results from Douyin App. Returns a list of school names based on the input keyword, useful for user profile settings, school recommendations, etc.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., school name \\\"Peking University\\\" or city \\\"Beijing\\\"\",\"default\":\"北京\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/school-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"北京\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"北京\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/school-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"北京\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/school-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/school-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/school-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/school-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/school-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/school-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/school-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin School Search\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/school-search\",\"description\":\"Returns school information search results from Douyin matching search queries. Filter schools by entering a specific school name or city query via the keyword parameter.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., school name \\\"Peking University\\\" or city \\\"Beijing\\\"\",\"default\":\"北京\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/school-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"北京\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"北京\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/school-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"北京\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/school-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/school-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/school-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/school-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/school-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/school-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/school-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch school search" + modelName: "Douyin School Search" modelId: "douyin/search/school-search" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/search/search-suggest.md b/model-api-reference/platform-apis/douyin/search/search-suggest.md index aa37cc9d..66e61089 100644 --- a/model-api-reference/platform-apis/douyin/search/search-suggest.md +++ b/model-api-reference/platform-apis/douyin/search/search-suggest.md @@ -1,13 +1,13 @@ --- -title: "Fetch search keyword suggestions API Reference" -description: "SandBase API operation douyin/search/search-suggest." +title: "Douyin Search Suggestions API Reference" +description: "Douyin Search Suggestions API reference for SandBase. Use model douyin/search/search-suggest with /v1/api/douyin/search/search-suggest; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/search/search-suggest" -apiReferenceJson: "{\"title\":\"Fetch search keyword suggestions\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/search-suggest\",\"description\":\"Fetch keyword suggestion results from Douyin App. Based on the user's input, returns a list of recommended search keywords to improve search experience.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Input keyword, e.g., \\\"Artificial Intelligence\\\"\",\"default\":\"人工智能\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/search-suggest \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/search-suggest\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"人工智能\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/search-suggest\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/search-suggest\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/search-suggest\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/search-suggest\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/search-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/search-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/search-suggest\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Search Suggestions\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/search-suggest\",\"description\":\"Get Douyin search autocomplete suggestions for a keyword: the related queries users see while typing in the Douyin app.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Input keyword, e.g., \\\"Artificial Intelligence\\\"\",\"default\":\"人工智能\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/search-suggest \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/search-suggest\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"人工智能\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/search-suggest\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/search-suggest\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/search-suggest\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/search-suggest\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/search-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/search-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/search-suggest\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch search keyword suggestions" + modelName: "Douyin Search Suggestions" modelId: "douyin/search/search-suggest" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/search/user-search-v2.md b/model-api-reference/platform-apis/douyin/search/user-search-v2.md index bef82bb0..0903e627 100644 --- a/model-api-reference/platform-apis/douyin/search/user-search-v2.md +++ b/model-api-reference/platform-apis/douyin/search/user-search-v2.md @@ -1,13 +1,13 @@ --- -title: "Fetch user search V2 API Reference" -description: "SandBase API operation douyin/search/user-search-v2." +title: "Douyin User Search (V2) API Reference" +description: "Douyin User Search (V2) API reference for SandBase. Use model douyin/search/user-search-v2 with /v1/api/douyin/search/user-search-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/search/user-search-v2" -apiReferenceJson: "{\"title\":\"Fetch user search V2\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/user-search-v2\",\"description\":\"Fetch a list of users from Douyin App based on search keywords. Supports filtering by fan count and user type.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for first page)\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"AI\\\"\",\"default\":\"猫咪\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/user-search-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/user-search-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/user-search-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/user-search-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/user-search-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/user-search-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/user-search-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/user-search-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/user-search-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin User Search (V2)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/user-search-v2\",\"description\":\"Searches for Douyin users matching specified search keywords and returns user metrics such as follower and like counts. Supports cursor-based pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for first page)\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"AI\\\"\",\"default\":\"猫咪\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/user-search-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/user-search-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/user-search-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/user-search-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/user-search-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/user-search-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/user-search-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/user-search-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/user-search-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch user search V2" + modelName: "Douyin User Search (V2)" modelId: "douyin/search/user-search-v2" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/search/user-search.md b/model-api-reference/platform-apis/douyin/search/user-search.md index f94a30e3..ddee2dbe 100644 --- a/model-api-reference/platform-apis/douyin/search/user-search.md +++ b/model-api-reference/platform-apis/douyin/search/user-search.md @@ -1,13 +1,13 @@ --- -title: "Fetch user search API Reference" -description: "SandBase API operation douyin/search/user-search." +title: "Douyin User Search (Search) API Reference" +description: "Douyin User Search (Search) API reference for SandBase. Use model douyin/search/user-search with /v1/api/douyin/search/user-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/search/user-search" -apiReferenceJson: "{\"title\":\"Fetch user search\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/user-search\",\"description\":\"Fetch a list of users from Douyin App based on search keywords. Supports filtering by fan count and user type.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for first page)\",\"default\":\"0\"},{\"name\":\"douyin_user_fans\",\"type\":\"string\",\"required\":false,\"description\":\"Fan count filter\",\"default\":\"\\\"\\\"\"},{\"name\":\"douyin_user_type\",\"type\":\"string\",\"required\":false,\"description\":\"User type filter\",\"default\":\"\\\"\\\"\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"AI\\\"\",\"default\":\"猫咪\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search session ID for pagination\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/user-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/user-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/user-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/user-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/user-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/user-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/user-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/user-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/user-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin User Search (Search)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/user-search\",\"description\":\"Returns a list of Douyin users matching search keywords. Supports filtering by fan count and user type with cursor-based pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for first page)\",\"default\":\"0\"},{\"name\":\"douyin_user_fans\",\"type\":\"string\",\"required\":false,\"description\":\"Fan count filter\",\"default\":\"\\\"\\\"\"},{\"name\":\"douyin_user_type\",\"type\":\"string\",\"required\":false,\"description\":\"User type filter\",\"default\":\"\\\"\\\"\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"AI\\\"\",\"default\":\"猫咪\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search session ID for pagination\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/user-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/user-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/user-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/user-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/user-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/user-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/user-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/user-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/user-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch user search" + modelName: "Douyin User Search (Search)" modelId: "douyin/search/user-search" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/search/video-search-v1.md b/model-api-reference/platform-apis/douyin/search/video-search-v1.md index 4aae87b6..b04de906 100644 --- a/model-api-reference/platform-apis/douyin/search/video-search-v1.md +++ b/model-api-reference/platform-apis/douyin/search/video-search-v1.md @@ -1,13 +1,13 @@ --- -title: "Fetch video search V1 API Reference" -description: "SandBase API operation douyin/search/video-search-v1." +title: "Douyin Video Search (V1) API Reference" +description: "SandBase API reference for model douyin/search/video-search-v1. Call /v1/api/douyin/search/video-search-v1; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/search/video-search-v1" -apiReferenceJson: "{\"title\":\"Fetch video search V1\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/video-search-v1\",\"description\":\"Fetch video content search results from Douyin App based on a keyword. This API is focused on video search results only.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"backtrace\",\"type\":\"string\",\"required\":false,\"description\":\"Backtrace identifier used for pagination(obtained from the last response)\",\"default\":\"\\\"\\\"\"},{\"name\":\"content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Content type filter\",\"default\":\"0\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for the first page, use the last response cursor for subsequent pages)\",\"default\":\"0\"},{\"name\":\"filter_duration\",\"type\":\"string\",\"required\":false,\"description\":\"Video duration filter\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"Artificial Intelligence\\\"\",\"default\":\"猫咪\"},{\"name\":\"publish_time\",\"type\":\"string\",\"required\":false,\"description\":\"Publish time filter\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID used for pagination(obtained from the last response)\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/video-search-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/video-search-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/video-search-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/video-search-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/video-search-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/video-search-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/video-search-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/video-search-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/video-search-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Video Search (V1)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/video-search-v1\",\"description\":\"Search Douyin videos by keyword: descriptions, authors and play, like, comment and share counts, with sort, publish-time, duration and content-type filters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"backtrace\",\"type\":\"string\",\"required\":false,\"description\":\"Backtrace identifier used for pagination(obtained from the last response)\",\"default\":\"\\\"\\\"\"},{\"name\":\"content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Content type filter\",\"default\":\"0\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for the first page, use the last response cursor for subsequent pages)\",\"default\":\"0\"},{\"name\":\"filter_duration\",\"type\":\"string\",\"required\":false,\"description\":\"Video duration filter\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"Artificial Intelligence\\\"\",\"default\":\"猫咪\"},{\"name\":\"publish_time\",\"type\":\"string\",\"required\":false,\"description\":\"Publish time filter\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID used for pagination(obtained from the last response)\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/video-search-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/video-search-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/video-search-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/video-search-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/video-search-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/video-search-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/video-search-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/video-search-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/video-search-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch video search V1" + modelName: "Douyin Video Search (V1)" modelId: "douyin/search/video-search-v1" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/search/video-search-v2.md b/model-api-reference/platform-apis/douyin/search/video-search-v2.md index 3a794869..a3e2402f 100644 --- a/model-api-reference/platform-apis/douyin/search/video-search-v2.md +++ b/model-api-reference/platform-apis/douyin/search/video-search-v2.md @@ -1,13 +1,13 @@ --- -title: "Fetch video search V2 API Reference" -description: "SandBase API operation douyin/search/video-search-v2." +title: "Douyin Video Search API Reference" +description: "Douyin Video Search API reference for SandBase. Use model douyin/search/video-search-v2 with /v1/api/douyin/search/video-search-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/search/video-search-v2" -apiReferenceJson: "{\"title\":\"Fetch video search V2\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/video-search-v2\",\"description\":\"Fetch video search results from Douyin App using V2 API version. Compared to V1, returns more detailed information including author details, multi-resolution video sources, and hashtags.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"backtrace\",\"type\":\"string\",\"required\":false,\"description\":\"Backtrace identifier used for pagination(obtained from the last response)\",\"default\":\"\\\"\\\"\"},{\"name\":\"content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Content type filter\",\"default\":\"0\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for the first page, use the last response cursor for subsequent pages)\",\"default\":\"0\"},{\"name\":\"filter_duration\",\"type\":\"string\",\"required\":false,\"description\":\"Video duration filter\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"robot\\\"\",\"default\":\"猫咪\"},{\"name\":\"publish_time\",\"type\":\"string\",\"required\":false,\"description\":\"Publish time filter\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID used for pagination(obtained from the last response)\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/video-search-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/video-search-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/video-search-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/video-search-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/video-search-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/video-search-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/video-search-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/video-search-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/video-search-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Video Search\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/video-search-v2\",\"description\":\"Search Douyin videos by keyword and get descriptions, authors and play, like, comment and share counts. Filter by sort order, publish time, duration and content type, with cursor pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"backtrace\",\"type\":\"string\",\"required\":false,\"description\":\"Backtrace identifier used for pagination(obtained from the last response)\",\"default\":\"\\\"\\\"\"},{\"name\":\"content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Content type filter\",\"default\":\"0\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for the first page, use the last response cursor for subsequent pages)\",\"default\":\"0\"},{\"name\":\"filter_duration\",\"type\":\"string\",\"required\":false,\"description\":\"Video duration filter\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, e.g., \\\"robot\\\"\",\"default\":\"猫咪\"},{\"name\":\"publish_time\",\"type\":\"string\",\"required\":false,\"description\":\"Publish time filter\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID used for pagination(obtained from the last response)\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/video-search-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/video-search-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"猫咪\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/video-search-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/video-search-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/video-search-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/video-search-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/video-search-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/video-search-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/video-search-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch video search V2" + modelName: "Douyin Video Search" modelId: "douyin/search/video-search-v2" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/search/vision-search.md b/model-api-reference/platform-apis/douyin/search/vision-search.md deleted file mode 100644 index 56b72aae..00000000 --- a/model-api-reference/platform-apis/douyin/search/vision-search.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Fetch vision search (image-based search) API Reference" -description: "SandBase API operation douyin/search/vision-search." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/search/vision-search" -apiReferenceJson: "{\"title\":\"Fetch vision search (image-based search)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/search/vision-search\",\"description\":\"Douyin APP vision search (image-based search / reverse image search). Search for similar videos/images using an image. The `image_uri` can be obtained from other Douyin API responses (such as video details, search results, user profile, etc.), and used directly for vision search.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":false,\"description\":\"Original video ID, only used when search_source=\\\"visual_normal_search\\\"\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor (0 for the first page)\"},{\"name\":\"detection\",\"type\":\"string\",\"required\":false,\"description\":\"Detection area coordinates, format \\\"x1,y1,x2,y2\\\"\"},{\"name\":\"detection_index\",\"type\":\"integer\",\"required\":false,\"description\":\"Detection index, default 0\"},{\"name\":\"image_uri\",\"type\":\"string\",\"required\":true,\"description\":\"Image URI obtained from other Douyin API responses (e.g., video details, search results, user profile) (required)\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID (empty for first request, obtained from previous response for pagination)\"},{\"name\":\"search_source\",\"type\":\"string\",\"required\":false,\"description\":\"Search source\"},{\"name\":\"user_query\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, only used when search_source=\\\"visual_normal_search\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/search/vision-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"image_uri\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"image_uri\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/search/vision-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"image_uri\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/search/vision-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/search/vision-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/search/vision-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/search/vision-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/search/vision-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/search/vision-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/search/vision-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Fetch vision search (image-based search)" - modelId: "douyin/search/vision-search" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "search/vision-search" - protocol: "API Reference" - endpoint: "/v1/api/douyin/search/vision-search" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/web/all-aweme-id.md b/model-api-reference/platform-apis/douyin/web/all-aweme-id.md index cd503d25..8b8b5572 100644 --- a/model-api-reference/platform-apis/douyin/web/all-aweme-id.md +++ b/model-api-reference/platform-apis/douyin/web/all-aweme-id.md @@ -1,13 +1,13 @@ --- -title: "Extract list video id API Reference — Douyin Web / All Aweme Id" -description: "SandBase API operation douyin/web/all-aweme-id." +title: "Douyin Batch Video ID Extraction API Reference" +description: "Douyin Batch Video ID Extraction API reference for SandBase. Use model douyin/web/all-aweme-id with /v1/api/douyin/web/all-aweme-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/all-aweme-id" -apiReferenceJson: "{\"title\":\"Extract list video id\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/all-aweme-id\",\"description\":\"Extract list video id (supports up to 20 links)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"Video link list\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/all-aweme-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"body\\\": [\\n \\\"https://www.douyin.com/video/7512756548356492544\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"body\\\": [\\n \\\"https://www.douyin.com/video/7512756548356492544\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/all-aweme-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"body\\\": [\\n \\\"https://www.douyin.com/video/7512756548356492544\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/all-aweme-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/all-aweme-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/all-aweme-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/all-aweme-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/all-aweme-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/all-aweme-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/all-aweme-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Batch Video ID Extraction\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/all-aweme-id\",\"description\":\"Extracts video IDs from a list of Douyin video URLs. Accepts an array of links and returns the corresponding item identifiers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"Video link list\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/all-aweme-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"body\\\": [\\n \\\"https://www.douyin.com/video/7512756548356492544\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"body\\\": [\\n \\\"https://www.douyin.com/video/7512756548356492544\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/all-aweme-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"body\\\": [\\n \\\"https://www.douyin.com/video/7512756548356492544\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/all-aweme-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/all-aweme-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/all-aweme-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/all-aweme-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/all-aweme-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/all-aweme-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/all-aweme-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Extract list video id" + modelName: "Douyin Batch Video ID Extraction" modelId: "douyin/web/all-aweme-id" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/all-sec-user-id.md b/model-api-reference/platform-apis/douyin/web/all-sec-user-id.md index 2d8a6443..a17b5530 100644 --- a/model-api-reference/platform-apis/douyin/web/all-sec-user-id.md +++ b/model-api-reference/platform-apis/douyin/web/all-sec-user-id.md @@ -1,13 +1,13 @@ --- -title: "Extract list user id API Reference" -description: "SandBase API operation douyin/web/all-sec-user-id." +title: "Douyin sec_user_ids from URLs (Batch) API Reference" +description: "SandBase API reference for model douyin/web/all-sec-user-id. Call /v1/api/douyin/web/all-sec-user-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/all-sec-user-id" -apiReferenceJson: "{\"title\":\"Extract list user id\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/all-sec-user-id\",\"description\":\"Extract list user id\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"User homepage link list\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/all-sec-user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/all-sec-user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/all-sec-user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/all-sec-user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/all-sec-user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/all-sec-user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/all-sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/all-sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/all-sec-user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin sec_user_ids from URLs (Batch)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/all-sec-user-id\",\"description\":\"Extracts Douyin sec_user_id values in bulk from a list of user homepage URLs. Accepts an array of profile links to return the corresponding platform identifiers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"User homepage link list\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/all-sec-user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/all-sec-user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/all-sec-user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/all-sec-user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/all-sec-user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/all-sec-user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/all-sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/all-sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/all-sec-user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Extract list user id" + modelName: "Douyin sec_user_ids from URLs (Batch)" modelId: "douyin/web/all-sec-user-id" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/all-webcast-id.md b/model-api-reference/platform-apis/douyin/web/all-webcast-id.md index c7df7cc1..af2963ce 100644 --- a/model-api-reference/platform-apis/douyin/web/all-webcast-id.md +++ b/model-api-reference/platform-apis/douyin/web/all-webcast-id.md @@ -1,13 +1,13 @@ --- -title: "Extract list webcast id API Reference" -description: "SandBase API operation douyin/web/all-webcast-id." +title: "Douyin Webcast ID Extraction API Reference" +description: "Douyin Webcast ID Extraction API reference for SandBase. Use model douyin/web/all-webcast-id with /v1/api/douyin/web/all-webcast-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/all-webcast-id" -apiReferenceJson: "{\"title\":\"Extract list webcast id\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/all-webcast-id\",\"description\":\"Extract list webcast id\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"Room link list\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/all-webcast-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/all-webcast-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/all-webcast-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/all-webcast-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/all-webcast-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/all-webcast-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/all-webcast-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/all-webcast-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/all-webcast-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Webcast ID Extraction\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/all-webcast-id\",\"description\":\"Extracts webcast IDs from a submitted list of Douyin live room links. Useful for resolving live stream identifiers across multiple URLs in bulk.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"Room link list\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/all-webcast-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/all-webcast-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/all-webcast-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/all-webcast-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/all-webcast-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/all-webcast-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/all-webcast-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/all-webcast-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/all-webcast-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Extract list webcast id" + modelName: "Douyin Webcast ID Extraction" modelId: "douyin/web/all-webcast-id" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/aweme-id.md b/model-api-reference/platform-apis/douyin/web/aweme-id.md index 6c2594d4..693cbd16 100644 --- a/model-api-reference/platform-apis/douyin/web/aweme-id.md +++ b/model-api-reference/platform-apis/douyin/web/aweme-id.md @@ -1,13 +1,13 @@ --- -title: "Extract single video id API Reference — Douyin Web / Aweme Id API" -description: "SandBase API operation douyin/web/aweme-id." +title: "Douyin Video ID Extractor API Reference" +description: "Douyin Video ID Extractor API reference for SandBase. Use model douyin/web/aweme-id with /v1/api/douyin/web/aweme-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/aweme-id" -apiReferenceJson: "{\"title\":\"Extract single video id\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/aweme-id\",\"description\":\"Extract single video id\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Download URL for a generated output asset.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/aweme-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://www.douyin.com/video/7512756548356492544\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://www.douyin.com/video/7512756548356492544\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/aweme-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://www.douyin.com/video/7512756548356492544\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/aweme-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/aweme-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/aweme-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/aweme-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/aweme-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/aweme-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/aweme-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Video ID Extractor\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/aweme-id\",\"description\":\"Extracts the internal video ID from a given Douyin video web URL. Useful for parsing links before calling downstream video detail endpoints.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Download URL for a generated output asset.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/aweme-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://www.douyin.com/video/7512756548356492544\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://www.douyin.com/video/7512756548356492544\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/aweme-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://www.douyin.com/video/7512756548356492544\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/aweme-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/aweme-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/aweme-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/aweme-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/aweme-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/aweme-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/aweme-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Extract single video id" + modelName: "Douyin Video ID Extractor" modelId: "douyin/web/aweme-id" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/batch-user-profile-v1.md b/model-api-reference/platform-apis/douyin/web/batch-user-profile-v1.md index 1319c315..85cb306c 100644 --- a/model-api-reference/platform-apis/douyin/web/batch-user-profile-v1.md +++ b/model-api-reference/platform-apis/douyin/web/batch-user-profile-v1.md @@ -1,13 +1,13 @@ --- -title: "Get batch user profile (up to 10) API Reference" -description: "SandBase API operation douyin/web/batch-user-profile-v1." +title: "Douyin Batch User Profile API Reference" +description: "SandBase API reference for model douyin/web/batch-user-profile-v1. Call /v1/api/douyin/web/batch-user-profile-v1; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/batch-user-profile-v1" -apiReferenceJson: "{\"title\":\"Get batch user profile (up to 10)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/batch-user-profile-v1\",\"description\":\"Get batch user profile, up to 10 users\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_user_ids\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_user_id list, separated by commas, up to 10\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/batch-user-profile-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sec_user_ids\\\": \\\"sec_user_ids\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sec_user_ids\\\": \\\"sec_user_ids\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/batch-user-profile-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sec_user_ids\\\": \\\"sec_user_ids\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/batch-user-profile-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/batch-user-profile-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/batch-user-profile-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/batch-user-profile-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/batch-user-profile-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/batch-user-profile-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/batch-user-profile-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Batch User Profile\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/batch-user-profile-v1\",\"description\":\"Retrieves public profile information for multiple Douyin accounts in a single request. Specify up to 10 user IDs to return user details in batch.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_user_ids\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_user_id list, separated by commas, up to 10\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/batch-user-profile-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sec_user_ids\\\": \\\"sec_user_ids\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sec_user_ids\\\": \\\"sec_user_ids\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/batch-user-profile-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sec_user_ids\\\": \\\"sec_user_ids\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/batch-user-profile-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/batch-user-profile-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/batch-user-profile-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/batch-user-profile-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/batch-user-profile-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/batch-user-profile-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/batch-user-profile-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get batch user profile (up to 10)" + modelName: "Douyin Batch User Profile" modelId: "douyin/web/batch-user-profile-v1" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/batch-user-profile-v2.md b/model-api-reference/platform-apis/douyin/web/batch-user-profile-v2.md index 22871e3a..f53601c4 100644 --- a/model-api-reference/platform-apis/douyin/web/batch-user-profile-v2.md +++ b/model-api-reference/platform-apis/douyin/web/batch-user-profile-v2.md @@ -1,13 +1,13 @@ --- -title: "Get batch user profile (up to 50) API Reference" -description: "SandBase API operation douyin/web/batch-user-profile-v2." +title: "Douyin Batch User Profile (V2) API Reference" +description: "SandBase API reference for model douyin/web/batch-user-profile-v2. Call /v1/api/douyin/web/batch-user-profile-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/batch-user-profile-v2" -apiReferenceJson: "{\"title\":\"Get batch user profile (up to 50)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/batch-user-profile-v2\",\"description\":\"Get batch user profile, up to 50 users\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_user_ids\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_user_id list, separated by commas, up to 50\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/batch-user-profile-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sec_user_ids\\\": \\\"sec_user_ids\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sec_user_ids\\\": \\\"sec_user_ids\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/batch-user-profile-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sec_user_ids\\\": \\\"sec_user_ids\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/batch-user-profile-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/batch-user-profile-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/batch-user-profile-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/batch-user-profile-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/batch-user-profile-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/batch-user-profile-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/batch-user-profile-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Batch User Profile (V2)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/batch-user-profile-v2\",\"description\":\"Retrieves user profile details in batches for up to 50 Douyin accounts at once. Pass comma-separated secure user identifiers to return account data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_user_ids\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_user_id list, separated by commas, up to 50\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/batch-user-profile-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sec_user_ids\\\": \\\"sec_user_ids\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sec_user_ids\\\": \\\"sec_user_ids\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/batch-user-profile-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sec_user_ids\\\": \\\"sec_user_ids\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/batch-user-profile-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/batch-user-profile-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/batch-user-profile-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/batch-user-profile-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/batch-user-profile-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/batch-user-profile-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/batch-user-profile-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get batch user profile (up to 50)" + modelName: "Douyin Batch User Profile (V2)" modelId: "douyin/web/batch-user-profile-v2" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/cartoon-aweme.md b/model-api-reference/platform-apis/douyin/web/cartoon-aweme.md index cf7db987..e0644bfc 100644 --- a/model-api-reference/platform-apis/douyin/web/cartoon-aweme.md +++ b/model-api-reference/platform-apis/douyin/web/cartoon-aweme.md @@ -1,13 +1,13 @@ --- -title: "Anime Video API Reference" -description: "SandBase API operation douyin/web/cartoon-aweme." +title: "Douyin Anime Videos API Reference" +description: "Douyin Anime Videos API reference for SandBase. Use model douyin/web/cartoon-aweme with /v1/api/douyin/web/cartoon-aweme; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/cartoon-aweme" -apiReferenceJson: "{\"title\":\"Anime Video\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/cartoon-aweme\",\"description\":\"Cartoon Video\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User provided Cookie, it is recommended to use your own Douyin Cookie, otherwise there may be a problem of data duplication when paging\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":true,\"description\":\"Number per page, default is 16\"},{\"name\":\"refresh_index\",\"type\":\"integer\",\"required\":false,\"description\":\"Paging index, default is 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/cartoon-aweme \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"count\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"count\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/cartoon-aweme\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"count\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/cartoon-aweme\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/cartoon-aweme\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/cartoon-aweme\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/cartoon-aweme\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/cartoon-aweme\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/cartoon-aweme\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/cartoon-aweme\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Anime Videos\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/cartoon-aweme\",\"description\":\"Returns anime and cartoon videos from Douyin Web. Results can be adjusted using page size and pagination index parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":true,\"description\":\"Number per page, default is 16\"},{\"name\":\"refresh_index\",\"type\":\"integer\",\"required\":false,\"description\":\"Paging index, default is 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/cartoon-aweme \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"count\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"count\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/cartoon-aweme\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"count\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/cartoon-aweme\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/cartoon-aweme\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/cartoon-aweme\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/cartoon-aweme\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/cartoon-aweme\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/cartoon-aweme\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/cartoon-aweme\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Anime Video" + modelName: "Douyin Anime Videos" modelId: "douyin/web/cartoon-aweme" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/challenge-posts.md b/model-api-reference/platform-apis/douyin/web/challenge-posts.md deleted file mode 100644 index b6c74f1f..00000000 --- a/model-api-reference/platform-apis/douyin/web/challenge-posts.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Challenge Posts API Reference" -description: "SandBase API operation douyin/web/challenge-posts." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/web/challenge-posts" -apiReferenceJson: "{\"title\":\"Challenge Posts\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/challenge-posts\",\"description\":\"Challenge Posts\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"challenge_id\",\"type\":\"string\",\"required\":false,\"description\":\"Challenge id\"},{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User provided Cookie, used to get more data\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor\"},{\"name\":\"sort_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort type\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/challenge-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/web/challenge-posts\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/web/challenge-posts\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/challenge-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/web/challenge-posts\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/challenge-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/challenge-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/challenge-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/challenge-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/challenge-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/challenge-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/challenge-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Challenge Posts" - modelId: "douyin/web/challenge-posts" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "web/challenge-posts" - protocol: "API Reference" - endpoint: "/v1/api/douyin/web/challenge-posts" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/web/encrypt-uid-to-sec-user-id.md b/model-api-reference/platform-apis/douyin/web/encrypt-uid-to-sec-user-id.md index 0d3d5112..3242f6c1 100644 --- a/model-api-reference/platform-apis/douyin/web/encrypt-uid-to-sec-user-id.md +++ b/model-api-reference/platform-apis/douyin/web/encrypt-uid-to-sec-user-id.md @@ -1,13 +1,13 @@ --- -title: "Encrypt user uid to sec_user_id API Reference" -description: "SandBase API operation douyin/web/encrypt-uid-to-sec-user-id." +title: "Douyin UID to Sec User ID API Reference" +description: "SandBase API reference for model douyin/web/encrypt-uid-to-sec-user-id. Call /v1/api/douyin/web/encrypt-uid-to-sec-user-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/encrypt-uid-to-sec-user-id" -apiReferenceJson: "{\"title\":\"Encrypt user uid to sec_user_id\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/encrypt-uid-to-sec-user-id\",\"description\":\"Encrypt user uid to sec_user_id\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User uid, which is the short_id of the Douyin number\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/encrypt-uid-to-sec-user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/encrypt-uid-to-sec-user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/encrypt-uid-to-sec-user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/encrypt-uid-to-sec-user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/encrypt-uid-to-sec-user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/encrypt-uid-to-sec-user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/encrypt-uid-to-sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/encrypt-uid-to-sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/encrypt-uid-to-sec-user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin UID to Sec User ID\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/encrypt-uid-to-sec-user-id\",\"description\":\"Converts a standard Douyin user UID into an encrypted sec_user_id. It takes a short_id value and returns the corresponding secure identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User uid, which is the short_id of the Douyin number\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/encrypt-uid-to-sec-user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"92769419069\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"92769419069\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/encrypt-uid-to-sec-user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"92769419069\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/encrypt-uid-to-sec-user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/encrypt-uid-to-sec-user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/encrypt-uid-to-sec-user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/encrypt-uid-to-sec-user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/encrypt-uid-to-sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/encrypt-uid-to-sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/encrypt-uid-to-sec-user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Encrypt user uid to sec_user_id" + modelName: "Douyin UID to Sec User ID" modelId: "douyin/web/encrypt-uid-to-sec-user-id" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/food-aweme.md b/model-api-reference/platform-apis/douyin/web/food-aweme.md index 17349254..063db212 100644 --- a/model-api-reference/platform-apis/douyin/web/food-aweme.md +++ b/model-api-reference/platform-apis/douyin/web/food-aweme.md @@ -1,13 +1,13 @@ --- -title: "Food Video API Reference" -description: "SandBase API operation douyin/web/food-aweme." +title: "Douyin Food Videos API Reference" +description: "Douyin Food Videos API reference for SandBase. Use model douyin/web/food-aweme with /v1/api/douyin/web/food-aweme; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/food-aweme" -apiReferenceJson: "{\"title\":\"Food Video\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/food-aweme\",\"description\":\"Food Video\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User provided Cookie, it is recommended to use your own Douyin Cookie, otherwise there may be a problem of data duplication when paging\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":true,\"description\":\"Number per page, default is 16\"},{\"name\":\"refresh_index\",\"type\":\"integer\",\"required\":false,\"description\":\"Paging index, default is 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/food-aweme \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"count\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"count\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/food-aweme\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"count\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/food-aweme\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/food-aweme\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/food-aweme\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/food-aweme\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/food-aweme\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/food-aweme\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/food-aweme\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Food Videos\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/food-aweme\",\"description\":\"Returns a feed of food-related videos from Douyin Web. Results can be paginated using count and refresh index parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":true,\"description\":\"Number per page, default is 16\"},{\"name\":\"refresh_index\",\"type\":\"integer\",\"required\":false,\"description\":\"Paging index, default is 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/food-aweme \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"count\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"count\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/food-aweme\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"count\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/food-aweme\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/food-aweme\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/food-aweme\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/food-aweme\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/food-aweme\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/food-aweme\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/food-aweme\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Food Video" + modelName: "Douyin Food Videos" modelId: "douyin/web/food-aweme" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/game-aweme.md b/model-api-reference/platform-apis/douyin/web/game-aweme.md index 68ae9658..e6bff6c3 100644 --- a/model-api-reference/platform-apis/douyin/web/game-aweme.md +++ b/model-api-reference/platform-apis/douyin/web/game-aweme.md @@ -1,13 +1,13 @@ --- -title: "Game Video API Reference" -description: "SandBase API operation douyin/web/game-aweme." +title: "Douyin Game Videos API Reference" +description: "Douyin Game Videos API reference for SandBase. Use model douyin/web/game-aweme with /v1/api/douyin/web/game-aweme; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/game-aweme" -apiReferenceJson: "{\"title\":\"Game Video\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/game-aweme\",\"description\":\"Knowledge Video\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User provided Cookie, it is recommended to use your own Douyin Cookie, otherwise there may be a problem of data duplication when paging\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":true,\"description\":\"Number per page, default is 16\"},{\"name\":\"refresh_index\",\"type\":\"integer\",\"required\":false,\"description\":\"Paging index, default is 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/game-aweme \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"count\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"count\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/game-aweme\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"count\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/game-aweme\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/game-aweme\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/game-aweme\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/game-aweme\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/game-aweme\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/game-aweme\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/game-aweme\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Game Videos\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/game-aweme\",\"description\":\"Returns a paginated list of game-related videos from Douyin web. Callers specify the number of items per page and a refresh index to navigate through video feeds.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":true,\"description\":\"Number per page, default is 16\"},{\"name\":\"refresh_index\",\"type\":\"integer\",\"required\":false,\"description\":\"Paging index, default is 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/game-aweme \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"count\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"count\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/game-aweme\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"count\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/game-aweme\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/game-aweme\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/game-aweme\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/game-aweme\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/game-aweme\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/game-aweme\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/game-aweme\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Game Video" + modelName: "Douyin Game Videos" modelId: "douyin/web/game-aweme" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/generate-a-bogus.md b/model-api-reference/platform-apis/douyin/web/generate-a-bogus.md deleted file mode 100644 index 37835221..00000000 --- a/model-api-reference/platform-apis/douyin/web/generate-a-bogus.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Generate A-Bogus parameter using API URL API Reference" -description: "SandBase API operation douyin/web/generate-a-bogus." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/web/generate-a-bogus" -apiReferenceJson: "{\"title\":\"Generate A-Bogus parameter using API URL\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/generate-a-bogus\",\"description\":\"Generate A-Bogus parameter using API URL, the submitted URL cannot contain the original a_boogus parameter, and the a_bogus parameter is related to the User-Agent in the request header, which needs to be submitted and requested together.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"data\",\"type\":\"string\",\"required\":true,\"description\":\"Request payload, only need to submit in POST request, use an empty string in GET request.\"},{\"name\":\"index_0\",\"type\":\"integer\",\"required\":false,\"description\":\"The first value of the encrypted plaintext list, no special requirements, the default is 0, do not modify it at will.\"},{\"name\":\"index_1\",\"type\":\"integer\",\"required\":false,\"description\":\"The second value of the encrypted plaintext list, no special requirements, the default is 1, do not modify it at will.\"},{\"name\":\"index_2\",\"type\":\"integer\",\"required\":false,\"description\":\"The third value of the encrypted plaintext list, no special requirements, the default is 14, do not modify it at will.\"},{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"API link, please remove the original a_boogus parameter from the url (if any).\"},{\"name\":\"user_agent\",\"type\":\"string\",\"required\":true,\"description\":\"user-agent, you need to submit the User-Agent in your request header, which is involved in the calculation of the a_bogus parameter.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/generate-a-bogus \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"data\\\": \\\"data\\\",\\n \\\"url\\\": \\\"https://example.com/resource\\\",\\n \\\"user_agent\\\": \\\"user_agent\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"data\\\": \\\"data\\\",\\n \\\"url\\\": \\\"https://example.com/resource\\\",\\n \\\"user_agent\\\": \\\"user_agent\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/generate-a-bogus\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"data\\\": \\\"data\\\",\\n \\\"url\\\": \\\"https://example.com/resource\\\",\\n \\\"user_agent\\\": \\\"user_agent\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/generate-a-bogus\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/generate-a-bogus\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/generate-a-bogus\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/generate-a-bogus\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/generate-a-bogus\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/generate-a-bogus\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/generate-a-bogus\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Generate A-Bogus parameter using API URL" - modelId: "douyin/web/generate-a-bogus" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "web/generate-a-bogus" - protocol: "API Reference" - endpoint: "/v1/api/douyin/web/generate-a-bogus" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/web/generate-real-ms-token.md b/model-api-reference/platform-apis/douyin/web/generate-real-ms-token.md deleted file mode 100644 index 490cc312..00000000 --- a/model-api-reference/platform-apis/douyin/web/generate-real-ms-token.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Generate real msToken API Reference — Douyin Real Ms Token" -description: "SandBase API operation douyin/web/generate-real-ms-token." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/web/generate-real-ms-token" -apiReferenceJson: "{\"title\":\"Generate real msToken\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/generate-real-ms-token\",\"description\":\"Generate real msToken\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/generate-real-ms-token \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/web/generate-real-ms-token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/web/generate-real-ms-token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/generate-real-ms-token\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/web/generate-real-ms-token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/generate-real-ms-token\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/generate-real-ms-token\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/generate-real-ms-token\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/generate-real-ms-token\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/generate-real-ms-token\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/generate-real-ms-token\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/generate-real-ms-token\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Generate real msToken" - modelId: "douyin/web/generate-real-ms-token" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "web/generate-real-ms-token" - protocol: "API Reference" - endpoint: "/v1/api/douyin/web/generate-real-ms-token" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/web/generate-s-v-web-id.md b/model-api-reference/platform-apis/douyin/web/generate-s-v-web-id.md deleted file mode 100644 index 880db065..00000000 --- a/model-api-reference/platform-apis/douyin/web/generate-s-v-web-id.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Generate s_v_web_id API Reference" -description: "SandBase API operation douyin/web/generate-s-v-web-id." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/web/generate-s-v-web-id" -apiReferenceJson: "{\"title\":\"Generate s_v_web_id\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/generate-s-v-web-id\",\"description\":\"Generate s_v_web_id\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/generate-s-v-web-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/web/generate-s-v-web-id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/web/generate-s-v-web-id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/generate-s-v-web-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/web/generate-s-v-web-id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/generate-s-v-web-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/generate-s-v-web-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/generate-s-v-web-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/generate-s-v-web-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/generate-s-v-web-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/generate-s-v-web-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/generate-s-v-web-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Generate s_v_web_id" - modelId: "douyin/web/generate-s-v-web-id" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "web/generate-s-v-web-id" - protocol: "API Reference" - endpoint: "/v1/api/douyin/web/generate-s-v-web-id" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/web/generate-ttwid.md b/model-api-reference/platform-apis/douyin/web/generate-ttwid.md index c7b6aecc..40524664 100644 --- a/model-api-reference/platform-apis/douyin/web/generate-ttwid.md +++ b/model-api-reference/platform-apis/douyin/web/generate-ttwid.md @@ -1,13 +1,13 @@ --- -title: "Generate ttwid API Reference — Douyin Web / Generate Ttwid API" -description: "SandBase API operation douyin/web/generate-ttwid." +title: "Douyin Web TTWID Generator API Reference" +description: "Douyin Web TTWID Generator API reference for SandBase. Use model douyin/web/generate-ttwid with /v1/api/douyin/web/generate-ttwid; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/generate-ttwid" -apiReferenceJson: "{\"title\":\"Generate ttwid\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/generate-ttwid\",\"description\":\"Generate ttwid\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_agent\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/generate-ttwid \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/web/generate-ttwid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/web/generate-ttwid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/generate-ttwid\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/web/generate-ttwid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/generate-ttwid\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/generate-ttwid\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/generate-ttwid\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/generate-ttwid\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/generate-ttwid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/generate-ttwid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/generate-ttwid\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Web TTWID Generator\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/generate-ttwid\",\"description\":\"Returns a Douyin web ttwid cookie value required for web session authentication. Accepts an optional custom user agent string.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_agent\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/generate-ttwid \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/generate-ttwid\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/generate-ttwid\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/generate-ttwid\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/generate-ttwid\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/generate-ttwid\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/generate-ttwid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/generate-ttwid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/generate-ttwid\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate ttwid" + modelName: "Douyin Web TTWID Generator" modelId: "douyin/web/generate-ttwid" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/generate-verify-fp.md b/model-api-reference/platform-apis/douyin/web/generate-verify-fp.md deleted file mode 100644 index 0d89cb1d..00000000 --- a/model-api-reference/platform-apis/douyin/web/generate-verify-fp.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Generate verify_fp API Reference" -description: "SandBase API operation douyin/web/generate-verify-fp." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/web/generate-verify-fp" -apiReferenceJson: "{\"title\":\"Generate verify_fp\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/generate-verify-fp\",\"description\":\"Generate verify_fp\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/generate-verify-fp \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/web/generate-verify-fp\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/web/generate-verify-fp\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/generate-verify-fp\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/web/generate-verify-fp\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/generate-verify-fp\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/generate-verify-fp\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/generate-verify-fp\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/generate-verify-fp\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/generate-verify-fp\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/generate-verify-fp\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/generate-verify-fp\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Generate verify_fp" - modelId: "douyin/web/generate-verify-fp" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "web/generate-verify-fp" - protocol: "API Reference" - endpoint: "/v1/api/douyin/web/generate-verify-fp" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/web/generate-wss-xb-signature.md b/model-api-reference/platform-apis/douyin/web/generate-wss-xb-signature.md index 748c311d..a039bbb5 100644 --- a/model-api-reference/platform-apis/douyin/web/generate-wss-xb-signature.md +++ b/model-api-reference/platform-apis/douyin/web/generate-wss-xb-signature.md @@ -1,13 +1,13 @@ --- -title: "Generate barrage xb signature API Reference" -description: "SandBase API operation douyin/web/generate-wss-xb-signature." +title: "Douyin Barrage WSS XB Signature API Reference" +description: "SandBase API reference for model douyin/web/generate-wss-xb-signature. Call /v1/api/douyin/web/generate-wss-xb-signature; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/generate-wss-xb-signature" -apiReferenceJson: "{\"title\":\"Generate barrage xb signature\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/generate-wss-xb-signature\",\"description\":\"Generate danmu xb signature\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Room ID\"},{\"name\":\"user_agent\",\"type\":\"string\",\"required\":true,\"description\":\"User browser agent\"},{\"name\":\"user_unique_id\",\"type\":\"string\",\"required\":true,\"description\":\"User unique ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/generate-wss-xb-signature \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"room_id\\\": \\\"room_id\\\",\\n \\\"user_agent\\\": \\\"user_agent\\\",\\n \\\"user_unique_id\\\": \\\"user_unique_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"room_id\\\": \\\"room_id\\\",\\n \\\"user_agent\\\": \\\"user_agent\\\",\\n \\\"user_unique_id\\\": \\\"user_unique_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/generate-wss-xb-signature\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"room_id\\\": \\\"room_id\\\",\\n \\\"user_agent\\\": \\\"user_agent\\\",\\n \\\"user_unique_id\\\": \\\"user_unique_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/generate-wss-xb-signature\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/generate-wss-xb-signature\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/generate-wss-xb-signature\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/generate-wss-xb-signature\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/generate-wss-xb-signature\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/generate-wss-xb-signature\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/generate-wss-xb-signature\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Barrage WSS XB Signature\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/generate-wss-xb-signature\",\"description\":\"Returns a signed xb parameter for Douyin web barrage WebSocket connections using a specified room ID, user browser agent, and unique user identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Room ID\"},{\"name\":\"user_agent\",\"type\":\"string\",\"required\":true,\"description\":\"User browser agent\"},{\"name\":\"user_unique_id\",\"type\":\"string\",\"required\":true,\"description\":\"User unique ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/generate-wss-xb-signature \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"room_id\\\": \\\"room_id\\\",\\n \\\"user_agent\\\": \\\"user_agent\\\",\\n \\\"user_unique_id\\\": \\\"user_unique_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"room_id\\\": \\\"room_id\\\",\\n \\\"user_agent\\\": \\\"user_agent\\\",\\n \\\"user_unique_id\\\": \\\"user_unique_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/generate-wss-xb-signature\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"room_id\\\": \\\"room_id\\\",\\n \\\"user_agent\\\": \\\"user_agent\\\",\\n \\\"user_unique_id\\\": \\\"user_unique_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/generate-wss-xb-signature\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/generate-wss-xb-signature\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/generate-wss-xb-signature\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/generate-wss-xb-signature\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/generate-wss-xb-signature\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/generate-wss-xb-signature\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/generate-wss-xb-signature\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate barrage xb signature" + modelName: "Douyin Barrage WSS XB Signature" modelId: "douyin/web/generate-wss-xb-signature" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/generate-x-bogus.md b/model-api-reference/platform-apis/douyin/web/generate-x-bogus.md deleted file mode 100644 index fe812a95..00000000 --- a/model-api-reference/platform-apis/douyin/web/generate-x-bogus.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Generate X-Bogus parameter using API URL API Reference" -description: "SandBase API operation douyin/web/generate-x-bogus." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/web/generate-x-bogus" -apiReferenceJson: "{\"title\":\"Generate X-Bogus parameter using API URL\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/generate-x-bogus\",\"description\":\"Generate X-Bogus parameter using API URL\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"API URL\"},{\"name\":\"user_agent\",\"type\":\"string\",\"required\":true,\"description\":\"User-Agent when requesting the API\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/generate-x-bogus \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\",\\n \\\"user_agent\\\": \\\"user_agent\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\",\\n \\\"user_agent\\\": \\\"user_agent\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/generate-x-bogus\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\",\\n \\\"user_agent\\\": \\\"user_agent\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/generate-x-bogus\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/generate-x-bogus\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/generate-x-bogus\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/generate-x-bogus\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/generate-x-bogus\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/generate-x-bogus\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/generate-x-bogus\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Generate X-Bogus parameter using API URL" - modelId: "douyin/web/generate-x-bogus" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "web/generate-x-bogus" - protocol: "API Reference" - endpoint: "/v1/api/douyin/web/generate-x-bogus" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/web/home-feed.md b/model-api-reference/platform-apis/douyin/web/home-feed.md index d53e5bd3..0a3fb40d 100644 --- a/model-api-reference/platform-apis/douyin/web/home-feed.md +++ b/model-api-reference/platform-apis/douyin/web/home-feed.md @@ -1,13 +1,13 @@ --- -title: "Get home feed data API Reference" -description: "SandBase API operation douyin/web/home-feed." +title: "Douyin Web Home Feed API Reference" +description: "Douyin Web Home Feed API reference for SandBase. Use model douyin/web/home-feed with /v1/api/douyin/web/home-feed; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/home-feed" -apiReferenceJson: "{\"title\":\"Get home feed data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/home-feed\",\"description\":\"Get home feed data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"Optional, your web version of Douyin login Cookie. Returns a personalized feed for that account; uses the default Cookie if omitted.\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number, default is 10, it is recommended to keep it unchanged.\"},{\"name\":\"refresh_index\",\"type\":\"integer\",\"required\":false,\"description\":\"Refresh/paging index, start at 0 and +1 per page.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/home-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/web/home-feed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/web/home-feed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/home-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/web/home-feed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/home-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/home-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/home-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/home-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/home-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/home-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/home-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Web Home Feed\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/home-feed\",\"description\":\"Retrieves the Douyin web home feed containing video listings and media metadata. Supports setting the item count and pagination index.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number, default is 10, it is recommended to keep it unchanged.\"},{\"name\":\"refresh_index\",\"type\":\"integer\",\"required\":false,\"description\":\"Refresh/paging index, start at 0 and +1 per page.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/home-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/home-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/home-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/home-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/home-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/home-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/home-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/home-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/home-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get home feed data" + modelName: "Douyin Web Home Feed" modelId: "douyin/web/home-feed" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/hot-search-result.md b/model-api-reference/platform-apis/douyin/web/hot-search-result.md index 5a9df1d6..16d86de4 100644 --- a/model-api-reference/platform-apis/douyin/web/hot-search-result.md +++ b/model-api-reference/platform-apis/douyin/web/hot-search-result.md @@ -1,13 +1,13 @@ --- -title: "Get Douyin hot search results API Reference" -description: "SandBase API operation douyin/web/hot-search-result." +title: "Douyin Web Hot Search Results API Reference" +description: "SandBase API reference for model douyin/web/hot-search-result. Call /v1/api/douyin/web/hot-search-result; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/hot-search-result" -apiReferenceJson: "{\"title\":\"Get Douyin hot search results\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/hot-search-result\",\"description\":\"Get Douyin hot search results\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/hot-search-result \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/web/hot-search-result\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/web/hot-search-result\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/hot-search-result\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/web/hot-search-result\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/hot-search-result\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/hot-search-result\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/hot-search-result\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/hot-search-result\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/hot-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/hot-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/hot-search-result\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Web Hot Search Results\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/hot-search-result\",\"description\":\"Returns current hot search rankings and trending query results from Douyin web. Access active search trends directly without required query parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/hot-search-result \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/hot-search-result\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/hot-search-result\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/hot-search-result\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/hot-search-result\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/hot-search-result\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/hot-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/hot-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/hot-search-result\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Douyin hot search results" + modelName: "Douyin Web Hot Search Results" modelId: "douyin/web/hot-search-result" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/knowledge-aweme.md b/model-api-reference/platform-apis/douyin/web/knowledge-aweme.md index 6b46c3a4..1f32cc03 100644 --- a/model-api-reference/platform-apis/douyin/web/knowledge-aweme.md +++ b/model-api-reference/platform-apis/douyin/web/knowledge-aweme.md @@ -1,13 +1,13 @@ --- -title: "Knowledge Video API Reference" -description: "SandBase API operation douyin/web/knowledge-aweme." +title: "Douyin Web Knowledge Videos API Reference" +description: "Douyin Web Knowledge Videos API reference for SandBase. Use model douyin/web/knowledge-aweme with /v1/api/douyin/web/knowledge-aweme; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/knowledge-aweme" -apiReferenceJson: "{\"title\":\"Knowledge Video\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/knowledge-aweme\",\"description\":\"Knowledge Video\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User provided Cookie, it is recommended to use your own Douyin Cookie, otherwise there may be a problem of data duplication when paging\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":true,\"description\":\"Number per page, default is 16\"},{\"name\":\"refresh_index\",\"type\":\"integer\",\"required\":false,\"description\":\"Paging index, default is 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/knowledge-aweme \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"count\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"count\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/knowledge-aweme\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"count\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/knowledge-aweme\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/knowledge-aweme\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/knowledge-aweme\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/knowledge-aweme\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/knowledge-aweme\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/knowledge-aweme\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/knowledge-aweme\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Web Knowledge Videos\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/knowledge-aweme\",\"description\":\"Retrieves a feed of knowledge-focused videos from Douyin Web. Supports pagination controls using item count and refresh index parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":true,\"description\":\"Number per page, default is 16\"},{\"name\":\"refresh_index\",\"type\":\"integer\",\"required\":false,\"description\":\"Paging index, default is 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/knowledge-aweme \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"count\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"count\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/knowledge-aweme\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"count\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/knowledge-aweme\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/knowledge-aweme\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/knowledge-aweme\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/knowledge-aweme\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/knowledge-aweme\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/knowledge-aweme\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/knowledge-aweme\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Knowledge Video" + modelName: "Douyin Web Knowledge Videos" modelId: "douyin/web/knowledge-aweme" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/live-gift-ranking.md b/model-api-reference/platform-apis/douyin/web/live-gift-ranking.md index 13dc2e21..6a5f308d 100644 --- a/model-api-reference/platform-apis/douyin/web/live-gift-ranking.md +++ b/model-api-reference/platform-apis/douyin/web/live-gift-ranking.md @@ -1,13 +1,13 @@ --- -title: "Get live room gift user ranking API Reference" -description: "SandBase API operation douyin/web/live-gift-ranking." +title: "Douyin Live Room Gift User Ranking API Reference" +description: "SandBase API reference for model douyin/web/live-gift-ranking. Call /v1/api/douyin/web/live-gift-ranking; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/live-gift-ranking" -apiReferenceJson: "{\"title\":\"Get live room gift user ranking\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/live-gift-ranking\",\"description\":\"Get live room gift user ranking\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"rank_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Leaderboard type, default is 30, no need to modify.\",\"default\":\"30\"},{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Room room_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/live-gift-ranking \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"room_id\\\": \\\"7356585666190461731\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"room_id\\\": \\\"7356585666190461731\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/live-gift-ranking\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"room_id\\\": \\\"7356585666190461731\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/live-gift-ranking\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/live-gift-ranking\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/live-gift-ranking\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/live-gift-ranking\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/live-gift-ranking\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/live-gift-ranking\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/live-gift-ranking\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Live Room Gift User Ranking\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/live-gift-ranking\",\"description\":\"Retrieves the contributor gift ranking for a specific Douyin live stream room. Query by room ID and leaderboard type to inspect top gift givers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"rank_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Leaderboard type, default is 30, no need to modify.\",\"default\":\"30\"},{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Room room_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/live-gift-ranking \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"room_id\\\": \\\"7356585666190461731\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"room_id\\\": \\\"7356585666190461731\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/live-gift-ranking\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"room_id\\\": \\\"7356585666190461731\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/live-gift-ranking\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/live-gift-ranking\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/live-gift-ranking\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/live-gift-ranking\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/live-gift-ranking\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/live-gift-ranking\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/live-gift-ranking\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get live room gift user ranking" + modelName: "Douyin Live Room Gift User Ranking" modelId: "douyin/web/live-gift-ranking" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/live-im-fetch.md b/model-api-reference/platform-apis/douyin/web/live-im-fetch.md index 7615740f..c1b40677 100644 --- a/model-api-reference/platform-apis/douyin/web/live-im-fetch.md +++ b/model-api-reference/platform-apis/douyin/web/live-im-fetch.md @@ -1,13 +1,13 @@ --- -title: "Douyin live room danmaku parameters API Reference" -description: "SandBase API operation douyin/web/live-im-fetch." +title: "Douyin Room Danmaku Parameters API Reference" +description: "Douyin Room Danmaku Parameters API reference for SandBase. Use model douyin/web/live-im-fetch with /v1/api/douyin/web/live-im-fetch; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/live-im-fetch" -apiReferenceJson: "{\"title\":\"Douyin live room danmaku parameters\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/live-im-fetch\",\"description\":\"Douyin live room danmaku parameters\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Live room id\"},{\"name\":\"user_unique_id\",\"type\":\"string\",\"required\":true,\"description\":\"User unique ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/live-im-fetch \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"room_id\\\": \\\"room_id\\\",\\n \\\"user_unique_id\\\": \\\"user_unique_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"room_id\\\": \\\"room_id\\\",\\n \\\"user_unique_id\\\": \\\"user_unique_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/live-im-fetch\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"room_id\\\": \\\"room_id\\\",\\n \\\"user_unique_id\\\": \\\"user_unique_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/live-im-fetch\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/live-im-fetch\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/live-im-fetch\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/live-im-fetch\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/live-im-fetch\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/live-im-fetch\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/live-im-fetch\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Room Danmaku Parameters\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/live-im-fetch\",\"description\":\"Retrieves chat and danmaku parameters for a Douyin broadcast session. Requires the target room identifier and user unique identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Live room id\"},{\"name\":\"user_unique_id\",\"type\":\"string\",\"required\":true,\"description\":\"User unique ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/live-im-fetch \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"room_id\\\": \\\"room_id\\\",\\n \\\"user_unique_id\\\": \\\"user_unique_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"room_id\\\": \\\"room_id\\\",\\n \\\"user_unique_id\\\": \\\"user_unique_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/live-im-fetch\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"room_id\\\": \\\"room_id\\\",\\n \\\"user_unique_id\\\": \\\"user_unique_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/live-im-fetch\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/live-im-fetch\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/live-im-fetch\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/live-im-fetch\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/live-im-fetch\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/live-im-fetch\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/live-im-fetch\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Douyin live room danmaku parameters" + modelName: "Douyin Room Danmaku Parameters" modelId: "douyin/web/live-im-fetch" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/live-room-product-result.md b/model-api-reference/platform-apis/douyin/web/live-room-product-result.md deleted file mode 100644 index 75a8a2ee..00000000 --- a/model-api-reference/platform-apis/douyin/web/live-room-product-result.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Douyin live room product information API Reference" -description: "SandBase API operation douyin/web/live-room-product-result." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/web/live-room-product-result" -apiReferenceJson: "{\"title\":\"Douyin live room product information\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/live-room-product-result\",\"description\":\"Douyin live room product information\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Author id\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset\"},{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Room room_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/live-room-product-result \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"author_id\\\": \\\"author_id\\\",\\n \\\"room_id\\\": \\\"room_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"author_id\\\": \\\"author_id\\\",\\n \\\"room_id\\\": \\\"room_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/live-room-product-result\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"author_id\\\": \\\"author_id\\\",\\n \\\"room_id\\\": \\\"room_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/live-room-product-result\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/live-room-product-result\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/live-room-product-result\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/live-room-product-result\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/live-room-product-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/live-room-product-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/live-room-product-result\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Douyin live room product information" - modelId: "douyin/web/live-room-product-result" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "web/live-room-product-result" - protocol: "API Reference" - endpoint: "/v1/api/douyin/web/live-room-product-result" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/web/multi-video-high-quality-play-url.md b/model-api-reference/platform-apis/douyin/web/multi-video-high-quality-play-url.md index 6590682f..b2229b86 100644 --- a/model-api-reference/platform-apis/douyin/web/multi-video-high-quality-play-url.md +++ b/model-api-reference/platform-apis/douyin/web/multi-video-high-quality-play-url.md @@ -1,13 +1,13 @@ --- -title: "Batch get the highest quality play URL of videos — unvfvx API" -description: "SandBase API operation douyin/web/multi-video-high-quality-play-url." +title: "Douyin High-Quality Video Play URLs API Reference" +description: "SandBase API reference: douyin/web/multi-video-high-quality-play-url via /v1/api/douyin/web/multi-video-high-quality-play-url. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/multi-video-high-quality-play-url" -apiReferenceJson: "{\"title\":\"Batch get the highest quality play URL of videos\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/multi-video-high-quality-play-url\",\"description\":\"This interface is currently on sale for $0.25, and will return to the original price of $0.5 after the event ends. If there are less than 50 videos, they will be charged as 50 videos. Batch get the highest quality (original upload quality) play URL of videos This interface will return the highest quality play URL, the original upload quality refers to the quality of the video when the user uploads it, usually the highest quality video has an uncompressed bitrate and the file header contains metadata. The highest quality video link cannot be obtained directly from the Douyin APP or web version, and must be obtained through this interface. This interface is very suitable for batch obtaining high-definition, watermark-free video links, suitable for scenarios that require high-quality videos, such as video editing, archiving, training models, etc. Use concurrent requests to improve batch acquisition efficiency. Support up to 50 video IDs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_ids\",\"type\":\"string\",\"required\":false,\"description\":\"Video id list, separated by commas, for example: \\\"123,456,789\\\", up to 50.\"},{\"name\":\"region\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional ISO country code (for example, CN, US, or HK). Pass CN for users in mainland China to get China-region CDN URLs for faster downloads.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/multi-video-high-quality-play-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/web/multi-video-high-quality-play-url\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/web/multi-video-high-quality-play-url\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/multi-video-high-quality-play-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/web/multi-video-high-quality-play-url\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/multi-video-high-quality-play-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/multi-video-high-quality-play-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/multi-video-high-quality-play-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/multi-video-high-quality-play-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/multi-video-high-quality-play-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/multi-video-high-quality-play-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/multi-video-high-quality-play-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin High-Quality Video Play URLs\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/multi-video-high-quality-play-url\",\"description\":\"Returns direct high-quality playback URLs for multiple Douyin videos using comma-separated video IDs and an optional region code. This interface is currently on sale for $0.25, and will return to the original price of $0.5 after the event ends. If there are less than 50 videos, they will be charged as 50 videos.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_ids\",\"type\":\"string\",\"required\":false,\"description\":\"Video id list, separated by commas, for example: \\\"123,456,789\\\", up to 50.\"},{\"name\":\"region\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional ISO country code (for example, CN, US, or HK). Pass CN for users in mainland China to get China-region CDN URLs for faster downloads.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/multi-video-high-quality-play-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/multi-video-high-quality-play-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/multi-video-high-quality-play-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/multi-video-high-quality-play-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/multi-video-high-quality-play-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/multi-video-high-quality-play-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/multi-video-high-quality-play-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/multi-video-high-quality-play-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/multi-video-high-quality-play-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Batch get the highest quality play URL of videos" + modelName: "Douyin High-Quality Video Play URLs" modelId: "douyin/web/multi-video-high-quality-play-url" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/multi-video.md b/model-api-reference/platform-apis/douyin/web/multi-video.md index f020afc7..9550ad31 100644 --- a/model-api-reference/platform-apis/douyin/web/multi-video.md +++ b/model-api-reference/platform-apis/douyin/web/multi-video.md @@ -1,13 +1,13 @@ --- -title: "Batch Get Video Information API Reference — Douyin / Multi Video" -description: "SandBase API operation douyin/web/multi-video." +title: "Douyin Batch Video Information (Web) API Reference" +description: "Douyin Batch Video Information (Web) API reference for SandBase. Use model douyin/web/multi-video with /v1/api/douyin/web/multi-video; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/multi-video" -apiReferenceJson: "{\"title\":\"Batch Get Video Information\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/multi-video\",\"description\":\"Batch Get Video Information, support photo, video, etc., up to 50 videos at a time, this interface charges a fixed price of 0.001$ * 50 = 0.05$ each time. If this interface fails, please use the APP interface instead.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/multi-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/multi-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/multi-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/multi-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/multi-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/multi-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/multi-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/multi-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/multi-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Batch Video Information (Web)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/multi-video\",\"description\":\"Retrieves details for multiple Douyin videos in a single batch request via the web interface. Accepts an array of video identifiers in the request payload. This interface charges a fixed price of 0.001$ * 50 = 0.05$ each time.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/multi-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/multi-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/multi-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/multi-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/multi-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/multi-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/multi-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/multi-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/multi-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Batch Get Video Information" + modelName: "Douyin Batch Video Information (Web)" modelId: "douyin/web/multi-video" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/music-aweme.md b/model-api-reference/platform-apis/douyin/web/music-aweme.md index 23e21df2..bd8a3b20 100644 --- a/model-api-reference/platform-apis/douyin/web/music-aweme.md +++ b/model-api-reference/platform-apis/douyin/web/music-aweme.md @@ -1,13 +1,13 @@ --- -title: "Music Video API Reference" -description: "SandBase API operation douyin/web/music-aweme." +title: "Douyin Web Music Videos API Reference" +description: "Douyin Web Music Videos API reference for SandBase. Use model douyin/web/music-aweme with /v1/api/douyin/web/music-aweme; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/music-aweme" -apiReferenceJson: "{\"title\":\"Music Video\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/music-aweme\",\"description\":\"Music Video\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User provided Cookie, it is recommended to use your own Douyin Cookie, otherwise there may be a problem of data duplication when paging\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":true,\"description\":\"Number per page, default is 16\"},{\"name\":\"refresh_index\",\"type\":\"integer\",\"required\":false,\"description\":\"Paging index, default is 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/music-aweme \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"count\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"count\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/music-aweme\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"count\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/music-aweme\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/music-aweme\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/music-aweme\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/music-aweme\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/music-aweme\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/music-aweme\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/music-aweme\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Web Music Videos\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/music-aweme\",\"description\":\"Retrieves music videos from Douyin Web based on pagination settings. Returns a list of video items using the specified count and refresh index parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":true,\"description\":\"Number per page, default is 16\"},{\"name\":\"refresh_index\",\"type\":\"integer\",\"required\":false,\"description\":\"Paging index, default is 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/music-aweme \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"count\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"count\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/music-aweme\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"count\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/music-aweme\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/music-aweme\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/music-aweme\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/music-aweme\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/music-aweme\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/music-aweme\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/music-aweme\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Music Video" + modelName: "Douyin Web Music Videos" modelId: "douyin/web/music-aweme" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/one-video-by-share-url.md b/model-api-reference/platform-apis/douyin/web/one-video-by-share-url.md index 71ce2281..2aa16ab5 100644 --- a/model-api-reference/platform-apis/douyin/web/one-video-by-share-url.md +++ b/model-api-reference/platform-apis/douyin/web/one-video-by-share-url.md @@ -1,13 +1,13 @@ --- -title: "Get single video data by sharing link — trce56 API" -description: "SandBase API operation douyin/web/one-video-by-share-url." +title: "Douyin Video Details by Share URL API Reference" +description: "SandBase API reference for model douyin/web/one-video-by-share-url. Call /v1/api/douyin/web/one-video-by-share-url; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/one-video-by-share-url" -apiReferenceJson: "{\"title\":\"Get single video data by sharing link\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/one-video-by-share-url\",\"description\":\"Get single video data by sharing link (Essentially implemented based on the `/fetch_one_video` interface, it is recommended to obtain the video ID by yourself to improve the interface response speed) The returned video quality is higher than the APP interface, but the response fields are not as many as the APP interface.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_url\",\"type\":\"string\",\"required\":true,\"description\":\"Share link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/one-video-by-share-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"share_url\\\": \\\"https://www.douyin.com/video/7512756548356492544\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"share_url\\\": \\\"https://www.douyin.com/video/7512756548356492544\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/one-video-by-share-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"share_url\\\": \\\"https://www.douyin.com/video/7512756548356492544\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/one-video-by-share-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/one-video-by-share-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/one-video-by-share-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/one-video-by-share-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/one-video-by-share-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/one-video-by-share-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/one-video-by-share-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Video Details by Share URL\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/one-video-by-share-url\",\"description\":\"Returns detailed video information and available stream bitrate qualities for a single Douyin video using its web sharing link.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_url\",\"type\":\"string\",\"required\":true,\"description\":\"Share link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/one-video-by-share-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"share_url\\\": \\\"https://www.douyin.com/video/7512756548356492544\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"share_url\\\": \\\"https://www.douyin.com/video/7512756548356492544\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/one-video-by-share-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"share_url\\\": \\\"https://www.douyin.com/video/7512756548356492544\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/one-video-by-share-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/one-video-by-share-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/one-video-by-share-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/one-video-by-share-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/one-video-by-share-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/one-video-by-share-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/one-video-by-share-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video data by sharing link" + modelName: "Douyin Video Details by Share URL" modelId: "douyin/web/one-video-by-share-url" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/one-video-danmaku.md b/model-api-reference/platform-apis/douyin/web/one-video-danmaku.md index 36b723ac..3423fd1b 100644 --- a/model-api-reference/platform-apis/douyin/web/one-video-danmaku.md +++ b/model-api-reference/platform-apis/douyin/web/one-video-danmaku.md @@ -1,13 +1,13 @@ --- -title: "Get single video danmaku data API Reference" -description: "SandBase API operation douyin/web/one-video-danmaku." +title: "Douyin Video Danmaku API Reference" +description: "Douyin Video Danmaku API reference for SandBase. Use model douyin/web/one-video-danmaku with /v1/api/douyin/web/one-video-danmaku; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/one-video-danmaku" -apiReferenceJson: "{\"title\":\"Get single video danmaku data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/one-video-danmaku\",\"description\":\"Get single video danmaku data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"duration\",\"type\":\"integer\",\"required\":true,\"description\":\"Video total duration\"},{\"name\":\"end_time\",\"type\":\"integer\",\"required\":true,\"description\":\"End time\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"start_time\",\"type\":\"integer\",\"required\":true,\"description\":\"Start time\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/one-video-danmaku \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"duration\\\": 15134,\\n \\\"end_time\\\": 15133,\\n \\\"item_id\\\": \\\"7355433624046472498\\\",\\n \\\"start_time\\\": 0\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"duration\\\": 15134,\\n \\\"end_time\\\": 15133,\\n \\\"item_id\\\": \\\"7355433624046472498\\\",\\n \\\"start_time\\\": 0\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/one-video-danmaku\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"duration\\\": 15134,\\n \\\"end_time\\\": 15133,\\n \\\"item_id\\\": \\\"7355433624046472498\\\",\\n \\\"start_time\\\": 0\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/one-video-danmaku\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/one-video-danmaku\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/one-video-danmaku\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/one-video-danmaku\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/one-video-danmaku\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/one-video-danmaku\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/one-video-danmaku\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Video Danmaku\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/one-video-danmaku\",\"description\":\"Returns danmaku comment records for a Douyin video across a specified playback interval. Filter by video ID, total duration, start time, and end time.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"duration\",\"type\":\"integer\",\"required\":true,\"description\":\"Video total duration\"},{\"name\":\"end_time\",\"type\":\"integer\",\"required\":true,\"description\":\"End time\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"start_time\",\"type\":\"integer\",\"required\":true,\"description\":\"Start time\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/one-video-danmaku \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"duration\\\": 15134,\\n \\\"end_time\\\": 15133,\\n \\\"item_id\\\": \\\"7355433624046472498\\\",\\n \\\"start_time\\\": 0\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"duration\\\": 15134,\\n \\\"end_time\\\": 15133,\\n \\\"item_id\\\": \\\"7355433624046472498\\\",\\n \\\"start_time\\\": 0\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/one-video-danmaku\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"duration\\\": 15134,\\n \\\"end_time\\\": 15133,\\n \\\"item_id\\\": \\\"7355433624046472498\\\",\\n \\\"start_time\\\": 0\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/one-video-danmaku\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/one-video-danmaku\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/one-video-danmaku\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/one-video-danmaku\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/one-video-danmaku\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/one-video-danmaku\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/one-video-danmaku\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video danmaku data" + modelName: "Douyin Video Danmaku" modelId: "douyin/web/one-video-danmaku" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/one-video-v2.md b/model-api-reference/platform-apis/douyin/web/one-video-v2.md index d80a66fe..e8bffb31 100644 --- a/model-api-reference/platform-apis/douyin/web/one-video-v2.md +++ b/model-api-reference/platform-apis/douyin/web/one-video-v2.md @@ -1,13 +1,13 @@ --- -title: "Get single video data V2 API Reference — Douyin / One Video V2" -description: "SandBase API operation douyin/web/one-video-v2." +title: "Douyin Single Video Data (Web) API Reference" +description: "Douyin Single Video Data (Web) API reference for SandBase. Use model douyin/web/one-video-v2 with /v1/api/douyin/web/one-video-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/one-video-v2" -apiReferenceJson: "{\"title\":\"Get single video data V2\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/one-video-v2\",\"description\":\"Get single video data V2, if this interface fails, please use the `/fetch_one_video` interface, or use the APP interface.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/one-video-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"aweme_id\\\": \\\"7372484719365098803\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"aweme_id\\\": \\\"7372484719365098803\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/one-video-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"aweme_id\\\": \\\"7372484719365098803\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/one-video-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/one-video-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/one-video-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/one-video-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/one-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/one-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/one-video-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Single Video Data (Web)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/one-video-v2\",\"description\":\"Returns detailed metadata for a single Douyin video using its video identifier. The endpoint provides video properties such as bit rate and stream quality tiers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/one-video-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"aweme_id\\\": \\\"7372484719365098803\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"aweme_id\\\": \\\"7372484719365098803\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/one-video-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"aweme_id\\\": \\\"7372484719365098803\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/one-video-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/one-video-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/one-video-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/one-video-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/one-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/one-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/one-video-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video data V2" + modelName: "Douyin Single Video Data (Web)" modelId: "douyin/web/one-video-v2" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/one-video.md b/model-api-reference/platform-apis/douyin/web/one-video.md index fc3c5e9b..2259af65 100644 --- a/model-api-reference/platform-apis/douyin/web/one-video.md +++ b/model-api-reference/platform-apis/douyin/web/one-video.md @@ -1,13 +1,13 @@ --- -title: "Get single video data API Reference — Douyin Web / One Video API" -description: "SandBase API operation douyin/web/one-video." +title: "Douyin Single Video Details (V1) API Reference" +description: "Douyin Single Video Details (V1) API reference for SandBase. Use model douyin/web/one-video with /v1/api/douyin/web/one-video; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/one-video" -apiReferenceJson: "{\"title\":\"Get single video data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/one-video\",\"description\":\"Get single video data V1, if this interface fails, please use the `/fetch_one_video_v2` interface, or use the APP interface.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"need_anchor_info\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether anchor information is needed, default is False, enabling it will show some anchor information about the video, such as location, merchant information, product showcase, etc., which may increase the interface response time.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/one-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"aweme_id\\\": \\\"7372484719365098803\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"aweme_id\\\": \\\"7372484719365098803\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/one-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"aweme_id\\\": \\\"7372484719365098803\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/one-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/one-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/one-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/one-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/one-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Single Video Details (V1)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/one-video\",\"description\":\"Returns detailed metadata for a single Douyin video using its video ID. Supports optional inclusion of anchor details such as location and merchant data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"need_anchor_info\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether anchor information is needed, default is False, enabling it will show some anchor information about the video, such as location, merchant information, product showcase, etc., which may increase the interface response time.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/one-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"aweme_id\\\": \\\"7372484719365098803\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"aweme_id\\\": \\\"7372484719365098803\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/one-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"aweme_id\\\": \\\"7372484719365098803\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/one-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/one-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/one-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/one-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/one-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video data" + modelName: "Douyin Single Video Details (V1)" modelId: "douyin/web/one-video" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/query-user.md b/model-api-reference/platform-apis/douyin/web/query-user.md index c11e0fa5..af79d0c5 100644 --- a/model-api-reference/platform-apis/douyin/web/query-user.md +++ b/model-api-reference/platform-apis/douyin/web/query-user.md @@ -1,13 +1,13 @@ --- -title: "Query Douyin user basic information API Reference" -description: "SandBase API operation douyin/web/query-user." +title: "Douyin Web User Information API Reference" +description: "Douyin Web User Information API reference for SandBase. Use model douyin/web/query-user with /v1/api/douyin/web/query-user; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/query-user" -apiReferenceJson: "{\"title\":\"Query Douyin user basic information\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/query-user\",\"description\":\"Query Douyin user basic information\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"string\",\"required\":false,\"description\":\"User ttwid cookie. Obtain it by calling `/api/v1/douyin/web/generate_ttwid`.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/query-user \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/web/query-user\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/web/query-user\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/query-user\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/web/query-user\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/query-user\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/query-user\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/query-user\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/query-user\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/query-user\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/query-user\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/query-user\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Web User Information\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/query-user\",\"description\":\"Returns basic profile information for a Douyin web user account. The endpoint accepts a ttwid cookie string in the request body to retrieve account details.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"string\",\"required\":false,\"description\":\"User ttwid cookie. Obtain it by calling `/api/v1/douyin/web/generate_ttwid`.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/query-user \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/query-user\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/query-user\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/query-user\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/query-user\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/query-user\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/query-user\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/query-user\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/query-user\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Query Douyin user basic information" + modelName: "Douyin Web User Information" modelId: "douyin/web/query-user" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/related-posts.md b/model-api-reference/platform-apis/douyin/web/related-posts.md index 7a48eba2..28ec3987 100644 --- a/model-api-reference/platform-apis/douyin/web/related-posts.md +++ b/model-api-reference/platform-apis/douyin/web/related-posts.md @@ -1,13 +1,13 @@ --- -title: "Get related posts recommendation data API Reference" -description: "SandBase API operation douyin/web/related-posts." +title: "Douyin Related Posts Recommendations API Reference" +description: "SandBase API reference for model douyin/web/related-posts. Call /v1/api/douyin/web/related-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/related-posts" -apiReferenceJson: "{\"title\":\"Get related posts recommendation data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/related-posts\",\"description\":\"Get related posts recommendation data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number, default is 20, it is recommended to keep it unchanged.\",\"default\":\"20\"},{\"name\":\"refresh_index\",\"type\":\"integer\",\"required\":false,\"description\":\"Paging index, default is 1, then increase by 1 each time for paging.\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/related-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"aweme_id\\\": \\\"7393365489105358132\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"aweme_id\\\": \\\"7393365489105358132\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/related-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"aweme_id\\\": \\\"7393365489105358132\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/related-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/related-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/related-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/related-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/related-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/related-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/related-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Related Posts Recommendations\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/related-posts\",\"description\":\"Returns recommended related posts for a specific Douyin video. Supports pagination using a refresh index and customizable post count limits.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number, default is 20, it is recommended to keep it unchanged.\",\"default\":\"20\"},{\"name\":\"refresh_index\",\"type\":\"integer\",\"required\":false,\"description\":\"Paging index, default is 1, then increase by 1 each time for paging.\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/related-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"aweme_id\\\": \\\"7393365489105358132\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"aweme_id\\\": \\\"7393365489105358132\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/related-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"aweme_id\\\": \\\"7393365489105358132\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/related-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/related-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/related-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/related-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/related-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/related-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/related-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get related posts recommendation data" + modelName: "Douyin Related Posts Recommendations" modelId: "douyin/web/related-posts" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/sec-user-id.md b/model-api-reference/platform-apis/douyin/web/sec-user-id.md index 1bf1d3e5..f02f30dd 100644 --- a/model-api-reference/platform-apis/douyin/web/sec-user-id.md +++ b/model-api-reference/platform-apis/douyin/web/sec-user-id.md @@ -1,13 +1,13 @@ --- -title: "Extract single user id API Reference" -description: "SandBase API operation douyin/web/sec-user-id." +title: "Douyin sec_user_id from URL API Reference" +description: "Douyin sec_user_id from URL API reference for SandBase. Use model douyin/web/sec-user-id with /v1/api/douyin/web/sec-user-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/sec-user-id" -apiReferenceJson: "{\"title\":\"Extract single user id\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/sec-user-id\",\"description\":\"Extract single user id\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Download URL for a generated output asset.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/sec-user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/sec-user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/sec-user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/sec-user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/sec-user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/sec-user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/sec-user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin sec_user_id from URL\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/sec-user-id\",\"description\":\"Extracts the Douyin sec_user_id identifier from a provided web link or profile URL. Input the target link in the query parameter to resolve the user identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Download URL for a generated output asset.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/sec-user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://www.douyin.com/video/7691553968815623478\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://www.douyin.com/video/7691553968815623478\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/sec-user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://www.douyin.com/video/7691553968815623478\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/sec-user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/sec-user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/sec-user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/sec-user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/sec-user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Extract single user id" + modelName: "Douyin sec_user_id from URL" modelId: "douyin/web/sec-user-id" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/series-aweme.md b/model-api-reference/platform-apis/douyin/web/series-aweme.md index 4aa16b3b..e9abc872 100644 --- a/model-api-reference/platform-apis/douyin/web/series-aweme.md +++ b/model-api-reference/platform-apis/douyin/web/series-aweme.md @@ -1,13 +1,13 @@ --- -title: "Series Video API Reference" -description: "SandBase API operation douyin/web/series-aweme." +title: "Douyin Web Series Videos API Reference" +description: "Douyin Web Series Videos API reference for SandBase. Use model douyin/web/series-aweme with /v1/api/douyin/web/series-aweme; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/series-aweme" -apiReferenceJson: "{\"title\":\"Series Video\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/series-aweme\",\"description\":\"Series Video\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"content_type\",\"type\":\"integer\",\"required\":true,\"description\":\"Subtype, default is 0\"},{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User provided Cookie, it is recommended to use your own Douyin Cookie, otherwise there may be a problem of data duplication when paging\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":true,\"description\":\"Number per page, default is 16\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":true,\"description\":\"Page number, default is 0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/series-aweme \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"content_type\\\": 1,\\n \\\"count\\\": 1,\\n \\\"offset\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"content_type\\\": 1,\\n \\\"count\\\": 1,\\n \\\"offset\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/series-aweme\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"content_type\\\": 1,\\n \\\"count\\\": 1,\\n \\\"offset\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/series-aweme\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/series-aweme\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/series-aweme\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/series-aweme\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/series-aweme\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/series-aweme\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/series-aweme\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Web Series Videos\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/series-aweme\",\"description\":\"Returns a paginated list of series videos from the Douyin web platform. Results can be filtered by content subtype, page number, and page size.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"content_type\",\"type\":\"integer\",\"required\":true,\"description\":\"Subtype, default is 0\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":true,\"description\":\"Number per page, default is 16\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":true,\"description\":\"Page number, default is 0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/series-aweme \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"content_type\\\": 1,\\n \\\"count\\\": 1,\\n \\\"offset\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"content_type\\\": 1,\\n \\\"count\\\": 1,\\n \\\"offset\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/series-aweme\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"content_type\\\": 1,\\n \\\"count\\\": 1,\\n \\\"offset\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/series-aweme\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/series-aweme\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/series-aweme\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/series-aweme\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/series-aweme\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/series-aweme\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/series-aweme\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Series Video" + modelName: "Douyin Web Series Videos" modelId: "douyin/web/series-aweme" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/shorten-url.md b/model-api-reference/platform-apis/douyin/web/shorten-url.md index ef657e30..ba3b3620 100644 --- a/model-api-reference/platform-apis/douyin/web/shorten-url.md +++ b/model-api-reference/platform-apis/douyin/web/shorten-url.md @@ -1,13 +1,13 @@ --- -title: "Shorten URL API Reference" -description: "SandBase API operation douyin/web/shorten-url." +title: "Douyin URL Shortener API Reference" +description: "Douyin URL Shortener API reference for SandBase. Use model douyin/web/shorten-url with /v1/api/douyin/web/shorten-url; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/shorten-url" -apiReferenceJson: "{\"title\":\"Shorten URL\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/shorten-url\",\"description\":\"Shorten a target URL\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"target_url\",\"type\":\"string\",\"required\":true,\"description\":\"Target URL to be converted\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/shorten-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"target_url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"target_url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/shorten-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"target_url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/shorten-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/shorten-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/shorten-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/shorten-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/shorten-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/shorten-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/shorten-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin URL Shortener\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/shorten-url\",\"description\":\"Shortens a target web address for Douyin web workflows. Accepts a full destination link and returns a compact shortened URL.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"target_url\",\"type\":\"string\",\"required\":true,\"description\":\"Target URL to be converted\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/shorten-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"target_url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"target_url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/shorten-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"target_url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/shorten-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/shorten-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/shorten-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/shorten-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/shorten-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/shorten-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/shorten-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Shorten URL" + modelName: "Douyin URL Shortener" modelId: "douyin/web/shorten-url" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/user-collection-videos.md b/model-api-reference/platform-apis/douyin/web/user-collection-videos.md deleted file mode 100644 index 92bae304..00000000 --- a/model-api-reference/platform-apis/douyin/web/user-collection-videos.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get user collection video data API Reference" -description: "SandBase API operation douyin/web/user-collection-videos." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/web/user-collection-videos" -apiReferenceJson: "{\"title\":\"Get user collection video data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-collection-videos\",\"description\":\"Get user collection video data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":true,\"description\":\"User's web version of Douyin Cookie (This interface requires users to provide their own Cookie)\"},{\"name\":\"counts\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\"},{\"name\":\"max_cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum cursor\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-collection-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cookie\\\": \\\"cookie\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-collection-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-collection-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-collection-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-collection-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-collection-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-collection-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-collection-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-collection-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get user collection video data" - modelId: "douyin/web/user-collection-videos" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "web/user-collection-videos" - protocol: "API Reference" - endpoint: "/v1/api/douyin/web/user-collection-videos" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/web/user-collects-videos.md b/model-api-reference/platform-apis/douyin/web/user-collects-videos.md deleted file mode 100644 index 212b96b6..00000000 --- a/model-api-reference/platform-apis/douyin/web/user-collects-videos.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get user collection data API Reference" -description: "SandBase API operation douyin/web/user-collects-videos." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/web/user-collects-videos" -apiReferenceJson: "{\"title\":\"Get user collection data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-collects-videos\",\"description\":\"Get user collection data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"collects_id\",\"type\":\"string\",\"required\":true,\"description\":\"Collection id\"},{\"name\":\"counts\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\"},{\"name\":\"max_cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum cursor\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-collects-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"collects_id\\\": \\\"collects_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"collects_id\\\": \\\"collects_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-collects-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"collects_id\\\": \\\"collects_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-collects-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-collects-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-collects-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-collects-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-collects-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-collects-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-collects-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get user collection data" - modelId: "douyin/web/user-collects-videos" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "web/user-collects-videos" - protocol: "API Reference" - endpoint: "/v1/api/douyin/web/user-collects-videos" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/web/user-collects.md b/model-api-reference/platform-apis/douyin/web/user-collects.md deleted file mode 100644 index 4d9459c0..00000000 --- a/model-api-reference/platform-apis/douyin/web/user-collects.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get user collection API Reference" -description: "SandBase API operation douyin/web/user-collects." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/web/user-collects" -apiReferenceJson: "{\"title\":\"Get user collection\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-collects\",\"description\":\"Get user collection\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":true,\"description\":\"User's web version of Douyin Cookie (This interface requires users to provide their own Cookie)\"},{\"name\":\"counts\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\"},{\"name\":\"max_cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum cursor\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-collects \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cookie\\\": \\\"cookie\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-collects\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-collects\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-collects\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-collects\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-collects\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-collects\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-collects\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-collects\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get user collection" - modelId: "douyin/web/user-collects" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "web/user-collects" - protocol: "API Reference" - endpoint: "/v1/api/douyin/web/user-collects" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/web/user-fans-list.md b/model-api-reference/platform-apis/douyin/web/user-fans-list.md index ec28b1b0..9b3bda37 100644 --- a/model-api-reference/platform-apis/douyin/web/user-fans-list.md +++ b/model-api-reference/platform-apis/douyin/web/user-fans-list.md @@ -1,13 +1,13 @@ --- -title: "Get user fans list API Reference — Douyin Web / User Fans List" -description: "SandBase API operation douyin/web/user-fans-list." +title: "Douyin Web User Fans List API Reference" +description: "Douyin Web User Fans List API reference for SandBase. Use model douyin/web/user-fans-list with /v1/api/douyin/web/user-fans-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/user-fans-list" -apiReferenceJson: "{\"title\":\"Get user fans list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-fans-list\",\"description\":\"Get user fans list When requesting for the first time, pass `0` for max_time, pass `2` for source_type, and an empty fans list will be returned, which contains max_time, then pass the max_time returned by the previous request for paging each time, pass `1` for source_type, you can get the fans list. If you do not request according to the above method, it may cause the returned data to contain duplicate data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number, default is 20, it is recommended to keep it unchanged.\",\"default\":\"20\"},{\"name\":\"max_time\",\"type\":\"string\",\"required\":false,\"description\":\"Maximum timestamp, default is 0, get from the returned data later, used for paging.\",\"default\":\"0\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User sec_user_id\",\"default\":\"MS4wLjABAAAA9y04iBlVdeMQqTJbqsQZKb-tqWqWW29jPVJqideHT70\"},{\"name\":\"source_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Source type, default is `1`, use `2` as the source type for the first request, and then use `1` as the source type for the subsequent request.\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-fans-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/web/user-fans-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/web/user-fans-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-fans-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/web/user-fans-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-fans-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-fans-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-fans-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-fans-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-fans-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-fans-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-fans-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Web User Fans List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-fans-list\",\"description\":\"Returns a list of followers for a specified Douyin user account. Supports result pagination via timestamp parameters and custom page counts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number, default is 20, it is recommended to keep it unchanged.\",\"default\":\"20\"},{\"name\":\"max_time\",\"type\":\"string\",\"required\":false,\"description\":\"Maximum timestamp, default is 0, get from the returned data later, used for paging.\",\"default\":\"0\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User sec_user_id\",\"default\":\"MS4wLjABAAAA9y04iBlVdeMQqTJbqsQZKb-tqWqWW29jPVJqideHT70\"},{\"name\":\"source_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Source type, default is `1`, use `2` as the source type for the first request, and then use `1` as the source type for the subsequent request.\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-fans-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-fans-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-fans-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-fans-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-fans-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-fans-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-fans-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-fans-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-fans-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user fans list" + modelName: "Douyin Web User Fans List" modelId: "douyin/web/user-fans-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/user-following-list.md b/model-api-reference/platform-apis/douyin/web/user-following-list.md index 1db811e0..d4b483f6 100644 --- a/model-api-reference/platform-apis/douyin/web/user-following-list.md +++ b/model-api-reference/platform-apis/douyin/web/user-following-list.md @@ -1,13 +1,13 @@ --- -title: "Get user following list API Reference — Douyin Following List" -description: "SandBase API operation douyin/web/user-following-list." +title: "Douyin Web User Following List API Reference" +description: "SandBase API reference for model douyin/web/user-following-list. Call /v1/api/douyin/web/user-following-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/user-following-list" -apiReferenceJson: "{\"title\":\"Get user following list\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-following-list\",\"description\":\"Get user following list When requesting for the first time, pass `0` for max_time, pass `2` for source_type, and an empty fans list will be returned, which contains max_time, then pass the max_time returned by the previous request for paging each time, pass `1` for source_type, you can get the fans list. If you do not request according to the above method, it may cause the returned data to contain duplicate data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number, default is 20, it is recommended to keep it unchanged.\",\"default\":\"20\"},{\"name\":\"max_time\",\"type\":\"string\",\"required\":false,\"description\":\"Maximum timestamp, default is 0, get from the returned data later, used for paging.\",\"default\":\"0\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User sec_user_id\",\"default\":\"MS4wLjABAAAA9y04iBlVdeMQqTJbqsQZKb-tqWqWW29jPVJqideHT70\"},{\"name\":\"source_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Source type, default is `1`, use `2` as the source type for the first request, and then use `1` as the source type for the subsequent request.\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-following-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/web/user-following-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/web/user-following-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-following-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/web/user-following-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-following-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-following-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-following-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-following-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-following-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-following-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-following-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Web User Following List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-following-list\",\"description\":\"Returns a list of accounts followed by a Douyin user. Filter by target user security ID and navigate paginated results using timestamps.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number, default is 20, it is recommended to keep it unchanged.\",\"default\":\"20\"},{\"name\":\"max_time\",\"type\":\"string\",\"required\":false,\"description\":\"Maximum timestamp, default is 0, get from the returned data later, used for paging.\",\"default\":\"0\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User sec_user_id\",\"default\":\"MS4wLjABAAAA9y04iBlVdeMQqTJbqsQZKb-tqWqWW29jPVJqideHT70\"},{\"name\":\"source_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Source type, default is `1`, use `2` as the source type for the first request, and then use `1` as the source type for the subsequent request.\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-following-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-following-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-following-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-following-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-following-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-following-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-following-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-following-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-following-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user following list" + modelName: "Douyin Web User Following List" modelId: "douyin/web/user-following-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/user-like-videos.md b/model-api-reference/platform-apis/douyin/web/user-like-videos.md index 4904f69c..72e26133 100644 --- a/model-api-reference/platform-apis/douyin/web/user-like-videos.md +++ b/model-api-reference/platform-apis/douyin/web/user-like-videos.md @@ -1,13 +1,13 @@ --- -title: "Get user like video data — oh8wzm API" -description: "SandBase API operation douyin/web/user-like-videos." +title: "Douyin User Liked Videos (Web) API Reference" +description: "SandBase API reference for model douyin/web/user-like-videos. Call /v1/api/douyin/web/user-like-videos; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/user-like-videos" -apiReferenceJson: "{\"title\":\"Get user like video data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-like-videos\",\"description\":\"Get user like video data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User's web version of Douyin Cookie (This interface requires users to provide their own Cookie)\"},{\"name\":\"counts\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\"},{\"name\":\"max_cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum cursor\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_user_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-like-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-like-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-like-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-like-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-like-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-like-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-like-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-like-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-like-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin User Liked Videos (Web)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-like-videos\",\"description\":\"Returns videos liked by a specific Douyin web user. Filter results using the user security ID with pagination support via cursor and page size.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"counts\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\"},{\"name\":\"max_cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum cursor\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_user_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-like-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-like-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-like-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-like-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-like-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-like-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-like-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-like-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-like-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user like video data" + modelName: "Douyin User Liked Videos (Web)" modelId: "douyin/web/user-like-videos" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/user-live-info-by-uid.md b/model-api-reference/platform-apis/douyin/web/user-live-info-by-uid.md index 3c3ba882..26a26332 100644 --- a/model-api-reference/platform-apis/douyin/web/user-live-info-by-uid.md +++ b/model-api-reference/platform-apis/douyin/web/user-live-info-by-uid.md @@ -1,13 +1,13 @@ --- -title: "Get user live information by UID API Reference" -description: "SandBase API operation douyin/web/user-live-info-by-uid." +title: "Douyin User Stream Information by UID API Reference" +description: "SandBase API reference for model douyin/web/user-live-info-by-uid. Call /v1/api/douyin/web/user-live-info-by-uid; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/user-live-info-by-uid" -apiReferenceJson: "{\"title\":\"Get user live information by UID\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-live-info-by-uid\",\"description\":\"Get user live information by UID\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User UID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-live-info-by-uid \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-live-info-by-uid\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-live-info-by-uid\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-live-info-by-uid\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-live-info-by-uid\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-live-info-by-uid\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-live-info-by-uid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-live-info-by-uid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-live-info-by-uid\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin User Stream Information by UID\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-live-info-by-uid\",\"description\":\"Retrieves stream session information and broadcast metadata for a Douyin user based on their unique identifier. Accepts a user UID to return stream scene and logging data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User UID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-live-info-by-uid \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"92769419069\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"92769419069\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-live-info-by-uid\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"92769419069\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-live-info-by-uid\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-live-info-by-uid\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-live-info-by-uid\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-live-info-by-uid\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-live-info-by-uid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-live-info-by-uid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-live-info-by-uid\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user live information by UID" + modelName: "Douyin User Stream Information by UID" modelId: "douyin/web/user-live-info-by-uid" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/user-live-videos-by-room-id-v2.md b/model-api-reference/platform-apis/douyin/web/user-live-videos-by-room-id-v2.md index ed37a9f5..bb8be62b 100644 --- a/model-api-reference/platform-apis/douyin/web/user-live-videos-by-room-id-v2.md +++ b/model-api-reference/platform-apis/douyin/web/user-live-videos-by-room-id-v2.md @@ -1,13 +1,13 @@ --- -title: "Gets the live stream data of the specified user by API Ref" -description: "SandBase API operation douyin/web/user-live-videos-by-room-id-v2." +title: "Douyin Stream Data by Room ID (V2) API Reference" +description: "SandBase API reference for model douyin/web/user-live-videos-by-room-id-v2. Call /v1/api/douyin/web/user-live-videos-by-room-id-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/user-live-videos-by-room-id-v2" -apiReferenceJson: "{\"title\":\"Gets the live stream data of the specified user by room_id V2\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-live-videos-by-room-id-v2\",\"description\":\"Gets the live stream data of the specified user V2\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Room room_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-live-videos-by-room-id-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"room_id\\\": \\\"room_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"room_id\\\": \\\"room_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-live-videos-by-room-id-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"room_id\\\": \\\"room_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-live-videos-by-room-id-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-live-videos-by-room-id-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-live-videos-by-room-id-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-live-videos-by-room-id-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-live-videos-by-room-id-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-live-videos-by-room-id-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-live-videos-by-room-id-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Stream Data by Room ID (V2)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-live-videos-by-room-id-v2\",\"description\":\"Returns stream data for a specified Douyin user using a room identifier. Provide a valid room ID to inspect stream metadata and broadcast details.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Room room_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-live-videos-by-room-id-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"room_id\\\": \\\"room_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"room_id\\\": \\\"room_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-live-videos-by-room-id-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"room_id\\\": \\\"room_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-live-videos-by-room-id-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-live-videos-by-room-id-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-live-videos-by-room-id-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-live-videos-by-room-id-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-live-videos-by-room-id-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-live-videos-by-room-id-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-live-videos-by-room-id-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Gets the live stream data of the specified user by room_id V2" + modelName: "Douyin Stream Data by Room ID (V2)" modelId: "douyin/web/user-live-videos-by-room-id-v2" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/user-live-videos-by-sec-uid.md b/model-api-reference/platform-apis/douyin/web/user-live-videos-by-sec-uid.md index 85506014..1c4d9ea8 100644 --- a/model-api-reference/platform-apis/douyin/web/user-live-videos-by-sec-uid.md +++ b/model-api-reference/platform-apis/douyin/web/user-live-videos-by-sec-uid.md @@ -1,13 +1,13 @@ --- -title: "Get live video data of specified user by sec_uid API Reference" -description: "SandBase API operation douyin/web/user-live-videos-by-sec-uid." +title: "Douyin User Broadcast Videos API Reference" +description: "SandBase API reference for model douyin/web/user-live-videos-by-sec-uid. Call /v1/api/douyin/web/user-live-videos-by-sec-uid; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/user-live-videos-by-sec-uid" -apiReferenceJson: "{\"title\":\"Get live video data of specified user by sec_uid\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-live-videos-by-sec-uid\",\"description\":\"Get live video data of specified user by sec_uid\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_uid, also called sec_user_id, can be found in the user's homepage link.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-live-videos-by-sec-uid \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-live-videos-by-sec-uid\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-live-videos-by-sec-uid\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-live-videos-by-sec-uid\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-live-videos-by-sec-uid\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-live-videos-by-sec-uid\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-live-videos-by-sec-uid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-live-videos-by-sec-uid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-live-videos-by-sec-uid\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin User Broadcast Videos\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-live-videos-by-sec-uid\",\"description\":\"Returns broadcast video data for a specified Douyin user using their security identifier. Provide the account identifier to inspect streaming content and badge details.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_uid, also called sec_user_id, can be found in the user's homepage link.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-live-videos-by-sec-uid \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-live-videos-by-sec-uid\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-live-videos-by-sec-uid\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-live-videos-by-sec-uid\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-live-videos-by-sec-uid\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-live-videos-by-sec-uid\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-live-videos-by-sec-uid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-live-videos-by-sec-uid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-live-videos-by-sec-uid\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get live video data of specified user by sec_uid" + modelName: "Douyin User Broadcast Videos" modelId: "douyin/web/user-live-videos-by-sec-uid" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/user-live-videos.md b/model-api-reference/platform-apis/douyin/web/user-live-videos.md index f85d8568..71f18e49 100644 --- a/model-api-reference/platform-apis/douyin/web/user-live-videos.md +++ b/model-api-reference/platform-apis/douyin/web/user-live-videos.md @@ -1,13 +1,13 @@ --- -title: "Get user live video data API Reference" -description: "SandBase API operation douyin/web/user-live-videos." +title: "Douyin User Webcast Video Records API Reference" +description: "SandBase API reference for model douyin/web/user-live-videos. Call /v1/api/douyin/web/user-live-videos; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/user-live-videos" -apiReferenceJson: "{\"title\":\"Get user live video data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-live-videos\",\"description\":\"Get user live video data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"webcast_id\",\"type\":\"string\",\"required\":true,\"description\":\"Room webcast_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-live-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"webcast_id\\\": \\\"webcast_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"webcast_id\\\": \\\"webcast_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-live-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"webcast_id\\\": \\\"webcast_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-live-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-live-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-live-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-live-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-live-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-live-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-live-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin User Webcast Video Records\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-live-videos\",\"description\":\"Retrieves user broadcast video data from Douyin Web using a specific room identifier. Input the webcast ID to look up associated room records.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"webcast_id\",\"type\":\"string\",\"required\":true,\"description\":\"Room webcast_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-live-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"webcast_id\\\": \\\"webcast_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"webcast_id\\\": \\\"webcast_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-live-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"webcast_id\\\": \\\"webcast_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-live-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-live-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-live-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-live-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-live-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-live-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-live-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user live video data" + modelName: "Douyin User Webcast Video Records" modelId: "douyin/web/user-live-videos" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/user-mix-videos.md b/model-api-reference/platform-apis/douyin/web/user-mix-videos.md deleted file mode 100644 index 89937b60..00000000 --- a/model-api-reference/platform-apis/douyin/web/user-mix-videos.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get user mix video data API Reference" -description: "SandBase API operation douyin/web/user-mix-videos." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/web/user-mix-videos" -apiReferenceJson: "{\"title\":\"Get user mix video data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-mix-videos\",\"description\":\"Get user mix video data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"counts\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\"},{\"name\":\"max_cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum cursor\"},{\"name\":\"mix_id\",\"type\":\"string\",\"required\":true,\"description\":\"Mix id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-mix-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"mix_id\\\": \\\"mix_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"mix_id\\\": \\\"mix_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-mix-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"mix_id\\\": \\\"mix_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-mix-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-mix-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-mix-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-mix-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-mix-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-mix-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-mix-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get user mix video data" - modelId: "douyin/web/user-mix-videos" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "web/user-mix-videos" - protocol: "API Reference" - endpoint: "/v1/api/douyin/web/user-mix-videos" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/web/user-post-videos.md b/model-api-reference/platform-apis/douyin/web/user-post-videos.md index 07e83e60..28c0d8cc 100644 --- a/model-api-reference/platform-apis/douyin/web/user-post-videos.md +++ b/model-api-reference/platform-apis/douyin/web/user-post-videos.md @@ -1,13 +1,13 @@ --- -title: "Get user homepage video data — 8a6dp5 API" -description: "SandBase API operation douyin/web/user-post-videos." +title: "Douyin User Video Posts API Reference" +description: "Douyin User Video Posts API reference for SandBase. Use model douyin/web/user-post-videos with /v1/api/douyin/web/user-post-videos; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/user-post-videos" -apiReferenceJson: "{\"title\":\"Get user homepage video data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-post-videos\",\"description\":\"Get user homepage video data Note: Please try to use the APP interface instead of the WEB API, because the WEB API may be unstable.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User's web version of Douyin Cookie (This interface can accept users to provide their own Cookie)\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum count number, it is recommended not to exceed 20\"},{\"name\":\"filter_type\",\"type\":\"string\",\"required\":false,\"description\":\"Filter type, optional parameters are as follows:\"},{\"name\":\"max_cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Paging cursor, pass 0 for the first request, and then pass the max_cursor returned by the previous request for paging each time.\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_user_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-post-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-post-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-post-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-post-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-post-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-post-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-post-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-post-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-post-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin User Video Posts\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-post-videos\",\"description\":\"Returns video data posted on a Douyin user homepage. Query by user identifier with support for pagination and sorting by popularity or default order.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum count number, it is recommended not to exceed 20\"},{\"name\":\"filter_type\",\"type\":\"string\",\"required\":false,\"description\":\"Filter type, optional parameters are as follows: 0: Default sorting; 3: Sort by popularity\"},{\"name\":\"max_cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Paging cursor, pass 0 for the first request, and then pass the max_cursor returned by the previous request for paging each time.\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_user_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-post-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-post-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-post-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-post-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-post-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-post-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-post-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-post-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-post-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user homepage video data" + modelName: "Douyin User Video Posts" modelId: "douyin/web/user-post-videos" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/user-profile-by-short-id.md b/model-api-reference/platform-apis/douyin/web/user-profile-by-short-id.md index a1988925..2455eae0 100644 --- a/model-api-reference/platform-apis/douyin/web/user-profile-by-short-id.md +++ b/model-api-reference/platform-apis/douyin/web/user-profile-by-short-id.md @@ -1,13 +1,13 @@ --- -title: "Get user information by Short ID API Reference" -description: "SandBase API operation douyin/web/user-profile-by-short-id." +title: "Douyin User Profile by Short ID API Reference" +description: "SandBase API reference for model douyin/web/user-profile-by-short-id. Call /v1/api/douyin/web/user-profile-by-short-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/user-profile-by-short-id" -apiReferenceJson: "{\"title\":\"Get user information by Short ID\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-profile-by-short-id\",\"description\":\"Get user information by Short ID\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"short_id\",\"type\":\"string\",\"required\":true,\"description\":\"User Short ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-profile-by-short-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"short_id\\\": \\\"short_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"short_id\\\": \\\"short_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-profile-by-short-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"short_id\\\": \\\"short_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-profile-by-short-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-profile-by-short-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-profile-by-short-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-profile-by-short-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-profile-by-short-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-profile-by-short-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-profile-by-short-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin User Profile by Short ID\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-profile-by-short-id\",\"description\":\"Retrieves Douyin web user profile details using an account short ID. Returns profile metadata, title information, and engagement counters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"short_id\",\"type\":\"string\",\"required\":true,\"description\":\"User Short ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-profile-by-short-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"short_id\\\": \\\"2941976066\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"short_id\\\": \\\"2941976066\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-profile-by-short-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"short_id\\\": \\\"2941976066\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-profile-by-short-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-profile-by-short-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-profile-by-short-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-profile-by-short-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-profile-by-short-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-profile-by-short-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-profile-by-short-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user information by Short ID" + modelName: "Douyin User Profile by Short ID" modelId: "douyin/web/user-profile-by-short-id" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/user-profile-by-uid.md b/model-api-reference/platform-apis/douyin/web/user-profile-by-uid.md index de9d1d19..260aa495 100644 --- a/model-api-reference/platform-apis/douyin/web/user-profile-by-uid.md +++ b/model-api-reference/platform-apis/douyin/web/user-profile-by-uid.md @@ -1,13 +1,13 @@ --- -title: "Get user information by UID API Reference" -description: "SandBase API operation douyin/web/user-profile-by-uid." +title: "Douyin User Profile by UID API Reference" +description: "SandBase API reference for model douyin/web/user-profile-by-uid. Call /v1/api/douyin/web/user-profile-by-uid; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/user-profile-by-uid" -apiReferenceJson: "{\"title\":\"Get user information by UID\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-profile-by-uid\",\"description\":\"Get user information by UID\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User UID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-profile-by-uid \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-profile-by-uid\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-profile-by-uid\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-profile-by-uid\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-profile-by-uid\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-profile-by-uid\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-profile-by-uid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-profile-by-uid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-profile-by-uid\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin User Profile by UID\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-profile-by-uid\",\"description\":\"Returns public profile details, badge lists, and account metadata for a Douyin web user by querying their unique identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User UID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-profile-by-uid \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"92769419069\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"92769419069\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-profile-by-uid\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"92769419069\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-profile-by-uid\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-profile-by-uid\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-profile-by-uid\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-profile-by-uid\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-profile-by-uid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-profile-by-uid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-profile-by-uid\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user information by UID" + modelName: "Douyin User Profile by UID" modelId: "douyin/web/user-profile-by-uid" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/user-profile-v2.md b/model-api-reference/platform-apis/douyin/web/user-profile-v2.md index 432d9c48..b868424f 100644 --- a/model-api-reference/platform-apis/douyin/web/user-profile-v2.md +++ b/model-api-reference/platform-apis/douyin/web/user-profile-v2.md @@ -1,13 +1,13 @@ --- -title: "Get information of specified user by unique_id API Reference" -description: "SandBase API operation douyin/web/user-profile-v2." +title: "Douyin User Profile by Unique ID API Reference" +description: "SandBase API reference for model douyin/web/user-profile-v2. Call /v1/api/douyin/web/user-profile-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/user-profile-v2" -apiReferenceJson: "{\"title\":\"Get information of specified user by unique_id\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-profile-v2\",\"description\":\"Get information of specified user by unique_id\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"unique_id\",\"type\":\"string\",\"required\":true,\"description\":\"User unique_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-profile-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"unique_id\\\": \\\"unique_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"unique_id\\\": \\\"unique_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-profile-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"unique_id\\\": \\\"unique_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-profile-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-profile-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-profile-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-profile-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-profile-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-profile-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-profile-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin User Profile by Unique ID\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-profile-v2\",\"description\":\"Returns profile details and compilation information for a specified Douyin user account based on their unique identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"unique_id\",\"type\":\"string\",\"required\":true,\"description\":\"User unique_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-profile-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"unique_id\\\": \\\"dyczxzs\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"unique_id\\\": \\\"dyczxzs\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-profile-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"unique_id\\\": \\\"dyczxzs\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-profile-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-profile-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-profile-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-profile-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-profile-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-profile-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-profile-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get information of specified user by unique_id" + modelName: "Douyin User Profile by Unique ID" modelId: "douyin/web/user-profile-v2" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/user-profile-v3.md b/model-api-reference/platform-apis/douyin/web/user-profile-v3.md index a0a8fd69..f8b8a288 100644 --- a/model-api-reference/platform-apis/douyin/web/user-profile-v3.md +++ b/model-api-reference/platform-apis/douyin/web/user-profile-v3.md @@ -1,13 +1,13 @@ --- -title: "Get information of specified user by uid API Reference" -description: "SandBase API operation douyin/web/user-profile-v3." +title: "Douyin User Profile Details API Reference" +description: "Douyin User Profile Details API reference for SandBase. Use model douyin/web/user-profile-v3 with /v1/api/douyin/web/user-profile-v3; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/user-profile-v3" -apiReferenceJson: "{\"title\":\"Get information of specified user by uid\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-profile-v3\",\"description\":\"Get information of specified user by unique_id\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User uid, which is the short_id of the Douyin number\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-profile-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-profile-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-profile-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-profile-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-profile-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-profile-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-profile-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-profile-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-profile-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin User Profile Details\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-profile-v3\",\"description\":\"Returns profile information and badges for a specified Douyin user using their account identifier. Query by providing the user's short ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User uid, which is the short_id of the Douyin number\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-profile-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"92769419069\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"92769419069\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-profile-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"92769419069\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-profile-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-profile-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-profile-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-profile-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-profile-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-profile-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-profile-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get information of specified user by uid" + modelName: "Douyin User Profile Details" modelId: "douyin/web/user-profile-v3" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/user-profile-v4.md b/model-api-reference/platform-apis/douyin/web/user-profile-v4.md deleted file mode 100644 index 71c2c0ad..00000000 --- a/model-api-reference/platform-apis/douyin/web/user-profile-v4.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get information of specified user by sec_user_id API Ref" -description: "SandBase API operation douyin/web/user-profile-v4." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/web/user-profile-v4" -apiReferenceJson: "{\"title\":\"Get information of specified user by sec_user_id (gender, age, live level、brand)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-profile-v4\",\"description\":\"Get information of specified user\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_user_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-profile-v4 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-profile-v4\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-profile-v4\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-profile-v4\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-profile-v4\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-profile-v4\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-profile-v4\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-profile-v4\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-profile-v4\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get information of specified user by sec_user_id (gender, age, live level、brand)" - modelId: "douyin/web/user-profile-v4" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "web/user-profile-v4" - protocol: "API Reference" - endpoint: "/v1/api/douyin/web/user-profile-v4" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/web/user-profile.md b/model-api-reference/platform-apis/douyin/web/user-profile.md index eddfdc14..7b739fe5 100644 --- a/model-api-reference/platform-apis/douyin/web/user-profile.md +++ b/model-api-reference/platform-apis/douyin/web/user-profile.md @@ -1,13 +1,13 @@ --- -title: "Get information of specified user by sec_user_id API Reference" -description: "SandBase API operation douyin/web/user-profile." +title: "Douyin User Profile (Web) API Reference" +description: "Douyin User Profile (Web) API reference for SandBase. Use model douyin/web/user-profile with /v1/api/douyin/web/user-profile; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/user-profile" -apiReferenceJson: "{\"title\":\"Get information of specified user by sec_user_id\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-profile\",\"description\":\"Get information of specified user\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_user_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin User Profile (Web)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/user-profile\",\"description\":\"Returns profile details for a specified Douyin user using their secure user identifier. Retrieve account information such as user cover URLs by providing a sec_user_id.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_user_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sec_user_id\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sec_user_id\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sec_user_id\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get information of specified user by sec_user_id" + modelName: "Douyin User Profile (Web)" modelId: "douyin/web/user-profile" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/video-channel-result.md b/model-api-reference/platform-apis/douyin/web/video-channel-result.md index 8aa9749a..95d986cd 100644 --- a/model-api-reference/platform-apis/douyin/web/video-channel-result.md +++ b/model-api-reference/platform-apis/douyin/web/video-channel-result.md @@ -1,13 +1,13 @@ --- -title: "Douyin video channel data API Reference" -description: "SandBase API operation douyin/web/video-channel-result." +title: "Douyin Video Channel Feed API Reference" +description: "SandBase API reference for model douyin/web/video-channel-result. Call /v1/api/douyin/web/video-channel-result; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/video-channel-result" -apiReferenceJson: "{\"title\":\"Douyin video channel data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/video-channel-result\",\"description\":\"Douyin video channel data https://www.douyin.com/channel/300205\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\"},{\"name\":\"refresh_index\",\"type\":\"integer\",\"required\":false,\"description\":\"Refresh index\"},{\"name\":\"tag_id\",\"type\":\"integer\",\"required\":true,\"description\":\"Tag id, get from the URL\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/video-channel-result \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"tag_id\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"tag_id\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/video-channel-result\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"tag_id\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/video-channel-result\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/video-channel-result\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/video-channel-result\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/video-channel-result\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/video-channel-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/video-channel-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/video-channel-result\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Video Channel Feed\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/video-channel-result\",\"description\":\"Returns video listings from a specific Douyin channel page. Requires a channel tag ID and supports pagination through count and refresh index parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\"},{\"name\":\"refresh_index\",\"type\":\"integer\",\"required\":false,\"description\":\"Refresh index\"},{\"name\":\"tag_id\",\"type\":\"integer\",\"required\":true,\"description\":\"Tag id, get from the URL\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/video-channel-result \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"tag_id\\\": 2027\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"tag_id\\\": 2027\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/video-channel-result\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"tag_id\\\": 2027\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/video-channel-result\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/video-channel-result\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/video-channel-result\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/video-channel-result\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/video-channel-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/video-channel-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/video-channel-result\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Douyin video channel data" + modelName: "Douyin Video Channel Feed" modelId: "douyin/web/video-channel-result" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/video-comment-replies.md b/model-api-reference/platform-apis/douyin/web/video-comment-replies.md index 5b62f1ce..64866a35 100644 --- a/model-api-reference/platform-apis/douyin/web/video-comment-replies.md +++ b/model-api-reference/platform-apis/douyin/web/video-comment-replies.md @@ -1,13 +1,13 @@ --- -title: "Get comment replies data of specified video — 4el2du API" -description: "SandBase API operation douyin/web/video-comment-replies." +title: "Douyin Video Comment Replies (Web) API Reference" +description: "SandBase API reference for model douyin/web/video-comment-replies. Call /v1/api/douyin/web/video-comment-replies; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/video-comment-replies" -apiReferenceJson: "{\"title\":\"Get comment replies data of specified video\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/video-comment-replies\",\"description\":\"Get comment replies data of specified video\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"comment_id\",\"type\":\"string\",\"required\":true,\"description\":\"Comment id\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/video-comment-replies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/video-comment-replies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/video-comment-replies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/video-comment-replies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/video-comment-replies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/video-comment-replies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/video-comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/video-comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/video-comment-replies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Video Comment Replies (Web)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/video-comment-replies\",\"description\":\"Returns reply data for a specific comment on a Douyin video. Supports pagination controls through cursor and count parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"comment_id\",\"type\":\"string\",\"required\":true,\"description\":\"Comment id\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/video-comment-replies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/video-comment-replies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/video-comment-replies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/video-comment-replies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/video-comment-replies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/video-comment-replies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/video-comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/video-comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/video-comment-replies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get comment replies data of specified video" + modelName: "Douyin Video Comment Replies (Web)" modelId: "douyin/web/video-comment-replies" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/video-comments.md b/model-api-reference/platform-apis/douyin/web/video-comments.md index 44f90430..d84a05be 100644 --- a/model-api-reference/platform-apis/douyin/web/video-comments.md +++ b/model-api-reference/platform-apis/douyin/web/video-comments.md @@ -1,13 +1,13 @@ --- -title: "Get single video comments data — udns58 API" -description: "SandBase API operation douyin/web/video-comments." +title: "Douyin Video Comments (Web) API Reference" +description: "Douyin Video Comments (Web) API reference for SandBase. Use model douyin/web/video-comments with /v1/api/douyin/web/video-comments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/video-comments" -apiReferenceJson: "{\"title\":\"Get single video comments data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/video-comments\",\"description\":\"Get single video comments data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\",\"default\":\"20\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/video-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"aweme_id\\\": \\\"7372484719365098803\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"aweme_id\\\": \\\"7372484719365098803\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/video-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"aweme_id\\\": \\\"7372484719365098803\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/video-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/video-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/video-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/video-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/video-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Video Comments (Web)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/video-comments\",\"description\":\"Returns comments for a specific Douyin video using its video ID. Supports pagination controls via cursor and item count parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\",\"default\":\"20\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/video-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"aweme_id\\\": \\\"7372484719365098803\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"aweme_id\\\": \\\"7372484719365098803\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/video-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"aweme_id\\\": \\\"7372484719365098803\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/video-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/video-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/video-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/video-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/video-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video comments data" + modelName: "Douyin Video Comments (Web)" modelId: "douyin/web/video-comments" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/video-high-quality-play-url.md b/model-api-reference/platform-apis/douyin/web/video-high-quality-play-url.md index 7173ca4e..9ef62973 100644 --- a/model-api-reference/platform-apis/douyin/web/video-high-quality-play-url.md +++ b/model-api-reference/platform-apis/douyin/web/video-high-quality-play-url.md @@ -1,13 +1,13 @@ --- -title: "Get the highest quality play URL of the video — cbq7fd API" -description: "SandBase API operation douyin/web/video-high-quality-play-url." +title: "Douyin High Quality Video Play URL (Web) API Reference" +description: "SandBase API reference for model douyin/web/video-high-quality-play-url. Call /v1/api/douyin/web/video-high-quality-play-url; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/video-high-quality-play-url" -apiReferenceJson: "{\"title\":\"Get the highest quality play URL of the video\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/video-high-quality-play-url\",\"description\":\"Price: 0.005$ each time. Get the highest quality (original upload quality) play URL of the video This interface will return the highest quality play URL, the original upload quality refers to the quality of the video when the user uploads it, usually the highest quality video has an uncompressed bitrate and the file header contains metadata. The highest quality video link cannot be obtained directly from the Douyin APP or web version, and must be obtained through this interface. This interface is very suitable for obtaining high-definition, watermark-free video links, suitable for scenarios that require high-quality videos, such as video editing, archiving, training models, etc. Generally, it can be played online, if not, you can try to download it using IDM or a browser and then play it.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":false,\"description\":\"Video id, prefer to use aweme_id, if not available, use share_url.\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Optional, ISO country code (e.g. \\\"CN\\\" / \\\"US\\\" / \\\"HK\\\") used as the request exit region.\"},{\"name\":\"share_url\",\"type\":\"string\",\"required\":false,\"description\":\"Optional, share link, if the video id is provided, this parameter can be omitted.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/video-high-quality-play-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/web/video-high-quality-play-url\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/web/video-high-quality-play-url\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/video-high-quality-play-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/web/video-high-quality-play-url\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/video-high-quality-play-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/video-high-quality-play-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/video-high-quality-play-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/video-high-quality-play-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/video-high-quality-play-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/video-high-quality-play-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/video-high-quality-play-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin High Quality Video Play URL (Web)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/video-high-quality-play-url\",\"description\":\"Returns the highest quality playback URL for a Douyin video using a video ID or share URL, with an optional exit region specification. Price: 0.005$ each time.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":false,\"description\":\"Video id, prefer to use aweme_id, if not available, use share_url.\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Optional, ISO country code (e.g. \\\"CN\\\" / \\\"US\\\" / \\\"HK\\\") used as the request exit region.\"},{\"name\":\"share_url\",\"type\":\"string\",\"required\":false,\"description\":\"Optional, share link, if the video id is provided, this parameter can be omitted.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/video-high-quality-play-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/video-high-quality-play-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/video-high-quality-play-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/video-high-quality-play-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/video-high-quality-play-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/video-high-quality-play-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/video-high-quality-play-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/video-high-quality-play-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/video-high-quality-play-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get the highest quality play URL of the video" + modelName: "Douyin High Quality Video Play URL (Web)" modelId: "douyin/web/video-high-quality-play-url" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/web-guest-cookie.md b/model-api-reference/platform-apis/douyin/web/web-guest-cookie.md index b6804466..996de10e 100644 --- a/model-api-reference/platform-apis/douyin/web/web-guest-cookie.md +++ b/model-api-reference/platform-apis/douyin/web/web-guest-cookie.md @@ -1,13 +1,13 @@ --- -title: "Get the guest Cookie of Douyin Web API Reference" -description: "SandBase API operation douyin/web/web-guest-cookie." +title: "Douyin Web Guest Cookie API Reference" +description: "Douyin Web Guest Cookie API reference for SandBase. Use model douyin/web/web-guest-cookie with /v1/api/douyin/web/web-guest-cookie; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/web-guest-cookie" -apiReferenceJson: "{\"title\":\"Get the guest Cookie of Douyin Web\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/web-guest-cookie\",\"description\":\"Get the guest Cookie of Douyin Web Can be used to crawl data of Douyin Web, such as user videos, mix videos, etc. Can fix identity to avoid duplicate data for some interfaces. Please note: Guest Cookie cannot crawl all data, there are certain restrictions. Can be used with open source projects to implement data crawling of Douyin Web using this interface.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_agent\",\"type\":\"string\",\"required\":true,\"description\":\"User browser agent\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/web-guest-cookie \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_agent\\\": \\\"user_agent\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_agent\\\": \\\"user_agent\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/web-guest-cookie\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_agent\\\": \\\"user_agent\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/web-guest-cookie\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/web-guest-cookie\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/web-guest-cookie\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/web-guest-cookie\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/web-guest-cookie\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/web-guest-cookie\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/web-guest-cookie\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Web Guest Cookie\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/web-guest-cookie\",\"description\":\"Returns a guest cookie for Douyin Web based on a specified browser user agent string. This cookie helps establish identity for browsing web endpoints.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_agent\",\"type\":\"string\",\"required\":true,\"description\":\"User browser agent\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/web-guest-cookie \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_agent\\\": \\\"user_agent\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_agent\\\": \\\"user_agent\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/web-guest-cookie\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_agent\\\": \\\"user_agent\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/web-guest-cookie\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/web-guest-cookie\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/web-guest-cookie\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/web-guest-cookie\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/web-guest-cookie\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/web-guest-cookie\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/web-guest-cookie\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get the guest Cookie of Douyin Web" + modelName: "Douyin Web Guest Cookie" modelId: "douyin/web/web-guest-cookie" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/webcast-id-2-room-id.md b/model-api-reference/platform-apis/douyin/web/webcast-id-2-room-id.md index c241a87f..fe6ef629 100644 --- a/model-api-reference/platform-apis/douyin/web/webcast-id-2-room-id.md +++ b/model-api-reference/platform-apis/douyin/web/webcast-id-2-room-id.md @@ -1,13 +1,13 @@ --- -title: "Webcast id to room id API Reference" -description: "SandBase API operation douyin/web/webcast-id-2-room-id." +title: "Douyin Webcast ID to Room ID API Reference" +description: "SandBase API reference for model douyin/web/webcast-id-2-room-id. Call /v1/api/douyin/web/webcast-id-2-room-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/webcast-id-2-room-id" -apiReferenceJson: "{\"title\":\"Webcast id to room id\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/webcast-id-2-room-id\",\"description\":\"Webcast id to room id\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"webcast_id\",\"type\":\"string\",\"required\":true,\"description\":\"Webcast id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/webcast-id-2-room-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"webcast_id\\\": \\\"webcast_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"webcast_id\\\": \\\"webcast_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/webcast-id-2-room-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"webcast_id\\\": \\\"webcast_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/webcast-id-2-room-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/webcast-id-2-room-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/webcast-id-2-room-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/webcast-id-2-room-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/webcast-id-2-room-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/webcast-id-2-room-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/webcast-id-2-room-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Webcast ID to Room ID\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/webcast-id-2-room-id\",\"description\":\"Converts a Douyin webcast ID into its corresponding room ID. Submit a webcast ID to retrieve the matching livestream room identifier for Douyin web workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"webcast_id\",\"type\":\"string\",\"required\":true,\"description\":\"Webcast id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/webcast-id-2-room-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"webcast_id\\\": \\\"webcast_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"webcast_id\\\": \\\"webcast_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/webcast-id-2-room-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"webcast_id\\\": \\\"webcast_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/webcast-id-2-room-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/webcast-id-2-room-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/webcast-id-2-room-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/webcast-id-2-room-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/webcast-id-2-room-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/webcast-id-2-room-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/webcast-id-2-room-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Webcast id to room id" + modelName: "Douyin Webcast ID to Room ID" modelId: "douyin/web/webcast-id-2-room-id" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/web/webcast-id.md b/model-api-reference/platform-apis/douyin/web/webcast-id.md index 706315f8..b8e89c43 100644 --- a/model-api-reference/platform-apis/douyin/web/webcast-id.md +++ b/model-api-reference/platform-apis/douyin/web/webcast-id.md @@ -1,13 +1,13 @@ --- -title: "Extract webcast id API Reference" -description: "SandBase API operation douyin/web/webcast-id." +title: "Douyin Webcast ID Extractor API Reference" +description: "Douyin Webcast ID Extractor API reference for SandBase. Use model douyin/web/webcast-id with /v1/api/douyin/web/webcast-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/web/webcast-id" -apiReferenceJson: "{\"title\":\"Extract webcast id\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/webcast-id\",\"description\":\"Extract list webcast id\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Download URL for a generated output asset.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/webcast-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://live.douyin.com/775841227732\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://live.douyin.com/775841227732\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/webcast-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://live.douyin.com/775841227732\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/webcast-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/webcast-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/webcast-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/webcast-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/webcast-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/webcast-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/webcast-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Webcast ID Extractor\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/web/webcast-id\",\"description\":\"Resolves and returns the webcast ID from a Douyin live stream web link. Requires the stream URL as input to retrieve internal webcast identifiers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Download URL for a generated output asset.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/web/webcast-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://live.douyin.com/775841227732\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://live.douyin.com/775841227732\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/web/webcast-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://live.douyin.com/775841227732\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/web/webcast-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/web/webcast-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/web/webcast-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/web/webcast-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/web/webcast-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/web/webcast-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/web/webcast-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Extract webcast id" + modelName: "Douyin Webcast ID Extractor" modelId: "douyin/web/webcast-id" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/author-audience-distribution.md b/model-api-reference/platform-apis/douyin/xingtu-v2/author-audience-distribution.md index 53c871be..e5ff490f 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/author-audience-distribution.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/author-audience-distribution.md @@ -1,13 +1,13 @@ --- -title: "Get Author Audience Distribution API Reference" -description: "SandBase API operation douyin/xingtu-v2/author-audience-distribution." +title: "Douyin Xingtu Author Audience Distribution API Reference" +description: "SandBase API reference: douyin/xingtu-v2/author-audience-distribution via /v1/api/douyin/xingtu-v2/author-audience-distribution. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/author-audience-distribution" -apiReferenceJson: "{\"title\":\"Get Author Audience Distribution\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-audience-distribution\",\"description\":\"Get creator audience profile distribution Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"link_type\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Link type, optional\"},{\"name\":\"o_author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator ID\"},{\"name\":\"platform_channel\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform channel, default 1\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-audience-distribution \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-audience-distribution\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-audience-distribution\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-audience-distribution\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-audience-distribution\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-audience-distribution\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-audience-distribution\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-audience-distribution\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-audience-distribution\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Author Audience Distribution\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-audience-distribution\",\"description\":\"Returns audience profile distribution metrics for a specified Xingtu creator based on creator ID and link type, with selectable platform source and channel options. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"link_type\",\"type\":\"integer | null\",\"required\":true,\"description\":\"Link type, optional\"},{\"name\":\"o_author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator ID\"},{\"name\":\"platform_channel\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform channel, default 1\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-audience-distribution \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"o_author_id\\\": \\\"o_author_id\\\",\\n \\\"link_type\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"o_author_id\\\": \\\"o_author_id\\\",\\n \\\"link_type\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-audience-distribution\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"o_author_id\\\": \\\"o_author_id\\\",\\n \\\"link_type\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-audience-distribution\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-audience-distribution\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-audience-distribution\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-audience-distribution\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-audience-distribution\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-audience-distribution\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-audience-distribution\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Author Audience Distribution" + modelName: "Douyin Xingtu Author Audience Distribution" modelId: "douyin/xingtu-v2/author-audience-distribution" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/author-base-info.md b/model-api-reference/platform-apis/douyin/xingtu-v2/author-base-info.md index 563e6aa4..55c6305d 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/author-base-info.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/author-base-info.md @@ -1,13 +1,13 @@ --- -title: "Get Author Base Info API Reference" -description: "SandBase API operation douyin/xingtu-v2/author-base-info." +title: "Douyin Xingtu Author Base Info API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/author-base-info. Call /v1/api/douyin/xingtu-v2/author-base-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/author-base-info" -apiReferenceJson: "{\"title\":\"Get Author Base Info\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-base-info\",\"description\":\"Get creator/author base information Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_linkage_info\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to return linkage info, default True\"},{\"name\":\"need_sec_uid\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to return sec_uid, default True\"},{\"name\":\"o_author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator/author ID\"},{\"name\":\"platform_channel\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform channel, default 1\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"},{\"name\":\"recommend\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to return recommendation info, default True\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-base-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-base-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-base-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-base-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-base-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-base-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-base-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-base-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-base-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Author Base Info\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-base-info\",\"description\":\"Returns basic creator profile data from Douyin Xingtu by author identifier, with options to include recommendation details and linkage information. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_linkage_info\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to return linkage info, default True\"},{\"name\":\"need_sec_uid\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to return sec_uid, default True\"},{\"name\":\"o_author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator/author ID\"},{\"name\":\"platform_channel\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform channel, default 1\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"},{\"name\":\"recommend\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to return recommendation info, default True\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-base-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-base-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-base-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-base-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-base-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-base-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-base-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-base-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-base-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Author Base Info" + modelName: "Douyin Xingtu Author Base Info" modelId: "douyin/xingtu-v2/author-base-info" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/author-business-card-info.md b/model-api-reference/platform-apis/douyin/xingtu-v2/author-business-card-info.md index 81caf2e4..fb469de3 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/author-business-card-info.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/author-business-card-info.md @@ -1,13 +1,13 @@ --- -title: "Get Author Business Card Info API Reference" -description: "SandBase API operation douyin/xingtu-v2/author-business-card-info." +title: "Douyin Xingtu Author Business Card Info API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/author-business-card-info. Call /v1/api/douyin/xingtu-v2/author-business-card-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/author-business-card-info" -apiReferenceJson: "{\"title\":\"Get Author Business Card Info\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-business-card-info\",\"description\":\"Get creator/author business card information Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"o_author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator/author ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-business-card-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-business-card-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-business-card-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-business-card-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-business-card-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-business-card-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-business-card-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-business-card-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-business-card-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Author Business Card Info\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-business-card-info\",\"description\":\"Returns business card details for a Douyin Xingtu creator based on the specified author ID. Useful for reviewing creator profile summaries and business contact information. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"o_author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator/author ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-business-card-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-business-card-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-business-card-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-business-card-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-business-card-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-business-card-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-business-card-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-business-card-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-business-card-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Author Business Card Info" + modelName: "Douyin Xingtu Author Business Card Info" modelId: "douyin/xingtu-v2/author-business-card-info" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/author-content-hot-keywords.md b/model-api-reference/platform-apis/douyin/xingtu-v2/author-content-hot-keywords.md index b7ae010a..99d7d94c 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/author-content-hot-keywords.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/author-content-hot-keywords.md @@ -1,13 +1,13 @@ --- -title: "Get Author Content Hot Keywords API Reference" -description: "SandBase API operation douyin/xingtu-v2/author-content-hot-keywords." +title: "Douyin Xingtu Author Content Hot Keywords API Reference" +description: "SandBase API reference: douyin/xingtu-v2/author-content-hot-keywords via /v1/api/douyin/xingtu-v2/author-content-hot-keywords. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/author-content-hot-keywords" -apiReferenceJson: "{\"title\":\"Get Author Content Hot Keywords\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-content-hot-keywords\",\"description\":\"Get creator/author content hot keywords Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator/author ID\"},{\"name\":\"keyword_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Keyword type, default 0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-content-hot-keywords \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"author_id\\\": \\\"author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"author_id\\\": \\\"author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-content-hot-keywords\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"author_id\\\": \\\"author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-content-hot-keywords\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-content-hot-keywords\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-content-hot-keywords\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-content-hot-keywords\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-content-hot-keywords\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-content-hot-keywords\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-content-hot-keywords\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Author Content Hot Keywords\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-content-hot-keywords\",\"description\":\"Returns trending content keywords for a Douyin creator. Filter results by creator ID and specify an optional keyword type. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator/author ID\"},{\"name\":\"keyword_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Keyword type, default 0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-content-hot-keywords \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"author_id\\\": \\\"7146074596666507300\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"author_id\\\": \\\"7146074596666507300\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-content-hot-keywords\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"author_id\\\": \\\"7146074596666507300\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-content-hot-keywords\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-content-hot-keywords\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-content-hot-keywords\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-content-hot-keywords\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-content-hot-keywords\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-content-hot-keywords\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-content-hot-keywords\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Author Content Hot Keywords" + modelName: "Douyin Xingtu Author Content Hot Keywords" modelId: "douyin/xingtu-v2/author-content-hot-keywords" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/author-convert-ability.md b/model-api-reference/platform-apis/douyin/xingtu-v2/author-convert-ability.md index a8e82cde..30b4dae9 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/author-convert-ability.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/author-convert-ability.md @@ -1,13 +1,13 @@ --- -title: "Get Author Convert Ability API Reference" -description: "SandBase API operation douyin/xingtu-v2/author-convert-ability." +title: "Douyin Xingtu Author Conversion Ability API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/author-convert-ability. Call /v1/api/douyin/xingtu-v2/author-convert-ability; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/author-convert-ability" -apiReferenceJson: "{\"title\":\"Get Author Convert Ability\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-convert-ability\",\"description\":\"Get creator conversion ability data (GMV, clicks, conversion-rate ranges) Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"industry_id\",\"type\":\"integer\",\"required\":false,\"description\":\"Industry ID, 0=unlimited, default 0\"},{\"name\":\"o_author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator ID\"},{\"name\":\"platform_channel\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform channel, default 1\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"},{\"name\":\"time_range\",\"type\":\"integer\",\"required\":false,\"description\":\"Time range tier, default 2\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-convert-ability \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-convert-ability\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-convert-ability\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-convert-ability\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-convert-ability\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-convert-ability\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-convert-ability\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-convert-ability\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-convert-ability\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Author Conversion Ability\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-convert-ability\",\"description\":\"Returns creator conversion ability metrics including GMV, clicks, and conversion rate ranges filtered by creator, time range, and industry. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"industry_id\",\"type\":\"integer\",\"required\":false,\"description\":\"Industry ID, 0=unlimited, default 0\"},{\"name\":\"o_author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator ID\"},{\"name\":\"platform_channel\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform channel, default 1\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"},{\"name\":\"time_range\",\"type\":\"integer\",\"required\":false,\"description\":\"Time range tier, default 2\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-convert-ability \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-convert-ability\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-convert-ability\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-convert-ability\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-convert-ability\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-convert-ability\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-convert-ability\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-convert-ability\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-convert-ability\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Author Convert Ability" + modelName: "Douyin Xingtu Author Conversion Ability" modelId: "douyin/xingtu-v2/author-convert-ability" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/author-convert-videos-or-products.md b/model-api-reference/platform-apis/douyin/xingtu-v2/author-convert-videos-or-products.md index 2287385b..da6daf49 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/author-convert-videos-or-products.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/author-convert-videos-or-products.md @@ -1,13 +1,13 @@ --- -title: "Get Author Convert Videos or Products API Reference" -description: "SandBase API operation douyin/xingtu-v2/author-convert-videos-or-products." +title: "Douyin Xingtu Creator Conversion Details API Reference" +description: "SandBase API reference for douyin/xingtu-v2/author-convert-videos-or-products. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/author-convert-videos-or-products" -apiReferenceJson: "{\"title\":\"Get Author Convert Videos or Products\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-convert-videos-or-products\",\"description\":\"Get creator conversion video/product details, with pagination Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"detail_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Detail type, 1=videos, 2=products, default 1\"},{\"name\":\"industry_id\",\"type\":\"integer\",\"required\":false,\"description\":\"Industry ID, 0=unlimited, default 0\"},{\"name\":\"o_author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator ID\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\"},{\"name\":\"platform_channel\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform channel, default 1\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"},{\"name\":\"time_range\",\"type\":\"integer\",\"required\":false,\"description\":\"Time range tier, default 2\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-convert-videos-or-products \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-convert-videos-or-products\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-convert-videos-or-products\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-convert-videos-or-products\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-convert-videos-or-products\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-convert-videos-or-products\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-convert-videos-or-products\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-convert-videos-or-products\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-convert-videos-or-products\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Creator Conversion Details\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-convert-videos-or-products\",\"description\":\"Returns conversion details for a creator's videos or associated products on Douyin Xingtu. Filter by creator ID, item type, time range tier, and industry category. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"detail_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Detail type, 1=videos, 2=products, default 1\"},{\"name\":\"industry_id\",\"type\":\"integer\",\"required\":false,\"description\":\"Industry ID, 0=unlimited, default 0\"},{\"name\":\"o_author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator ID\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\"},{\"name\":\"platform_channel\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform channel, default 1\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"},{\"name\":\"time_range\",\"type\":\"integer\",\"required\":false,\"description\":\"Time range tier, default 2\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-convert-videos-or-products \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-convert-videos-or-products\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-convert-videos-or-products\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-convert-videos-or-products\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-convert-videos-or-products\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-convert-videos-or-products\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-convert-videos-or-products\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-convert-videos-or-products\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-convert-videos-or-products\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Author Convert Videos or Products" + modelName: "Douyin Xingtu Creator Conversion Details" modelId: "douyin/xingtu-v2/author-convert-videos-or-products" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/author-cp-info.md b/model-api-reference/platform-apis/douyin/xingtu-v2/author-cp-info.md index 088cac07..ed57199c 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/author-cp-info.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/author-cp-info.md @@ -1,13 +1,13 @@ --- -title: "Get Author CP Info API Reference" -description: "SandBase API operation douyin/xingtu-v2/author-cp-info." +title: "Douyin Xingtu Author Cooperation Info API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/author-cp-info. Call /v1/api/douyin/xingtu-v2/author-cp-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/author-cp-info" -apiReferenceJson: "{\"title\":\"Get Author CP Info\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-cp-info\",\"description\":\"Get creator CP (cooperation) info Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"o_author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator ID\"},{\"name\":\"platform_channel\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform channel, default 1\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-cp-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-cp-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-cp-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-cp-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-cp-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-cp-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-cp-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-cp-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-cp-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Author Cooperation Info\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-cp-info\",\"description\":\"Returns Douyin Xingtu creator cooperation details for a specified author ID. Query profile and partnership data using creator IDs alongside optional platform channel filters. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"o_author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator ID\"},{\"name\":\"platform_channel\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform channel, default 1\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-cp-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-cp-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-cp-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-cp-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-cp-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-cp-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-cp-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-cp-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-cp-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Author CP Info" + modelName: "Douyin Xingtu Author Cooperation Info" modelId: "douyin/xingtu-v2/author-cp-info" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/author-daily-fans.md b/model-api-reference/platform-apis/douyin/xingtu-v2/author-daily-fans.md index 62b88002..90566581 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/author-daily-fans.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/author-daily-fans.md @@ -1,13 +1,13 @@ --- -title: "Get Author Daily Fans API Reference" -description: "SandBase API operation douyin/xingtu-v2/author-daily-fans." +title: "Douyin Author Daily Fan Trend API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/author-daily-fans. Call /v1/api/douyin/xingtu-v2/author-daily-fans; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/author-daily-fans" -apiReferenceJson: "{\"title\":\"Get Author Daily Fans\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-daily-fans\",\"description\":\"Get creator daily fans trend, with optional date range Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator ID\"},{\"name\":\"author_type\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Author type, optional\"},{\"name\":\"end_date\",\"type\":\"string | null\",\"required\":false,\"description\":\"End date, format YYYYMMDD, optional\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"},{\"name\":\"start_date\",\"type\":\"string | null\",\"required\":false,\"description\":\"Start date, format YYYYMMDD, optional\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-daily-fans \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"author_id\\\": \\\"author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"author_id\\\": \\\"author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-daily-fans\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"author_id\\\": \\\"author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-daily-fans\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-daily-fans\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-daily-fans\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-daily-fans\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-daily-fans\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-daily-fans\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-daily-fans\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Author Daily Fan Trend\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-daily-fans\",\"description\":\"Returns daily follower trend data for a specified Douyin creator. Supports filtering by date range, author type, and platform source. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator ID\"},{\"name\":\"author_type\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Author type, optional\"},{\"name\":\"end_date\",\"type\":\"string | null\",\"required\":false,\"description\":\"End date, format YYYYMMDD, optional\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"},{\"name\":\"start_date\",\"type\":\"string | null\",\"required\":false,\"description\":\"Start date, format YYYYMMDD, optional\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-daily-fans \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"author_id\\\": \\\"7146074596666507300\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"author_id\\\": \\\"7146074596666507300\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-daily-fans\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"author_id\\\": \\\"7146074596666507300\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-daily-fans\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-daily-fans\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-daily-fans\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-daily-fans\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-daily-fans\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-daily-fans\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-daily-fans\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Author Daily Fans" + modelName: "Douyin Author Daily Fan Trend" modelId: "douyin/xingtu-v2/author-daily-fans" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/author-fans-distribution.md b/model-api-reference/platform-apis/douyin/xingtu-v2/author-fans-distribution.md index 7b81f8e2..4dbb99da 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/author-fans-distribution.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/author-fans-distribution.md @@ -1,13 +1,13 @@ --- -title: "Get Author Fans Distribution API Reference" -description: "SandBase API operation douyin/xingtu-v2/author-fans-distribution." +title: "Douyin Xingtu Author Fan Distribution API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/author-fans-distribution. Call /v1/api/douyin/xingtu-v2/author-fans-distribution; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/author-fans-distribution" -apiReferenceJson: "{\"title\":\"Get Author Fans Distribution\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-fans-distribution\",\"description\":\"Get creator fans profile distribution (gender, age, region, interests, etc.) Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"o_author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator ID\"},{\"name\":\"platform_channel\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform channel, default 1\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-fans-distribution \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-fans-distribution\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-fans-distribution\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-fans-distribution\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-fans-distribution\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-fans-distribution\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-fans-distribution\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-fans-distribution\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-fans-distribution\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Author Fan Distribution\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-fans-distribution\",\"description\":\"Returns audience profile metrics for a Xingtu creator, including gender, age, geographic region, and interests based on creator ID. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"o_author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator ID\"},{\"name\":\"platform_channel\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform channel, default 1\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-fans-distribution \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-fans-distribution\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-fans-distribution\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-fans-distribution\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-fans-distribution\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-fans-distribution\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-fans-distribution\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-fans-distribution\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-fans-distribution\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Author Fans Distribution" + modelName: "Douyin Xingtu Author Fan Distribution" modelId: "douyin/xingtu-v2/author-fans-distribution" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/author-homepage-videos.md b/model-api-reference/platform-apis/douyin/xingtu-v2/author-homepage-videos.md index 46e7dca4..a6425836 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/author-homepage-videos.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/author-homepage-videos.md @@ -1,13 +1,13 @@ --- -title: "Get Author Homepage Videos API Reference" -description: "SandBase API operation douyin/xingtu-v2/author-homepage-videos." +title: "Douyin Xingtu Author Homepage Videos API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/author-homepage-videos. Call /v1/api/douyin/xingtu-v2/author-homepage-videos; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/author-homepage-videos" -apiReferenceJson: "{\"title\":\"Get Author Homepage Videos\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-homepage-videos\",\"description\":\"Get creator homepage video list with pagination, including interaction rate, finish rate and content theme labels per item Can filter by star(sponsored) items and publish time range Differs from `get_author_show_items`: paginated and filterable, returns total count Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_time\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Publish end time, unix seconds, optional\"},{\"name\":\"is_star_item\",\"type\":\"integer | null\",\"required\":false,\"description\":\"1=star items only, 0=non-star only, omit=all\"},{\"name\":\"o_author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator ID\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\"},{\"name\":\"start_time\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Publish start time, unix seconds, optional\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-homepage-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-homepage-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-homepage-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-homepage-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-homepage-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-homepage-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-homepage-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-homepage-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-homepage-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Author Homepage Videos\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-homepage-videos\",\"description\":\"Retrieves homepage video records for a specified Douyin Xingtu creator. Filters results by post time range, pagination, and star item status. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_time\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Publish end time, unix seconds, optional\"},{\"name\":\"is_star_item\",\"type\":\"integer | null\",\"required\":false,\"description\":\"1=star items only, 0=non-star only, omit=all\"},{\"name\":\"o_author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator ID\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\"},{\"name\":\"start_time\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Publish start time, unix seconds, optional\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-homepage-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-homepage-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-homepage-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-homepage-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-homepage-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-homepage-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-homepage-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-homepage-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-homepage-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Author Homepage Videos" + modelName: "Douyin Xingtu Author Homepage Videos" modelId: "douyin/xingtu-v2/author-homepage-videos" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/author-hot-comment-tokens.md b/model-api-reference/platform-apis/douyin/xingtu-v2/author-hot-comment-tokens.md index 56b711ed..bae5a39d 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/author-hot-comment-tokens.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/author-hot-comment-tokens.md @@ -1,13 +1,13 @@ --- -title: "Get Author Hot Comment Tokens API Reference" -description: "SandBase API operation douyin/xingtu-v2/author-hot-comment-tokens." +title: "Douyin Xingtu Author Hot Comment Tokens (Xingtu V2) API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/author-hot-comment-tokens. Call /v1/api/douyin/xingtu-v2/author-hot-comment-tokens; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/author-hot-comment-tokens" -apiReferenceJson: "{\"title\":\"Get Author Hot Comment Tokens\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-hot-comment-tokens\",\"description\":\"Get creator/author hot comment tokens/keywords Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator/author ID\"},{\"name\":\"num\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of hot tokens, default 10\"},{\"name\":\"without_emoji\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to exclude emoji, default True\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-hot-comment-tokens \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"author_id\\\": \\\"author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"author_id\\\": \\\"author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-hot-comment-tokens\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"author_id\\\": \\\"author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-hot-comment-tokens\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-hot-comment-tokens\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-hot-comment-tokens\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-hot-comment-tokens\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-hot-comment-tokens\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-hot-comment-tokens\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-hot-comment-tokens\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Author Hot Comment Tokens (Xingtu V2)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-hot-comment-tokens\",\"description\":\"Returns trending comment tokens and keywords for a Douyin creator. Queries metrics by author ID with options to exclude emojis and adjust token count. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator/author ID\"},{\"name\":\"num\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of hot tokens, default 10\"},{\"name\":\"without_emoji\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to exclude emoji, default True\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-hot-comment-tokens \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"author_id\\\": \\\"7146074596666507300\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"author_id\\\": \\\"7146074596666507300\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-hot-comment-tokens\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"author_id\\\": \\\"7146074596666507300\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-hot-comment-tokens\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-hot-comment-tokens\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-hot-comment-tokens\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-hot-comment-tokens\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-hot-comment-tokens\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-hot-comment-tokens\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-hot-comment-tokens\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Author Hot Comment Tokens" + modelName: "Douyin Xingtu Author Hot Comment Tokens (Xingtu V2)" modelId: "douyin/xingtu-v2/author-hot-comment-tokens" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/author-link-info.md b/model-api-reference/platform-apis/douyin/xingtu-v2/author-link-info.md index 6b5097c0..6fddc982 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/author-link-info.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/author-link-info.md @@ -1,13 +1,13 @@ --- -title: "Get Author Link Info API Reference" -description: "SandBase API operation douyin/xingtu-v2/author-link-info." +title: "Douyin Xingtu Creator Link Indices API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/author-link-info. Call /v1/api/douyin/xingtu-v2/author-link-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/author-link-info" -apiReferenceJson: "{\"title\":\"Get Author Link Info\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-link-info\",\"description\":\"Get creator Xingtu link indices (cooperation / CP / conversion / shopping index) Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"industy_tag\",\"type\":\"integer\",\"required\":false,\"description\":\"Industry tag, 0=unlimited, default 0\"},{\"name\":\"o_author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator ID\"},{\"name\":\"platform_channel\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform channel, default 1\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-link-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-link-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-link-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-link-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-link-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-link-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-link-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-link-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-link-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Creator Link Indices\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-link-info\",\"description\":\"Returns Xingtu link indices for a Douyin creator, including cooperation, CP, conversion, and shopping indices filtered by industry tag. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"industy_tag\",\"type\":\"integer\",\"required\":false,\"description\":\"Industry tag, 0=unlimited, default 0\"},{\"name\":\"o_author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator ID\"},{\"name\":\"platform_channel\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform channel, default 1\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-link-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-link-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-link-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-link-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-link-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-link-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-link-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-link-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-link-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Author Link Info" + modelName: "Douyin Xingtu Creator Link Indices" modelId: "douyin/xingtu-v2/author-link-info" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/author-local-info.md b/model-api-reference/platform-apis/douyin/xingtu-v2/author-local-info.md index 0aeb31b5..a1461227 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/author-local-info.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/author-local-info.md @@ -1,13 +1,13 @@ --- -title: "Get Author Local Info API Reference" -description: "SandBase API operation douyin/xingtu-v2/author-local-info." +title: "Douyin Xingtu Author Location Info API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/author-local-info. Call /v1/api/douyin/xingtu-v2/author-local-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/author-local-info" -apiReferenceJson: "{\"title\":\"Get Author Local Info\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-local-info\",\"description\":\"Get creator/author location information Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"o_author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator/author ID\"},{\"name\":\"platform_channel\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform channel, default 1\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"},{\"name\":\"time_range\",\"type\":\"integer\",\"required\":false,\"description\":\"Time range in days, default 30\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-local-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-local-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-local-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-local-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-local-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-local-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-local-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-local-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-local-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Author Location Info\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-local-info\",\"description\":\"Returns location details for a Douyin Xingtu creator using their author ID, with optional filters for time range and platform settings. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"o_author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator/author ID\"},{\"name\":\"platform_channel\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform channel, default 1\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"},{\"name\":\"time_range\",\"type\":\"integer\",\"required\":false,\"description\":\"Time range in days, default 30\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-local-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-local-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-local-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-local-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-local-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-local-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-local-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-local-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-local-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Author Local Info" + modelName: "Douyin Xingtu Author Location Info" modelId: "douyin/xingtu-v2/author-local-info" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/author-market-fields.md b/model-api-reference/platform-apis/douyin/xingtu-v2/author-market-fields.md index cea6d38f..23520323 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/author-market-fields.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/author-market-fields.md @@ -1,13 +1,13 @@ --- -title: "Get Author Market Fields API Reference" -description: "SandBase API operation douyin/xingtu-v2/author-market-fields." +title: "Douyin Author Market Fields API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/author-market-fields. Call /v1/api/douyin/xingtu-v2/author-market-fields; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/author-market-fields" -apiReferenceJson: "{\"title\":\"Get Author Market Fields\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-market-fields\",\"description\":\"Get all filter field options for the creator marketplace Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"market_scene\",\"type\":\"integer\",\"required\":false,\"description\":\"Market scene, 1=default\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-market-fields \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-market-fields\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-market-fields\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-market-fields\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-market-fields\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-market-fields\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-market-fields\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-market-fields\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-market-fields\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-market-fields\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-market-fields\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-market-fields\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Author Market Fields\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-market-fields\",\"description\":\"Returns all filter field options available within the Douyin creator marketplace. Accepts an optional marketplace scene identifier to tailor field choices. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"market_scene\",\"type\":\"integer\",\"required\":false,\"description\":\"Market scene, 1=default\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-market-fields \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-market-fields\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-market-fields\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-market-fields\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-market-fields\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-market-fields\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-market-fields\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-market-fields\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-market-fields\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Author Market Fields" + modelName: "Douyin Author Market Fields" modelId: "douyin/xingtu-v2/author-market-fields" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/author-show-items.md b/model-api-reference/platform-apis/douyin/xingtu-v2/author-show-items.md index 3b9c335d..b69d16b7 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/author-show-items.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/author-show-items.md @@ -1,13 +1,13 @@ --- -title: "Get Author Show Items API Reference" -description: "SandBase API operation douyin/xingtu-v2/author-show-items." +title: "Douyin Xingtu Author Show Items API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/author-show-items. Call /v1/api/douyin/xingtu-v2/author-show-items; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/author-show-items" -apiReferenceJson: "{\"title\":\"Get Author Show Items\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-show-items\",\"description\":\"Get creator/author video list Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"flow_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Flow type, default 0\"},{\"name\":\"o_author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator/author ID\"},{\"name\":\"only_assign\",\"type\":\"boolean\",\"required\":false,\"description\":\"Only show assigned videos (only for XingTu videos), default False\"},{\"name\":\"platform_channel\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform channel, default 1\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-show-items \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-show-items\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-show-items\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-show-items\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-show-items\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-show-items\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-show-items\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-show-items\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-show-items\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Author Show Items\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-show-items\",\"description\":\"Returns a video list for a specified Douyin Xingtu author. Filter results by author ID via o_author_id, flow type, platform source, or restrict results to assigned Xingtu videos. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"flow_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Flow type, default 0\"},{\"name\":\"o_author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator/author ID\"},{\"name\":\"only_assign\",\"type\":\"boolean\",\"required\":false,\"description\":\"Only show assigned videos (only for XingTu videos), default False\"},{\"name\":\"platform_channel\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform channel, default 1\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-show-items \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-show-items\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-show-items\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-show-items\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-show-items\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-show-items\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-show-items\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-show-items\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-show-items\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Author Show Items" + modelName: "Douyin Xingtu Author Show Items" modelId: "douyin/xingtu-v2/author-show-items" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/author-spread-info.md b/model-api-reference/platform-apis/douyin/xingtu-v2/author-spread-info.md index 06b14366..60b88fb9 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/author-spread-info.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/author-spread-info.md @@ -1,13 +1,13 @@ --- -title: "Get Author Spread Info API Reference" -description: "SandBase API operation douyin/xingtu-v2/author-spread-info." +title: "Douyin Xingtu Author Spread Info API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/author-spread-info. Call /v1/api/douyin/xingtu-v2/author-spread-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/author-spread-info" -apiReferenceJson: "{\"title\":\"Get Author Spread Info\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-spread-info\",\"description\":\"Get creator/author spread value information (commercial capability) Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"flow_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Flow type, default 0\"},{\"name\":\"o_author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator/author ID\"},{\"name\":\"only_assign\",\"type\":\"boolean\",\"required\":false,\"description\":\"Only assigned videos, default False\"},{\"name\":\"platform_channel\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform channel, default 1\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"},{\"name\":\"range\",\"type\":\"integer\",\"required\":false,\"description\":\"Time range, 2=last 30 days, 3=last 90 days\"},{\"name\":\"type\",\"type\":\"integer\",\"required\":false,\"description\":\"Video type, 1=personal video\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-spread-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-spread-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-spread-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-spread-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-spread-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-spread-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-spread-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-spread-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-spread-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Author Spread Info\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-spread-info\",\"description\":\"Retrieves commercial spread and reach capability data for a specific creator. Accepts filtering by time range, video type, flow type, and assignment status. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"flow_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Flow type, default 0\"},{\"name\":\"o_author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator/author ID\"},{\"name\":\"only_assign\",\"type\":\"boolean\",\"required\":false,\"description\":\"Only assigned videos, default False\"},{\"name\":\"platform_channel\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform channel, default 1\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"},{\"name\":\"range\",\"type\":\"integer\",\"required\":false,\"description\":\"Time range, 2=last 30 days, 3=last 90 days\"},{\"name\":\"type\",\"type\":\"integer\",\"required\":false,\"description\":\"Video type, 1=personal video\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-spread-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-spread-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-spread-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-spread-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-spread-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-spread-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-spread-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-spread-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-spread-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Author Spread Info" + modelName: "Douyin Xingtu Author Spread Info" modelId: "douyin/xingtu-v2/author-spread-info" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/author-touch-distribution.md b/model-api-reference/platform-apis/douyin/xingtu-v2/author-touch-distribution.md deleted file mode 100644 index 6b9f965c..00000000 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/author-touch-distribution.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get Author Touch Distribution API Reference" -description: "SandBase API operation douyin/xingtu-v2/author-touch-distribution." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/xingtu-v2/author-touch-distribution" -apiReferenceJson: "{\"title\":\"Get Author Touch Distribution\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/author-touch-distribution\",\"description\":\"Get creator video touch (reach) distribution data Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"o_author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator ID\"},{\"name\":\"platform_channel\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform channel, default 1\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-touch-distribution \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-touch-distribution\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"o_author_id\\\": \\\"o_author_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/author-touch-distribution\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-touch-distribution\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-touch-distribution\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-touch-distribution\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-touch-distribution\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/author-touch-distribution\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/author-touch-distribution\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get Author Touch Distribution" - modelId: "douyin/xingtu-v2/author-touch-distribution" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "xingtu-v2/author-touch-distribution" - protocol: "API Reference" - endpoint: "/v1/api/douyin/xingtu-v2/author-touch-distribution" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/content-trend-guide.md b/model-api-reference/platform-apis/douyin/xingtu-v2/content-trend-guide.md index 80253c30..79f5575c 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/content-trend-guide.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/content-trend-guide.md @@ -1,13 +1,13 @@ --- -title: "Get Content Trend Guide API Reference" -description: "SandBase API operation douyin/xingtu-v2/content-trend-guide." +title: "Douyin Xingtu Content Trend Guide API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/content-trend-guide. Call /v1/api/douyin/xingtu-v2/content-trend-guide; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/content-trend-guide" -apiReferenceJson: "{\"title\":\"Get Content Trend Guide\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/content-trend-guide\",\"description\":\"Get content trend guide data (CDN static JSON, no cookie needed) Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/content-trend-guide \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/xingtu-v2/content-trend-guide\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/xingtu-v2/content-trend-guide\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/content-trend-guide\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/xingtu-v2/content-trend-guide\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/content-trend-guide\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/content-trend-guide\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/content-trend-guide\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/content-trend-guide\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/content-trend-guide\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/content-trend-guide\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/content-trend-guide\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Content Trend Guide\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/content-trend-guide\",\"description\":\"Returns content trend guide data from Douyin Xingtu via static CDN JSON. Provides insights into trending content directions without requiring session cookies. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/content-trend-guide \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/content-trend-guide\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/content-trend-guide\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/content-trend-guide\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/content-trend-guide\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/content-trend-guide\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/content-trend-guide\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/content-trend-guide\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/content-trend-guide\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Content Trend Guide" + modelName: "Douyin Xingtu Content Trend Guide" modelId: "douyin/xingtu-v2/content-trend-guide" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/demander-mcn-list.md b/model-api-reference/platform-apis/douyin/xingtu-v2/demander-mcn-list.md index 0f943e9d..10b141a5 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/demander-mcn-list.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/demander-mcn-list.md @@ -1,13 +1,13 @@ --- -title: "Get Demander MCN List API Reference" -description: "SandBase API operation douyin/xingtu-v2/demander-mcn-list." +title: "Douyin Xingtu Demander MCN List API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/demander-mcn-list. Call /v1/api/douyin/xingtu-v2/demander-mcn-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/demander-mcn-list" -apiReferenceJson: "{\"title\":\"Get Demander MCN List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/demander-mcn-list\",\"description\":\"Search MCN organization list Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"mcn_name\",\"type\":\"string\",\"required\":false,\"description\":\"MCN name, supports fuzzy search\",\"default\":\"\\\"\\\"\"},{\"name\":\"order_by\",\"type\":\"string\",\"required\":false,\"description\":\"Sort by, `platform_scores`=platform scores\",\"default\":\"platform_scores\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/demander-mcn-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/xingtu-v2/demander-mcn-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/xingtu-v2/demander-mcn-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/demander-mcn-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/xingtu-v2/demander-mcn-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/demander-mcn-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/demander-mcn-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/demander-mcn-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/demander-mcn-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/demander-mcn-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/demander-mcn-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/demander-mcn-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Demander MCN List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/demander-mcn-list\",\"description\":\"Returns a directory of MCN organizations on Douyin Xingtu with creator counts and performance scores, filterable by name and sorted by platform scores. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"mcn_name\",\"type\":\"string\",\"required\":false,\"description\":\"MCN name, supports fuzzy search\",\"default\":\"\\\"\\\"\"},{\"name\":\"order_by\",\"type\":\"string\",\"required\":false,\"description\":\"Sort by, `platform_scores`=platform scores\",\"default\":\"platform_scores\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/demander-mcn-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/demander-mcn-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/demander-mcn-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/demander-mcn-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/demander-mcn-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/demander-mcn-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/demander-mcn-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/demander-mcn-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/demander-mcn-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Demander MCN List" + modelName: "Douyin Xingtu Demander MCN List" modelId: "douyin/xingtu-v2/demander-mcn-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/excellent-case-category-list.md b/model-api-reference/platform-apis/douyin/xingtu-v2/excellent-case-category-list.md deleted file mode 100644 index 88588543..00000000 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/excellent-case-category-list.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get Excellent Case Category List API Reference" -description: "SandBase API operation douyin/xingtu-v2/excellent-case-category-list." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/xingtu-v2/excellent-case-category-list" -apiReferenceJson: "{\"title\":\"Get Excellent Case Category List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/excellent-case-category-list\",\"description\":\"Get the excellent case category list in the user connection funnel Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/excellent-case-category-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/xingtu-v2/excellent-case-category-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/xingtu-v2/excellent-case-category-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/excellent-case-category-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/xingtu-v2/excellent-case-category-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/excellent-case-category-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/excellent-case-category-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/excellent-case-category-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/excellent-case-category-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/excellent-case-category-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/excellent-case-category-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/excellent-case-category-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get Excellent Case Category List" - modelId: "douyin/xingtu-v2/excellent-case-category-list" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "xingtu-v2/excellent-case-category-list" - protocol: "API Reference" - endpoint: "/v1/api/douyin/xingtu-v2/excellent-case-category-list" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/ip-activity-detail.md b/model-api-reference/platform-apis/douyin/xingtu-v2/ip-activity-detail.md index 09249b57..ee0fcb07 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/ip-activity-detail.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/ip-activity-detail.md @@ -1,13 +1,13 @@ --- -title: "Get IP Activity Detail API Reference" -description: "SandBase API operation douyin/xingtu-v2/ip-activity-detail." +title: "Douyin Xingtu IP Activity Detail API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/ip-activity-detail. Call /v1/api/douyin/xingtu-v2/ip-activity-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/ip-activity-detail" -apiReferenceJson: "{\"title\":\"Get IP Activity Detail\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/ip-activity-detail\",\"description\":\"Get XingTu IP calendar activity detail Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"id\",\"type\":\"integer\",\"required\":true,\"description\":\"Activity ID, from `get_ip_activity_list`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ip-activity-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"id\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"id\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ip-activity-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"id\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ip-activity-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/ip-activity-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu IP Activity Detail\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/ip-activity-detail\",\"description\":\"Returns detailed information for a specific Xingtu IP calendar activity on Douyin. Queries activity data using the unique activity identifier. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"id\",\"type\":\"integer\",\"required\":true,\"description\":\"Activity ID, from `get_ip_activity_list`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ip-activity-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"id\\\": 1224\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"id\\\": 1224\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ip-activity-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"id\\\": 1224\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ip-activity-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/ip-activity-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get IP Activity Detail" + modelName: "Douyin Xingtu IP Activity Detail" modelId: "douyin/xingtu-v2/ip-activity-detail" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/ip-activity-industry-list.md b/model-api-reference/platform-apis/douyin/xingtu-v2/ip-activity-industry-list.md index 93e20a88..fa3c50bc 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/ip-activity-industry-list.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/ip-activity-industry-list.md @@ -1,13 +1,13 @@ --- -title: "Get IP Activity Industry List API Reference" -description: "SandBase API operation douyin/xingtu-v2/ip-activity-industry-list." +title: "Douyin Xingtu IP Activity Industry List API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/ip-activity-industry-list. Call /v1/api/douyin/xingtu-v2/ip-activity-industry-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/ip-activity-industry-list" -apiReferenceJson: "{\"title\":\"Get IP Activity Industry List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/ip-activity-industry-list\",\"description\":\"Get the industry list for XingTu IP calendar Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ip-activity-industry-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/xingtu-v2/ip-activity-industry-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/xingtu-v2/ip-activity-industry-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ip-activity-industry-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/xingtu-v2/ip-activity-industry-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ip-activity-industry-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-industry-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-industry-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-industry-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-industry-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-industry-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/ip-activity-industry-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu IP Activity Industry List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/ip-activity-industry-list\",\"description\":\"Returns the list of supported industries for the Xingtu IP calendar on Douyin. Use this reference data to filter and categorize upcoming IP activities. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ip-activity-industry-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ip-activity-industry-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ip-activity-industry-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-industry-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-industry-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-industry-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-industry-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-industry-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/ip-activity-industry-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get IP Activity Industry List" + modelName: "Douyin Xingtu IP Activity Industry List" modelId: "douyin/xingtu-v2/ip-activity-industry-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/ip-activity-list.md b/model-api-reference/platform-apis/douyin/xingtu-v2/ip-activity-list.md index 863d9958..aa6f5c36 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/ip-activity-list.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/ip-activity-list.md @@ -1,13 +1,13 @@ --- -title: "Get IP Activity List API Reference" -description: "SandBase API operation douyin/xingtu-v2/ip-activity-list." +title: "Douyin Xingtu IP Activity List API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/ip-activity-list. Call /v1/api/douyin/xingtu-v2/ip-activity-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/ip-activity-list" -apiReferenceJson: "{\"title\":\"Get IP Activity List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/ip-activity-list\",\"description\":\"Get XingTu IP calendar activity list Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"category_list\",\"type\":\"array | null\",\"required\":false,\"description\":\"IP category list\"},{\"name\":\"industry_id_list\",\"type\":\"array | null\",\"required\":false,\"description\":\"Industry ID list\"},{\"name\":\"query_end_time\",\"type\":\"string\",\"required\":true,\"description\":\"Query end timestamp, e.g. `1774972799`\"},{\"name\":\"query_start_time\",\"type\":\"string\",\"required\":true,\"description\":\"Query start timestamp, e.g. `1767196800`\"},{\"name\":\"status_list\",\"type\":\"array | null\",\"required\":false,\"description\":\"IP status list\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ip-activity-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query_end_time\\\": \\\"1774972799\\\",\\n \\\"query_start_time\\\": \\\"1767196800\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query_end_time\\\": \\\"1774972799\\\",\\n \\\"query_start_time\\\": \\\"1767196800\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ip-activity-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query_end_time\\\": \\\"1774972799\\\",\\n \\\"query_start_time\\\": \\\"1767196800\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ip-activity-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/ip-activity-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu IP Activity List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/ip-activity-list\",\"description\":\"Returns Xingtu IP calendar activities across designated time windows, with optional filters for activity status, categories, and industries. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"category_list\",\"type\":\"array | null\",\"required\":false,\"description\":\"IP category list\"},{\"name\":\"industry_id_list\",\"type\":\"array | null\",\"required\":false,\"description\":\"Industry ID list\"},{\"name\":\"query_end_time\",\"type\":\"string\",\"required\":true,\"description\":\"Query end timestamp, e.g. `1774972799`\"},{\"name\":\"query_start_time\",\"type\":\"string\",\"required\":true,\"description\":\"Query start timestamp, e.g. `1767196800`\"},{\"name\":\"status_list\",\"type\":\"array | null\",\"required\":false,\"description\":\"IP status list\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ip-activity-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query_end_time\\\": \\\"1774972799\\\",\\n \\\"query_start_time\\\": \\\"1767196800\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query_end_time\\\": \\\"1774972799\\\",\\n \\\"query_start_time\\\": \\\"1767196800\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ip-activity-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query_end_time\\\": \\\"1774972799\\\",\\n \\\"query_start_time\\\": \\\"1767196800\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ip-activity-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ip-activity-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/ip-activity-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get IP Activity List" + modelName: "Douyin Xingtu IP Activity List" modelId: "douyin/xingtu-v2/ip-activity-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/item-play-count.md b/model-api-reference/platform-apis/douyin/xingtu-v2/item-play-count.md index 8917b81b..903b7392 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/item-play-count.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/item-play-count.md @@ -1,13 +1,13 @@ --- -title: "Get Item Play Count API Reference" -description: "SandBase API operation douyin/xingtu-v2/item-play-count." +title: "Douyin Video Play Count API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/item-play-count. Call /v1/api/douyin/xingtu-v2/item-play-count; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/item-play-count" -apiReferenceJson: "{\"title\":\"Get Item Play Count\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/item-play-count\",\"description\":\"Get play count (watch_cnt) and full details of a single video (item); play count is surfaced at the top level for convenience Note: watch_cnt is the total play count INCLUDING paid promotion (ad boost), returned with video details; for organic (non-promoted) play count, use Douyin App V3 `/api/v1/douyin/app/v3/fetch_video_statistics` Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video (item) ID\"},{\"name\":\"need_cover_url\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to return cover URL, default true\",\"default\":\"true\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/item-play-count \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"item_id\\\": \\\"7630036460159111515\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"item_id\\\": \\\"7630036460159111515\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/item-play-count\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"item_id\\\": \\\"7630036460159111515\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/item-play-count\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/item-play-count\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/item-play-count\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/item-play-count\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/item-play-count\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/item-play-count\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/item-play-count\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Video Play Count\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/item-play-count\",\"description\":\"Get the play count (watch_cnt) of a Douyin video from XingTu, plus video details such as author, cover, duration and publish time. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video (item) ID\"},{\"name\":\"need_cover_url\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to return cover URL, default true\",\"default\":\"true\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/item-play-count \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"item_id\\\": \\\"7630036460159111515\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"item_id\\\": \\\"7630036460159111515\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/item-play-count\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"item_id\\\": \\\"7630036460159111515\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/item-play-count\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/item-play-count\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/item-play-count\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/item-play-count\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/item-play-count\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/item-play-count\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/item-play-count\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Item Play Count" + modelName: "Douyin Video Play Count" modelId: "douyin/xingtu-v2/item-play-count" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/multi-get-author-info.md b/model-api-reference/platform-apis/douyin/xingtu-v2/multi-get-author-info.md index f7d1978c..61429bc7 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/multi-get-author-info.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/multi-get-author-info.md @@ -1,13 +1,13 @@ --- -title: "Multi Get Author Info API Reference" -description: "SandBase API operation douyin/xingtu-v2/multi-get-author-info." +title: "Douyin Xingtu Batch Author Details API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/multi-get-author-info. Call /v1/api/douyin/xingtu-v2/multi-get-author-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/multi-get-author-info" -apiReferenceJson: "{\"title\":\"Multi Get Author Info\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/multi-get-author-info\",\"description\":\"Get info for multiple creators in one call, saving request quota Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"author_ids\",\"type\":\"array\",\"required\":true,\"description\":\"Creator ID list, up to 50 per call (exceeding returns an error)\"},{\"name\":\"platform_channel\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform channel, default 1\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/multi-get-author-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"author_ids\\\": [\\n \\\"author_ids_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"author_ids\\\": [\\n \\\"author_ids_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/multi-get-author-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"author_ids\\\": [\\n \\\"author_ids_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/multi-get-author-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/multi-get-author-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/multi-get-author-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/multi-get-author-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/multi-get-author-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/multi-get-author-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/multi-get-author-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Batch Author Details\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/multi-get-author-info\",\"description\":\"Returns Xingtu creator profile information for multiple creator accounts in a single request. It takes a list of creator IDs along with optional platform source and channel options. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"author_ids\",\"type\":\"array\",\"required\":true,\"description\":\"Creator ID list, up to 50 per call (exceeding returns an error)\"},{\"name\":\"platform_channel\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform channel, default 1\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/multi-get-author-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"author_ids\\\": [\\n \\\"author_ids_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"author_ids\\\": [\\n \\\"author_ids_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/multi-get-author-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"author_ids\\\": [\\n \\\"author_ids_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/multi-get-author-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/multi-get-author-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/multi-get-author-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/multi-get-author-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/multi-get-author-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/multi-get-author-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/multi-get-author-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Multi Get Author Info" + modelName: "Douyin Xingtu Batch Author Details" modelId: "douyin/xingtu-v2/multi-get-author-info" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/multi-get-item-stats.md b/model-api-reference/platform-apis/douyin/xingtu-v2/multi-get-item-stats.md index 922060c9..6e33d4a2 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/multi-get-item-stats.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/multi-get-item-stats.md @@ -1,13 +1,13 @@ --- -title: "Multi Get Item Stats API Reference" -description: "SandBase API operation douyin/xingtu-v2/multi-get-item-stats." +title: "Douyin Xingtu Batch Video Stats API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/multi-get-item-stats. Call /v1/api/douyin/xingtu-v2/multi-get-item-stats; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/multi-get-item-stats" -apiReferenceJson: "{\"title\":\"Multi Get Item Stats\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/multi-get-item-stats\",\"description\":\"Batch get play count and details for multiple videos (items), up to 20 per call Each item has stats (watch_cnt/like_cnt/comment_cnt/share_cnt/favorite_cnt/ interact_rate/avg_watch_dura) and video details Note: watch_cnt is the total play count INCLUDING paid promotion (ad boost), with video details; for organic (non-promoted) play count, use Douyin App V3 `/api/v1/douyin/app/v3/fetch_multi_video_statistics` Upstream bills as 20 regardless (fewer than 20 still counts as 20); fill 20 for best value Price: 0.04$ / time (= 20 × single 0.002)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"item_ids\",\"type\":\"array\",\"required\":true,\"description\":\"Video (item) ID list, up to 20 per call (exceeding returns an error); auto de-dup\"},{\"name\":\"need_cover_url\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to return cover URL, default true\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/multi-get-item-stats \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"item_ids\\\": [\\n \\\"item_ids_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"item_ids\\\": [\\n \\\"item_ids_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/multi-get-item-stats\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"item_ids\\\": [\\n \\\"item_ids_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/multi-get-item-stats\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/multi-get-item-stats\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/multi-get-item-stats\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/multi-get-item-stats\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/multi-get-item-stats\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/multi-get-item-stats\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/multi-get-item-stats\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Batch Video Stats\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/multi-get-item-stats\",\"description\":\"Returns batch performance statistics and details for up to 20 videos, including play counts, engagement metrics, and watch durations. Upstream bills as 20 regardless (fewer than 20 still counts as 20); fill 20 for best value. Price: 0.04$ / time (= 20 × single 0.002)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"item_ids\",\"type\":\"array\",\"required\":true,\"description\":\"Video (item) ID list, up to 20 per call (exceeding returns an error); auto de-dup\"},{\"name\":\"need_cover_url\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to return cover URL, default true\"},{\"name\":\"platform_source\",\"type\":\"integer\",\"required\":false,\"description\":\"Platform source, default 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/multi-get-item-stats \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"item_ids\\\": [\\n \\\"item_ids_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"item_ids\\\": [\\n \\\"item_ids_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/multi-get-item-stats\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"item_ids\\\": [\\n \\\"item_ids_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/multi-get-item-stats\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/multi-get-item-stats\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/multi-get-item-stats\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/multi-get-item-stats\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/multi-get-item-stats\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/multi-get-item-stats\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/multi-get-item-stats\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Multi Get Item Stats" + modelName: "Douyin Xingtu Batch Video Stats" modelId: "douyin/xingtu-v2/multi-get-item-stats" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/playlet-actor-rank-catalog.md b/model-api-reference/platform-apis/douyin/xingtu-v2/playlet-actor-rank-catalog.md index 57b7931b..b0833d76 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/playlet-actor-rank-catalog.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/playlet-actor-rank-catalog.md @@ -1,13 +1,13 @@ --- -title: "Get Playlet Actor Rank Catalog API Reference" -description: "SandBase API operation douyin/xingtu-v2/playlet-actor-rank-catalog." +title: "Douyin Xingtu Playlet Actor Rank Catalog API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/playlet-actor-rank-catalog. Call /v1/api/douyin/xingtu-v2/playlet-actor-rank-catalog; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/playlet-actor-rank-catalog" -apiReferenceJson: "{\"title\":\"Get Playlet Actor Rank Catalog\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/playlet-actor-rank-catalog\",\"description\":\"Get XingTu playlet actor ranking catalog Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/playlet-actor-rank-catalog \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/xingtu-v2/playlet-actor-rank-catalog\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/xingtu-v2/playlet-actor-rank-catalog\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/playlet-actor-rank-catalog\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/xingtu-v2/playlet-actor-rank-catalog\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/playlet-actor-rank-catalog\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/playlet-actor-rank-catalog\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/playlet-actor-rank-catalog\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/playlet-actor-rank-catalog\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/playlet-actor-rank-catalog\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/playlet-actor-rank-catalog\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/playlet-actor-rank-catalog\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Playlet Actor Rank Catalog\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/playlet-actor-rank-catalog\",\"description\":\"Returns the ranking catalog options for Douyin Xingtu playlet actors. Use this endpoint to inspect available categories and ranking classifications. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/playlet-actor-rank-catalog \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/playlet-actor-rank-catalog\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/playlet-actor-rank-catalog\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/playlet-actor-rank-catalog\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/playlet-actor-rank-catalog\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/playlet-actor-rank-catalog\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/playlet-actor-rank-catalog\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/playlet-actor-rank-catalog\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/playlet-actor-rank-catalog\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Playlet Actor Rank Catalog" + modelName: "Douyin Xingtu Playlet Actor Rank Catalog" modelId: "douyin/xingtu-v2/playlet-actor-rank-catalog" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/playlet-actor-rank-list.md b/model-api-reference/platform-apis/douyin/xingtu-v2/playlet-actor-rank-list.md index 758cc2f1..fcb1c8d3 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/playlet-actor-rank-list.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/playlet-actor-rank-list.md @@ -1,13 +1,13 @@ --- -title: "Get Playlet Actor Rank List API Reference" -description: "SandBase API operation douyin/xingtu-v2/playlet-actor-rank-list." +title: "Douyin Xingtu Playlet Actor Ranking List API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/playlet-actor-rank-list. Call /v1/api/douyin/xingtu-v2/playlet-actor-rank-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/playlet-actor-rank-list" -apiReferenceJson: "{\"title\":\"Get Playlet Actor Rank List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/playlet-actor-rank-list\",\"description\":\"Get XingTu playlet actor ranking list data Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"category\",\"type\":\"string\",\"required\":false,\"description\":\"Category, default `playlet_actor_list`\",\"default\":\"playlet_actor_list\"},{\"name\":\"date\",\"type\":\"string\",\"required\":false,\"description\":\"Date, format YYYYMMDD\",\"default\":\"20251130\"},{\"name\":\"name\",\"type\":\"string\",\"required\":false,\"description\":\"Ranking name, `playlet_actor_composite_list`=composite list\",\"default\":\"playlet_actor_composite_list\"},{\"name\":\"period\",\"type\":\"integer\",\"required\":false,\"description\":\"7=weekly, 30=monthly\",\"default\":\"30\"},{\"name\":\"qualifier\",\"type\":\"string\",\"required\":false,\"description\":\"Actor type, empty=all\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/playlet-actor-rank-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/xingtu-v2/playlet-actor-rank-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/xingtu-v2/playlet-actor-rank-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/playlet-actor-rank-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/xingtu-v2/playlet-actor-rank-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/playlet-actor-rank-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/playlet-actor-rank-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/playlet-actor-rank-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/playlet-actor-rank-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/playlet-actor-rank-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/playlet-actor-rank-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/playlet-actor-rank-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Playlet Actor Ranking List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/playlet-actor-rank-list\",\"description\":\"Returns Xingtu ranking lists for Douyin playlet actors based on specified dates and evaluation periods. Filter rankings by actor category and ranking types. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"category\",\"type\":\"string\",\"required\":false,\"description\":\"Category, default `playlet_actor_list`\",\"default\":\"playlet_actor_list\"},{\"name\":\"date\",\"type\":\"string\",\"required\":false,\"description\":\"Date, format YYYYMMDD\",\"default\":\"20251130\"},{\"name\":\"name\",\"type\":\"string\",\"required\":false,\"description\":\"Ranking name, `playlet_actor_composite_list`=composite list\",\"default\":\"playlet_actor_composite_list\"},{\"name\":\"period\",\"type\":\"integer\",\"required\":false,\"description\":\"7=weekly, 30=monthly\",\"default\":\"30\"},{\"name\":\"qualifier\",\"type\":\"string\",\"required\":false,\"description\":\"Actor type, empty=all\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/playlet-actor-rank-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/playlet-actor-rank-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/playlet-actor-rank-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/playlet-actor-rank-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/playlet-actor-rank-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/playlet-actor-rank-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/playlet-actor-rank-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/playlet-actor-rank-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/playlet-actor-rank-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Playlet Actor Rank List" + modelName: "Douyin Xingtu Playlet Actor Ranking List" modelId: "douyin/xingtu-v2/playlet-actor-rank-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/ranking-list-catalog.md b/model-api-reference/platform-apis/douyin/xingtu-v2/ranking-list-catalog.md index 9b309836..06e86858 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/ranking-list-catalog.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/ranking-list-catalog.md @@ -1,13 +1,13 @@ --- -title: "Get Ranking List Catalog API Reference" -description: "SandBase API operation douyin/xingtu-v2/ranking-list-catalog." +title: "Douyin Xingtu Ranking List Catalog API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/ranking-list-catalog. Call /v1/api/douyin/xingtu-v2/ranking-list-catalog; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/ranking-list-catalog" -apiReferenceJson: "{\"title\":\"Get Ranking List Catalog\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/ranking-list-catalog\",\"description\":\"Get XingTu hot ranking list catalog, returns qualifier_id and other category information Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"biz_scene\",\"type\":\"string\",\"required\":false,\"description\":\"Business scene\",\"default\":\"douyin_flow_split_video_author_ranks\"},{\"name\":\"codes\",\"type\":\"string\",\"required\":false,\"description\":\"Classification codes, default is empty string\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ranking-list-catalog \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/xingtu-v2/ranking-list-catalog\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/xingtu-v2/ranking-list-catalog\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ranking-list-catalog\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/xingtu-v2/ranking-list-catalog\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ranking-list-catalog\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ranking-list-catalog\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ranking-list-catalog\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ranking-list-catalog\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ranking-list-catalog\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ranking-list-catalog\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/ranking-list-catalog\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Ranking List Catalog\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/ranking-list-catalog\",\"description\":\"Returns the ranking list catalog from Douyin Xingtu, including available leaderboard dates and qualifiers. Accepts optional business scene and classification code filters. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"biz_scene\",\"type\":\"string\",\"required\":false,\"description\":\"Business scene\",\"default\":\"douyin_flow_split_video_author_ranks\"},{\"name\":\"codes\",\"type\":\"string\",\"required\":false,\"description\":\"Classification codes, default is empty string\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ranking-list-catalog \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ranking-list-catalog\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ranking-list-catalog\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ranking-list-catalog\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ranking-list-catalog\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ranking-list-catalog\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ranking-list-catalog\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ranking-list-catalog\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/ranking-list-catalog\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Ranking List Catalog" + modelName: "Douyin Xingtu Ranking List Catalog" modelId: "douyin/xingtu-v2/ranking-list-catalog" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/ranking-list-data.md b/model-api-reference/platform-apis/douyin/xingtu-v2/ranking-list-data.md index f8667478..6ba2e571 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/ranking-list-data.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/ranking-list-data.md @@ -1,13 +1,13 @@ --- -title: "Get Ranking List Data API Reference" -description: "SandBase API operation douyin/xingtu-v2/ranking-list-data." +title: "Douyin XingTu Ranking List Data API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/ranking-list-data. Call /v1/api/douyin/xingtu-v2/ranking-list-data; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/ranking-list-data" -apiReferenceJson: "{\"title\":\"Get Ranking List Data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/ranking-list-data\",\"description\":\"Get XingTu creator business ranking list data qualifier can be obtained from `get_ranking_list_catalog` API Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"code\",\"type\":\"integer\",\"required\":false,\"description\":\"Ranking type code\",\"default\":\"1\"},{\"name\":\"date\",\"type\":\"string\",\"required\":false,\"description\":\"Date, format YYYYMMDD\",\"default\":\"20260131\"},{\"name\":\"period\",\"type\":\"integer\",\"required\":false,\"description\":\"7=weekly, 30=monthly\",\"default\":\"30\"},{\"name\":\"qualifier\",\"type\":\"string\",\"required\":false,\"description\":\"Category qualifier_id from `get_ranking_list_catalog`\",\"default\":\"1901\"},{\"name\":\"version\",\"type\":\"string\",\"required\":false,\"description\":\"`flow_split`=default for video rankings, `base`=commonly used for live rankings\",\"default\":\"flow_split\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ranking-list-data \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/xingtu-v2/ranking-list-data\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/xingtu-v2/ranking-list-data\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ranking-list-data\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/xingtu-v2/ranking-list-data\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ranking-list-data\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ranking-list-data\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ranking-list-data\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ranking-list-data\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ranking-list-data\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ranking-list-data\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/ranking-list-data\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin XingTu Ranking List Data\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/ranking-list-data\",\"description\":\"Returns Douyin XingTu author business ranking records by type, date, and category qualifier. It provides author rankings, performance scores, and order metrics. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"code\",\"type\":\"integer\",\"required\":false,\"description\":\"Ranking type code\",\"default\":\"1\"},{\"name\":\"date\",\"type\":\"string\",\"required\":false,\"description\":\"Date, format YYYYMMDD\",\"default\":\"20260131\"},{\"name\":\"period\",\"type\":\"integer\",\"required\":false,\"description\":\"7=weekly, 30=monthly\",\"default\":\"30\"},{\"name\":\"qualifier\",\"type\":\"string\",\"required\":false,\"description\":\"Category qualifier_id from `get_ranking_list_catalog`\",\"default\":\"1901\"},{\"name\":\"version\",\"type\":\"string\",\"required\":false,\"description\":\"`flow_split`=default for video rankings, `base`=commonly used for live rankings\",\"default\":\"flow_split\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ranking-list-data \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ranking-list-data\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/ranking-list-data\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ranking-list-data\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ranking-list-data\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ranking-list-data\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ranking-list-data\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/ranking-list-data\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/ranking-list-data\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Ranking List Data" + modelName: "Douyin XingTu Ranking List Data" modelId: "douyin/xingtu-v2/ranking-list-data" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/recommend-for-star-authors.md b/model-api-reference/platform-apis/douyin/xingtu-v2/recommend-for-star-authors.md index 2e24c605..06f805dd 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/recommend-for-star-authors.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/recommend-for-star-authors.md @@ -1,13 +1,13 @@ --- -title: "Get Recommend Similar Star Authors API Reference" -description: "SandBase API operation douyin/xingtu-v2/recommend-for-star-authors." +title: "Douyin Xingtu Similar Star Authors API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/recommend-for-star-authors. Call /v1/api/douyin/xingtu-v2/recommend-for-star-authors; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/recommend-for-star-authors" -apiReferenceJson: "{\"title\":\"Get Recommend Similar Star Authors\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/recommend-for-star-authors\",\"description\":\"Get similar creator recommendation Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"author_ids\",\"type\":\"array\",\"required\":true,\"description\":\"List of creator/author IDs\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\"},{\"name\":\"similar_type\",\"type\":\"string\",\"required\":false,\"description\":\"Similarity type\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/recommend-for-star-authors \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"author_ids\\\": [\\n \\\"author_ids_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"author_ids\\\": [\\n \\\"author_ids_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/recommend-for-star-authors\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"author_ids\\\": [\\n \\\"author_ids_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/recommend-for-star-authors\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/recommend-for-star-authors\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/recommend-for-star-authors\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/recommend-for-star-authors\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/recommend-for-star-authors\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/recommend-for-star-authors\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/recommend-for-star-authors\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Similar Star Authors\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/recommend-for-star-authors\",\"description\":\"Returns recommended similar Douyin Xingtu creators based on a specified list of author IDs and an optional similarity type. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"author_ids\",\"type\":\"array\",\"required\":true,\"description\":\"List of creator/author IDs\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\"},{\"name\":\"similar_type\",\"type\":\"string\",\"required\":false,\"description\":\"Similarity type\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/recommend-for-star-authors \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"author_ids\\\": [\\n \\\"author_ids_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"author_ids\\\": [\\n \\\"author_ids_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/recommend-for-star-authors\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"author_ids\\\": [\\n \\\"author_ids_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/recommend-for-star-authors\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/recommend-for-star-authors\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/recommend-for-star-authors\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/recommend-for-star-authors\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/recommend-for-star-authors\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/recommend-for-star-authors\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/recommend-for-star-authors\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Recommend Similar Star Authors" + modelName: "Douyin Xingtu Similar Star Authors" modelId: "douyin/xingtu-v2/recommend-for-star-authors" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/resource-list.md b/model-api-reference/platform-apis/douyin/xingtu-v2/resource-list.md index 129fe10e..e12f67c6 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/resource-list.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/resource-list.md @@ -1,13 +1,13 @@ --- -title: "Get Resource List API Reference" -description: "SandBase API operation douyin/xingtu-v2/resource-list." +title: "Douyin Xingtu Resource List API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/resource-list. Call /v1/api/douyin/xingtu-v2/resource-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/resource-list" -apiReferenceJson: "{\"title\":\"Get Resource List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/resource-list\",\"description\":\"Get marketing activity resource list Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"resource_id\",\"type\":\"integer\",\"required\":true,\"description\":\"Resource ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/resource-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"resource_id\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"resource_id\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/resource-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"resource_id\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/resource-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/resource-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/resource-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/resource-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/resource-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/resource-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/resource-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Resource List\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/resource-list\",\"description\":\"Returns marketing activity resources from Douyin Xingtu. Queries resource details using a specific resource identifier. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"resource_id\",\"type\":\"integer\",\"required\":true,\"description\":\"Resource ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/resource-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"resource_id\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"resource_id\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/resource-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"resource_id\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/resource-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/resource-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/resource-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/resource-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/resource-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/resource-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/resource-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Resource List" + modelName: "Douyin Xingtu Resource List" modelId: "douyin/xingtu-v2/resource-list" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/search-anchor.md b/model-api-reference/platform-apis/douyin/xingtu-v2/search-anchor.md index 5be42d42..30c3feed 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/search-anchor.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/search-anchor.md @@ -1,13 +1,13 @@ --- -title: "Search Anchor API Reference" -description: "SandBase API operation douyin/xingtu-v2/search-anchor." +title: "Douyin Xingtu Anchor Search API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/search-anchor. Call /v1/api/douyin/xingtu-v2/search-anchor; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/search-anchor" -apiReferenceJson: "{\"title\":\"Search Anchor\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/search-anchor\",\"description\":\"Search Douyin live-stream anchors in the live marketplace by keyword, with full filtering Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"author_list_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Featured creator list ID\"},{\"name\":\"burst_text_rate_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum viral-post rate, 0-1 decimal\"},{\"name\":\"burst_text_rate_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum viral-post rate, 0-1 decimal\"},{\"name\":\"cpe_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum expected CPE\"},{\"name\":\"cpe_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum expected CPE\"},{\"name\":\"cpm_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum expected CPM\"},{\"name\":\"cpm_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum expected CPM\"},{\"name\":\"expected_play_max\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Maximum expected plays\"},{\"name\":\"expected_play_min\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Minimum expected plays\"},{\"name\":\"extra_filter\",\"type\":\"string | null\",\"required\":false,\"description\":\"Extra profile filters (JSON array) for audience/fans profile, region, etc.\"},{\"name\":\"fans_max\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Maximum followers\"},{\"name\":\"fans_min\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Minimum followers\"},{\"name\":\"first_industry_id\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Industry ID\"},{\"name\":\"gender\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Creator gender, 1=male, 2=female\"},{\"name\":\"interact_rate_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum interaction rate, 0-1 decimal\"},{\"name\":\"interact_rate_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum interaction rate, 0-1 decimal\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword: nickname, Douyin ID, Xingtu ID or live content word\"},{\"name\":\"marketing_target\",\"type\":\"integer\",\"required\":false,\"description\":\"Marketing target\",\"default\":\"3\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\",\"default\":\"1\"},{\"name\":\"persona_tags\",\"type\":\"string | null\",\"required\":false,\"description\":\"Persona IDs. Comma=match any, semicolon=group AND\"},{\"name\":\"play_over_rate_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum play-completion rate, 0-1 decimal\"},{\"name\":\"play_over_rate_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum play-completion rate, 0-1 decimal\"},{\"name\":\"price_max\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Maximum creator price\"},{\"name\":\"price_min\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Minimum creator price\"},{\"name\":\"price_type\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Price tier by video length\"},{\"name\":\"sort_field\",\"type\":\"string\",\"required\":false,\"description\":\"Sort field, default `score` (comprehensive sort)\",\"default\":\"score\"},{\"name\":\"sort_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort type, 1=asc, 2=desc, default 2\",\"default\":\"2\"},{\"name\":\"tag\",\"type\":\"string | null\",\"required\":false,\"description\":\"Creator category IDs, comma-separated\"},{\"name\":\"task_category\",\"type\":\"integer\",\"required\":false,\"description\":\"Cooperation target\",\"default\":\"6\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/search-anchor \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/search-anchor\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"人工智能\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/search-anchor\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-anchor\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-anchor\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-anchor\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-anchor\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-anchor\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/search-anchor\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Anchor Search\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/search-anchor\",\"description\":\"Search Douyin Xingtu anchors matching a specific query keyword, with filtering options for audience metrics, follower counts, and engagement rates. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"author_list_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Featured creator list ID\"},{\"name\":\"burst_text_rate_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum viral-post rate, 0-1 decimal\"},{\"name\":\"burst_text_rate_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum viral-post rate, 0-1 decimal\"},{\"name\":\"cpe_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum expected CPE\"},{\"name\":\"cpe_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum expected CPE\"},{\"name\":\"cpm_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum expected CPM\"},{\"name\":\"cpm_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum expected CPM\"},{\"name\":\"expected_play_max\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Maximum expected plays\"},{\"name\":\"expected_play_min\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Minimum expected plays\"},{\"name\":\"extra_filter\",\"type\":\"string | null\",\"required\":false,\"description\":\"Extra profile filters (JSON array) for audience/fans profile, region, etc.\"},{\"name\":\"fans_max\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Maximum followers\"},{\"name\":\"fans_min\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Minimum followers\"},{\"name\":\"first_industry_id\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Industry ID\"},{\"name\":\"gender\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Creator gender, 1=male, 2=female\"},{\"name\":\"interact_rate_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum interaction rate, 0-1 decimal\"},{\"name\":\"interact_rate_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum interaction rate, 0-1 decimal\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword: nickname, Douyin ID, Xingtu ID or live content word\"},{\"name\":\"marketing_target\",\"type\":\"integer\",\"required\":false,\"description\":\"Marketing target\",\"default\":\"3\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\",\"default\":\"1\"},{\"name\":\"persona_tags\",\"type\":\"string | null\",\"required\":false,\"description\":\"Persona IDs. Comma=match any, semicolon=group AND\"},{\"name\":\"play_over_rate_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum play-completion rate, 0-1 decimal\"},{\"name\":\"play_over_rate_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum play-completion rate, 0-1 decimal\"},{\"name\":\"price_max\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Maximum creator price\"},{\"name\":\"price_min\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Minimum creator price\"},{\"name\":\"price_type\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Price tier by video length\"},{\"name\":\"sort_field\",\"type\":\"string\",\"required\":false,\"description\":\"Sort field, default `score` (comprehensive sort)\",\"default\":\"score\"},{\"name\":\"sort_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort type, 1=asc, 2=desc, default 2\",\"default\":\"2\"},{\"name\":\"tag\",\"type\":\"string | null\",\"required\":false,\"description\":\"Creator category IDs, comma-separated\"},{\"name\":\"task_category\",\"type\":\"integer\",\"required\":false,\"description\":\"Cooperation target\",\"default\":\"6\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/search-anchor \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/search-anchor\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"人工智能\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/search-anchor\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-anchor\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-anchor\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-anchor\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-anchor\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-anchor\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/search-anchor\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search Anchor" + modelName: "Douyin Xingtu Anchor Search" modelId: "douyin/xingtu-v2/search-anchor" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/search-creator.md b/model-api-reference/platform-apis/douyin/xingtu-v2/search-creator.md index c46e9a65..6e6e0055 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/search-creator.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/search-creator.md @@ -1,13 +1,13 @@ --- -title: "Search Creator API Reference" -description: "SandBase API operation douyin/xingtu-v2/search-creator." +title: "Douyin Xingtu Creator Search API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/search-creator. Call /v1/api/douyin/xingtu-v2/search-creator; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/search-creator" -apiReferenceJson: "{\"title\":\"Search Creator\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/search-creator\",\"description\":\"Search Douyin short-video creators in the creator marketplace by keyword, with full filtering Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"author_list_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Featured creator list ID\"},{\"name\":\"burst_text_rate_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum viral-post rate, 0-1 decimal\"},{\"name\":\"burst_text_rate_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum viral-post rate, 0-1 decimal\"},{\"name\":\"cpe_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum expected CPE\"},{\"name\":\"cpe_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum expected CPE\"},{\"name\":\"cpm_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum expected CPM\"},{\"name\":\"cpm_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum expected CPM\"},{\"name\":\"expected_play_max\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Maximum expected plays\"},{\"name\":\"expected_play_min\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Minimum expected plays\"},{\"name\":\"extra_filter\",\"type\":\"string | null\",\"required\":false,\"description\":\"Extra profile filters (JSON array) for audience/fans profile, region, etc.\"},{\"name\":\"fans_max\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Maximum followers\"},{\"name\":\"fans_min\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Minimum followers\"},{\"name\":\"first_industry_id\",\"type\":\"integer\",\"required\":false,\"description\":\"Industry ID, 0=unlimited\",\"default\":\"0\"},{\"name\":\"gender\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Creator gender, 1=male, 2=female\"},{\"name\":\"interact_rate_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum interaction rate, 0-1 decimal\"},{\"name\":\"interact_rate_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum interaction rate, 0-1 decimal\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword: nickname, Douyin ID, Xingtu ID or content word\"},{\"name\":\"marketing_target\",\"type\":\"integer\",\"required\":false,\"description\":\"Marketing target\",\"default\":\"1\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\",\"default\":\"1\"},{\"name\":\"persona_tags\",\"type\":\"string | null\",\"required\":false,\"description\":\"Persona IDs. Comma=match any, semicolon=group AND\"},{\"name\":\"play_over_rate_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum play-completion rate, 0-1 decimal\"},{\"name\":\"play_over_rate_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum play-completion rate, 0-1 decimal\"},{\"name\":\"price_max\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Maximum creator price\"},{\"name\":\"price_min\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Minimum creator price\"},{\"name\":\"price_type\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Price tier by video length\"},{\"name\":\"sort_field\",\"type\":\"string\",\"required\":false,\"description\":\"Sort field, default `score` (comprehensive sort)\",\"default\":\"score\"},{\"name\":\"sort_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort type, 1=asc, 2=desc, default 2\",\"default\":\"2\"},{\"name\":\"tag\",\"type\":\"string | null\",\"required\":false,\"description\":\"Creator category IDs, comma-separated\"},{\"name\":\"task_category\",\"type\":\"integer\",\"required\":false,\"description\":\"Cooperation target\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/search-creator \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/search-creator\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"人工智能\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/search-creator\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-creator\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-creator\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-creator\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-creator\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-creator\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/search-creator\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Creator Search\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/search-creator\",\"description\":\"Searches Douyin Xingtu short-video creators by keyword, with filtering across metrics like follower count, interaction rate, and category tags. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"author_list_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Featured creator list ID\"},{\"name\":\"burst_text_rate_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum viral-post rate, 0-1 decimal\"},{\"name\":\"burst_text_rate_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum viral-post rate, 0-1 decimal\"},{\"name\":\"cpe_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum expected CPE\"},{\"name\":\"cpe_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum expected CPE\"},{\"name\":\"cpm_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum expected CPM\"},{\"name\":\"cpm_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum expected CPM\"},{\"name\":\"expected_play_max\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Maximum expected plays\"},{\"name\":\"expected_play_min\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Minimum expected plays\"},{\"name\":\"extra_filter\",\"type\":\"string | null\",\"required\":false,\"description\":\"Extra profile filters (JSON array) for audience/fans profile, region, etc.\"},{\"name\":\"fans_max\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Maximum followers\"},{\"name\":\"fans_min\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Minimum followers\"},{\"name\":\"first_industry_id\",\"type\":\"integer\",\"required\":false,\"description\":\"Industry ID, 0=unlimited\",\"default\":\"0\"},{\"name\":\"gender\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Creator gender, 1=male, 2=female\"},{\"name\":\"interact_rate_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum interaction rate, 0-1 decimal\"},{\"name\":\"interact_rate_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum interaction rate, 0-1 decimal\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword: nickname, Douyin ID, Xingtu ID or content word\"},{\"name\":\"marketing_target\",\"type\":\"integer\",\"required\":false,\"description\":\"Marketing target\",\"default\":\"1\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\",\"default\":\"1\"},{\"name\":\"persona_tags\",\"type\":\"string | null\",\"required\":false,\"description\":\"Persona IDs. Comma=match any, semicolon=group AND\"},{\"name\":\"play_over_rate_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum play-completion rate, 0-1 decimal\"},{\"name\":\"play_over_rate_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum play-completion rate, 0-1 decimal\"},{\"name\":\"price_max\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Maximum creator price\"},{\"name\":\"price_min\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Minimum creator price\"},{\"name\":\"price_type\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Price tier by video length\"},{\"name\":\"sort_field\",\"type\":\"string\",\"required\":false,\"description\":\"Sort field, default `score` (comprehensive sort)\",\"default\":\"score\"},{\"name\":\"sort_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort type, 1=asc, 2=desc, default 2\",\"default\":\"2\"},{\"name\":\"tag\",\"type\":\"string | null\",\"required\":false,\"description\":\"Creator category IDs, comma-separated\"},{\"name\":\"task_category\",\"type\":\"integer\",\"required\":false,\"description\":\"Cooperation target\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/search-creator \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/search-creator\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"人工智能\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/search-creator\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-creator\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-creator\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-creator\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-creator\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-creator\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/search-creator\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search Creator" + modelName: "Douyin Xingtu Creator Search" modelId: "douyin/xingtu-v2/search-creator" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/search-toutiao-creator.md b/model-api-reference/platform-apis/douyin/xingtu-v2/search-toutiao-creator.md index 3cfcb22e..a406bde7 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/search-toutiao-creator.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/search-toutiao-creator.md @@ -1,13 +1,13 @@ --- -title: "Search Toutiao Creator API Reference" -description: "SandBase API operation douyin/xingtu-v2/search-toutiao-creator." +title: "Douyin Toutiao Creator Search API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/search-toutiao-creator. Call /v1/api/douyin/xingtu-v2/search-toutiao-creator; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/search-toutiao-creator" -apiReferenceJson: "{\"title\":\"Search Toutiao Creator\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/search-toutiao-creator\",\"description\":\"Search Toutiao image-text creators in the image-text marketplace by keyword, with full filtering Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"author_list_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Featured creator list ID\"},{\"name\":\"burst_text_rate_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum viral-post rate, 0-1 decimal\"},{\"name\":\"burst_text_rate_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum viral-post rate, 0-1 decimal\"},{\"name\":\"cpe_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum expected CPE\"},{\"name\":\"cpe_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum expected CPE\"},{\"name\":\"cpm_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum expected CPM\"},{\"name\":\"cpm_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum expected CPM\"},{\"name\":\"expected_play_max\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Maximum expected plays\"},{\"name\":\"expected_play_min\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Minimum expected plays\"},{\"name\":\"extra_filter\",\"type\":\"string | null\",\"required\":false,\"description\":\"Extra profile filters (JSON array) for audience/fans profile, region, etc.\"},{\"name\":\"fans_max\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Maximum followers\"},{\"name\":\"fans_min\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Minimum followers\"},{\"name\":\"first_industry_id\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Industry ID\"},{\"name\":\"gender\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Creator gender, 1=male, 2=female\"},{\"name\":\"interact_rate_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum interaction rate, 0-1 decimal\"},{\"name\":\"interact_rate_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum interaction rate, 0-1 decimal\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword: nickname, Toutiao ID or content word\"},{\"name\":\"marketing_target\",\"type\":\"integer\",\"required\":false,\"description\":\"Marketing target\",\"default\":\"1\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\",\"default\":\"1\"},{\"name\":\"persona_tags\",\"type\":\"string | null\",\"required\":false,\"description\":\"Persona IDs. Comma=match any, semicolon=group AND\"},{\"name\":\"play_over_rate_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum play-completion rate, 0-1 decimal\"},{\"name\":\"play_over_rate_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum play-completion rate, 0-1 decimal\"},{\"name\":\"price_max\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Maximum creator price\"},{\"name\":\"price_min\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Minimum creator price\"},{\"name\":\"price_type\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Price tier by video length\"},{\"name\":\"sort_field\",\"type\":\"string\",\"required\":false,\"description\":\"Sort field, default `score` (comprehensive sort)\",\"default\":\"score\"},{\"name\":\"sort_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort type, 1=asc, 2=desc, default 2\",\"default\":\"2\"},{\"name\":\"tag\",\"type\":\"string | null\",\"required\":false,\"description\":\"Creator category IDs, comma-separated\"},{\"name\":\"task_category\",\"type\":\"integer\",\"required\":false,\"description\":\"Cooperation target\",\"default\":\"11\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/search-toutiao-creator \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/search-toutiao-creator\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"人工智能\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/search-toutiao-creator\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-toutiao-creator\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-toutiao-creator\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-toutiao-creator\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-toutiao-creator\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-toutiao-creator\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/search-toutiao-creator\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Toutiao Creator Search\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/search-toutiao-creator\",\"description\":\"Returns Toutiao image-text creator profiles matching a search keyword and filters such as follower count, interaction rate, and industry categories. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"author_list_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Featured creator list ID\"},{\"name\":\"burst_text_rate_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum viral-post rate, 0-1 decimal\"},{\"name\":\"burst_text_rate_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum viral-post rate, 0-1 decimal\"},{\"name\":\"cpe_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum expected CPE\"},{\"name\":\"cpe_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum expected CPE\"},{\"name\":\"cpm_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum expected CPM\"},{\"name\":\"cpm_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum expected CPM\"},{\"name\":\"expected_play_max\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Maximum expected plays\"},{\"name\":\"expected_play_min\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Minimum expected plays\"},{\"name\":\"extra_filter\",\"type\":\"string | null\",\"required\":false,\"description\":\"Extra profile filters (JSON array) for audience/fans profile, region, etc.\"},{\"name\":\"fans_max\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Maximum followers\"},{\"name\":\"fans_min\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Minimum followers\"},{\"name\":\"first_industry_id\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Industry ID\"},{\"name\":\"gender\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Creator gender, 1=male, 2=female\"},{\"name\":\"interact_rate_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum interaction rate, 0-1 decimal\"},{\"name\":\"interact_rate_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum interaction rate, 0-1 decimal\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword: nickname, Toutiao ID or content word\"},{\"name\":\"marketing_target\",\"type\":\"integer\",\"required\":false,\"description\":\"Marketing target\",\"default\":\"1\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\",\"default\":\"1\"},{\"name\":\"persona_tags\",\"type\":\"string | null\",\"required\":false,\"description\":\"Persona IDs. Comma=match any, semicolon=group AND\"},{\"name\":\"play_over_rate_max\",\"type\":\"number | null\",\"required\":false,\"description\":\"Maximum play-completion rate, 0-1 decimal\"},{\"name\":\"play_over_rate_min\",\"type\":\"number | null\",\"required\":false,\"description\":\"Minimum play-completion rate, 0-1 decimal\"},{\"name\":\"price_max\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Maximum creator price\"},{\"name\":\"price_min\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Minimum creator price\"},{\"name\":\"price_type\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Price tier by video length\"},{\"name\":\"sort_field\",\"type\":\"string\",\"required\":false,\"description\":\"Sort field, default `score` (comprehensive sort)\",\"default\":\"score\"},{\"name\":\"sort_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort type, 1=asc, 2=desc, default 2\",\"default\":\"2\"},{\"name\":\"tag\",\"type\":\"string | null\",\"required\":false,\"description\":\"Creator category IDs, comma-separated\"},{\"name\":\"task_category\",\"type\":\"integer\",\"required\":false,\"description\":\"Cooperation target\",\"default\":\"11\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/search-toutiao-creator \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/search-toutiao-creator\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"人工智能\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/search-toutiao-creator\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-toutiao-creator\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-toutiao-creator\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-toutiao-creator\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-toutiao-creator\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/search-toutiao-creator\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/search-toutiao-creator\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search Toutiao Creator" + modelName: "Douyin Toutiao Creator Search" modelId: "douyin/xingtu-v2/search-toutiao-creator" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/user-profile-qrcode.md b/model-api-reference/platform-apis/douyin/xingtu-v2/user-profile-qrcode.md index 2aa3d55f..d08d0139 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/user-profile-qrcode.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/user-profile-qrcode.md @@ -1,13 +1,13 @@ --- -title: "Get User Profile QRCode API Reference" -description: "SandBase API operation douyin/xingtu-v2/user-profile-qrcode." +title: "Douyin Xingtu User Profile QR Code API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/user-profile-qrcode. Call /v1/api/douyin/xingtu-v2/user-profile-qrcode; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/user-profile-qrcode" -apiReferenceJson: "{\"title\":\"Get User Profile QRCode\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/user-profile-qrcode\",\"description\":\"Generate user profile QR code Either core_user_id or sec_uid is required Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"core_user_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"User core ID (pick one with sec_uid)\"},{\"name\":\"sec_uid\",\"type\":\"string | null\",\"required\":false,\"description\":\"User sec_uid (pick one with core_user_id)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/user-profile-qrcode \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"douyin/xingtu-v2/user-profile-qrcode\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"douyin/xingtu-v2/user-profile-qrcode\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/user-profile-qrcode\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"douyin/xingtu-v2/user-profile-qrcode\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/user-profile-qrcode\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/user-profile-qrcode\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/user-profile-qrcode\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/user-profile-qrcode\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/user-profile-qrcode\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/user-profile-qrcode\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/user-profile-qrcode\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu User Profile QR Code\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/user-profile-qrcode\",\"description\":\"Returns a QR code for a Douyin Xingtu creator profile. Look up the profile QR code by providing either a user core ID or sec_uid. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"core_user_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"User core ID (pick one with sec_uid)\"},{\"name\":\"sec_uid\",\"type\":\"string | null\",\"required\":false,\"description\":\"User sec_uid (pick one with core_user_id)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/user-profile-qrcode \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/user-profile-qrcode\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/user-profile-qrcode\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/user-profile-qrcode\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/user-profile-qrcode\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/user-profile-qrcode\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/user-profile-qrcode\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/user-profile-qrcode\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/user-profile-qrcode\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get User Profile QRCode" + modelName: "Douyin Xingtu User Profile QR Code" modelId: "douyin/xingtu-v2/user-profile-qrcode" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/xingtu-kolid-by-sec-user-id.md b/model-api-reference/platform-apis/douyin/xingtu-v2/xingtu-kolid-by-sec-user-id.md index 8b171f05..42d05cd8 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/xingtu-kolid-by-sec-user-id.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/xingtu-kolid-by-sec-user-id.md @@ -1,13 +1,13 @@ --- -title: "Get Xingtu Author ID by Douyin sec_user_id API Reference" -description: "SandBase API operation douyin/xingtu-v2/xingtu-kolid-by-sec-user-id." +title: "Douyin XingTu kolId by sec_user_id (V2) API Reference" +description: "SandBase API reference: douyin/xingtu-v2/xingtu-kolid-by-sec-user-id via /v1/api/douyin/xingtu-v2/xingtu-kolid-by-sec-user-id. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/xingtu-kolid-by-sec-user-id" -apiReferenceJson: "{\"title\":\"Get Xingtu Author ID by Douyin sec_user_id\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/xingtu-kolid-by-sec-user-id\",\"description\":\"Get Xingtu author ID by Douyin sec_user_id Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Douyin user sec_user_id, obtainable from Douyin user-profile endpoints\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/xingtu-kolid-by-sec-user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/xingtu-kolid-by-sec-user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/xingtu-kolid-by-sec-user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-sec-user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-sec-user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-sec-user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/xingtu-kolid-by-sec-user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin XingTu kolId by sec_user_id (V2)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/xingtu-kolid-by-sec-user-id\",\"description\":\"Returns Xingtu creator identifiers and basic profile metrics for a Douyin account using its secure user ID. It provides the Xingtu author ID, core user ID, and performance indicators. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Douyin user sec_user_id, obtainable from Douyin user-profile endpoints\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/xingtu-kolid-by-sec-user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sec_user_id\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sec_user_id\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/xingtu-kolid-by-sec-user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sec_user_id\\\": \\\"MS4wLjABAAAAr52fXcfmzqOZJM_smap9Uuxtm16h8BupkCVaCt89BENq3E91mHCvtz5Z5TkXPHq_\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/xingtu-kolid-by-sec-user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-sec-user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-sec-user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-sec-user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/xingtu-kolid-by-sec-user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Xingtu Author ID by Douyin sec_user_id" + modelName: "Douyin XingTu kolId by sec_user_id (V2)" modelId: "douyin/xingtu-v2/xingtu-kolid-by-sec-user-id" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/xingtu-kolid-by-uid.md b/model-api-reference/platform-apis/douyin/xingtu-v2/xingtu-kolid-by-uid.md index d03765ea..4f19f7b4 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/xingtu-kolid-by-uid.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/xingtu-kolid-by-uid.md @@ -1,13 +1,13 @@ --- -title: "Get Xingtu Author ID by Douyin UID API Reference" -description: "SandBase API operation douyin/xingtu-v2/xingtu-kolid-by-uid." +title: "Douyin Xingtu Author ID by UID API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/xingtu-kolid-by-uid. Call /v1/api/douyin/xingtu-v2/xingtu-kolid-by-uid; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/xingtu-kolid-by-uid" -apiReferenceJson: "{\"title\":\"Get Xingtu Author ID by Douyin UID\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/xingtu-kolid-by-uid\",\"description\":\"Get Xingtu author ID by Douyin user ID (uid) The returned Xingtu author ID is the o_author_id required by other creator endpoints Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"Douyin user ID, obtainable from Douyin user-profile endpoints\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/xingtu-kolid-by-uid \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/xingtu-kolid-by-uid\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/xingtu-kolid-by-uid\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-uid\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-uid\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-uid\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-uid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-uid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/xingtu-kolid-by-uid\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Author ID by UID\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/xingtu-kolid-by-uid\",\"description\":\"Returns the Xingtu creator identifier and basic profile details for a given Douyin user account. Provide a Douyin user ID to retrieve associated Xingtu platform metadata. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"Douyin user ID, obtainable from Douyin user-profile endpoints\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/xingtu-kolid-by-uid \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"92769419069\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"92769419069\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/xingtu-kolid-by-uid\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"92769419069\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/xingtu-kolid-by-uid\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-uid\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-uid\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-uid\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-uid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-uid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/xingtu-kolid-by-uid\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Xingtu Author ID by Douyin UID" + modelName: "Douyin Xingtu Author ID by UID" modelId: "douyin/xingtu-v2/xingtu-kolid-by-uid" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu-v2/xingtu-kolid-by-unique-id.md b/model-api-reference/platform-apis/douyin/xingtu-v2/xingtu-kolid-by-unique-id.md index 04c4473f..78856a2e 100644 --- a/model-api-reference/platform-apis/douyin/xingtu-v2/xingtu-kolid-by-unique-id.md +++ b/model-api-reference/platform-apis/douyin/xingtu-v2/xingtu-kolid-by-unique-id.md @@ -1,13 +1,13 @@ --- -title: "Get Xingtu Author ID by Douyin unique_id API Reference" -description: "SandBase API operation douyin/xingtu-v2/xingtu-kolid-by-unique-id." +title: "Douyin XingTu kolId by Douyin ID API Reference" +description: "SandBase API reference for model douyin/xingtu-v2/xingtu-kolid-by-unique-id. Call /v1/api/douyin/xingtu-v2/xingtu-kolid-by-unique-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu-v2/xingtu-kolid-by-unique-id" -apiReferenceJson: "{\"title\":\"Get Xingtu Author ID by Douyin unique_id\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/xingtu-kolid-by-unique-id\",\"description\":\"Get Xingtu author ID by Douyin unique_id Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"unique_id\",\"type\":\"string\",\"required\":true,\"description\":\"Douyin unique_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/xingtu-kolid-by-unique-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"unique_id\\\": \\\"unique_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"unique_id\\\": \\\"unique_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/xingtu-kolid-by-unique-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"unique_id\\\": \\\"unique_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/xingtu-kolid-by-unique-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-unique-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-unique-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-unique-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-unique-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-unique-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/xingtu-kolid-by-unique-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin XingTu kolId by Douyin ID\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu-v2/xingtu-kolid-by-unique-id\",\"description\":\"Returns Xingtu author profile details and platform identifiers matching a specified Douyin unique identifier. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"unique_id\",\"type\":\"string\",\"required\":true,\"description\":\"Douyin unique_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu-v2/xingtu-kolid-by-unique-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"unique_id\\\": \\\"dyczxzs\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"unique_id\\\": \\\"dyczxzs\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/xingtu-kolid-by-unique-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"unique_id\\\": \\\"dyczxzs\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu-v2/xingtu-kolid-by-unique-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-unique-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-unique-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-unique-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-unique-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu-v2/xingtu-kolid-by-unique-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu-v2/xingtu-kolid-by-unique-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Xingtu Author ID by Douyin unique_id" + modelName: "Douyin XingTu kolId by Douyin ID" modelId: "douyin/xingtu-v2/xingtu-kolid-by-unique-id" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu/author-content-hot-comment-keywords-v1.md b/model-api-reference/platform-apis/douyin/xingtu/author-content-hot-comment-keywords-v1.md index 08a0c328..7a51ad52 100644 --- a/model-api-reference/platform-apis/douyin/xingtu/author-content-hot-comment-keywords-v1.md +++ b/model-api-reference/platform-apis/douyin/xingtu/author-content-hot-comment-keywords-v1.md @@ -1,13 +1,13 @@ --- -title: "Get Author Content Hot Comment Keywords V1 API Reference" -description: "SandBase API operation douyin/xingtu/author-content-hot-comment-keywords-v1." +title: "Douyin Xingtu Author Hot Comment Keywords API Reference" +description: "SandBase API reference for douyin/xingtu/author-content-hot-comment-keywords-v1. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu/author-content-hot-comment-keywords-v1" -apiReferenceJson: "{\"title\":\"Get Author Content Hot Comment Keywords V1\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/author-content-hot-comment-keywords-v1\",\"description\":\"Get Author Content Hot Comment Keywords V1 The interface data is requested using an enterprise account, which is more expensive. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces:\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/author-content-hot-comment-keywords-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/author-content-hot-comment-keywords-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/author-content-hot-comment-keywords-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/author-content-hot-comment-keywords-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/author-content-hot-comment-keywords-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/author-content-hot-comment-keywords-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/author-content-hot-comment-keywords-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/author-content-hot-comment-keywords-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/author-content-hot-comment-keywords-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Author Hot Comment Keywords\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/author-content-hot-comment-keywords-v1\",\"description\":\"Returns hot comment keywords from content produced by a Douyin Xingtu creator. Queries data using the creator's KOL identifier. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces: `douyin/xingtu/xingtu-kolid-by-uid`; `douyin/xingtu/xingtu-kolid-by-sec-user-id`; `douyin/xingtu/xingtu-kolid-by-unique-id`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/author-content-hot-comment-keywords-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"kolId\\\": \\\"kolId\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"kolId\\\": \\\"kolId\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/author-content-hot-comment-keywords-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"kolId\\\": \\\"kolId\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/author-content-hot-comment-keywords-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/author-content-hot-comment-keywords-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/author-content-hot-comment-keywords-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/author-content-hot-comment-keywords-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/author-content-hot-comment-keywords-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/author-content-hot-comment-keywords-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/author-content-hot-comment-keywords-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Author Content Hot Comment Keywords V1" + modelName: "Douyin Xingtu Author Hot Comment Keywords" modelId: "douyin/xingtu/author-content-hot-comment-keywords-v1" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu/author-hot-comment-tokens-v1.md b/model-api-reference/platform-apis/douyin/xingtu/author-hot-comment-tokens-v1.md index ae3b2fe9..6cb011ff 100644 --- a/model-api-reference/platform-apis/douyin/xingtu/author-hot-comment-tokens-v1.md +++ b/model-api-reference/platform-apis/douyin/xingtu/author-hot-comment-tokens-v1.md @@ -1,13 +1,13 @@ --- -title: "Get Author Hot Comment Tokens V1 API Reference" -description: "SandBase API operation douyin/xingtu/author-hot-comment-tokens-v1." +title: "Douyin Xingtu Author Hot Comment Tokens (Xingtu) API Reference" +description: "SandBase API reference for model douyin/xingtu/author-hot-comment-tokens-v1. Call /v1/api/douyin/xingtu/author-hot-comment-tokens-v1; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu/author-hot-comment-tokens-v1" -apiReferenceJson: "{\"title\":\"Get Author Hot Comment Tokens V1\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/author-hot-comment-tokens-v1\",\"description\":\"Get Author Hot Comment Tokens V1 The interface data is requested using an enterprise account, which is more expensive. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces:\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/author-hot-comment-tokens-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/author-hot-comment-tokens-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/author-hot-comment-tokens-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/author-hot-comment-tokens-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/author-hot-comment-tokens-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/author-hot-comment-tokens-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/author-hot-comment-tokens-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/author-hot-comment-tokens-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/author-hot-comment-tokens-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Author Hot Comment Tokens (Xingtu)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/author-hot-comment-tokens-v1\",\"description\":\"Returns hot comment tokens for a Douyin Xingtu creator based on the specified creator ID. Analyze audience sentiment and recurring keywords in creator comments. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces: `douyin/xingtu/xingtu-kolid-by-uid`; `douyin/xingtu/xingtu-kolid-by-sec-user-id`; `douyin/xingtu/xingtu-kolid-by-unique-id`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/author-hot-comment-tokens-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"kolId\\\": \\\"kolId\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"kolId\\\": \\\"kolId\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/author-hot-comment-tokens-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"kolId\\\": \\\"kolId\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/author-hot-comment-tokens-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/author-hot-comment-tokens-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/author-hot-comment-tokens-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/author-hot-comment-tokens-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/author-hot-comment-tokens-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/author-hot-comment-tokens-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/author-hot-comment-tokens-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Author Hot Comment Tokens V1" + modelName: "Douyin Xingtu Author Hot Comment Tokens (Xingtu)" modelId: "douyin/xingtu/author-hot-comment-tokens-v1" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu/kol-audience-portrait-v1.md b/model-api-reference/platform-apis/douyin/xingtu/kol-audience-portrait-v1.md index c55fdf5a..c61b08b2 100644 --- a/model-api-reference/platform-apis/douyin/xingtu/kol-audience-portrait-v1.md +++ b/model-api-reference/platform-apis/douyin/xingtu/kol-audience-portrait-v1.md @@ -1,13 +1,13 @@ --- -title: "Get kol Audience Portrait V1 API Reference" -description: "SandBase API operation douyin/xingtu/kol-audience-portrait-v1." +title: "Douyin Xingtu KOL Audience Portrait (V1) API Reference" +description: "SandBase API reference for model douyin/xingtu/kol-audience-portrait-v1. Call /v1/api/douyin/xingtu/kol-audience-portrait-v1; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu/kol-audience-portrait-v1" -apiReferenceJson: "{\"title\":\"Get kol Audience Portrait V1\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-audience-portrait-v1\",\"description\":\"Get kol Audience Portrait V1 The interface data is requested using an enterprise account, which is more expensive. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces:\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-audience-portrait-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-audience-portrait-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-audience-portrait-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-audience-portrait-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-audience-portrait-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-audience-portrait-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-audience-portrait-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-audience-portrait-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-audience-portrait-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu KOL Audience Portrait (V1)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-audience-portrait-v1\",\"description\":\"Returns audience demographic and portrait insights for a Douyin Xingtu creator. Requires a creator identifier to retrieve detailed follower profile data. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces: `douyin/xingtu/xingtu-kolid-by-uid`; `douyin/xingtu/xingtu-kolid-by-sec-user-id`; `douyin/xingtu/xingtu-kolid-by-unique-id`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-audience-portrait-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"kolId\\\": \\\"kolId\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"kolId\\\": \\\"kolId\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-audience-portrait-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"kolId\\\": \\\"kolId\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-audience-portrait-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-audience-portrait-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-audience-portrait-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-audience-portrait-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-audience-portrait-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-audience-portrait-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-audience-portrait-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get kol Audience Portrait V1" + modelName: "Douyin Xingtu KOL Audience Portrait (V1)" modelId: "douyin/xingtu/kol-audience-portrait-v1" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu/kol-base-info-v1.md b/model-api-reference/platform-apis/douyin/xingtu/kol-base-info-v1.md index 3607b906..4fe586e5 100644 --- a/model-api-reference/platform-apis/douyin/xingtu/kol-base-info-v1.md +++ b/model-api-reference/platform-apis/douyin/xingtu/kol-base-info-v1.md @@ -1,13 +1,13 @@ --- -title: "Get kol Base Info V1 API Reference" -description: "SandBase API operation douyin/xingtu/kol-base-info-v1." +title: "Douyin XingTu KOL Profile API Reference" +description: "SandBase API reference for model douyin/xingtu/kol-base-info-v1. Call /v1/api/douyin/xingtu/kol-base-info-v1; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu/kol-base-info-v1" -apiReferenceJson: "{\"title\":\"Get kol Base Info V1\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-base-info-v1\",\"description\":\"Get kol Base Info V1 The interface data is requested using an enterprise account, which is more expensive. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces:\"},{\"name\":\"platformChannel\",\"type\":\"string\",\"required\":true,\"description\":\"- Platform channel, supports the following parameters:\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-base-info-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"kolId\\\": \\\"kolId\\\",\\n \\\"platformChannel\\\": \\\"platformChannel\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"kolId\\\": \\\"kolId\\\",\\n \\\"platformChannel\\\": \\\"platformChannel\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-base-info-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"kolId\\\": \\\"kolId\\\",\\n \\\"platformChannel\\\": \\\"platformChannel\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-base-info-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-base-info-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-base-info-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-base-info-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-base-info-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-base-info-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-base-info-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin XingTu KOL Profile\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-base-info-v1\",\"description\":\"Get the XingTu (Douyin creator marketplace) profile of a KOL: followers, location, category tags, online status and available collaboration types. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces: `douyin/xingtu/xingtu-kolid-by-uid`; `douyin/xingtu/xingtu-kolid-by-sec-user-id`; `douyin/xingtu/xingtu-kolid-by-unique-id`\"},{\"name\":\"platformChannel\",\"type\":\"string\",\"required\":true,\"description\":\"Platform channel, supports the following parameters: _1: Douyin Video; _10: Douyin Live\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-base-info-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"kolId\\\": \\\"7038603512770461703\\\",\\n \\\"platformChannel\\\": \\\"_1\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"kolId\\\": \\\"7038603512770461703\\\",\\n \\\"platformChannel\\\": \\\"_1\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-base-info-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"kolId\\\": \\\"7038603512770461703\\\",\\n \\\"platformChannel\\\": \\\"_1\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-base-info-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-base-info-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-base-info-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-base-info-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-base-info-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-base-info-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-base-info-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get kol Base Info V1" + modelName: "Douyin XingTu KOL Profile" modelId: "douyin/xingtu/kol-base-info-v1" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu/kol-conversion-ability-analysis-v1.md b/model-api-reference/platform-apis/douyin/xingtu/kol-conversion-ability-analysis-v1.md deleted file mode 100644 index 149d90ec..00000000 --- a/model-api-reference/platform-apis/douyin/xingtu/kol-conversion-ability-analysis-v1.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get kol Conversion Ability Analysis V1 API Reference" -description: "SandBase API operation douyin/xingtu/kol-conversion-ability-analysis-v1." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/xingtu/kol-conversion-ability-analysis-v1" -apiReferenceJson: "{\"title\":\"Get kol Conversion Ability Analysis V1\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-conversion-ability-analysis-v1\",\"description\":\"Get kol Conversion Ability Analysis V1 The interface data is requested using an enterprise account, which is more expensive. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"_range\",\"type\":\"string\",\"required\":true,\"description\":\"Time range, supports the following parameters:\"},{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces:\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-conversion-ability-analysis-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"_range\\\": \\\"_range\\\",\\n \\\"kolId\\\": \\\"kolId\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"_range\\\": \\\"_range\\\",\\n \\\"kolId\\\": \\\"kolId\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-conversion-ability-analysis-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"_range\\\": \\\"_range\\\",\\n \\\"kolId\\\": \\\"kolId\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-conversion-ability-analysis-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-conversion-ability-analysis-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-conversion-ability-analysis-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-conversion-ability-analysis-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-conversion-ability-analysis-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-conversion-ability-analysis-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-conversion-ability-analysis-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get kol Conversion Ability Analysis V1" - modelId: "douyin/xingtu/kol-conversion-ability-analysis-v1" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "xingtu/kol-conversion-ability-analysis-v1" - protocol: "API Reference" - endpoint: "/v1/api/douyin/xingtu/kol-conversion-ability-analysis-v1" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/xingtu/kol-convert-video-display-v1.md b/model-api-reference/platform-apis/douyin/xingtu/kol-convert-video-display-v1.md index 32dc1bd7..838d5e77 100644 --- a/model-api-reference/platform-apis/douyin/xingtu/kol-convert-video-display-v1.md +++ b/model-api-reference/platform-apis/douyin/xingtu/kol-convert-video-display-v1.md @@ -1,13 +1,13 @@ --- -title: "Get kol Convert Video Display V1 API Reference" -description: "SandBase API operation douyin/xingtu/kol-convert-video-display-v1." +title: "Douyin Xingtu KOL Conversion Video Display API Reference" +description: "SandBase API reference for model douyin/xingtu/kol-convert-video-display-v1. Call /v1/api/douyin/xingtu/kol-convert-video-display-v1; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu/kol-convert-video-display-v1" -apiReferenceJson: "{\"title\":\"Get kol Convert Video Display V1\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-convert-video-display-v1\",\"description\":\"Get kol Convert Video Display V1 The interface data is requested using an enterprise account, which is more expensive. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"detailType\",\"type\":\"string\",\"required\":true,\"description\":\"Detail type, supports the following parameters:\"},{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces:\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":true,\"description\":\"Page number, starting from 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-convert-video-display-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"detailType\\\": \\\"detailType\\\",\\n \\\"kolId\\\": \\\"kolId\\\",\\n \\\"page\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"detailType\\\": \\\"detailType\\\",\\n \\\"kolId\\\": \\\"kolId\\\",\\n \\\"page\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-convert-video-display-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"detailType\\\": \\\"detailType\\\",\\n \\\"kolId\\\": \\\"kolId\\\",\\n \\\"page\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-convert-video-display-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-convert-video-display-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-convert-video-display-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-convert-video-display-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-convert-video-display-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-convert-video-display-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-convert-video-display-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu KOL Conversion Video Display\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-convert-video-display-v1\",\"description\":\"Returns Xingtu KOL conversion video metrics and product data for a specific creator. Filter records by detail type and navigate results using page numbers. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"detailType\",\"type\":\"string\",\"required\":true,\"description\":\"Detail type, supports the following parameters: _1: Video Data; _2: Product Data\"},{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces: `douyin/xingtu/xingtu-kolid-by-uid`; `douyin/xingtu/xingtu-kolid-by-sec-user-id`; `douyin/xingtu/xingtu-kolid-by-unique-id`\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":true,\"description\":\"Page number, starting from 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-convert-video-display-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"detailType\\\": \\\"detailType\\\",\\n \\\"kolId\\\": \\\"kolId\\\",\\n \\\"page\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"detailType\\\": \\\"detailType\\\",\\n \\\"kolId\\\": \\\"kolId\\\",\\n \\\"page\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-convert-video-display-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"detailType\\\": \\\"detailType\\\",\\n \\\"kolId\\\": \\\"kolId\\\",\\n \\\"page\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-convert-video-display-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-convert-video-display-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-convert-video-display-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-convert-video-display-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-convert-video-display-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-convert-video-display-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-convert-video-display-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get kol Convert Video Display V1" + modelName: "Douyin Xingtu KOL Conversion Video Display" modelId: "douyin/xingtu/kol-convert-video-display-v1" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu/kol-cp-info-v1.md b/model-api-reference/platform-apis/douyin/xingtu/kol-cp-info-v1.md index 834f47c8..378e4a86 100644 --- a/model-api-reference/platform-apis/douyin/xingtu/kol-cp-info-v1.md +++ b/model-api-reference/platform-apis/douyin/xingtu/kol-cp-info-v1.md @@ -1,13 +1,13 @@ --- -title: "Get kol Cp Info V1 API Reference" -description: "SandBase API operation douyin/xingtu/kol-cp-info-v1." +title: "Douyin XingTu KOL Cost Metrics API Reference" +description: "SandBase API reference for model douyin/xingtu/kol-cp-info-v1. Call /v1/api/douyin/xingtu/kol-cp-info-v1; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu/kol-cp-info-v1" -apiReferenceJson: "{\"title\":\"Get kol Cp Info V1\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-cp-info-v1\",\"description\":\"Get kol Cp Info V1 The interface data is requested using an enterprise account, which is more expensive. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces:\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-cp-info-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-cp-info-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-cp-info-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-cp-info-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-cp-info-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-cp-info-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-cp-info-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-cp-info-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-cp-info-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin XingTu KOL Cost Metrics\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-cp-info-v1\",\"description\":\"Get expected campaign metrics for a Douyin KOL from XingTu: expected views, CPM and CPE estimates, and hot-video counts. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces: `douyin/xingtu/xingtu-kolid-by-uid`; `douyin/xingtu/xingtu-kolid-by-sec-user-id`; `douyin/xingtu/xingtu-kolid-by-unique-id`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-cp-info-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"kolId\\\": \\\"7038603512770461703\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"kolId\\\": \\\"7038603512770461703\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-cp-info-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"kolId\\\": \\\"7038603512770461703\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-cp-info-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-cp-info-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-cp-info-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-cp-info-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-cp-info-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-cp-info-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-cp-info-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get kol Cp Info V1" + modelName: "Douyin XingTu KOL Cost Metrics" modelId: "douyin/xingtu/kol-cp-info-v1" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu/kol-daily-fans-v1.md b/model-api-reference/platform-apis/douyin/xingtu/kol-daily-fans-v1.md index 0ecbca79..4365f028 100644 --- a/model-api-reference/platform-apis/douyin/xingtu/kol-daily-fans-v1.md +++ b/model-api-reference/platform-apis/douyin/xingtu/kol-daily-fans-v1.md @@ -1,13 +1,13 @@ --- -title: "Get kol Daily Fans V1 API Reference" -description: "SandBase API operation douyin/xingtu/kol-daily-fans-v1." +title: "Douyin Xingtu KOL Daily Fans API Reference" +description: "SandBase API reference for model douyin/xingtu/kol-daily-fans-v1. Call /v1/api/douyin/xingtu/kol-daily-fans-v1; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu/kol-daily-fans-v1" -apiReferenceJson: "{\"title\":\"Get kol Daily Fans V1\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-daily-fans-v1\",\"description\":\"Get kol Daily Fans V1 The interface data is requested using an enterprise account, which is more expensive. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endDate\",\"type\":\"string\",\"required\":true,\"description\":\"End date, format: yyyy-MM-dd\"},{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces:\"},{\"name\":\"startDate\",\"type\":\"string\",\"required\":true,\"description\":\"Start date, format: yyyy-MM-dd\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-daily-fans-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"endDate\\\": \\\"endDate\\\",\\n \\\"kolId\\\": \\\"kolId\\\",\\n \\\"startDate\\\": \\\"startDate\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"endDate\\\": \\\"endDate\\\",\\n \\\"kolId\\\": \\\"kolId\\\",\\n \\\"startDate\\\": \\\"startDate\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-daily-fans-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"endDate\\\": \\\"endDate\\\",\\n \\\"kolId\\\": \\\"kolId\\\",\\n \\\"startDate\\\": \\\"startDate\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-daily-fans-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-daily-fans-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-daily-fans-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-daily-fans-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-daily-fans-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-daily-fans-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-daily-fans-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu KOL Daily Fans\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-daily-fans-v1\",\"description\":\"Returns daily fan statistics for a Douyin Xingtu creator over a specified date range. Requires the creator ID alongside the start and end dates formatted as yyyy-MM-dd. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endDate\",\"type\":\"string\",\"required\":true,\"description\":\"End date, format: yyyy-MM-dd\"},{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces: `douyin/xingtu/xingtu-kolid-by-uid`; `douyin/xingtu/xingtu-kolid-by-sec-user-id`; `douyin/xingtu/xingtu-kolid-by-unique-id`\"},{\"name\":\"startDate\",\"type\":\"string\",\"required\":true,\"description\":\"Start date, format: yyyy-MM-dd\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-daily-fans-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"endDate\\\": \\\"endDate\\\",\\n \\\"kolId\\\": \\\"kolId\\\",\\n \\\"startDate\\\": \\\"startDate\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"endDate\\\": \\\"endDate\\\",\\n \\\"kolId\\\": \\\"kolId\\\",\\n \\\"startDate\\\": \\\"startDate\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-daily-fans-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"endDate\\\": \\\"endDate\\\",\\n \\\"kolId\\\": \\\"kolId\\\",\\n \\\"startDate\\\": \\\"startDate\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-daily-fans-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-daily-fans-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-daily-fans-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-daily-fans-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-daily-fans-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-daily-fans-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-daily-fans-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get kol Daily Fans V1" + modelName: "Douyin Xingtu KOL Daily Fans" modelId: "douyin/xingtu/kol-daily-fans-v1" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu/kol-data-overview-v1.md b/model-api-reference/platform-apis/douyin/xingtu/kol-data-overview-v1.md deleted file mode 100644 index f07244e6..00000000 --- a/model-api-reference/platform-apis/douyin/xingtu/kol-data-overview-v1.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get kol Data Overview V1 API Reference" -description: "SandBase API operation douyin/xingtu/kol-data-overview-v1." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/xingtu/kol-data-overview-v1" -apiReferenceJson: "{\"title\":\"Get kol Data Overview V1\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-data-overview-v1\",\"description\":\"Get kol Data Overview V1 The interface data is requested using an enterprise account, which is more expensive. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"_range\",\"type\":\"string\",\"required\":true,\"description\":\"Range, supports the following parameters:\"},{\"name\":\"_type\",\"type\":\"string\",\"required\":true,\"description\":\"Type, supports the following parameters:\"},{\"name\":\"flowType\",\"type\":\"integer\",\"required\":true,\"description\":\"Flow Type, supports the following parameters:\"},{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces:\"},{\"name\":\"onlyAssign\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether assigned (optional)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-data-overview-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"_range\\\": \\\"_range\\\",\\n \\\"_type\\\": \\\"_type\\\",\\n \\\"flowType\\\": 1,\\n \\\"kolId\\\": \\\"kolId\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"_range\\\": \\\"_range\\\",\\n \\\"_type\\\": \\\"_type\\\",\\n \\\"flowType\\\": 1,\\n \\\"kolId\\\": \\\"kolId\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-data-overview-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"_range\\\": \\\"_range\\\",\\n \\\"_type\\\": \\\"_type\\\",\\n \\\"flowType\\\": 1,\\n \\\"kolId\\\": \\\"kolId\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-data-overview-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-data-overview-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-data-overview-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-data-overview-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-data-overview-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-data-overview-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-data-overview-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get kol Data Overview V1" - modelId: "douyin/xingtu/kol-data-overview-v1" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "xingtu/kol-data-overview-v1" - protocol: "API Reference" - endpoint: "/v1/api/douyin/xingtu/kol-data-overview-v1" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/xingtu/kol-fans-portrait-v1.md b/model-api-reference/platform-apis/douyin/xingtu/kol-fans-portrait-v1.md index 6aec9912..29ded4c0 100644 --- a/model-api-reference/platform-apis/douyin/xingtu/kol-fans-portrait-v1.md +++ b/model-api-reference/platform-apis/douyin/xingtu/kol-fans-portrait-v1.md @@ -1,13 +1,13 @@ --- -title: "Get kol Fans Portrait V1 API Reference" -description: "SandBase API operation douyin/xingtu/kol-fans-portrait-v1." +title: "Douyin XingTu KOL Audience API Reference" +description: "SandBase API reference for model douyin/xingtu/kol-fans-portrait-v1. Call /v1/api/douyin/xingtu/kol-fans-portrait-v1; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu/kol-fans-portrait-v1" -apiReferenceJson: "{\"title\":\"Get kol Fans Portrait V1\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-fans-portrait-v1\",\"description\":\"Get kol Fans Portrait V1 The interface data is requested using an enterprise account, which is more expensive. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"fansType\",\"type\":\"string\",\"required\":false,\"description\":\"Fans Type, supports the following parameters:\"},{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces:\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-fans-portrait-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-fans-portrait-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-fans-portrait-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-fans-portrait-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-fans-portrait-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-fans-portrait-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-fans-portrait-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-fans-portrait-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-fans-portrait-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin XingTu KOL Audience\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-fans-portrait-v1\",\"description\":\"Get the audience portrait of a Douyin KOL from XingTu: fan age, gender, region, device and interest distributions. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"fansType\",\"type\":\"string\",\"required\":false,\"description\":\"Fans Type, supports the following parameters: _1: Fans Portrait - Default; _2: Fans Group Portrait; _5: Iron Fans Portrait\"},{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces: `douyin/xingtu/xingtu-kolid-by-uid`; `douyin/xingtu/xingtu-kolid-by-sec-user-id`; `douyin/xingtu/xingtu-kolid-by-unique-id`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-fans-portrait-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"kolId\\\": \\\"7038603512770461703\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"kolId\\\": \\\"7038603512770461703\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-fans-portrait-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"kolId\\\": \\\"7038603512770461703\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-fans-portrait-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-fans-portrait-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-fans-portrait-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-fans-portrait-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-fans-portrait-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-fans-portrait-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-fans-portrait-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get kol Fans Portrait V1" + modelName: "Douyin XingTu KOL Audience" modelId: "douyin/xingtu/kol-fans-portrait-v1" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu/kol-link-struct-v1.md b/model-api-reference/platform-apis/douyin/xingtu/kol-link-struct-v1.md index 52ad80e0..dc0fd572 100644 --- a/model-api-reference/platform-apis/douyin/xingtu/kol-link-struct-v1.md +++ b/model-api-reference/platform-apis/douyin/xingtu/kol-link-struct-v1.md @@ -1,13 +1,13 @@ --- -title: "Get kol Link Struct V1 API Reference" -description: "SandBase API operation douyin/xingtu/kol-link-struct-v1." +title: "Douyin Xingtu KOL Link Structure API Reference" +description: "SandBase API reference for model douyin/xingtu/kol-link-struct-v1. Call /v1/api/douyin/xingtu/kol-link-struct-v1; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu/kol-link-struct-v1" -apiReferenceJson: "{\"title\":\"Get kol Link Struct V1\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-link-struct-v1\",\"description\":\"Get kol Link Struct V1 The interface data is requested using an enterprise account, which is more expensive. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces:\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-link-struct-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-link-struct-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-link-struct-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-link-struct-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-link-struct-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-link-struct-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-link-struct-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-link-struct-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-link-struct-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu KOL Link Structure\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-link-struct-v1\",\"description\":\"Returns the link structure data for a Douyin Xingtu creator. Queries the platform structure by specifying the creator's KOL identifier. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces: `douyin/xingtu/xingtu-kolid-by-uid`; `douyin/xingtu/xingtu-kolid-by-sec-user-id`; `douyin/xingtu/xingtu-kolid-by-unique-id`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-link-struct-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"kolId\\\": \\\"kolId\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"kolId\\\": \\\"kolId\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-link-struct-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"kolId\\\": \\\"kolId\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-link-struct-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-link-struct-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-link-struct-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-link-struct-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-link-struct-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-link-struct-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-link-struct-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get kol Link Struct V1" + modelName: "Douyin Xingtu KOL Link Structure" modelId: "douyin/xingtu/kol-link-struct-v1" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu/kol-rec-videos-v1.md b/model-api-reference/platform-apis/douyin/xingtu/kol-rec-videos-v1.md index 068372fd..f363fc6e 100644 --- a/model-api-reference/platform-apis/douyin/xingtu/kol-rec-videos-v1.md +++ b/model-api-reference/platform-apis/douyin/xingtu/kol-rec-videos-v1.md @@ -1,13 +1,13 @@ --- -title: "Get kol Rec Videos V1 API Reference" -description: "SandBase API operation douyin/xingtu/kol-rec-videos-v1." +title: "Douyin Xingtu KOL Recommended Videos API Reference" +description: "SandBase API reference for model douyin/xingtu/kol-rec-videos-v1. Call /v1/api/douyin/xingtu/kol-rec-videos-v1; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu/kol-rec-videos-v1" -apiReferenceJson: "{\"title\":\"Get kol Rec Videos V1\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-rec-videos-v1\",\"description\":\"Get kol Rec Videos V1 The interface data is requested using an enterprise account, which is more expensive. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces:\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-rec-videos-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-rec-videos-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-rec-videos-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-rec-videos-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-rec-videos-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-rec-videos-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-rec-videos-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-rec-videos-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-rec-videos-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu KOL Recommended Videos\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-rec-videos-v1\",\"description\":\"Returns recommended videos for a Douyin Xingtu creator based on the provided creator ID. Useful for discovering high-performing content from specific influencers. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces: `douyin/xingtu/xingtu-kolid-by-uid`; `douyin/xingtu/xingtu-kolid-by-sec-user-id`; `douyin/xingtu/xingtu-kolid-by-unique-id`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-rec-videos-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"kolId\\\": \\\"kolId\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"kolId\\\": \\\"kolId\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-rec-videos-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"kolId\\\": \\\"kolId\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-rec-videos-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-rec-videos-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-rec-videos-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-rec-videos-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-rec-videos-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-rec-videos-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-rec-videos-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get kol Rec Videos V1" + modelName: "Douyin Xingtu KOL Recommended Videos" modelId: "douyin/xingtu/kol-rec-videos-v1" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu/kol-service-price-v1.md b/model-api-reference/platform-apis/douyin/xingtu/kol-service-price-v1.md index 604f8b69..d41bd8ad 100644 --- a/model-api-reference/platform-apis/douyin/xingtu/kol-service-price-v1.md +++ b/model-api-reference/platform-apis/douyin/xingtu/kol-service-price-v1.md @@ -1,13 +1,13 @@ --- -title: "Get kol Service Price V1 API Reference" -description: "SandBase API operation douyin/xingtu/kol-service-price-v1." +title: "Douyin XingTu KOL Price API Reference" +description: "SandBase API reference for model douyin/xingtu/kol-service-price-v1. Call /v1/api/douyin/xingtu/kol-service-price-v1; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu/kol-service-price-v1" -apiReferenceJson: "{\"title\":\"Get kol Service Price V1\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-service-price-v1\",\"description\":\"Get kol Service Price V1 The interface data is requested using an enterprise account, which is more expensive. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces:\"},{\"name\":\"platformChannel\",\"type\":\"string\",\"required\":true,\"description\":\"- Platform channel, supports the following parameters:\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-service-price-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"kolId\\\": \\\"kolId\\\",\\n \\\"platformChannel\\\": \\\"platformChannel\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"kolId\\\": \\\"kolId\\\",\\n \\\"platformChannel\\\": \\\"platformChannel\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-service-price-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"kolId\\\": \\\"kolId\\\",\\n \\\"platformChannel\\\": \\\"platformChannel\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-service-price-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-service-price-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-service-price-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-service-price-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-service-price-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-service-price-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-service-price-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin XingTu KOL Price\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-service-price-v1\",\"description\":\"Get the XingTu rate card of a Douyin KOL: price per collaboration type (sponsored video, live and more), settlement type and industry tags. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces: `douyin/xingtu/xingtu-kolid-by-uid`; `douyin/xingtu/xingtu-kolid-by-sec-user-id`; `douyin/xingtu/xingtu-kolid-by-unique-id`\"},{\"name\":\"platformChannel\",\"type\":\"string\",\"required\":true,\"description\":\"Platform channel, supports the following parameters: _1: Douyin Video; _10: Douyin Live\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-service-price-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"kolId\\\": \\\"7038603512770461703\\\",\\n \\\"platformChannel\\\": \\\"_1\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"kolId\\\": \\\"7038603512770461703\\\",\\n \\\"platformChannel\\\": \\\"_1\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-service-price-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"kolId\\\": \\\"7038603512770461703\\\",\\n \\\"platformChannel\\\": \\\"_1\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-service-price-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-service-price-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-service-price-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-service-price-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-service-price-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-service-price-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-service-price-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get kol Service Price V1" + modelName: "Douyin XingTu KOL Price" modelId: "douyin/xingtu/kol-service-price-v1" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu/kol-touch-distribution-v1.md b/model-api-reference/platform-apis/douyin/xingtu/kol-touch-distribution-v1.md index b843ddec..58f5b7ba 100644 --- a/model-api-reference/platform-apis/douyin/xingtu/kol-touch-distribution-v1.md +++ b/model-api-reference/platform-apis/douyin/xingtu/kol-touch-distribution-v1.md @@ -1,13 +1,13 @@ --- -title: "Get kol Touch Distribution V1 API Reference" -description: "SandBase API operation douyin/xingtu/kol-touch-distribution-v1." +title: "Douyin Xingtu KOL Touch Distribution API Reference" +description: "SandBase API reference for model douyin/xingtu/kol-touch-distribution-v1. Call /v1/api/douyin/xingtu/kol-touch-distribution-v1; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu/kol-touch-distribution-v1" -apiReferenceJson: "{\"title\":\"Get kol Touch Distribution V1\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-touch-distribution-v1\",\"description\":\"Get kol Touch Distribution V1 The interface data is requested using an enterprise account, which is more expensive. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces:\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-touch-distribution-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-touch-distribution-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-touch-distribution-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-touch-distribution-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-touch-distribution-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-touch-distribution-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-touch-distribution-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-touch-distribution-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-touch-distribution-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu KOL Touch Distribution\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-touch-distribution-v1\",\"description\":\"Returns touch distribution data for a Douyin Xingtu creator using their unique KOL identifier. Helps evaluate audience contact points and reach patterns. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces: `douyin/xingtu/xingtu-kolid-by-uid`; `douyin/xingtu/xingtu-kolid-by-sec-user-id`; `douyin/xingtu/xingtu-kolid-by-unique-id`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-touch-distribution-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"kolId\\\": \\\"kolId\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"kolId\\\": \\\"kolId\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-touch-distribution-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"kolId\\\": \\\"kolId\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-touch-distribution-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-touch-distribution-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-touch-distribution-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-touch-distribution-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-touch-distribution-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-touch-distribution-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-touch-distribution-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get kol Touch Distribution V1" + modelName: "Douyin Xingtu KOL Touch Distribution" modelId: "douyin/xingtu/kol-touch-distribution-v1" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu/kol-video-performance-v1.md b/model-api-reference/platform-apis/douyin/xingtu/kol-video-performance-v1.md index e7066b4b..b465f76f 100644 --- a/model-api-reference/platform-apis/douyin/xingtu/kol-video-performance-v1.md +++ b/model-api-reference/platform-apis/douyin/xingtu/kol-video-performance-v1.md @@ -1,13 +1,13 @@ --- -title: "Get kol Video Performance V1 API Reference" -description: "SandBase API operation douyin/xingtu/kol-video-performance-v1." +title: "Douyin XingTu KOL Video Performance API Reference" +description: "SandBase API reference for model douyin/xingtu/kol-video-performance-v1. Call /v1/api/douyin/xingtu/kol-video-performance-v1; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu/kol-video-performance-v1" -apiReferenceJson: "{\"title\":\"Get kol Video Performance V1\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-video-performance-v1\",\"description\":\"Get kol Video Performance V1 The interface data is requested using an enterprise account, which is more expensive. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces:\"},{\"name\":\"onlyAssign\",\"type\":\"boolean\",\"required\":true,\"description\":\"Whether to display only assigned works, the specific parameters are as follows:\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-video-performance-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"kolId\\\": \\\"kolId\\\",\\n \\\"onlyAssign\\\": false\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"kolId\\\": \\\"kolId\\\",\\n \\\"onlyAssign\\\": False\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-video-performance-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"kolId\\\": \\\"kolId\\\",\\n \\\"onlyAssign\\\": false\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-video-performance-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-video-performance-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-video-performance-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-video-performance-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-video-performance-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-video-performance-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-video-performance-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin XingTu KOL Video Performance\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-video-performance-v1\",\"description\":\"Get a Douyin KOL's video performance from XingTu: interaction and play benchmarks versus peers, plus recent videos with likes, plays, comments and shares. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces: `douyin/xingtu/xingtu-kolid-by-uid`; `douyin/xingtu/xingtu-kolid-by-sec-user-id`; `douyin/xingtu/xingtu-kolid-by-unique-id`\"},{\"name\":\"onlyAssign\",\"type\":\"boolean\",\"required\":true,\"description\":\"Whether to display only assigned works, the specific parameters are as follows: false: Show all, including personal works and assigned works, default value; true: Only display assigned works from XingTu\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-video-performance-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"kolId\\\": \\\"7038603512770461703\\\",\\n \\\"onlyAssign\\\": false\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"kolId\\\": \\\"7038603512770461703\\\",\\n \\\"onlyAssign\\\": False\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-video-performance-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"kolId\\\": \\\"7038603512770461703\\\",\\n \\\"onlyAssign\\\": false\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-video-performance-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-video-performance-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-video-performance-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-video-performance-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-video-performance-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-video-performance-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-video-performance-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get kol Video Performance V1" + modelName: "Douyin XingTu KOL Video Performance" modelId: "douyin/xingtu/kol-video-performance-v1" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu/kol-xingtu-index-v1.md b/model-api-reference/platform-apis/douyin/xingtu/kol-xingtu-index-v1.md index 67baf08a..81bc9fc0 100644 --- a/model-api-reference/platform-apis/douyin/xingtu/kol-xingtu-index-v1.md +++ b/model-api-reference/platform-apis/douyin/xingtu/kol-xingtu-index-v1.md @@ -1,13 +1,13 @@ --- -title: "Get kol Xingtu Index V1 API Reference" -description: "SandBase API operation douyin/xingtu/kol-xingtu-index-v1." +title: "Douyin KOL Xingtu Index API Reference" +description: "SandBase API reference for model douyin/xingtu/kol-xingtu-index-v1. Call /v1/api/douyin/xingtu/kol-xingtu-index-v1; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu/kol-xingtu-index-v1" -apiReferenceJson: "{\"title\":\"Get kol Xingtu Index V1\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-xingtu-index-v1\",\"description\":\"Get kol Xingtu Index V1 The interface data is requested using an enterprise account, which is more expensive. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces:\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-xingtu-index-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-xingtu-index-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"kolId\\\": \\\"kolId\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-xingtu-index-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-xingtu-index-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-xingtu-index-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-xingtu-index-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-xingtu-index-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-xingtu-index-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-xingtu-index-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin KOL Xingtu Index\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/kol-xingtu-index-v1\",\"description\":\"Returns Xingtu index metrics for a specific Douyin creator based on their KOL identifier. Useful for tracking creator performance scores. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"kolId\",\"type\":\"string\",\"required\":true,\"description\":\"User kolId, can be obtained from the following interfaces: `douyin/xingtu/xingtu-kolid-by-uid`; `douyin/xingtu/xingtu-kolid-by-sec-user-id`; `douyin/xingtu/xingtu-kolid-by-unique-id`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/kol-xingtu-index-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"kolId\\\": \\\"kolId\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"kolId\\\": \\\"kolId\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-xingtu-index-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"kolId\\\": \\\"kolId\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/kol-xingtu-index-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/kol-xingtu-index-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/kol-xingtu-index-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-xingtu-index-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/kol-xingtu-index-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/kol-xingtu-index-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/kol-xingtu-index-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get kol Xingtu Index V1" + modelName: "Douyin KOL Xingtu Index" modelId: "douyin/xingtu/kol-xingtu-index-v1" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu/search-kol-v1.md b/model-api-reference/platform-apis/douyin/xingtu/search-kol-v1.md deleted file mode 100644 index e9540fae..00000000 --- a/model-api-reference/platform-apis/douyin/xingtu/search-kol-v1.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Search Kol V1 API Reference" -description: "SandBase API operation douyin/xingtu/search-kol-v1." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/douyin/xingtu/search-kol-v1" -apiReferenceJson: "{\"title\":\"Search Kol V1\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/search-kol-v1\",\"description\":\"Search Kol V1 The interface data is requested using an enterprise account, which is more expensive. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":true,\"description\":\"Page number, starting from 1\"},{\"name\":\"platformSource\",\"type\":\"string\",\"required\":true,\"description\":\"- Platform source, supports the following parameters:\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/search-kol-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"page\\\": 1,\\n \\\"platformSource\\\": \\\"platformSource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"page\\\": 1,\\n \\\"platformSource\\\": \\\"platformSource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/search-kol-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"page\\\": 1,\\n \\\"platformSource\\\": \\\"platformSource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/search-kol-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/search-kol-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/search-kol-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/search-kol-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/search-kol-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/search-kol-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/search-kol-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Search Kol V1" - modelId: "douyin/xingtu/search-kol-v1" - vendor: "Douyin" - vendorSlug: "douyin" - modelSlug: "xingtu/search-kol-v1" - protocol: "API Reference" - endpoint: "/v1/api/douyin/xingtu/search-kol-v1" - publishedAt: "" - capabilities: ["api","douyin"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/douyin/xingtu/search-kol-v2.md b/model-api-reference/platform-apis/douyin/xingtu/search-kol-v2.md index 71f01f8a..b536ef4f 100644 --- a/model-api-reference/platform-apis/douyin/xingtu/search-kol-v2.md +++ b/model-api-reference/platform-apis/douyin/xingtu/search-kol-v2.md @@ -1,13 +1,13 @@ --- -title: "Search Kol Advanced V2 API Reference" -description: "SandBase API operation douyin/xingtu/search-kol-v2." +title: "Douyin Xingtu KOL Search (V2) API Reference" +description: "SandBase API reference for model douyin/xingtu/search-kol-v2. Call /v1/api/douyin/xingtu/search-kol-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu/search-kol-v2" -apiReferenceJson: "{\"title\":\"Search Kol Advanced V2\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/search-kol-v2\",\"description\":\"Advanced Search Kol V2, supports follower range and content tag filtering The interface data is requested using an enterprise account, which is more expensive. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"contentTag\",\"type\":\"string\",\"required\":false,\"description\":\"Content tag (optional), for example tag-1 or tag_level_two-7.\"},{\"name\":\"followerRange\",\"type\":\"string\",\"required\":false,\"description\":\"Follower range (optional), for example 10-100 means 100,000 to 1,000,000 followers.\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/search-kol-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/search-kol-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/search-kol-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/search-kol-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/search-kol-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/search-kol-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/search-kol-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/search-kol-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/search-kol-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu KOL Search (V2)\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/search-kol-v2\",\"description\":\"Searches Douyin Xingtu creators by keyword, content tags, and follower count ranges. Returns creator identifiers, task rate tiers, and qualification levels. Price: 0.02$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"contentTag\",\"type\":\"string\",\"required\":false,\"description\":\"Content tag (optional), for example tag-1 or tag_level_two-7.\"},{\"name\":\"followerRange\",\"type\":\"string\",\"required\":false,\"description\":\"Follower range (optional), for example 10-100 means 100,000 to 1,000,000 followers.\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/search-kol-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"人工智能\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/search-kol-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"人工智能\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/search-kol-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/search-kol-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/search-kol-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/search-kol-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/search-kol-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/search-kol-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/search-kol-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search Kol Advanced V2" + modelName: "Douyin Xingtu KOL Search (V2)" modelId: "douyin/xingtu/search-kol-v2" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu/sign-image.md b/model-api-reference/platform-apis/douyin/xingtu/sign-image.md index a90c76a2..d1023e30 100644 --- a/model-api-reference/platform-apis/douyin/xingtu/sign-image.md +++ b/model-api-reference/platform-apis/douyin/xingtu/sign-image.md @@ -1,13 +1,13 @@ --- -title: "Get Sign Image API Reference" -description: "SandBase API operation douyin/xingtu/sign-image." +title: "Douyin Xingtu Signed Image URL API Reference" +description: "Douyin Xingtu Signed Image URL API reference for SandBase. Use model douyin/xingtu/sign-image with /v1/api/douyin/xingtu/sign-image; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu/sign-image" -apiReferenceJson: "{\"title\":\"Get Sign Image\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/sign-image\",\"description\":\"Parse encrypted XingTu image and get accessible image URL Price: 0.001$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"durationTS\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration in seconds, default 86400 (24 hours)\"},{\"name\":\"format\",\"type\":\"string\",\"required\":false,\"description\":\"Image format, default webp, supports: webp, jpg, png, etc.\"},{\"name\":\"uri\",\"type\":\"string\",\"required\":true,\"description\":\"Image URI, usually obtained from other XingTu API responses\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/sign-image \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uri\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uri\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/sign-image\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uri\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/sign-image\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/sign-image\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/sign-image\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/sign-image\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/sign-image\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/sign-image\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/sign-image\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin Xingtu Signed Image URL\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/sign-image\",\"description\":\"Resolves encrypted Xingtu image URIs into accessible image URLs. Callers can specify preferred image formats such as webp, jpg, or png along with link expiration times. Price: 0.001$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"durationTS\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration in seconds, default 86400 (24 hours)\"},{\"name\":\"format\",\"type\":\"string\",\"required\":false,\"description\":\"Image format, default webp, supports: webp, jpg, png, etc.\"},{\"name\":\"uri\",\"type\":\"string\",\"required\":true,\"description\":\"Image URI, usually obtained from other XingTu API responses\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/sign-image \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uri\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uri\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/sign-image\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uri\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/sign-image\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/sign-image\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/sign-image\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/sign-image\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/sign-image\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/sign-image\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/sign-image\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Sign Image" + modelName: "Douyin Xingtu Signed Image URL" modelId: "douyin/xingtu/sign-image" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu/xingtu-kolid-by-sec-user-id.md b/model-api-reference/platform-apis/douyin/xingtu/xingtu-kolid-by-sec-user-id.md index 792c57c7..69f6e8f8 100644 --- a/model-api-reference/platform-apis/douyin/xingtu/xingtu-kolid-by-sec-user-id.md +++ b/model-api-reference/platform-apis/douyin/xingtu/xingtu-kolid-by-sec-user-id.md @@ -1,13 +1,13 @@ --- -title: "Get XingTu kolid by Douyin sec_user_id API Reference" -description: "SandBase API operation douyin/xingtu/xingtu-kolid-by-sec-user-id." +title: "Douyin XingTu kolId Lookup API Reference" +description: "SandBase API reference for model douyin/xingtu/xingtu-kolid-by-sec-user-id. Call /v1/api/douyin/xingtu/xingtu-kolid-by-sec-user-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu/xingtu-kolid-by-sec-user-id" -apiReferenceJson: "{\"title\":\"Get XingTu kolid by Douyin sec_user_id\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/xingtu-kolid-by-sec-user-id\",\"description\":\"Get XingTu kolid by Douyin sec_user_id Price: 0.001$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":true,\"description\":\"sec_user_id, can be obtained from the following interfaces:\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/xingtu-kolid-by-sec-user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/xingtu-kolid-by-sec-user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/xingtu-kolid-by-sec-user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-sec-user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-sec-user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-sec-user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/xingtu-kolid-by-sec-user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin XingTu kolId Lookup\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/xingtu-kolid-by-sec-user-id\",\"description\":\"Convert a Douyin user's sec_user_id into the XingTu kolId used by the XingTu KOL profile, price, fan portrait and performance APIs. Price: 0.001$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":true,\"description\":\"sec_user_id, can be obtained from the following interfaces: `douyin/web/user-profile`; `douyin/web/user-profile-v2`; `douyin/web/user-profile-v3`; `douyin/app-v3/user-profile`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/xingtu-kolid-by-sec-user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sec_user_id\\\": \\\"MS4wLjABAAAAXakJHNxB0cmKZ6c6FthE2_vA7he6kHmgSBp9YjggHR8\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sec_user_id\\\": \\\"MS4wLjABAAAAXakJHNxB0cmKZ6c6FthE2_vA7he6kHmgSBp9YjggHR8\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/xingtu-kolid-by-sec-user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sec_user_id\\\": \\\"MS4wLjABAAAAXakJHNxB0cmKZ6c6FthE2_vA7he6kHmgSBp9YjggHR8\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/xingtu-kolid-by-sec-user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-sec-user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-sec-user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-sec-user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/xingtu-kolid-by-sec-user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get XingTu kolid by Douyin sec_user_id" + modelName: "Douyin XingTu kolId Lookup" modelId: "douyin/xingtu/xingtu-kolid-by-sec-user-id" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu/xingtu-kolid-by-uid.md b/model-api-reference/platform-apis/douyin/xingtu/xingtu-kolid-by-uid.md index 3d33013f..082211c4 100644 --- a/model-api-reference/platform-apis/douyin/xingtu/xingtu-kolid-by-uid.md +++ b/model-api-reference/platform-apis/douyin/xingtu/xingtu-kolid-by-uid.md @@ -1,13 +1,13 @@ --- -title: "Get XingTu kolid by Douyin User ID API Reference" -description: "SandBase API operation douyin/xingtu/xingtu-kolid-by-uid." +title: "Douyin XingTu KOL ID by User ID API Reference" +description: "SandBase API reference for model douyin/xingtu/xingtu-kolid-by-uid. Call /v1/api/douyin/xingtu/xingtu-kolid-by-uid; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu/xingtu-kolid-by-uid" -apiReferenceJson: "{\"title\":\"Get XingTu kolid by Douyin User ID\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/xingtu-kolid-by-uid\",\"description\":\"Get XingTu kolid by Douyin User ID Price: 0.001$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID, can be obtained from the following interfaces:\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/xingtu-kolid-by-uid \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/xingtu-kolid-by-uid\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/xingtu-kolid-by-uid\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-uid\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-uid\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-uid\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-uid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-uid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/xingtu-kolid-by-uid\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin XingTu KOL ID by User ID\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/xingtu-kolid-by-uid\",\"description\":\"Returns the XingTu creator identifier, nickname, tag, and performance metrics for a specific Douyin account using their Douyin user ID. Price: 0.001$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID, can be obtained from the following interfaces: `douyin/web/user-profile-by-uid`; `douyin/web/user-profile-by-short-id`; `douyin/web/user-profile`; `douyin/web/user-profile-v2`; `douyin/web/user-profile-v3`; `douyin/app-v3/user-profile`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/xingtu-kolid-by-uid \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"92769419069\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"92769419069\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/xingtu-kolid-by-uid\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"92769419069\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/xingtu-kolid-by-uid\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-uid\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-uid\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-uid\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-uid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-uid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/xingtu-kolid-by-uid\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get XingTu kolid by Douyin User ID" + modelName: "Douyin XingTu KOL ID by User ID" modelId: "douyin/xingtu/xingtu-kolid-by-uid" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/douyin/xingtu/xingtu-kolid-by-unique-id.md b/model-api-reference/platform-apis/douyin/xingtu/xingtu-kolid-by-unique-id.md index cc33984b..405d2213 100644 --- a/model-api-reference/platform-apis/douyin/xingtu/xingtu-kolid-by-unique-id.md +++ b/model-api-reference/platform-apis/douyin/xingtu/xingtu-kolid-by-unique-id.md @@ -1,13 +1,13 @@ --- -title: "Get XingTu kolid by Douyin unique_id API Reference" -description: "SandBase API operation douyin/xingtu/xingtu-kolid-by-unique-id." +title: "Douyin XingTu KOL ID by Unique ID API Reference" +description: "SandBase API reference for model douyin/xingtu/xingtu-kolid-by-unique-id. Call /v1/api/douyin/xingtu/xingtu-kolid-by-unique-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/douyin/xingtu/xingtu-kolid-by-unique-id" -apiReferenceJson: "{\"title\":\"Get XingTu kolid by Douyin unique_id\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/xingtu-kolid-by-unique-id\",\"description\":\"Get XingTu kolid by Douyin unique_id Price: 0.001$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"unique_id\",\"type\":\"string\",\"required\":true,\"description\":\"unique_id, can be obtained from the following interfaces:\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/xingtu-kolid-by-unique-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"unique_id\\\": \\\"unique_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"unique_id\\\": \\\"unique_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/xingtu-kolid-by-unique-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"unique_id\\\": \\\"unique_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/xingtu-kolid-by-unique-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-unique-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-unique-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-unique-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-unique-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-unique-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/xingtu-kolid-by-unique-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Douyin XingTu KOL ID by Unique ID\",\"operation\":\"Douyin API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/douyin/xingtu/xingtu-kolid-by-unique-id\",\"description\":\"Returns a Douyin XingTu KOL identifier and profile summary for a given account unique identifier. Useful for mapping public user accounts to XingTu creator data. Price: 0.001$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"unique_id\",\"type\":\"string\",\"required\":true,\"description\":\"unique_id, can be obtained from the following interfaces: `douyin/web/user-profile`; `douyin/web/user-profile-v2`; `douyin/web/user-profile-v3`; `douyin/app-v3/user-profile`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, douyin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/douyin/xingtu/xingtu-kolid-by-unique-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"unique_id\\\": \\\"dyczxzs\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"unique_id\\\": \\\"dyczxzs\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/xingtu-kolid-by-unique-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"unique_id\\\": \\\"dyczxzs\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/douyin/xingtu/xingtu-kolid-by-unique-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-unique-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-unique-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-unique-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-unique-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"douyin/xingtu/xingtu-kolid-by-unique-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"douyin/xingtu/xingtu-kolid-by-unique-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get XingTu kolid by Douyin unique_id" + modelName: "Douyin XingTu KOL ID by Unique ID" modelId: "douyin/xingtu/xingtu-kolid-by-unique-id" vendor: "Douyin" vendorSlug: "douyin" diff --git a/model-api-reference/platform-apis/exa/answer.md b/model-api-reference/platform-apis/exa/answer.md index 2c51096f..f4a714c3 100644 --- a/model-api-reference/platform-apis/exa/answer.md +++ b/model-api-reference/platform-apis/exa/answer.md @@ -1,13 +1,13 @@ --- -title: "Exa Answer API Reference" -description: "SandBase API operation exa/answer." +title: "Exa Question Answering API Reference" +description: "Exa Question Answering API reference for SandBase. Use model exa/answer with /v1/api/exa/answer; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/exa/answer" -apiReferenceJson: "{\"title\":\"Exa Answer\",\"operation\":\"Exa API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/exa/answer\",\"description\":\"Get a direct, cited answer to a question. Retrieve relevant sources and generate a direct answer or detailed summary with source citations.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"The question to answer.\"},{\"name\":\"type\",\"type\":\"string\",\"required\":false,\"description\":\"Retrieval mode used to gather sources before answering.\",\"constraints\":\"Allowed values: auto, fast, instant, deep-lite, deep, deep-reasoning\"},{\"name\":\"text\",\"type\":\"boolean\",\"required\":false,\"description\":\"Include the full page text of each citation.\"},{\"name\":\"outputSchema\",\"type\":\"object\",\"required\":false,\"description\":\"JSON Schema for a structured answer output.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"web-search, question-answering\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/exa/answer \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"query\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"query\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/exa/answer\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"query\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/exa/answer\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"exa/answer\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"exa/answer\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"exa/answer\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"exa/answer\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"exa/answer\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"exa/answer\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Exa Question Answering\",\"operation\":\"Exa API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/exa/answer\",\"description\":\"Returns direct answers and cited web sources for a given query. Supports custom retrieval modes, optional full page text, and structured schema definitions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"The question to answer.\"},{\"name\":\"type\",\"type\":\"string\",\"required\":false,\"description\":\"Retrieval mode used to gather sources before answering.\",\"constraints\":\"Allowed values: auto, fast, instant, deep-lite, deep, deep-reasoning\"},{\"name\":\"text\",\"type\":\"boolean\",\"required\":false,\"description\":\"Include the full page text of each citation.\"},{\"name\":\"outputSchema\",\"type\":\"object\",\"required\":false,\"description\":\"JSON Schema for a structured answer output.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"web-search, question-answering\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/exa/answer \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/exa/answer\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/exa/answer\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"exa/answer\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"exa/answer\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"exa/answer\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"exa/answer\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"exa/answer\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"exa/answer\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Exa Answer" + modelName: "Exa Question Answering" modelId: "exa/answer" vendor: "Exa" vendorSlug: "exa" diff --git a/model-api-reference/platform-apis/exa/contents.md b/model-api-reference/platform-apis/exa/contents.md index 925c037b..1b9b5afb 100644 --- a/model-api-reference/platform-apis/exa/contents.md +++ b/model-api-reference/platform-apis/exa/contents.md @@ -1,11 +1,11 @@ --- title: "Exa Contents API Reference" -description: "SandBase API operation exa/contents." +description: "Exa Contents API reference for SandBase. Use model exa/contents with /v1/api/exa/contents; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/exa/contents" -apiReferenceJson: "{\"title\":\"Exa Contents\",\"operation\":\"Exa API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/exa/contents\",\"description\":\"Extract full page contents for a set of URLs. Fetch full page text, summaries, and metadata for a list of URLs with cached instant results or live crawl fallback.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"ids\",\"type\":\"array\",\"required\":true,\"description\":\"The URLs (or Exa result ids) to fetch contents for.\"},{\"name\":\"text\",\"type\":\"boolean\",\"required\":false,\"description\":\"Return the full page text.\"},{\"name\":\"highlights\",\"type\":\"boolean\",\"required\":false,\"description\":\"Return highlighted relevant snippets.\"},{\"name\":\"summary\",\"type\":\"boolean\",\"required\":false,\"description\":\"Return an AI-generated summary of the page.\"},{\"name\":\"subpages\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of linked subpages to also fetch.\"},{\"name\":\"livecrawl\",\"type\":\"string\",\"required\":false,\"description\":\"Freshness policy: always live-crawl, fall back to live crawl on cache miss, or never live-crawl.\",\"constraints\":\"Allowed values: always, fallback, never\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"web-scraping, content-extraction\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/exa/contents \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"ids\\\": [\\n \\\"ids_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"ids\\\": [\\n \\\"ids_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/exa/contents\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"ids\\\": [\\n \\\"ids_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/exa/contents\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"exa/contents\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"exa/contents\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"exa/contents\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"exa/contents\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"exa/contents\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"exa/contents\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Exa Contents\",\"operation\":\"Exa API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/exa/contents\",\"description\":\"Extract clean page contents for a list of URLs: full text, highlights, AI summaries and metadata, from cache or with a live crawl.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"ids\",\"type\":\"array\",\"required\":true,\"description\":\"The URLs (or Exa result ids) to fetch contents for.\"},{\"name\":\"text\",\"type\":\"boolean\",\"required\":false,\"description\":\"Return the full page text.\"},{\"name\":\"highlights\",\"type\":\"boolean\",\"required\":false,\"description\":\"Return highlighted relevant snippets.\"},{\"name\":\"summary\",\"type\":\"boolean\",\"required\":false,\"description\":\"Return an AI-generated summary of the page.\"},{\"name\":\"subpages\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of linked subpages to also fetch.\"},{\"name\":\"livecrawl\",\"type\":\"string\",\"required\":false,\"description\":\"Freshness policy: always live-crawl, fall back to live crawl on cache miss, or never live-crawl.\",\"constraints\":\"Allowed values: always, fallback, never\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"web-scraping, content-extraction\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/exa/contents \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"ids\\\": [\\n \\\"https://developers.openai.com/codex\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"ids\\\": [\\n \\\"https://developers.openai.com/codex\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/exa/contents\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"ids\\\": [\\n \\\"https://developers.openai.com/codex\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/exa/contents\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"exa/contents\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"exa/contents\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"exa/contents\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"exa/contents\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"exa/contents\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"exa/contents\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: modelName: "Exa Contents" modelId: "exa/contents" diff --git a/model-api-reference/platform-apis/exa/search.md b/model-api-reference/platform-apis/exa/search.md index 2f29d222..68bd3e53 100644 --- a/model-api-reference/platform-apis/exa/search.md +++ b/model-api-reference/platform-apis/exa/search.md @@ -1,11 +1,11 @@ --- title: "Exa Search API Reference" -description: "SandBase API operation exa/search." +description: "Exa Search API reference for SandBase. Use model exa/search with /v1/api/exa/search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/exa/search" -apiReferenceJson: "{\"title\":\"Exa Search\",\"operation\":\"Exa API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/exa/search\",\"description\":\"Run a neural semantic web search. Search the open web with a natural-language query and get back the most relevant results, optionally with page contents inline.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"The natural-language search query.\"},{\"name\":\"type\",\"type\":\"string\",\"required\":false,\"description\":\"Search mode. auto lets Exa choose; the deep modes trade latency for higher-quality retrieval.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, fast, instant, deep-lite, deep, deep-reasoning\"},{\"name\":\"numResults\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of results to return.\",\"default\":\"10\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"category\",\"type\":\"string\",\"required\":false,\"description\":\"Optional hint about the kind of pages to prioritize.\",\"constraints\":\"Allowed values: company, research paper, news, personal site, financial report, people\"},{\"name\":\"includeDomains\",\"type\":\"array\",\"required\":false,\"description\":\"Only return results from these domains.\"},{\"name\":\"excludeDomains\",\"type\":\"array\",\"required\":false,\"description\":\"Exclude results from these domains.\"},{\"name\":\"startPublishedDate\",\"type\":\"string\",\"required\":false,\"description\":\"Only return results published on or after this ISO 8601 date.\",\"constraints\":\"Format: date-time\"},{\"name\":\"endPublishedDate\",\"type\":\"string\",\"required\":false,\"description\":\"Only return results published on or before this ISO 8601 date.\",\"constraints\":\"Format: date-time\"},{\"name\":\"contents\",\"type\":\"object\",\"required\":false,\"description\":\"Content options to return alongside each result.\"},{\"name\":\"contents.highlights\",\"type\":\"boolean\",\"required\":false,\"description\":\"Return highlighted relevant snippets.\"},{\"name\":\"contents.summary\",\"type\":\"boolean\",\"required\":false,\"description\":\"Return an AI-generated summary of the page.\"},{\"name\":\"contents.text\",\"type\":\"boolean\",\"required\":false,\"description\":\"Return the full page text.\"},{\"name\":\"outputSchema\",\"type\":\"object\",\"required\":false,\"description\":\"JSON Schema used to synthesize a structured output from the results.\"},{\"name\":\"systemPrompt\",\"type\":\"string\",\"required\":false,\"description\":\"Instruction that guides how the structured output is generated.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"web-search\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/exa/search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"OpenAI Codex documentation\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"OpenAI Codex documentation\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/exa/search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"OpenAI Codex documentation\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/exa/search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"exa/search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"exa/search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"exa/search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"exa/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"exa/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"exa/search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Exa Search\",\"operation\":\"Exa API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/exa/search\",\"description\":\"Neural web search for AI apps and agents. Ask in natural language and get the most relevant pages, with optional highlights, summaries or full text, domain filters and date ranges.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"The natural-language search query.\"},{\"name\":\"type\",\"type\":\"string\",\"required\":false,\"description\":\"Search mode. auto lets Exa choose; the deep modes trade latency for higher-quality retrieval.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, fast, instant, deep-lite, deep, deep-reasoning\"},{\"name\":\"numResults\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of results to return.\",\"default\":\"10\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"category\",\"type\":\"string\",\"required\":false,\"description\":\"Optional hint about the kind of pages to prioritize.\",\"constraints\":\"Allowed values: company, research paper, news, personal site, financial report, people\"},{\"name\":\"includeDomains\",\"type\":\"array\",\"required\":false,\"description\":\"Only return results from these domains.\"},{\"name\":\"excludeDomains\",\"type\":\"array\",\"required\":false,\"description\":\"Exclude results from these domains.\"},{\"name\":\"startPublishedDate\",\"type\":\"string\",\"required\":false,\"description\":\"Only return results published on or after this ISO 8601 date.\",\"constraints\":\"Format: date-time\"},{\"name\":\"endPublishedDate\",\"type\":\"string\",\"required\":false,\"description\":\"Only return results published on or before this ISO 8601 date.\",\"constraints\":\"Format: date-time\"},{\"name\":\"contents\",\"type\":\"object\",\"required\":false,\"description\":\"Content options to return alongside each result.\"},{\"name\":\"contents.highlights\",\"type\":\"boolean\",\"required\":false,\"description\":\"Return highlighted relevant snippets.\"},{\"name\":\"contents.summary\",\"type\":\"boolean\",\"required\":false,\"description\":\"Return an AI-generated summary of the page.\"},{\"name\":\"contents.text\",\"type\":\"boolean\",\"required\":false,\"description\":\"Return the full page text.\"},{\"name\":\"outputSchema\",\"type\":\"object\",\"required\":false,\"description\":\"JSON Schema used to synthesize a structured output from the results.\"},{\"name\":\"systemPrompt\",\"type\":\"string\",\"required\":false,\"description\":\"Instruction that guides how the structured output is generated.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"web-search\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/exa/search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"OpenAI Codex documentation\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"OpenAI Codex documentation\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/exa/search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"OpenAI Codex documentation\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/exa/search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"exa/search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"exa/search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"exa/search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"exa/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"exa/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"exa/search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: modelName: "Exa Search" modelId: "exa/search" diff --git a/model-api-reference/platform-apis/firecrawl/batch/scrape.md b/model-api-reference/platform-apis/firecrawl/batch/scrape.md index 26798ede..701e9c5c 100644 --- a/model-api-reference/platform-apis/firecrawl/batch/scrape.md +++ b/model-api-reference/platform-apis/firecrawl/batch/scrape.md @@ -1,11 +1,11 @@ --- title: "Firecrawl Batch Scrape API Reference" -description: "SandBase API operation firecrawl/batch/scrape." +description: "Firecrawl Batch Scrape API reference for SandBase. Use model firecrawl/batch/scrape with /v1/api/firecrawl/batch/scrape; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/firecrawl/batch/scrape" -apiReferenceJson: "{\"title\":\"Firecrawl Batch Scrape\",\"operation\":\"Firecrawl API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/firecrawl/batch/scrape\",\"description\":\"Scrape multiple URLs in a single batch job. Submit a list of URLs and poll for results as each page completes.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this async operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"urls\",\"type\":\"array\",\"required\":true,\"description\":\"List of URLs to scrape.\"},{\"name\":\"formats\",\"type\":\"array\",\"required\":false,\"description\":\"Output formats for each page.\"}]},{\"title\":\"Response Schema\",\"description\":\"The 202 submit response is pending or running and contains only id, status, and model. Poll GET /v1/run/{id} for the same public status envelope.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"web-scraping, batch, async\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/firecrawl/batch/scrape \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"urls\\\": [\\n \\\"urls_0_\\\"\\n ]\\n}'\\n\\n# Poll a non-terminal run by its returned opaque id\\ncurl https://api.sandbase.ai/v1/api/firecrawl/batch/scrape/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"urls\\\": [\\n \\\"urls_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/firecrawl/batch/scrape\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(1)\\n poll = requests.get(f\\\"https://api.sandbase.ai/v1/api/firecrawl/batch/scrape/{result['id']}\\\", headers=headers)\\n poll.raise_for_status()\\n result = poll.json()\\nif result[\\\"status\\\"] in (\\\"failed\\\", \\\"timeout\\\"):\\n raise RuntimeError(result.get(\\\"error\\\", {}).get(\\\"message\\\", f\\\"run ended with {result['status']}\\\"))\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"urls\\\": [\\n \\\"urls_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/firecrawl/batch/scrape\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 1000));\\n const poll = await fetch(`https://api.sandbase.ai/v1/api/firecrawl/batch/scrape/${result.id}`, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\nif ([\\\"failed\\\", \\\"timeout\\\"].includes(result.status)) {\\n throw new Error(result.error?.message ?? `run ended with ${result.status}`);\\n}\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"firecrawl/batch/scrape\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"firecrawl/batch/scrape\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"firecrawl/batch/scrape\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"firecrawl/batch/scrape\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"firecrawl/batch/scrape\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"pending\\\",\\n \\\"model\\\": \\\"firecrawl/batch/scrape\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Firecrawl Batch Scrape\",\"operation\":\"Firecrawl API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/firecrawl/batch/scrape\",\"description\":\"Scrape multiple URLs in a single batch job. Submit a list of URLs and poll for results as each page completes.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this async operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"urls\",\"type\":\"array\",\"required\":true,\"description\":\"List of URLs to scrape.\"},{\"name\":\"formats\",\"type\":\"array\",\"required\":false,\"description\":\"Output formats for each page.\"}]},{\"title\":\"Response Schema\",\"description\":\"The 202 submit response is pending or running and contains only id, status, and model. Poll GET /v1/run/{id} for the same public status envelope.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"web-scraping, batch, async\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/firecrawl/batch/scrape \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"urls\\\": [\\n \\\"urls_0_\\\"\\n ]\\n}'\\n\\n# Poll a non-terminal run by its returned opaque id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"urls\\\": [\\n \\\"urls_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/firecrawl/batch/scrape\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(1)\\n poll = requests.get(f\\\"https://api.sandbase.ai/v1/run/{result['id']}\\\", headers=headers)\\n poll.raise_for_status()\\n result = poll.json()\\nif result[\\\"status\\\"] in (\\\"failed\\\", \\\"timeout\\\"):\\n raise RuntimeError(result.get(\\\"error\\\", {}).get(\\\"message\\\", f\\\"run ended with {result['status']}\\\"))\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"urls\\\": [\\n \\\"urls_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/firecrawl/batch/scrape\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 1000));\\n const poll = await fetch(`https://api.sandbase.ai/v1/run/${result.id}`, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\nif ([\\\"failed\\\", \\\"timeout\\\"].includes(result.status)) {\\n throw new Error(result.error?.message ?? `run ended with ${result.status}`);\\n}\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"firecrawl/batch/scrape\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"firecrawl/batch/scrape\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"firecrawl/batch/scrape\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"firecrawl/batch/scrape\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"firecrawl/batch/scrape\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"pending\\\",\\n \\\"model\\\": \\\"firecrawl/batch/scrape\\\"\\n}\"}}" seo: modelName: "Firecrawl Batch Scrape" modelId: "firecrawl/batch/scrape" diff --git a/model-api-reference/platform-apis/firecrawl/crawl.md b/model-api-reference/platform-apis/firecrawl/crawl.md index a5f649e3..68df41ba 100644 --- a/model-api-reference/platform-apis/firecrawl/crawl.md +++ b/model-api-reference/platform-apis/firecrawl/crawl.md @@ -1,11 +1,11 @@ --- title: "Firecrawl Crawl API Reference" -description: "SandBase API operation firecrawl/crawl." +description: "Firecrawl Crawl API reference for SandBase. Use model firecrawl/crawl with /v1/api/firecrawl/crawl; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/firecrawl/crawl" -apiReferenceJson: "{\"title\":\"Firecrawl Crawl\",\"operation\":\"Firecrawl API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/firecrawl/crawl\",\"description\":\"Crawl an entire website starting from a URL. Discovers and scrapes all reachable pages, returning clean markdown for each. Runs asynchronously — submit the job, then poll for results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this async operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"The starting URL to crawl.\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of pages to crawl.\",\"constraints\":\"Range: 1 to 10000\"},{\"name\":\"scrapeOptions\",\"type\":\"object\",\"required\":false,\"description\":\"Options passed to the scraper for each page.\"},{\"name\":\"scrapeOptions.formats\",\"type\":\"array\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The 202 submit response is pending or running and contains only id, status, and model. Poll GET /v1/run/{id} for the same public status envelope.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"web-crawling, site-scraping, async\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/firecrawl/crawl \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\\n\\n# Poll a non-terminal run by its returned opaque id\\ncurl https://api.sandbase.ai/v1/api/firecrawl/crawl/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/firecrawl/crawl\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(1)\\n poll = requests.get(f\\\"https://api.sandbase.ai/v1/api/firecrawl/crawl/{result['id']}\\\", headers=headers)\\n poll.raise_for_status()\\n result = poll.json()\\nif result[\\\"status\\\"] in (\\\"failed\\\", \\\"timeout\\\"):\\n raise RuntimeError(result.get(\\\"error\\\", {}).get(\\\"message\\\", f\\\"run ended with {result['status']}\\\"))\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/firecrawl/crawl\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 1000));\\n const poll = await fetch(`https://api.sandbase.ai/v1/api/firecrawl/crawl/${result.id}`, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\nif ([\\\"failed\\\", \\\"timeout\\\"].includes(result.status)) {\\n throw new Error(result.error?.message ?? `run ended with ${result.status}`);\\n}\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"firecrawl/crawl\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"firecrawl/crawl\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"firecrawl/crawl\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"firecrawl/crawl\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"firecrawl/crawl\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"pending\\\",\\n \\\"model\\\": \\\"firecrawl/crawl\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Firecrawl Crawl\",\"operation\":\"Firecrawl API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/firecrawl/crawl\",\"description\":\"Crawl an entire website starting from a URL. Discovers and scrapes all reachable pages, returning clean markdown for each. Runs asynchronously — submit the job, then poll for results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this async operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"The starting URL to crawl.\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum number of pages to crawl.\",\"constraints\":\"Range: 1 to 10000\"},{\"name\":\"scrapeOptions\",\"type\":\"object\",\"required\":false,\"description\":\"Options passed to the scraper for each page.\"},{\"name\":\"scrapeOptions.formats\",\"type\":\"array\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The 202 submit response is pending or running and contains only id, status, and model. Poll GET /v1/run/{id} for the same public status envelope.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"web-crawling, site-scraping, async\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/firecrawl/crawl \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://example.com/resource\\\",\\n \\\"limit\\\": 1\\n}'\\n\\n# Poll a non-terminal run by its returned opaque id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://example.com/resource\\\",\\n \\\"limit\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/firecrawl/crawl\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(1)\\n poll = requests.get(f\\\"https://api.sandbase.ai/v1/run/{result['id']}\\\", headers=headers)\\n poll.raise_for_status()\\n result = poll.json()\\nif result[\\\"status\\\"] in (\\\"failed\\\", \\\"timeout\\\"):\\n raise RuntimeError(result.get(\\\"error\\\", {}).get(\\\"message\\\", f\\\"run ended with {result['status']}\\\"))\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://example.com/resource\\\",\\n \\\"limit\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/firecrawl/crawl\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 1000));\\n const poll = await fetch(`https://api.sandbase.ai/v1/run/${result.id}`, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\nif ([\\\"failed\\\", \\\"timeout\\\"].includes(result.status)) {\\n throw new Error(result.error?.message ?? `run ended with ${result.status}`);\\n}\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"firecrawl/crawl\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"firecrawl/crawl\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"firecrawl/crawl\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"firecrawl/crawl\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"firecrawl/crawl\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"pending\\\",\\n \\\"model\\\": \\\"firecrawl/crawl\\\"\\n}\"}}" seo: modelName: "Firecrawl Crawl" modelId: "firecrawl/crawl" diff --git a/model-api-reference/platform-apis/firecrawl/map.md b/model-api-reference/platform-apis/firecrawl/map.md index 3740e4eb..02b01e63 100644 --- a/model-api-reference/platform-apis/firecrawl/map.md +++ b/model-api-reference/platform-apis/firecrawl/map.md @@ -1,13 +1,13 @@ --- -title: "Firecrawl Map API Reference" -description: "SandBase API operation firecrawl/map." +title: "Firecrawl URL Discovery API Reference" +description: "Firecrawl URL Discovery API reference for SandBase. Use model firecrawl/map with /v1/api/firecrawl/map; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/firecrawl/map" -apiReferenceJson: "{\"title\":\"Firecrawl Map\",\"operation\":\"Firecrawl API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/firecrawl/map\",\"description\":\"Discover all URLs on a website. Returns a list of links reachable from the starting URL.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"The HTTPS URL to map.\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum number of links to discover.\",\"constraints\":\"Range: 1 to 100000\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"site-mapping, crawling, url-discovery\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/firecrawl/map \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\",\\n \\\"limit\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\",\\n \\\"limit\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/firecrawl/map\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\",\\n \\\"limit\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/firecrawl/map\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"firecrawl/map\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"firecrawl/map\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"firecrawl/map\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"firecrawl/map\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"firecrawl/map\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"firecrawl/map\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Firecrawl URL Discovery\",\"operation\":\"Firecrawl API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/firecrawl/map\",\"description\":\"Discovers and returns URLs found across a target website. Provide an HTTPS target address and define the maximum link count to map site pages.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"The HTTPS URL to map.\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":true,\"description\":\"Maximum number of links to discover.\",\"constraints\":\"Range: 1 to 100000\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"site-mapping, crawling, url-discovery\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/firecrawl/map \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://example.com/resource\\\",\\n \\\"limit\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://example.com/resource\\\",\\n \\\"limit\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/firecrawl/map\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://example.com/resource\\\",\\n \\\"limit\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/firecrawl/map\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"firecrawl/map\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"firecrawl/map\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"firecrawl/map\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"firecrawl/map\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"firecrawl/map\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"firecrawl/map\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Firecrawl Map" + modelName: "Firecrawl URL Discovery" modelId: "firecrawl/map" vendor: "Firecrawl" vendorSlug: "firecrawl" diff --git a/model-api-reference/platform-apis/firecrawl/scrape.md b/model-api-reference/platform-apis/firecrawl/scrape.md index 5fa0468c..04555134 100644 --- a/model-api-reference/platform-apis/firecrawl/scrape.md +++ b/model-api-reference/platform-apis/firecrawl/scrape.md @@ -1,13 +1,13 @@ --- -title: "Firecrawl Scrape API Reference" -description: "SandBase API operation firecrawl/scrape." +title: "Firecrawl Page Scraper API Reference" +description: "Firecrawl Page Scraper API reference for SandBase. Use model firecrawl/scrape with /v1/api/firecrawl/scrape; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/firecrawl/scrape" -apiReferenceJson: "{\"title\":\"Firecrawl Scrape\",\"operation\":\"Firecrawl API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/firecrawl/scrape\",\"description\":\"Scrape a single URL and return its main content as clean markdown. Handles JavaScript-rendered pages automatically.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"The HTTPS URL to scrape.\"},{\"name\":\"proxy\",\"type\":\"string\",\"required\":false,\"description\":\"Proxy tier.\",\"constraints\":\"Allowed values: basic\"},{\"name\":\"formats\",\"type\":\"array\",\"required\":false,\"description\":\"Output formats.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"web-scraping, content-extraction, markdown\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/firecrawl/scrape \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/firecrawl/scrape\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/firecrawl/scrape\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"firecrawl/scrape\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"firecrawl/scrape\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"firecrawl/scrape\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"firecrawl/scrape\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"firecrawl/scrape\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"firecrawl/scrape\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Firecrawl Page Scraper\",\"operation\":\"Firecrawl API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/firecrawl/scrape\",\"description\":\"Scrapes content from target web pages with automatic handling of JavaScript rendering. Returns extracted page data based on specified formats and proxy settings.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"The HTTPS URL to scrape.\"},{\"name\":\"proxy\",\"type\":\"string\",\"required\":true,\"description\":\"Proxy tier.\",\"default\":\"basic\",\"constraints\":\"Allowed values: basic\"},{\"name\":\"formats\",\"type\":\"array\",\"required\":false,\"description\":\"Output formats.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"web-scraping, content-extraction, markdown\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/firecrawl/scrape \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://example.com/resource\\\",\\n \\\"proxy\\\": \\\"basic\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://example.com/resource\\\",\\n \\\"proxy\\\": \\\"basic\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/firecrawl/scrape\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://example.com/resource\\\",\\n \\\"proxy\\\": \\\"basic\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/firecrawl/scrape\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"firecrawl/scrape\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"firecrawl/scrape\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"firecrawl/scrape\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"firecrawl/scrape\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"firecrawl/scrape\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"firecrawl/scrape\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Firecrawl Scrape" + modelName: "Firecrawl Page Scraper" modelId: "firecrawl/scrape" vendor: "Firecrawl" vendorSlug: "firecrawl" diff --git a/model-api-reference/platform-apis/firecrawl/search.md b/model-api-reference/platform-apis/firecrawl/search.md index 76af168b..b1172c3b 100644 --- a/model-api-reference/platform-apis/firecrawl/search.md +++ b/model-api-reference/platform-apis/firecrawl/search.md @@ -1,13 +1,13 @@ --- -title: "Firecrawl Search API Reference" -description: "SandBase API operation firecrawl/search." +title: "Firecrawl Web Search API Reference" +description: "Firecrawl Web Search API reference for SandBase. Use model firecrawl/search with /v1/api/firecrawl/search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/firecrawl/search" -apiReferenceJson: "{\"title\":\"Firecrawl Search\",\"operation\":\"Firecrawl API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/firecrawl/search\",\"description\":\"Run a web search and return ranked results with titles, URLs, and snippets.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"The search query.\",\"constraints\":\"Length: 0 to 500\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of results to return.\",\"constraints\":\"Range: 1 to 100\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"web-search, search\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/firecrawl/search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"query\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"query\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/firecrawl/search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"query\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/firecrawl/search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"firecrawl/search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"firecrawl/search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"firecrawl/search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"firecrawl/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"firecrawl/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"firecrawl/search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Firecrawl Web Search\",\"operation\":\"Firecrawl API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/firecrawl/search\",\"description\":\"Searches the web using a text query and returns relevant pages with their titles, descriptions, and source URLs. Supports adjusting result counts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"The search query.\",\"constraints\":\"Length: 0 to 500\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of results to return.\",\"constraints\":\"Range: 1 to 100\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"web-search, search\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/firecrawl/search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/firecrawl/search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/firecrawl/search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"firecrawl/search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"firecrawl/search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"firecrawl/search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"firecrawl/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"firecrawl/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"firecrawl/search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Firecrawl Search" + modelName: "Firecrawl Web Search" modelId: "firecrawl/search" vendor: "Firecrawl" vendorSlug: "firecrawl" diff --git a/model-api-reference/platform-apis/index.md b/model-api-reference/platform-apis/index.md index c52016c0..38404f94 100644 --- a/model-api-reference/platform-apis/index.md +++ b/model-api-reference/platform-apis/index.md @@ -1,6 +1,6 @@ --- title: APIs -description: "SandBase API operation index." +description: Browse SandBase API operations by platform and open an operation page for its exact request format. aside: false outline: false generatedBy: "sandbase-platform-api-reference" diff --git a/model-api-reference/platform-apis/instagram/v1/cities.md b/model-api-reference/platform-apis/instagram/v1/cities.md index fd9245c7..f88f19a6 100644 --- a/model-api-reference/platform-apis/instagram/v1/cities.md +++ b/model-api-reference/platform-apis/instagram/v1/cities.md @@ -1,13 +1,13 @@ --- -title: "Get cities by country API Reference" -description: "SandBase API operation instagram/v1/cities." +title: "Instagram Cities by Country API Reference" +description: "Instagram Cities by Country API reference for SandBase. Use model instagram/v1/cities with /v1/api/instagram/v1/cities; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v1/cities" -apiReferenceJson: "{\"title\":\"Get cities by country\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/cities\",\"description\":\"Get cities/regions list of specified country\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"country_code\",\"type\":\"string\",\"required\":true,\"description\":\"Country code, e.g. US, CN, JP\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\",\"default\":\"1\",\"constraints\":\"Minimum: 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/cities \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"country_code\\\": \\\"US\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"country_code\\\": \\\"US\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/cities\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"country_code\\\": \\\"US\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/cities\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/cities\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/cities\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/cities\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/cities\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/cities\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/cities\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Cities by Country\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/cities\",\"description\":\"Returns a list of Instagram cities and regions for a specified country code. Allows developers to look up location identifiers by passing pagination parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"country_code\",\"type\":\"string\",\"required\":true,\"description\":\"Country code, e.g. US, CN, JP\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\",\"default\":\"1\",\"constraints\":\"Minimum: 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/cities \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"country_code\\\": \\\"US\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"country_code\\\": \\\"US\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/cities\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"country_code\\\": \\\"US\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/cities\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/cities\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/cities\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/cities\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/cities\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/cities\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/cities\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get cities by country" + modelName: "Instagram Cities by Country" modelId: "instagram/v1/cities" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v1/comment-replies.md b/model-api-reference/platform-apis/instagram/v1/comment-replies.md deleted file mode 100644 index 390935d8..00000000 --- a/model-api-reference/platform-apis/instagram/v1/comment-replies.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get comment replies API Reference — Instagram / Comment Replies" -description: "SandBase API operation instagram/v1/comment-replies." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/instagram/v1/comment-replies" -apiReferenceJson: "{\"title\":\"Get comment replies\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/comment-replies\",\"description\":\"Get child comments (replies) under a specific comment with pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"comment_id\",\"type\":\"string\",\"required\":true,\"description\":\"Parent comment ID (get from pk field in fetch_post_comments_v2 response)\"},{\"name\":\"media_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID (Media ID)\"},{\"name\":\"min_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request, get from previous response's `page_info.next_min_id`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/comment-replies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"media_id\\\": \\\"media_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"media_id\\\": \\\"media_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/comment-replies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"media_id\\\": \\\"media_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/comment-replies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/comment-replies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/comment-replies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/comment-replies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/comment-replies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get comment replies" - modelId: "instagram/v1/comment-replies" - vendor: "Instagram" - vendorSlug: "instagram" - modelSlug: "v1/comment-replies" - protocol: "API Reference" - endpoint: "/v1/api/instagram/v1/comment-replies" - publishedAt: "" - capabilities: ["api","instagram"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/instagram/v1/explore-sections.md b/model-api-reference/platform-apis/instagram/v1/explore-sections.md deleted file mode 100644 index 49fef514..00000000 --- a/model-api-reference/platform-apis/instagram/v1/explore-sections.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get explore page sections API Reference" -description: "SandBase API operation instagram/v1/explore-sections." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/instagram/v1/explore-sections" -apiReferenceJson: "{\"title\":\"Get explore page sections\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/explore-sections\",\"description\":\"Get all sections and subsections of Instagram explore page\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/explore-sections \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"instagram/v1/explore-sections\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"instagram/v1/explore-sections\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/explore-sections\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"instagram/v1/explore-sections\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/explore-sections\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/explore-sections\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/explore-sections\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/explore-sections\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/explore-sections\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/explore-sections\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/explore-sections\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get explore page sections" - modelId: "instagram/v1/explore-sections" - vendor: "Instagram" - vendorSlug: "instagram" - modelSlug: "v1/explore-sections" - protocol: "API Reference" - endpoint: "/v1/api/instagram/v1/explore-sections" - publishedAt: "" - capabilities: ["api","instagram"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/instagram/v1/hashtag-posts.md b/model-api-reference/platform-apis/instagram/v1/hashtag-posts.md index 7d673263..d69ae4ed 100644 --- a/model-api-reference/platform-apis/instagram/v1/hashtag-posts.md +++ b/model-api-reference/platform-apis/instagram/v1/hashtag-posts.md @@ -1,13 +1,13 @@ --- -title: "Get posts by hashtag API Reference" -description: "SandBase API operation instagram/v1/hashtag-posts." +title: "Instagram Hashtag Posts (V1) API Reference" +description: "Instagram Hashtag Posts (V1) API reference for SandBase. Use model instagram/v1/hashtag-posts with /v1/api/instagram/v1/hashtag-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v1/hashtag-posts" -apiReferenceJson: "{\"title\":\"Get posts by hashtag\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/hashtag-posts\",\"description\":\"Get posts under specific hashtag\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request\"},{\"name\":\"hashtag\",\"type\":\"string\",\"required\":true,\"description\":\"Hashtag name (without #)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/hashtag-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"hashtag\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"hashtag\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/hashtag-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"hashtag\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/hashtag-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/hashtag-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/hashtag-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/hashtag-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/hashtag-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/hashtag-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/hashtag-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Hashtag Posts (V1)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/hashtag-posts\",\"description\":\"Returns public Instagram posts associated with a specific hashtag. Filter by hashtag name and paginate through media results using a cursor.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request\"},{\"name\":\"hashtag\",\"type\":\"string\",\"required\":true,\"description\":\"Hashtag name (without #)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/hashtag-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"hashtag\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"hashtag\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/hashtag-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"hashtag\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/hashtag-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/hashtag-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/hashtag-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/hashtag-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/hashtag-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/hashtag-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/hashtag-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get posts by hashtag" + modelName: "Instagram Hashtag Posts (V1)" modelId: "instagram/v1/hashtag-posts" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v1/location-info.md b/model-api-reference/platform-apis/instagram/v1/location-info.md index 9a82646c..e050c1a8 100644 --- a/model-api-reference/platform-apis/instagram/v1/location-info.md +++ b/model-api-reference/platform-apis/instagram/v1/location-info.md @@ -1,13 +1,13 @@ --- -title: "Get location info API Reference — Instagram V1 / Location Info" -description: "SandBase API operation instagram/v1/location-info." +title: "Instagram Location Details (V1) API Reference" +description: "SandBase API reference for model instagram/v1/location-info. Call /v1/api/instagram/v1/location-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v1/location-info" -apiReferenceJson: "{\"title\":\"Get location info\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/location-info\",\"description\":\"Get detailed information of specified location\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"location_id\",\"type\":\"string\",\"required\":true,\"description\":\"Location ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/location-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"location_id\\\": \\\"703457703\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"location_id\\\": \\\"703457703\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/location-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"location_id\\\": \\\"703457703\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/location-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/location-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/location-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/location-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/location-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/location-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/location-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Location Details (V1)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/location-info\",\"description\":\"Returns detailed metadata and profile information for a specified Instagram location using its unique identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"location_id\",\"type\":\"string\",\"required\":true,\"description\":\"Location ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/location-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"location_id\\\": \\\"703457703\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"location_id\\\": \\\"703457703\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/location-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"location_id\\\": \\\"703457703\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/location-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/location-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/location-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/location-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/location-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/location-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/location-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get location info" + modelName: "Instagram Location Details (V1)" modelId: "instagram/v1/location-info" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v1/location-posts.md b/model-api-reference/platform-apis/instagram/v1/location-posts.md index 45ebafdb..dbc1fa83 100644 --- a/model-api-reference/platform-apis/instagram/v1/location-posts.md +++ b/model-api-reference/platform-apis/instagram/v1/location-posts.md @@ -1,13 +1,13 @@ --- -title: "Get posts by location API Reference" -description: "SandBase API operation instagram/v1/location-posts." +title: "Instagram Location Posts (V1) API Reference" +description: "SandBase API reference for model instagram/v1/location-posts. Call /v1/api/instagram/v1/location-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v1/location-posts" -apiReferenceJson: "{\"title\":\"Get posts by location\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/location-posts\",\"description\":\"Get posts tagged at specified location\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request\"},{\"name\":\"location_id\",\"type\":\"string\",\"required\":true,\"description\":\"Location ID\"},{\"name\":\"tab\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method, ranked(top)/recent(latest)\",\"default\":\"ranked\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/location-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"location_id\\\": \\\"703457703\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"location_id\\\": \\\"703457703\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/location-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"location_id\\\": \\\"703457703\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/location-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/location-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/location-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/location-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/location-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/location-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/location-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Location Posts (V1)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/location-posts\",\"description\":\"Returns posts tagged at a designated location. Supports sorting by top or available posts alongside cursor-based pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request\"},{\"name\":\"location_id\",\"type\":\"string\",\"required\":true,\"description\":\"Location ID\"},{\"name\":\"tab\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method, ranked(top)/recent(latest)\",\"default\":\"ranked\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/location-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"location_id\\\": \\\"703457703\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"location_id\\\": \\\"703457703\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/location-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"location_id\\\": \\\"703457703\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/location-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/location-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/location-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/location-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/location-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/location-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/location-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get posts by location" + modelName: "Instagram Location Posts (V1)" modelId: "instagram/v1/location-posts" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v1/locations.md b/model-api-reference/platform-apis/instagram/v1/locations.md index e7450a94..afba6e42 100644 --- a/model-api-reference/platform-apis/instagram/v1/locations.md +++ b/model-api-reference/platform-apis/instagram/v1/locations.md @@ -1,13 +1,13 @@ --- -title: "Get locations by city API Reference" -description: "SandBase API operation instagram/v1/locations." +title: "Instagram City Locations API Reference" +description: "Instagram City Locations API reference for SandBase. Use model instagram/v1/locations with /v1/api/instagram/v1/locations; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v1/locations" -apiReferenceJson: "{\"title\":\"Get locations by city\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/locations\",\"description\":\"Get Instagram locations list of specified city\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"city_id\",\"type\":\"string\",\"required\":true,\"description\":\"City ID (from fetch_cities API)\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\",\"constraints\":\"Minimum: 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/locations \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"city_id\\\": \\\"city_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"city_id\\\": \\\"city_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/locations\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"city_id\\\": \\\"city_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/locations\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/locations\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/locations\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/locations\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/locations\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/locations\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/locations\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram City Locations\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/locations\",\"description\":\"Returns a list of Instagram location points for a designated city. Filter results using the city identifier and paginate through records by page number.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"city_id\",\"type\":\"string\",\"required\":true,\"description\":\"City ID (from fetch_cities API)\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\",\"constraints\":\"Minimum: 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/locations \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"city_id\\\": \\\"city_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"city_id\\\": \\\"city_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/locations\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"city_id\\\": \\\"city_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/locations\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/locations\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/locations\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/locations\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/locations\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/locations\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/locations\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get locations by city" + modelName: "Instagram City Locations" modelId: "instagram/v1/locations" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v1/media-id-to-shortcode.md b/model-api-reference/platform-apis/instagram/v1/media-id-to-shortcode.md index 6227cac8..7d63fb60 100644 --- a/model-api-reference/platform-apis/instagram/v1/media-id-to-shortcode.md +++ b/model-api-reference/platform-apis/instagram/v1/media-id-to-shortcode.md @@ -1,13 +1,13 @@ --- -title: "Convert media ID to shortcode API Reference — Instagram Shortcode" -description: "SandBase API operation instagram/v1/media-id-to-shortcode." +title: "Instagram Media ID to Shortcode (V1) API Reference" +description: "SandBase API reference for model instagram/v1/media-id-to-shortcode. Call /v1/api/instagram/v1/media-id-to-shortcode; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v1/media-id-to-shortcode" -apiReferenceJson: "{\"title\":\"Convert media ID to shortcode\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/media-id-to-shortcode\",\"description\":\"Convert Instagram post media ID to shortcode Shortcode can be used to construct post URL: instagram.com/p/{shortcode}/\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"media_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post media ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/media-id-to-shortcode \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"media_id\\\": \\\"3774507992167247878\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"media_id\\\": \\\"3774507992167247878\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/media-id-to-shortcode\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"media_id\\\": \\\"3774507992167247878\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/media-id-to-shortcode\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/media-id-to-shortcode\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/media-id-to-shortcode\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/media-id-to-shortcode\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/media-id-to-shortcode\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/media-id-to-shortcode\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/media-id-to-shortcode\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Media ID to Shortcode (V1)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/media-id-to-shortcode\",\"description\":\"Converts an Instagram post media ID into a shortcode used to construct standard post URLs. Accepts a numerical `media_id` parameter to look up the corresponding code.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"media_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post media ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/media-id-to-shortcode \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"media_id\\\": \\\"3774507992167247878\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"media_id\\\": \\\"3774507992167247878\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/media-id-to-shortcode\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"media_id\\\": \\\"3774507992167247878\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/media-id-to-shortcode\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/media-id-to-shortcode\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/media-id-to-shortcode\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/media-id-to-shortcode\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/media-id-to-shortcode\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/media-id-to-shortcode\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/media-id-to-shortcode\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Convert media ID to shortcode" + modelName: "Instagram Media ID to Shortcode (V1)" modelId: "instagram/v1/media-id-to-shortcode" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v1/music-posts.md b/model-api-reference/platform-apis/instagram/v1/music-posts.md index d96e4f2b..55bc93bb 100644 --- a/model-api-reference/platform-apis/instagram/v1/music-posts.md +++ b/model-api-reference/platform-apis/instagram/v1/music-posts.md @@ -1,13 +1,13 @@ --- -title: "Get posts using specific music API Reference" -description: "SandBase API operation instagram/v1/music-posts." +title: "Instagram Music Posts (V1) API Reference" +description: "Instagram Music Posts (V1) API reference for SandBase. Use model instagram/v1/music-posts with /v1/api/instagram/v1/music-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v1/music-posts" -apiReferenceJson: "{\"title\":\"Get posts using specific music\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/music-posts\",\"description\":\"Get Reels and posts using specific music/audio\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request\"},{\"name\":\"music_id\",\"type\":\"string\",\"required\":false,\"description\":\"Music ID (alternative to music_url)\"},{\"name\":\"music_url\",\"type\":\"string\",\"required\":false,\"description\":\"Music URL, ID will be extracted automatically (alternative to music_id)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/music-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"instagram/v1/music-posts\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"instagram/v1/music-posts\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/music-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"instagram/v1/music-posts\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/music-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/music-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/music-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/music-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/music-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/music-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/music-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Music Posts (V1)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/music-posts\",\"description\":\"Returns Reels and posts associated with a specific audio track using either an audio ID or URL. Supports cursor pagination to browse results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request\"},{\"name\":\"music_id\",\"type\":\"string\",\"required\":false,\"description\":\"Music ID (alternative to music_url)\"},{\"name\":\"music_url\",\"type\":\"string\",\"required\":false,\"description\":\"Music URL, ID will be extracted automatically (alternative to music_id)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/music-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/music-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/music-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/music-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/music-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/music-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/music-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/music-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/music-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get posts using specific music" + modelName: "Instagram Music Posts (V1)" modelId: "instagram/v1/music-posts" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v1/post-by-id.md b/model-api-reference/platform-apis/instagram/v1/post-by-id.md index 1b852976..401397d4 100644 --- a/model-api-reference/platform-apis/instagram/v1/post-by-id.md +++ b/model-api-reference/platform-apis/instagram/v1/post-by-id.md @@ -1,13 +1,13 @@ --- -title: "Get post by ID API Reference" -description: "SandBase API operation instagram/v1/post-by-id." +title: "Instagram Post Details by ID API Reference" +description: "Instagram Post Details by ID API reference for SandBase. Use model instagram/v1/post-by-id with /v1/api/instagram/v1/post-by-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v1/post-by-id" -apiReferenceJson: "{\"title\":\"Get post by ID\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/post-by-id\",\"description\":\"Get single post details by ID\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"post_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/post-by-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"post_id\\\": \\\"3742637871112032100\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"post_id\\\": \\\"3742637871112032100\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/post-by-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"post_id\\\": \\\"3742637871112032100\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/post-by-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/post-by-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/post-by-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/post-by-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/post-by-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/post-by-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/post-by-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Post Details by ID\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/post-by-id\",\"description\":\"Returns detailed information for a single Instagram post using its unique post identifier. Use this endpoint to look up post metadata and display resources.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"post_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/post-by-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"post_id\\\": \\\"3742637871112032100\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"post_id\\\": \\\"3742637871112032100\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/post-by-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"post_id\\\": \\\"3742637871112032100\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/post-by-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/post-by-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/post-by-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/post-by-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/post-by-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/post-by-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/post-by-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get post by ID" + modelName: "Instagram Post Details by ID" modelId: "instagram/v1/post-by-id" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v1/post-by-url-v2.md b/model-api-reference/platform-apis/instagram/v1/post-by-url-v2.md index 9b9094e7..9336a714 100644 --- a/model-api-reference/platform-apis/instagram/v1/post-by-url-v2.md +++ b/model-api-reference/platform-apis/instagram/v1/post-by-url-v2.md @@ -1,13 +1,13 @@ --- -title: "Get post by URL V2 API Reference" -description: "SandBase API operation instagram/v1/post-by-url-v2." +title: "Instagram Post Details by URL (V2) API Reference" +description: "SandBase API reference for model instagram/v1/post-by-url-v2. Call /v1/api/instagram/v1/post-by-url-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v1/post-by-url-v2" -apiReferenceJson: "{\"title\":\"Get post by URL V2\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/post-by-url-v2\",\"description\":\"Get single post details by URL V2 - Data is not as complete as V1, but faster. Recommended for downloading large number of posts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"post_url\",\"type\":\"string\",\"required\":true,\"description\":\"Post URL\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/post-by-url-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"post_url\\\": \\\"https://www.instagram.com/p/DPwhVB-jo9k/\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"post_url\\\": \\\"https://www.instagram.com/p/DPwhVB-jo9k/\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/post-by-url-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"post_url\\\": \\\"https://www.instagram.com/p/DPwhVB-jo9k/\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/post-by-url-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/post-by-url-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/post-by-url-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/post-by-url-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/post-by-url-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/post-by-url-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/post-by-url-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Post Details by URL (V2)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/post-by-url-v2\",\"description\":\"Returns post details and media links for a specific Instagram post URL. Designed for faster responses when handling high-volume post lookups.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"post_url\",\"type\":\"string\",\"required\":true,\"description\":\"Post URL\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/post-by-url-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"post_url\\\": \\\"https://www.instagram.com/p/DPwhVB-jo9k/\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"post_url\\\": \\\"https://www.instagram.com/p/DPwhVB-jo9k/\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/post-by-url-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"post_url\\\": \\\"https://www.instagram.com/p/DPwhVB-jo9k/\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/post-by-url-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/post-by-url-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/post-by-url-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/post-by-url-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/post-by-url-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/post-by-url-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/post-by-url-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get post by URL V2" + modelName: "Instagram Post Details by URL (V2)" modelId: "instagram/v1/post-by-url-v2" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v1/post-by-url.md b/model-api-reference/platform-apis/instagram/v1/post-by-url.md index a9c91fe6..10d92709 100644 --- a/model-api-reference/platform-apis/instagram/v1/post-by-url.md +++ b/model-api-reference/platform-apis/instagram/v1/post-by-url.md @@ -1,13 +1,13 @@ --- -title: "Get post by URL API Reference" -description: "SandBase API operation instagram/v1/post-by-url." +title: "Instagram Post Details by URL API Reference" +description: "Instagram Post Details by URL API reference for SandBase. Use model instagram/v1/post-by-url with /v1/api/instagram/v1/post-by-url; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v1/post-by-url" -apiReferenceJson: "{\"title\":\"Get post by URL\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/post-by-url\",\"description\":\"Get single post details by URL\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"post_url\",\"type\":\"string\",\"required\":true,\"description\":\"Post URL\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/post-by-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"post_url\\\": \\\"https://www.instagram.com/p/DPwhVB-jo9k/\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"post_url\\\": \\\"https://www.instagram.com/p/DPwhVB-jo9k/\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/post-by-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"post_url\\\": \\\"https://www.instagram.com/p/DPwhVB-jo9k/\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/post-by-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/post-by-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/post-by-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/post-by-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/post-by-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/post-by-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/post-by-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Post Details by URL\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/post-by-url\",\"description\":\"Returns details and display resources for a single Instagram post. Queries the platform using a target post link.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"post_url\",\"type\":\"string\",\"required\":true,\"description\":\"Post URL\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/post-by-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"post_url\\\": \\\"https://www.instagram.com/p/DPwhVB-jo9k/\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"post_url\\\": \\\"https://www.instagram.com/p/DPwhVB-jo9k/\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/post-by-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"post_url\\\": \\\"https://www.instagram.com/p/DPwhVB-jo9k/\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/post-by-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/post-by-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/post-by-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/post-by-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/post-by-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/post-by-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/post-by-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get post by URL" + modelName: "Instagram Post Details by URL" modelId: "instagram/v1/post-by-url" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v1/post-comments-v2.md b/model-api-reference/platform-apis/instagram/v1/post-comments-v2.md deleted file mode 100644 index 668960d0..00000000 --- a/model-api-reference/platform-apis/instagram/v1/post-comments-v2.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get post comments V2 API Reference" -description: "SandBase API operation instagram/v1/post-comments-v2." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/instagram/v1/post-comments-v2" -apiReferenceJson: "{\"title\":\"Get post comments V2\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/post-comments-v2\",\"description\":\"Get post comments list with pagination Returns more complete comment data including child comment previews and more metadata\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"media_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID (Media ID)\"},{\"name\":\"min_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request, get from previous response's `next_min_id`\"},{\"name\":\"sort_order\",\"type\":\"string\",\"required\":false,\"description\":\"Sorting method, popular/recent\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/post-comments-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"media_id\\\": \\\"media_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"media_id\\\": \\\"media_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/post-comments-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"media_id\\\": \\\"media_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/post-comments-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/post-comments-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/post-comments-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/post-comments-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/post-comments-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/post-comments-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/post-comments-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get post comments V2" - modelId: "instagram/v1/post-comments-v2" - vendor: "Instagram" - vendorSlug: "instagram" - modelSlug: "v1/post-comments-v2" - protocol: "API Reference" - endpoint: "/v1/api/instagram/v1/post-comments-v2" - publishedAt: "" - capabilities: ["api","instagram"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/instagram/v1/related-profiles.md b/model-api-reference/platform-apis/instagram/v1/related-profiles.md index a219b6d6..6fcdcf8d 100644 --- a/model-api-reference/platform-apis/instagram/v1/related-profiles.md +++ b/model-api-reference/platform-apis/instagram/v1/related-profiles.md @@ -1,13 +1,13 @@ --- -title: "Get related profiles API Reference" -description: "SandBase API operation instagram/v1/related-profiles." +title: "Instagram Related Profiles API Reference" +description: "SandBase API reference for model instagram/v1/related-profiles. Call /v1/api/instagram/v1/related-profiles; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v1/related-profiles" -apiReferenceJson: "{\"title\":\"Get related profiles\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/related-profiles\",\"description\":\"Get related/similar user recommendations\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/related-profiles \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/related-profiles\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/related-profiles\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/related-profiles\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/related-profiles\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/related-profiles\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/related-profiles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/related-profiles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/related-profiles\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Related Profiles\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/related-profiles\",\"description\":\"Returns related and similar user profile recommendations for a target Instagram account. Takes an Instagram user ID to look up connected profiles, usernames, and profile picture URLs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/related-profiles \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"25025320\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"25025320\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/related-profiles\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"25025320\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/related-profiles\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/related-profiles\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/related-profiles\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/related-profiles\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/related-profiles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/related-profiles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/related-profiles\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get related profiles" + modelName: "Instagram Related Profiles" modelId: "instagram/v1/related-profiles" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v1/search.md b/model-api-reference/platform-apis/instagram/v1/search.md index 44472f37..545a6386 100644 --- a/model-api-reference/platform-apis/instagram/v1/search.md +++ b/model-api-reference/platform-apis/instagram/v1/search.md @@ -1,13 +1,13 @@ --- -title: "Search users/hashtags/places API Reference" -description: "SandBase API operation instagram/v1/search." +title: "Instagram Keyword Search API Reference" +description: "Instagram Keyword Search API reference for SandBase. Use model instagram/v1/search with /v1/api/instagram/v1/search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v1/search" -apiReferenceJson: "{\"title\":\"Search users/hashtags/places\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/search\",\"description\":\"Search users, hashtags or places on Instagram\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"select\",\"type\":\"string\",\"required\":false,\"description\":\"Filter type (optional)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Keyword Search\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/search\",\"description\":\"Returns Instagram users, hashtags, or places matching a search keyword. Filter results by specific target types using an optional filter parameter.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"select\",\"type\":\"string\",\"required\":false,\"description\":\"Filter type (optional)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search users/hashtags/places" + modelName: "Instagram Keyword Search" modelId: "instagram/v1/search" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v1/section-posts.md b/model-api-reference/platform-apis/instagram/v1/section-posts.md index 65ac86d9..8290a04b 100644 --- a/model-api-reference/platform-apis/instagram/v1/section-posts.md +++ b/model-api-reference/platform-apis/instagram/v1/section-posts.md @@ -1,13 +1,13 @@ --- -title: "Get posts by section API Reference" -description: "SandBase API operation instagram/v1/section-posts." +title: "Instagram Explore Section Posts API Reference" +description: "SandBase API reference for model instagram/v1/section-posts. Call /v1/api/instagram/v1/section-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v1/section-posts" -apiReferenceJson: "{\"title\":\"Get posts by section\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/section-posts\",\"description\":\"Get posts under specific explore section\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Count per page, default 20\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request\"},{\"name\":\"section_id\",\"type\":\"string\",\"required\":true,\"description\":\"Section ID (from fetch_explore_sections API)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/section-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"section_id\\\": \\\"section_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"section_id\\\": \\\"section_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/section-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"section_id\\\": \\\"section_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/section-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/section-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/section-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/section-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/section-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/section-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/section-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Explore Section Posts\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/section-posts\",\"description\":\"Returns posts listed under a specific Instagram explore section. Supports pagination controls and page size configuration by section ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Count per page, default 20\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request\"},{\"name\":\"section_id\",\"type\":\"string\",\"required\":true,\"description\":\"Section ID (from fetch_explore_sections API)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/section-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"section_id\\\": \\\"section_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"section_id\\\": \\\"section_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/section-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"section_id\\\": \\\"section_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/section-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/section-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/section-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/section-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/section-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/section-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/section-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get posts by section" + modelName: "Instagram Explore Section Posts" modelId: "instagram/v1/section-posts" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v1/shortcode-to-media-id.md b/model-api-reference/platform-apis/instagram/v1/shortcode-to-media-id.md index 3b30550c..3c637963 100644 --- a/model-api-reference/platform-apis/instagram/v1/shortcode-to-media-id.md +++ b/model-api-reference/platform-apis/instagram/v1/shortcode-to-media-id.md @@ -1,13 +1,13 @@ --- -title: "Convert shortcode to media ID API Reference — Instagram Media Id" -description: "SandBase API operation instagram/v1/shortcode-to-media-id." +title: "Instagram Shortcode to Media ID API Reference" +description: "SandBase API reference for model instagram/v1/shortcode-to-media-id. Call /v1/api/instagram/v1/shortcode-to-media-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v1/shortcode-to-media-id" -apiReferenceJson: "{\"title\":\"Convert shortcode to media ID\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/shortcode-to-media-id\",\"description\":\"Convert Instagram post shortcode to media ID Shortcode is the unique identifier in post URL, e.g., DRhvwVLAHAG in instagram.com/p/DRhvwVLAHAG/\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"shortcode\",\"type\":\"string\",\"required\":true,\"description\":\"Post shortcode\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/shortcode-to-media-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"shortcode\\\": \\\"DRhvwVLAHAG\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"shortcode\\\": \\\"DRhvwVLAHAG\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/shortcode-to-media-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"shortcode\\\": \\\"DRhvwVLAHAG\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/shortcode-to-media-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/shortcode-to-media-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/shortcode-to-media-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/shortcode-to-media-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/shortcode-to-media-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/shortcode-to-media-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/shortcode-to-media-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Shortcode to Media ID\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/shortcode-to-media-id\",\"description\":\"Convert an Instagram post shortcode (from instagram.com/p//) into the numeric media ID required by the Instagram post, comments and likes APIs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"shortcode\",\"type\":\"string\",\"required\":true,\"description\":\"Post shortcode\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/shortcode-to-media-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"shortcode\\\": \\\"DRhvwVLAHAG\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"shortcode\\\": \\\"DRhvwVLAHAG\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/shortcode-to-media-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"shortcode\\\": \\\"DRhvwVLAHAG\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/shortcode-to-media-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/shortcode-to-media-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/shortcode-to-media-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/shortcode-to-media-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/shortcode-to-media-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/shortcode-to-media-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/shortcode-to-media-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Convert shortcode to media ID" + modelName: "Instagram Shortcode to Media ID" modelId: "instagram/v1/shortcode-to-media-id" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v1/user-about-info.md b/model-api-reference/platform-apis/instagram/v1/user-about-info.md deleted file mode 100644 index 379deede..00000000 --- a/model-api-reference/platform-apis/instagram/v1/user-about-info.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get user about info API Reference — Instagram / User About Info" -description: "SandBase API operation instagram/v1/user-about-info." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/instagram/v1/user-about-info" -apiReferenceJson: "{\"title\":\"Get user about info\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/user-about-info\",\"description\":\"Get user's \\\"About This Account\\\" information Contains account creation date, location, verification status and more\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram user ID (numeric format)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/user-about-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-about-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-about-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/user-about-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/user-about-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/user-about-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/user-about-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/user-about-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/user-about-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get user about info" - modelId: "instagram/v1/user-about-info" - vendor: "Instagram" - vendorSlug: "instagram" - modelSlug: "v1/user-about-info" - protocol: "API Reference" - endpoint: "/v1/api/instagram/v1/user-about-info" - publishedAt: "" - capabilities: ["api","instagram"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/instagram/v1/user-id-to-username.md b/model-api-reference/platform-apis/instagram/v1/user-id-to-username.md deleted file mode 100644 index 471d0a56..00000000 --- a/model-api-reference/platform-apis/instagram/v1/user-id-to-username.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get user info by user ID API Reference — Instagram Id To Username" -description: "SandBase API operation instagram/v1/user-id-to-username." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/instagram/v1/user-id-to-username" -apiReferenceJson: "{\"title\":\"Get user info by user ID\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/user-id-to-username\",\"description\":\"Get user info by Instagram user ID Can be used to convert user ID to username and get full profile\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/user-id-to-username \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-id-to-username\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-id-to-username\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/user-id-to-username\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/user-id-to-username\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/user-id-to-username\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/user-id-to-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/user-id-to-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/user-id-to-username\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get user info by user ID" - modelId: "instagram/v1/user-id-to-username" - vendor: "Instagram" - vendorSlug: "instagram" - modelSlug: "v1/user-id-to-username" - protocol: "API Reference" - endpoint: "/v1/api/instagram/v1/user-id-to-username" - publishedAt: "" - capabilities: ["api","instagram"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/instagram/v1/user-info-by-id-v2.md b/model-api-reference/platform-apis/instagram/v1/user-info-by-id-v2.md index 27fe89fd..11f6a575 100644 --- a/model-api-reference/platform-apis/instagram/v1/user-info-by-id-v2.md +++ b/model-api-reference/platform-apis/instagram/v1/user-info-by-id-v2.md @@ -1,13 +1,13 @@ --- -title: "Get user data by user ID V2 API Reference" -description: "SandBase API operation instagram/v1/user-info-by-id-v2." +title: "Instagram User Details by ID (V2) API Reference" +description: "SandBase API reference for model instagram/v1/user-info-by-id-v2. Call /v1/api/instagram/v1/user-info-by-id-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v1/user-info-by-id-v2" -apiReferenceJson: "{\"title\":\"Get user data by user ID V2\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/user-info-by-id-v2\",\"description\":\"Get user data by Instagram user ID with more details\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-id-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-id-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-id-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-id-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-id-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-id-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-id-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-id-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/user-info-by-id-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Details by ID (V2)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/user-info-by-id-v2\",\"description\":\"Returns detailed Instagram user information including bio links by providing an account identifier. Query the endpoint using an Instagram user ID to inspect profile metadata.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-id-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"25025320\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"25025320\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-id-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"25025320\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-id-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-id-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-id-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-id-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-id-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-id-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/user-info-by-id-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user data by user ID V2" + modelName: "Instagram User Details by ID (V2)" modelId: "instagram/v1/user-info-by-id-v2" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v1/user-info-by-id.md b/model-api-reference/platform-apis/instagram/v1/user-info-by-id.md index 3ca5f3b3..37f31c70 100644 --- a/model-api-reference/platform-apis/instagram/v1/user-info-by-id.md +++ b/model-api-reference/platform-apis/instagram/v1/user-info-by-id.md @@ -1,13 +1,13 @@ --- -title: "Get user data by user ID API Reference" -description: "SandBase API operation instagram/v1/user-info-by-id." +title: "Instagram User Profile by ID API Reference" +description: "SandBase API reference for model instagram/v1/user-info-by-id. Call /v1/api/instagram/v1/user-info-by-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v1/user-info-by-id" -apiReferenceJson: "{\"title\":\"Get user data by user ID\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/user-info-by-id\",\"description\":\"Get user data by Instagram user ID\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/user-info-by-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Profile by ID\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/user-info-by-id\",\"description\":\"Returns Instagram account information and recent timeline media details for a specified account. Queries using the unique numerical user ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"25025320\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"25025320\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"25025320\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/user-info-by-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user data by user ID" + modelName: "Instagram User Profile by ID" modelId: "instagram/v1/user-info-by-id" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v1/user-info-by-username-v2.md b/model-api-reference/platform-apis/instagram/v1/user-info-by-username-v2.md index a2e26a38..73f80fbd 100644 --- a/model-api-reference/platform-apis/instagram/v1/user-info-by-username-v2.md +++ b/model-api-reference/platform-apis/instagram/v1/user-info-by-username-v2.md @@ -1,13 +1,13 @@ --- -title: "Get user data by username V2 API Reference" -description: "SandBase API operation instagram/v1/user-info-by-username-v2." +title: "Instagram User Data by Username (V2) API Reference" +description: "SandBase API reference for model instagram/v1/user-info-by-username-v2. Call /v1/api/instagram/v1/user-info-by-username-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v1/user-info-by-username-v2" -apiReferenceJson: "{\"title\":\"Get user data by username V2\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/user-info-by-username-v2\",\"description\":\"Get user data by Instagram username\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-username-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-username-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-username-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/user-info-by-username-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Data by Username (V2)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/user-info-by-username-v2\",\"description\":\"Returns user profile details and recent timeline media for a specified Instagram account. Input the target handle to retrieve media nodes and account data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-username-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-username-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-username-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/user-info-by-username-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user data by username V2" + modelName: "Instagram User Data by Username (V2)" modelId: "instagram/v1/user-info-by-username-v2" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v1/user-info-by-username-v3.md b/model-api-reference/platform-apis/instagram/v1/user-info-by-username-v3.md index 0e29ee42..383cabb1 100644 --- a/model-api-reference/platform-apis/instagram/v1/user-info-by-username-v3.md +++ b/model-api-reference/platform-apis/instagram/v1/user-info-by-username-v3.md @@ -1,13 +1,13 @@ --- -title: "Get user data by username V3 API Reference" -description: "SandBase API operation instagram/v1/user-info-by-username-v3." +title: "Instagram User Profile by Username (V3) API Reference" +description: "SandBase API reference for model instagram/v1/user-info-by-username-v3. Call /v1/api/instagram/v1/user-info-by-username-v3; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v1/user-info-by-username-v3" -apiReferenceJson: "{\"title\":\"Get user data by username V3\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/user-info-by-username-v3\",\"description\":\"Get user data by Instagram username with more details\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-username-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-username-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-username-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/user-info-by-username-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Profile by Username (V3)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/user-info-by-username-v3\",\"description\":\"Returns detailed Instagram user account information, including bio links, by querying an account handle.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-username-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-username-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-username-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/user-info-by-username-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user data by username V3" + modelName: "Instagram User Profile by Username (V3)" modelId: "instagram/v1/user-info-by-username-v3" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v1/user-info-by-username.md b/model-api-reference/platform-apis/instagram/v1/user-info-by-username.md index 23663836..3bf3c543 100644 --- a/model-api-reference/platform-apis/instagram/v1/user-info-by-username.md +++ b/model-api-reference/platform-apis/instagram/v1/user-info-by-username.md @@ -1,13 +1,13 @@ --- -title: "Get user data by username API Reference" -description: "SandBase API operation instagram/v1/user-info-by-username." +title: "Instagram User Info by Username API Reference" +description: "SandBase API reference for model instagram/v1/user-info-by-username. Call /v1/api/instagram/v1/user-info-by-username; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v1/user-info-by-username" -apiReferenceJson: "{\"title\":\"Get user data by username\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/user-info-by-username\",\"description\":\"Get user data by Instagram username\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-username \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-username\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-username\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/user-info-by-username\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Info by Username\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/user-info-by-username\",\"description\":\"Returns Instagram user profile details and related account information for a specified Instagram handle. Input a username to view public profile data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-username \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-username\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-info-by-username\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/user-info-by-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/user-info-by-username\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user data by username" + modelName: "Instagram User Info by Username" modelId: "instagram/v1/user-info-by-username" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v1/user-posts-v2.md b/model-api-reference/platform-apis/instagram/v1/user-posts-v2.md index 0b601a98..c45af7a3 100644 --- a/model-api-reference/platform-apis/instagram/v1/user-posts-v2.md +++ b/model-api-reference/platform-apis/instagram/v1/user-posts-v2.md @@ -1,13 +1,13 @@ --- -title: "Get user posts list V2 API Reference" -description: "SandBase API operation instagram/v1/user-posts-v2." +title: "Instagram User Posts (V1, V2) API Reference" +description: "Instagram User Posts (V1, V2) API reference for SandBase. Use model instagram/v1/user-posts-v2 with /v1/api/instagram/v1/user-posts-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v1/user-posts-v2" -apiReferenceJson: "{\"title\":\"Get user posts list V2\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/user-posts-v2\",\"description\":\"Get user posts list with pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Count per page, default 12\",\"default\":\"12\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"end_cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/user-posts-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-posts-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-posts-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/user-posts-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/user-posts-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/user-posts-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/user-posts-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/user-posts-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/user-posts-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Posts (V1, V2)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/user-posts-v2\",\"description\":\"Returns a paginated list of media posts for a specified Instagram account. Filter by user ID with support for custom page limits and cursor-based navigation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Count per page, default 12\",\"default\":\"12\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"end_cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/user-posts-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"25025320\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"25025320\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-posts-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"25025320\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-posts-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/user-posts-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/user-posts-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/user-posts-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/user-posts-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/user-posts-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/user-posts-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user posts list V2" + modelName: "Instagram User Posts (V1, V2)" modelId: "instagram/v1/user-posts-v2" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v1/user-posts.md b/model-api-reference/platform-apis/instagram/v1/user-posts.md index e7c276f5..09388be9 100644 --- a/model-api-reference/platform-apis/instagram/v1/user-posts.md +++ b/model-api-reference/platform-apis/instagram/v1/user-posts.md @@ -1,13 +1,13 @@ --- -title: "Get user posts list API Reference" -description: "SandBase API operation instagram/v1/user-posts." +title: "Instagram User Posts (V1) API Reference" +description: "Instagram User Posts (V1) API reference for SandBase. Use model instagram/v1/user-posts with /v1/api/instagram/v1/user-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v1/user-posts" -apiReferenceJson: "{\"title\":\"Get user posts list\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/user-posts\",\"description\":\"Get user posts list with pagination support\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Count per page, default 12\",\"default\":\"12\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/user-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/user-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/user-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/user-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/user-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Posts (V1)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/user-posts\",\"description\":\"Returns a paginated list of posts for a specified Instagram account. Results include captions, like counts, comment counts, and media details.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Count per page, default 12\",\"default\":\"12\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/user-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"25025320\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"25025320\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"25025320\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/user-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/user-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/user-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/user-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user posts list" + modelName: "Instagram User Posts (V1)" modelId: "instagram/v1/user-posts" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v1/user-reels.md b/model-api-reference/platform-apis/instagram/v1/user-reels.md index 513cc377..0c63930f 100644 --- a/model-api-reference/platform-apis/instagram/v1/user-reels.md +++ b/model-api-reference/platform-apis/instagram/v1/user-reels.md @@ -1,13 +1,13 @@ --- -title: "Get user Reels list API Reference" -description: "SandBase API operation instagram/v1/user-reels." +title: "Instagram User Reels (V1) API Reference" +description: "Instagram User Reels (V1) API reference for SandBase. Use model instagram/v1/user-reels with /v1/api/instagram/v1/user-reels; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v1/user-reels" -apiReferenceJson: "{\"title\":\"Get user Reels list\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/user-reels\",\"description\":\"Get user Reels list with pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Count per page, default 12\",\"default\":\"12\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/user-reels \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-reels\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-reels\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/user-reels\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/user-reels\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/user-reels\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/user-reels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/user-reels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/user-reels\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Reels (V1)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/user-reels\",\"description\":\"Returns a paginated list of Instagram Reels associated with a specific user account. Supports custom page sizes and cursor-based navigation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Count per page, default 12\",\"default\":\"12\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/user-reels \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"25025320\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"25025320\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-reels\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"25025320\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-reels\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/user-reels\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/user-reels\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/user-reels\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/user-reels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/user-reels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/user-reels\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user Reels list" + modelName: "Instagram User Reels (V1)" modelId: "instagram/v1/user-reels" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v1/user-reposts.md b/model-api-reference/platform-apis/instagram/v1/user-reposts.md index 6ad9843a..09786b84 100644 --- a/model-api-reference/platform-apis/instagram/v1/user-reposts.md +++ b/model-api-reference/platform-apis/instagram/v1/user-reposts.md @@ -1,13 +1,13 @@ --- -title: "Get user reposts list API Reference" -description: "SandBase API operation instagram/v1/user-reposts." +title: "Instagram User Reposts API Reference" +description: "Instagram User Reposts API reference for SandBase. Use model instagram/v1/user-reposts with /v1/api/instagram/v1/user-reposts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v1/user-reposts" -apiReferenceJson: "{\"title\":\"Get user reposts list\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/user-reposts\",\"description\":\"Get user reposts/shares list with pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/user-reposts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-reposts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-reposts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/user-reposts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/user-reposts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/user-reposts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/user-reposts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/user-reposts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/user-reposts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Reposts\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/user-reposts\",\"description\":\"Returns a paginated list of reposts and shared media for a specified Instagram account. Includes engagement metrics, captions, and original owner details.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/user-reposts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"25025320\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"25025320\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-reposts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"25025320\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-reposts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/user-reposts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/user-reposts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/user-reposts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/user-reposts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/user-reposts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/user-reposts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user reposts list" + modelName: "Instagram User Reposts" modelId: "instagram/v1/user-reposts" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v1/user-tagged-posts.md b/model-api-reference/platform-apis/instagram/v1/user-tagged-posts.md index 1eacac8b..f3f42b72 100644 --- a/model-api-reference/platform-apis/instagram/v1/user-tagged-posts.md +++ b/model-api-reference/platform-apis/instagram/v1/user-tagged-posts.md @@ -1,13 +1,13 @@ --- -title: "Get user tagged posts API Reference — Instagram User Tagged Posts" -description: "SandBase API operation instagram/v1/user-tagged-posts." +title: "Instagram User Tagged Posts (V1) API Reference" +description: "SandBase API reference for model instagram/v1/user-tagged-posts. Call /v1/api/instagram/v1/user-tagged-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v1/user-tagged-posts" -apiReferenceJson: "{\"title\":\"Get user tagged posts\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/user-tagged-posts\",\"description\":\"Get posts where this user is tagged by others\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Count per page, default 12\",\"default\":\"12\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"end_cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/user-tagged-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-tagged-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-tagged-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/user-tagged-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/user-tagged-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/user-tagged-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/user-tagged-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/user-tagged-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/user-tagged-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Tagged Posts (V1)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v1/user-tagged-posts\",\"description\":\"Returns posts where a specific user is tagged by other accounts. Supports result limits and pagination through a cursor parameter.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Count per page, default 12\",\"default\":\"12\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"end_cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v1/user-tagged-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"25025320\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"25025320\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-tagged-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"25025320\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v1/user-tagged-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v1/user-tagged-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v1/user-tagged-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v1/user-tagged-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v1/user-tagged-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v1/user-tagged-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v1/user-tagged-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user tagged posts" + modelName: "Instagram User Tagged Posts (V1)" modelId: "instagram/v1/user-tagged-posts" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/comment-replies.md b/model-api-reference/platform-apis/instagram/v2/comment-replies.md index b99ddcb0..6ecd7cf0 100644 --- a/model-api-reference/platform-apis/instagram/v2/comment-replies.md +++ b/model-api-reference/platform-apis/instagram/v2/comment-replies.md @@ -1,13 +1,13 @@ --- -title: "Get comment replies — fz5sp0 API" -description: "SandBase API operation instagram/v2/comment-replies." +title: "Instagram Comment Replies (V2) API Reference" +description: "SandBase API reference for model instagram/v2/comment-replies. Call /v1/api/instagram/v2/comment-replies; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/comment-replies" -apiReferenceJson: "{\"title\":\"Get comment replies\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/comment-replies\",\"description\":\"Get list of replies to a comment Need to get comment ID from fetch_post_comments first Support pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"code_or_url\",\"type\":\"string\",\"required\":true,\"description\":\"Post shortcode or full URL\"},{\"name\":\"comment_id\",\"type\":\"string\",\"required\":true,\"description\":\"Comment ID\"},{\"name\":\"pagination_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token from previous response\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/comment-replies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"code_or_url\\\": \\\"DRhvwVLAHAG\\\",\\n \\\"comment_id\\\": \\\"18067775592012345\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"code_or_url\\\": \\\"DRhvwVLAHAG\\\",\\n \\\"comment_id\\\": \\\"18067775592012345\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/comment-replies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"code_or_url\\\": \\\"DRhvwVLAHAG\\\",\\n \\\"comment_id\\\": \\\"18067775592012345\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/comment-replies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/comment-replies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/comment-replies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/comment-replies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/comment-replies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Comment Replies (V2)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/comment-replies\",\"description\":\"Retrieves a paginated list of replies to an Instagram comment using the post URL or shortcode and the target comment ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"code_or_url\",\"type\":\"string\",\"required\":true,\"description\":\"Post shortcode or full URL\"},{\"name\":\"comment_id\",\"type\":\"string\",\"required\":true,\"description\":\"Comment ID\"},{\"name\":\"pagination_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token from previous response\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/comment-replies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"code_or_url\\\": \\\"DRhvwVLAHAG\\\",\\n \\\"comment_id\\\": \\\"18067775592012345\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"code_or_url\\\": \\\"DRhvwVLAHAG\\\",\\n \\\"comment_id\\\": \\\"18067775592012345\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/comment-replies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"code_or_url\\\": \\\"DRhvwVLAHAG\\\",\\n \\\"comment_id\\\": \\\"18067775592012345\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/comment-replies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/comment-replies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/comment-replies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/comment-replies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/comment-replies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get comment replies" + modelName: "Instagram Comment Replies (V2)" modelId: "instagram/v2/comment-replies" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/general-search.md b/model-api-reference/platform-apis/instagram/v2/general-search.md index 19abe5f0..bed05fc3 100644 --- a/model-api-reference/platform-apis/instagram/v2/general-search.md +++ b/model-api-reference/platform-apis/instagram/v2/general-search.md @@ -1,13 +1,13 @@ --- -title: "General search API Reference" -description: "SandBase API operation instagram/v2/general-search." +title: "Instagram General Search (V2) API Reference" +description: "SandBase API reference for model instagram/v2/general-search. Call /v1/api/instagram/v2/general-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/general-search" -apiReferenceJson: "{\"title\":\"General search\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/general-search\",\"description\":\"Perform general search on Instagram by keyword Support pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"pagination_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token from previous response\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/general-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"cat\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"cat\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/general-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"cat\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/general-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/general-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/general-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/general-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/general-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/general-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/general-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram General Search (V2)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/general-search\",\"description\":\"Returns Instagram search results matching a specified keyword, including media items, user profiles, and engagement statistics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"pagination_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token from previous response\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/general-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"cat\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"cat\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/general-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"cat\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/general-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/general-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/general-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/general-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/general-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/general-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/general-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "General search" + modelName: "Instagram General Search (V2)" modelId: "instagram/v2/general-search" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/hashtag-posts.md b/model-api-reference/platform-apis/instagram/v2/hashtag-posts.md index cc70b825..739344be 100644 --- a/model-api-reference/platform-apis/instagram/v2/hashtag-posts.md +++ b/model-api-reference/platform-apis/instagram/v2/hashtag-posts.md @@ -1,13 +1,13 @@ --- -title: "Get hashtag posts API Reference — Instagram V2 / Hashtag Posts" -description: "SandBase API operation instagram/v2/hashtag-posts." +title: "Instagram Hashtag Posts (V2) API Reference" +description: "Instagram Hashtag Posts (V2) API reference for SandBase. Use model instagram/v2/hashtag-posts with /v1/api/instagram/v2/hashtag-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/hashtag-posts" -apiReferenceJson: "{\"title\":\"Get hashtag posts\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/hashtag-posts\",\"description\":\"Get posts under specified hashtag Support filtering by top, recent, or reels only Support pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"feed_type\",\"type\":\"string\",\"required\":false,\"description\":\"Feed type \\\"top\\\", \\\"recent\\\", or \\\"reels\\\", default top\",\"default\":\"top\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Hashtag keyword (without #)\"},{\"name\":\"pagination_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token from previous response\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/hashtag-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"cat\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"cat\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/hashtag-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"cat\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/hashtag-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/hashtag-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/hashtag-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/hashtag-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/hashtag-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/hashtag-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/hashtag-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Hashtag Posts (V2)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/hashtag-posts\",\"description\":\"Returns posts associated with a specific hashtag. Supports filtering by top posts, recent posts, or reels along with cursor-based pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"feed_type\",\"type\":\"string\",\"required\":false,\"description\":\"Feed type \\\"top\\\", \\\"recent\\\", or \\\"reels\\\", default top\",\"default\":\"top\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Hashtag keyword (without #)\"},{\"name\":\"pagination_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token from previous response\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/hashtag-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"cat\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"cat\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/hashtag-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"cat\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/hashtag-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/hashtag-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/hashtag-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/hashtag-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/hashtag-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/hashtag-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/hashtag-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get hashtag posts" + modelName: "Instagram Hashtag Posts (V2)" modelId: "instagram/v2/hashtag-posts" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/highlight-stories.md b/model-api-reference/platform-apis/instagram/v2/highlight-stories.md index 8221508f..059bf293 100644 --- a/model-api-reference/platform-apis/instagram/v2/highlight-stories.md +++ b/model-api-reference/platform-apis/instagram/v2/highlight-stories.md @@ -1,13 +1,13 @@ --- -title: "Get highlight stories API Reference — Instagram Highlight Stories" -description: "SandBase API operation instagram/v2/highlight-stories." +title: "Instagram Highlight Stories API Reference" +description: "SandBase API reference for model instagram/v2/highlight-stories. Call /v1/api/instagram/v2/highlight-stories; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/highlight-stories" -apiReferenceJson: "{\"title\":\"Get highlight stories\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/highlight-stories\",\"description\":\"Get all stories in a specific highlight Need to get highlight ID from fetch_user_highlights first\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"highlight_id\",\"type\":\"string\",\"required\":true,\"description\":\"Highlight ID (with or without \\\"highlight:\\\" prefix)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/highlight-stories \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"highlight_id\\\": \\\"17895069621772257\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"highlight_id\\\": \\\"17895069621772257\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/highlight-stories\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"highlight_id\\\": \\\"17895069621772257\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/highlight-stories\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/highlight-stories\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/highlight-stories\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/highlight-stories\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/highlight-stories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/highlight-stories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/highlight-stories\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Highlight Stories\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/highlight-stories\",\"description\":\"Returns all stories contained within a specific Instagram highlight using its unique identifier. Requires an existing highlight ID obtained from user highlight endpoints.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"highlight_id\",\"type\":\"string\",\"required\":true,\"description\":\"Highlight ID (with or without \\\"highlight:\\\" prefix)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/highlight-stories \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"highlight_id\\\": \\\"17895069621772257\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"highlight_id\\\": \\\"17895069621772257\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/highlight-stories\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"highlight_id\\\": \\\"17895069621772257\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/highlight-stories\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/highlight-stories\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/highlight-stories\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/highlight-stories\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/highlight-stories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/highlight-stories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/highlight-stories\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get highlight stories" + modelName: "Instagram Highlight Stories" modelId: "instagram/v2/highlight-stories" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/location-posts.md b/model-api-reference/platform-apis/instagram/v2/location-posts.md index c8a38de5..ecf6b868 100644 --- a/model-api-reference/platform-apis/instagram/v2/location-posts.md +++ b/model-api-reference/platform-apis/instagram/v2/location-posts.md @@ -1,13 +1,13 @@ --- -title: "Get location posts API Reference — Instagram V2 / Location Posts" -description: "SandBase API operation instagram/v2/location-posts." +title: "Instagram Location Posts (V2) API Reference" +description: "SandBase API reference for model instagram/v2/location-posts. Call /v1/api/instagram/v2/location-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/location-posts" -apiReferenceJson: "{\"title\":\"Get location posts\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/location-posts\",\"description\":\"Get posts at specified location Location ID can be obtained from search_locations Support pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"location_id\",\"type\":\"string\",\"required\":true,\"description\":\"Location ID\"},{\"name\":\"pagination_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token from previous response\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/location-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"location_id\\\": \\\"331004901\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"location_id\\\": \\\"331004901\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/location-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"location_id\\\": \\\"331004901\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/location-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/location-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/location-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/location-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/location-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/location-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/location-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Location Posts (V2)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/location-posts\",\"description\":\"Returns public Instagram posts tagged at a designated location. Requires a location ID and supports pagination tokens for browsing subsequent results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"location_id\",\"type\":\"string\",\"required\":true,\"description\":\"Location ID\"},{\"name\":\"pagination_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token from previous response\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/location-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"location_id\\\": \\\"331004901\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"location_id\\\": \\\"331004901\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/location-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"location_id\\\": \\\"331004901\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/location-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/location-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/location-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/location-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/location-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/location-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/location-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get location posts" + modelName: "Instagram Location Posts (V2)" modelId: "instagram/v2/location-posts" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/media-id-to-shortcode.md b/model-api-reference/platform-apis/instagram/v2/media-id-to-shortcode.md index 4e1c901c..401866f1 100644 --- a/model-api-reference/platform-apis/instagram/v2/media-id-to-shortcode.md +++ b/model-api-reference/platform-apis/instagram/v2/media-id-to-shortcode.md @@ -1,13 +1,13 @@ --- -title: "Convert media ID to shortcode — yi600a API" -description: "SandBase API operation instagram/v2/media-id-to-shortcode." +title: "Instagram Media ID to Shortcode (V2) API Reference" +description: "SandBase API reference for model instagram/v2/media-id-to-shortcode. Call /v1/api/instagram/v2/media-id-to-shortcode; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/media-id-to-shortcode" -apiReferenceJson: "{\"title\":\"Convert media ID to shortcode\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/media-id-to-shortcode\",\"description\":\"Convert Instagram post media ID to shortcode Shortcode can be used to construct post URL: instagram.com/p/{shortcode}/\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"media_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post media ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/media-id-to-shortcode \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"media_id\\\": \\\"3774507992167247878\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"media_id\\\": \\\"3774507992167247878\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/media-id-to-shortcode\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"media_id\\\": \\\"3774507992167247878\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/media-id-to-shortcode\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/media-id-to-shortcode\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/media-id-to-shortcode\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/media-id-to-shortcode\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/media-id-to-shortcode\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/media-id-to-shortcode\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/media-id-to-shortcode\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Media ID to Shortcode (V2)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/media-id-to-shortcode\",\"description\":\"Converts an Instagram post media identifier into its corresponding shortcode. Useful for reconstructing direct post URLs from numeric identifiers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"media_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post media ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/media-id-to-shortcode \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"media_id\\\": \\\"3774507992167247878\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"media_id\\\": \\\"3774507992167247878\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/media-id-to-shortcode\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"media_id\\\": \\\"3774507992167247878\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/media-id-to-shortcode\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/media-id-to-shortcode\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/media-id-to-shortcode\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/media-id-to-shortcode\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/media-id-to-shortcode\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/media-id-to-shortcode\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/media-id-to-shortcode\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Convert media ID to shortcode" + modelName: "Instagram Media ID to Shortcode (V2)" modelId: "instagram/v2/media-id-to-shortcode" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/music-posts.md b/model-api-reference/platform-apis/instagram/v2/music-posts.md index 6560ac78..e42ed44e 100644 --- a/model-api-reference/platform-apis/instagram/v2/music-posts.md +++ b/model-api-reference/platform-apis/instagram/v2/music-posts.md @@ -1,13 +1,13 @@ --- -title: "Get music posts API Reference" -description: "SandBase API operation instagram/v2/music-posts." +title: "Instagram Music Posts (V2) API Reference" +description: "Instagram Music Posts (V2) API reference for SandBase. Use model instagram/v2/music-posts with /v1/api/instagram/v2/music-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/music-posts" -apiReferenceJson: "{\"title\":\"Get music posts\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/music-posts\",\"description\":\"Get posts using specified music Audio ID can be obtained from post details Support pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"audio_canonical_id\",\"type\":\"string\",\"required\":true,\"description\":\"Audio ID\"},{\"name\":\"pagination_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token from previous response\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/music-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"audio_canonical_id\\\": \\\"564058920086577\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"audio_canonical_id\\\": \\\"564058920086577\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/music-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"audio_canonical_id\\\": \\\"564058920086577\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/music-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/music-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/music-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/music-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/music-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/music-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/music-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Music Posts (V2)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/music-posts\",\"description\":\"Returns Instagram posts that use a specific audio track identified by its audio ID. Supports paginated results using a pagination token.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"audio_canonical_id\",\"type\":\"string\",\"required\":true,\"description\":\"Audio ID\"},{\"name\":\"pagination_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token from previous response\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/music-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"audio_canonical_id\\\": \\\"564058920086577\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"audio_canonical_id\\\": \\\"564058920086577\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/music-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"audio_canonical_id\\\": \\\"564058920086577\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/music-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/music-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/music-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/music-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/music-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/music-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/music-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get music posts" + modelName: "Instagram Music Posts (V2)" modelId: "instagram/v2/music-posts" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/post-comments.md b/model-api-reference/platform-apis/instagram/v2/post-comments.md index 1303df0f..c9be3fe5 100644 --- a/model-api-reference/platform-apis/instagram/v2/post-comments.md +++ b/model-api-reference/platform-apis/instagram/v2/post-comments.md @@ -1,13 +1,13 @@ --- -title: "Get post comments API Reference — Instagram V2 / Post Comments" -description: "SandBase API operation instagram/v2/post-comments." +title: "Instagram Post Comments (V2) API Reference" +description: "Instagram Post Comments (V2) API reference for SandBase. Use model instagram/v2/post-comments with /v1/api/instagram/v2/post-comments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/post-comments" -apiReferenceJson: "{\"title\":\"Get post comments\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/post-comments\",\"description\":\"Get list of comments on the post Support sorting by recent or popular Support pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"code_or_url\",\"type\":\"string\",\"required\":true,\"description\":\"Post shortcode or full URL\"},{\"name\":\"pagination_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token from previous response\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_by\",\"type\":\"string\",\"required\":false,\"description\":\"Sort by \\\"recent\\\" or \\\"popular\\\", default recent\",\"default\":\"recent\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/post-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"code_or_url\\\": \\\"DUajw4YkorV\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"code_or_url\\\": \\\"DUajw4YkorV\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/post-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"code_or_url\\\": \\\"DUajw4YkorV\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/post-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/post-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/post-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/post-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/post-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Post Comments (V2)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/post-comments\",\"description\":\"Returns comments from an Instagram post, including comment text, user details, and like counts. Accepts a post shortcode or URL with options to sort by recent or popular comments and paginate results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"code_or_url\",\"type\":\"string\",\"required\":true,\"description\":\"Post shortcode or full URL\"},{\"name\":\"pagination_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token from previous response\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_by\",\"type\":\"string\",\"required\":false,\"description\":\"Sort by \\\"recent\\\" or \\\"popular\\\", default recent\",\"default\":\"recent\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/post-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"code_or_url\\\": \\\"DUajw4YkorV\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"code_or_url\\\": \\\"DUajw4YkorV\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/post-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"code_or_url\\\": \\\"DUajw4YkorV\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/post-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/post-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/post-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/post-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/post-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get post comments" + modelName: "Instagram Post Comments (V2)" modelId: "instagram/v2/post-comments" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/post-info.md b/model-api-reference/platform-apis/instagram/v2/post-info.md index e30be832..15cb3e9d 100644 --- a/model-api-reference/platform-apis/instagram/v2/post-info.md +++ b/model-api-reference/platform-apis/instagram/v2/post-info.md @@ -1,13 +1,13 @@ --- -title: "Get post info API Reference" -description: "SandBase API operation instagram/v2/post-info." +title: "Instagram Post Details (V2) API Reference" +description: "Instagram Post Details (V2) API reference for SandBase. Use model instagram/v2/post-info with /v1/api/instagram/v2/post-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/post-info" -apiReferenceJson: "{\"title\":\"Get post info\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/post-info\",\"description\":\"Get detailed information of Instagram post Support shortcode or full URL\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"code_or_url\",\"type\":\"string\",\"required\":true,\"description\":\"Post shortcode or full URL\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/post-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"code_or_url\\\": \\\"DRhvwVLAHAG\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"code_or_url\\\": \\\"DRhvwVLAHAG\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/post-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"code_or_url\\\": \\\"DRhvwVLAHAG\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/post-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/post-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/post-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/post-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/post-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/post-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/post-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Post Details (V2)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/post-info\",\"description\":\"Returns detailed information for an Instagram post, including available media streams and video versions, using a post shortcode or full URL.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"code_or_url\",\"type\":\"string\",\"required\":true,\"description\":\"Post shortcode or full URL\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/post-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"code_or_url\\\": \\\"DRhvwVLAHAG\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"code_or_url\\\": \\\"DRhvwVLAHAG\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/post-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"code_or_url\\\": \\\"DRhvwVLAHAG\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/post-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/post-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/post-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/post-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/post-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/post-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/post-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get post info" + modelName: "Instagram Post Details (V2)" modelId: "instagram/v2/post-info" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/post-likes.md b/model-api-reference/platform-apis/instagram/v2/post-likes.md index 9cea1c84..6f97c92a 100644 --- a/model-api-reference/platform-apis/instagram/v2/post-likes.md +++ b/model-api-reference/platform-apis/instagram/v2/post-likes.md @@ -1,13 +1,13 @@ --- -title: "Get post likes API Reference — Instagram V2 / Post Likes API" -description: "SandBase API operation instagram/v2/post-likes." +title: "Instagram Post Likes (V2) API Reference" +description: "Instagram Post Likes (V2) API reference for SandBase. Use model instagram/v2/post-likes with /v1/api/instagram/v2/post-likes; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/post-likes" -apiReferenceJson: "{\"title\":\"Get post likes\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/post-likes\",\"description\":\"Get list of users who liked the post Support pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"code_or_url\",\"type\":\"string\",\"required\":true,\"description\":\"Post shortcode or full URL\"},{\"name\":\"end_cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor from previous response\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/post-likes \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"code_or_url\\\": \\\"DRhvwVLAHAG\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"code_or_url\\\": \\\"DRhvwVLAHAG\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/post-likes\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"code_or_url\\\": \\\"DRhvwVLAHAG\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/post-likes\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/post-likes\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/post-likes\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/post-likes\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/post-likes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/post-likes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/post-likes\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Post Likes (V2)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/post-likes\",\"description\":\"Returns the list of users who liked an Instagram post by shortcode or URL. Supports cursor-based pagination to retrieve subsequent pages.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"code_or_url\",\"type\":\"string\",\"required\":true,\"description\":\"Post shortcode or full URL\"},{\"name\":\"end_cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor from previous response\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/post-likes \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"code_or_url\\\": \\\"DRhvwVLAHAG\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"code_or_url\\\": \\\"DRhvwVLAHAG\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/post-likes\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"code_or_url\\\": \\\"DRhvwVLAHAG\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/post-likes\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/post-likes\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/post-likes\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/post-likes\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/post-likes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/post-likes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/post-likes\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get post likes" + modelName: "Instagram Post Likes (V2)" modelId: "instagram/v2/post-likes" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/search-by-coordinates.md b/model-api-reference/platform-apis/instagram/v2/search-by-coordinates.md index 164f59b8..d01822f1 100644 --- a/model-api-reference/platform-apis/instagram/v2/search-by-coordinates.md +++ b/model-api-reference/platform-apis/instagram/v2/search-by-coordinates.md @@ -1,13 +1,13 @@ --- -title: "Search locations by coordinates — b20h4k API" -description: "SandBase API operation instagram/v2/search-by-coordinates." +title: "Instagram Location Search by Coordinates (V2) API Reference" +description: "SandBase API reference for model instagram/v2/search-by-coordinates. Call /v1/api/instagram/v2/search-by-coordinates; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/search-by-coordinates" -apiReferenceJson: "{\"title\":\"Search locations by coordinates\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/search-by-coordinates\",\"description\":\"Search nearby Instagram locations by GPS coordinates\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"latitude\",\"type\":\"number\",\"required\":true,\"description\":\"Latitude\"},{\"name\":\"longitude\",\"type\":\"number\",\"required\":true,\"description\":\"Longitude\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/search-by-coordinates \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"latitude\\\": 0,\\n \\\"longitude\\\": 0\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"latitude\\\": 0,\\n \\\"longitude\\\": 0\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/search-by-coordinates\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"latitude\\\": 0,\\n \\\"longitude\\\": 0\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/search-by-coordinates\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/search-by-coordinates\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/search-by-coordinates\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/search-by-coordinates\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/search-by-coordinates\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/search-by-coordinates\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/search-by-coordinates\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Location Search by Coordinates (V2)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/search-by-coordinates\",\"description\":\"Returns nearby Instagram locations matching specified geographic coordinates. Queries require both latitude and longitude values to discover place names and identifiers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"latitude\",\"type\":\"number\",\"required\":true,\"description\":\"Latitude\"},{\"name\":\"longitude\",\"type\":\"number\",\"required\":true,\"description\":\"Longitude\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/search-by-coordinates \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"latitude\\\": 0,\\n \\\"longitude\\\": 0\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"latitude\\\": 0,\\n \\\"longitude\\\": 0\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/search-by-coordinates\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"latitude\\\": 0,\\n \\\"longitude\\\": 0\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/search-by-coordinates\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/search-by-coordinates\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/search-by-coordinates\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/search-by-coordinates\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/search-by-coordinates\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/search-by-coordinates\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/search-by-coordinates\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search locations by coordinates" + modelName: "Instagram Location Search by Coordinates (V2)" modelId: "instagram/v2/search-by-coordinates" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/search-hashtags.md b/model-api-reference/platform-apis/instagram/v2/search-hashtags.md index cf5e573d..b63a8403 100644 --- a/model-api-reference/platform-apis/instagram/v2/search-hashtags.md +++ b/model-api-reference/platform-apis/instagram/v2/search-hashtags.md @@ -1,13 +1,13 @@ --- -title: "Search hashtags API Reference — Instagram V2 / Search Hashtags" -description: "SandBase API operation instagram/v2/search-hashtags." +title: "Instagram Hashtag Search (V2) API Reference" +description: "SandBase API reference for model instagram/v2/search-hashtags. Call /v1/api/instagram/v2/search-hashtags; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/search-hashtags" -apiReferenceJson: "{\"title\":\"Search hashtags\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/search-hashtags\",\"description\":\"Search Instagram hashtags by keyword\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/search-hashtags \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"cat\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"cat\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/search-hashtags\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"cat\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/search-hashtags\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/search-hashtags\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/search-hashtags\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/search-hashtags\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/search-hashtags\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/search-hashtags\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/search-hashtags\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Hashtag Search (V2)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/search-hashtags\",\"description\":\"Search for Instagram hashtags matching a given keyword query. Returns an array of matching hashtag objects containing each hashtag identifier, name, and total media count.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/search-hashtags \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"cat\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"cat\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/search-hashtags\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"cat\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/search-hashtags\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/search-hashtags\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/search-hashtags\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/search-hashtags\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/search-hashtags\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/search-hashtags\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/search-hashtags\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search hashtags" + modelName: "Instagram Hashtag Search (V2)" modelId: "instagram/v2/search-hashtags" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/search-locations.md b/model-api-reference/platform-apis/instagram/v2/search-locations.md index 9e021a31..672d3e06 100644 --- a/model-api-reference/platform-apis/instagram/v2/search-locations.md +++ b/model-api-reference/platform-apis/instagram/v2/search-locations.md @@ -1,13 +1,13 @@ --- -title: "Search locations API Reference" -description: "SandBase API operation instagram/v2/search-locations." +title: "Instagram Location Search API Reference" +description: "SandBase API reference for model instagram/v2/search-locations. Call /v1/api/instagram/v2/search-locations; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/search-locations" -apiReferenceJson: "{\"title\":\"Search locations\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/search-locations\",\"description\":\"Search Instagram locations by keyword\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (location name, city, etc.)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/search-locations \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"paris\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"paris\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/search-locations\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"paris\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/search-locations\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/search-locations\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/search-locations\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/search-locations\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/search-locations\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/search-locations\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/search-locations\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Location Search\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/search-locations\",\"description\":\"Searches Instagram locations matching a specified query term. Returns a list of place candidates with their IDs, names, and Facebook place identifiers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (location name, city, etc.)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/search-locations \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"paris\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"paris\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/search-locations\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"paris\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/search-locations\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/search-locations\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/search-locations\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/search-locations\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/search-locations\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/search-locations\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/search-locations\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search locations" + modelName: "Instagram Location Search" modelId: "instagram/v2/search-locations" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/search-music.md b/model-api-reference/platform-apis/instagram/v2/search-music.md index 86cd0e2f..48b34950 100644 --- a/model-api-reference/platform-apis/instagram/v2/search-music.md +++ b/model-api-reference/platform-apis/instagram/v2/search-music.md @@ -1,13 +1,13 @@ --- -title: "Search music API Reference — Instagram V2 / Search Music API" -description: "SandBase API operation instagram/v2/search-music." +title: "Instagram Music Search API Reference" +description: "Instagram Music Search API reference for SandBase. Use model instagram/v2/search-music with /v1/api/instagram/v2/search-music; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/search-music" -apiReferenceJson: "{\"title\":\"Search music\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/search-music\",\"description\":\"Search available music on Instagram by keyword\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/search-music \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/search-music\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/search-music\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/search-music\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/search-music\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/search-music\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/search-music\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/search-music\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/search-music\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Music Search\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/search-music\",\"description\":\"Search available music tracks on Instagram using a keyword. Returns matching audio items with audio IDs, track titles, duration, and licensing details.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/search-music \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/search-music\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/search-music\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/search-music\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/search-music\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/search-music\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/search-music\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/search-music\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/search-music\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search music" + modelName: "Instagram Music Search" modelId: "instagram/v2/search-music" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/search-reels.md b/model-api-reference/platform-apis/instagram/v2/search-reels.md index d229ece5..74f51c3b 100644 --- a/model-api-reference/platform-apis/instagram/v2/search-reels.md +++ b/model-api-reference/platform-apis/instagram/v2/search-reels.md @@ -1,13 +1,13 @@ --- -title: "Search reels API Reference" -description: "SandBase API operation instagram/v2/search-reels." +title: "Instagram Reels Search API Reference" +description: "Instagram Reels Search API reference for SandBase. Use model instagram/v2/search-reels with /v1/api/instagram/v2/search-reels; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/search-reels" -apiReferenceJson: "{\"title\":\"Search reels\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/search-reels\",\"description\":\"Search Instagram Reels by keyword Support pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"pagination_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token from previous response\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/search-reels \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/search-reels\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/search-reels\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/search-reels\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/search-reels\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/search-reels\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/search-reels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/search-reels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/search-reels\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Reels Search\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/search-reels\",\"description\":\"Search Instagram Reels by keyword: reel IDs, captions, creators, play, like and comment counts, with pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"pagination_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token from previous response\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/search-reels \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/search-reels\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/search-reels\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/search-reels\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/search-reels\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/search-reels\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/search-reels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/search-reels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/search-reels\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search reels" + modelName: "Instagram Reels Search" modelId: "instagram/v2/search-reels" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/search-users.md b/model-api-reference/platform-apis/instagram/v2/search-users.md index 3553c600..4635b6a3 100644 --- a/model-api-reference/platform-apis/instagram/v2/search-users.md +++ b/model-api-reference/platform-apis/instagram/v2/search-users.md @@ -1,13 +1,13 @@ --- -title: "Search users API Reference — Instagram V2 / Search Users API" -description: "SandBase API operation instagram/v2/search-users." +title: "Instagram User Search (V2) API Reference" +description: "Instagram User Search (V2) API reference for SandBase. Use model instagram/v2/search-users with /v1/api/instagram/v2/search-users; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/search-users" -apiReferenceJson: "{\"title\":\"Search users\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/search-users\",\"description\":\"Search Instagram users by keyword\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/search-users \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/search-users\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/search-users\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/search-users\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/search-users\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/search-users\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/search-users\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/search-users\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/search-users\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Search (V2)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/search-users\",\"description\":\"Searches for Instagram users matching a specified keyword. Returns a list of user accounts including user IDs, usernames, full names, and profile picture URLs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/search-users \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/search-users\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/search-users\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/search-users\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/search-users\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/search-users\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/search-users\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/search-users\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/search-users\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search users" + modelName: "Instagram User Search (V2)" modelId: "instagram/v2/search-users" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/shortcode-to-media-id.md b/model-api-reference/platform-apis/instagram/v2/shortcode-to-media-id.md index c6527bea..9860a9ce 100644 --- a/model-api-reference/platform-apis/instagram/v2/shortcode-to-media-id.md +++ b/model-api-reference/platform-apis/instagram/v2/shortcode-to-media-id.md @@ -1,13 +1,13 @@ --- -title: "Convert shortcode to media ID — c5emrg API" -description: "SandBase API operation instagram/v2/shortcode-to-media-id." +title: "Instagram Shortcode to Media ID (V2) API Reference" +description: "SandBase API reference for model instagram/v2/shortcode-to-media-id. Call /v1/api/instagram/v2/shortcode-to-media-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/shortcode-to-media-id" -apiReferenceJson: "{\"title\":\"Convert shortcode to media ID\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/shortcode-to-media-id\",\"description\":\"Convert Instagram post shortcode to media ID Shortcode is the unique identifier in post URL, e.g., DRhvwVLAHAG in instagram.com/p/DRhvwVLAHAG/\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"shortcode\",\"type\":\"string\",\"required\":true,\"description\":\"Post shortcode\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/shortcode-to-media-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"shortcode\\\": \\\"DRhvwVLAHAG\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"shortcode\\\": \\\"DRhvwVLAHAG\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/shortcode-to-media-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"shortcode\\\": \\\"DRhvwVLAHAG\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/shortcode-to-media-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/shortcode-to-media-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/shortcode-to-media-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/shortcode-to-media-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/shortcode-to-media-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/shortcode-to-media-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/shortcode-to-media-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Shortcode to Media ID (V2)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/shortcode-to-media-id\",\"description\":\"Converts an Instagram post shortcode into its numeric media ID. Provide the shortcode extracted from a post URL to receive the corresponding media identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"shortcode\",\"type\":\"string\",\"required\":true,\"description\":\"Post shortcode\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/shortcode-to-media-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"shortcode\\\": \\\"DRhvwVLAHAG\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"shortcode\\\": \\\"DRhvwVLAHAG\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/shortcode-to-media-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"shortcode\\\": \\\"DRhvwVLAHAG\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/shortcode-to-media-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/shortcode-to-media-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/shortcode-to-media-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/shortcode-to-media-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/shortcode-to-media-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/shortcode-to-media-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/shortcode-to-media-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Convert shortcode to media ID" + modelName: "Instagram Shortcode to Media ID (V2)" modelId: "instagram/v2/shortcode-to-media-id" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/similar-users.md b/model-api-reference/platform-apis/instagram/v2/similar-users.md index d6ef61bd..c21460ff 100644 --- a/model-api-reference/platform-apis/instagram/v2/similar-users.md +++ b/model-api-reference/platform-apis/instagram/v2/similar-users.md @@ -1,13 +1,13 @@ --- -title: "Get similar users API Reference — Instagram V2 / Similar Users" -description: "SandBase API operation instagram/v2/similar-users." +title: "Instagram Similar Users (V2) API Reference" +description: "Instagram Similar Users (V2) API reference for SandBase. Use model instagram/v2/similar-users with /v1/api/instagram/v2/similar-users; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/similar-users" -apiReferenceJson: "{\"title\":\"Get similar users\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/similar-users\",\"description\":\"Get recommended similar users Based on Instagram's recommendation algorithm\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID (either username or user_id required)\"},{\"name\":\"username\",\"type\":\"string\",\"required\":false,\"description\":\"Username (either username or user_id required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/similar-users \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/similar-users\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/similar-users\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/similar-users\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/similar-users\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/similar-users\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/similar-users\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/similar-users\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/similar-users\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Similar Users (V2)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/similar-users\",\"description\":\"Returns recommended similar accounts based on Instagram's recommendation algorithm. Accepts an Instagram username or numeric user ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID (either username or user_id required)\"},{\"name\":\"username\",\"type\":\"string\",\"required\":false,\"description\":\"Username (either username or user_id required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/similar-users \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"username\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"username\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/similar-users\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"username\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/similar-users\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/similar-users\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/similar-users\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/similar-users\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/similar-users\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/similar-users\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/similar-users\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get similar users" + modelName: "Instagram Similar Users (V2)" modelId: "instagram/v2/similar-users" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/user-followers.md b/model-api-reference/platform-apis/instagram/v2/user-followers.md index 5e7d8972..f5df7e97 100644 --- a/model-api-reference/platform-apis/instagram/v2/user-followers.md +++ b/model-api-reference/platform-apis/instagram/v2/user-followers.md @@ -1,13 +1,13 @@ --- -title: "Get user followers API Reference — Instagram V2 / User Followers" -description: "SandBase API operation instagram/v2/user-followers." +title: "Instagram User Followers (V2) API Reference" +description: "SandBase API reference for model instagram/v2/user-followers. Call /v1/api/instagram/v2/user-followers; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/user-followers" -apiReferenceJson: "{\"title\":\"Get user followers\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/user-followers\",\"description\":\"Get list of followers of Instagram user Support pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pagination_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token from previous response\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID (either username or user_id required)\"},{\"name\":\"username\",\"type\":\"string\",\"required\":false,\"description\":\"Username (either username or user_id required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/user-followers \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-followers\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-followers\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/user-followers\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/user-followers\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/user-followers\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/user-followers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/user-followers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/user-followers\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Followers (V2)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/user-followers\",\"description\":\"Returns a list of followers for a specified Instagram account. Supports looking up accounts by identifier or handle, with pagination token support for retrieving full follower lists.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pagination_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token from previous response\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID (either username or user_id required)\"},{\"name\":\"username\",\"type\":\"string\",\"required\":false,\"description\":\"Username (either username or user_id required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/user-followers \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"username\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"username\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-followers\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"username\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-followers\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/user-followers\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/user-followers\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/user-followers\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/user-followers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/user-followers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/user-followers\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user followers" + modelName: "Instagram User Followers (V2)" modelId: "instagram/v2/user-followers" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/user-following.md b/model-api-reference/platform-apis/instagram/v2/user-following.md index c8f1ccbc..89940047 100644 --- a/model-api-reference/platform-apis/instagram/v2/user-following.md +++ b/model-api-reference/platform-apis/instagram/v2/user-following.md @@ -1,13 +1,13 @@ --- -title: "Get user following API Reference" -description: "SandBase API operation instagram/v2/user-following." +title: "Instagram User Following API Reference" +description: "Instagram User Following API reference for SandBase. Use model instagram/v2/user-following with /v1/api/instagram/v2/user-following; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/user-following" -apiReferenceJson: "{\"title\":\"Get user following\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/user-following\",\"description\":\"Get list of users that Instagram user is following Support pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pagination_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token from previous response\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID (either username or user_id required)\"},{\"name\":\"username\",\"type\":\"string\",\"required\":false,\"description\":\"Username (either username or user_id required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/user-following \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-following\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-following\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/user-following\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/user-following\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/user-following\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/user-following\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/user-following\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/user-following\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Following\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/user-following\",\"description\":\"Returns the list of accounts that a specified Instagram user follows. Queries can be made using an account username or user ID, with support for pagination tokens.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pagination_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token from previous response\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID (either username or user_id required)\"},{\"name\":\"username\",\"type\":\"string\",\"required\":false,\"description\":\"Username (either username or user_id required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/user-following \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"username\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"username\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-following\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"username\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-following\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/user-following\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/user-following\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/user-following\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/user-following\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/user-following\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/user-following\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user following" + modelName: "Instagram User Following" modelId: "instagram/v2/user-following" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/user-highlights.md b/model-api-reference/platform-apis/instagram/v2/user-highlights.md index 44fea05b..df97d0de 100644 --- a/model-api-reference/platform-apis/instagram/v2/user-highlights.md +++ b/model-api-reference/platform-apis/instagram/v2/user-highlights.md @@ -1,13 +1,13 @@ --- -title: "Get user highlights API Reference — Instagram / User Highlights" -description: "SandBase API operation instagram/v2/user-highlights." +title: "Instagram User Highlights (V2) API Reference" +description: "SandBase API reference for model instagram/v2/user-highlights. Call /v1/api/instagram/v2/user-highlights; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/user-highlights" -apiReferenceJson: "{\"title\":\"Get user highlights\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/user-highlights\",\"description\":\"Get Instagram user's highlights list Highlights are saved story collections\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID (either username or user_id required)\"},{\"name\":\"username\",\"type\":\"string\",\"required\":false,\"description\":\"Username (either username or user_id required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/user-highlights \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-highlights\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-highlights\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/user-highlights\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/user-highlights\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/user-highlights\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/user-highlights\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/user-highlights\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/user-highlights\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Highlights (V2)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/user-highlights\",\"description\":\"Returns an Instagram user's list of highlights and saved story collections. Query using either a target user ID or account username.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID (either username or user_id required)\"},{\"name\":\"username\",\"type\":\"string\",\"required\":false,\"description\":\"Username (either username or user_id required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/user-highlights \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-highlights\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-highlights\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/user-highlights\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/user-highlights\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/user-highlights\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/user-highlights\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/user-highlights\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/user-highlights\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user highlights" + modelName: "Instagram User Highlights (V2)" modelId: "instagram/v2/user-highlights" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/user-id-to-username.md b/model-api-reference/platform-apis/instagram/v2/user-id-to-username.md deleted file mode 100644 index 46aade3e..00000000 --- a/model-api-reference/platform-apis/instagram/v2/user-id-to-username.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get user info by user ID — 5z4fxa API" -description: "SandBase API operation instagram/v2/user-id-to-username." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/instagram/v2/user-id-to-username" -apiReferenceJson: "{\"title\":\"Get user info by user ID\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/user-id-to-username\",\"description\":\"Get user info by Instagram user ID Can be used to convert user ID to username and get full profile\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/user-id-to-username \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-id-to-username\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-id-to-username\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/user-id-to-username\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/user-id-to-username\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/user-id-to-username\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/user-id-to-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/user-id-to-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/user-id-to-username\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get user info by user ID" - modelId: "instagram/v2/user-id-to-username" - vendor: "Instagram" - vendorSlug: "instagram" - modelSlug: "v2/user-id-to-username" - protocol: "API Reference" - endpoint: "/v1/api/instagram/v2/user-id-to-username" - publishedAt: "" - capabilities: ["api","instagram"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/instagram/v2/user-info.md b/model-api-reference/platform-apis/instagram/v2/user-info.md index d0c42709..20610baa 100644 --- a/model-api-reference/platform-apis/instagram/v2/user-info.md +++ b/model-api-reference/platform-apis/instagram/v2/user-info.md @@ -1,13 +1,13 @@ --- -title: "Get user info API Reference — Instagram V2 / User Info API" -description: "SandBase API operation instagram/v2/user-info." +title: "Instagram User Profile API Reference" +description: "Instagram User Profile API reference for SandBase. Use model instagram/v2/user-info with /v1/api/instagram/v2/user-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/user-info" -apiReferenceJson: "{\"title\":\"Get user info\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/user-info\",\"description\":\"Get detailed Instagram user information Support query by username or user ID\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID (either username or user_id required)\"},{\"name\":\"username\",\"type\":\"string\",\"required\":false,\"description\":\"Username (either username or user_id required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Profile\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/user-info\",\"description\":\"Get an Instagram user profile by username or user ID: full name, bio, website, follower, following and post counts, verification and category.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID (either username or user_id required)\"},{\"name\":\"username\",\"type\":\"string\",\"required\":false,\"description\":\"Username (either username or user_id required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user info" + modelName: "Instagram User Profile" modelId: "instagram/v2/user-info" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/user-posts.md b/model-api-reference/platform-apis/instagram/v2/user-posts.md index b2261b69..a8e4d714 100644 --- a/model-api-reference/platform-apis/instagram/v2/user-posts.md +++ b/model-api-reference/platform-apis/instagram/v2/user-posts.md @@ -1,13 +1,13 @@ --- -title: "Get user posts API Reference — Instagram V2 / User Posts API" -description: "SandBase API operation instagram/v2/user-posts." +title: "Instagram User Posts (V2) API Reference" +description: "Instagram User Posts (V2) API reference for SandBase. Use model instagram/v2/user-posts with /v1/api/instagram/v2/user-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/user-posts" -apiReferenceJson: "{\"title\":\"Get user posts\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/user-posts\",\"description\":\"Get list of posts published by Instagram user Support pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pagination_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token from previous response\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID (either username or user_id required)\"},{\"name\":\"username\",\"type\":\"string\",\"required\":false,\"description\":\"Username (either username or user_id required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/user-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/user-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/user-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/user-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/user-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Posts (V2)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/user-posts\",\"description\":\"Returns a list of posts from a specific Instagram account using their username or user ID. Supports paginated results via a pagination token.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pagination_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token from previous response\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID (either username or user_id required)\"},{\"name\":\"username\",\"type\":\"string\",\"required\":false,\"description\":\"Username (either username or user_id required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/user-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/user-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/user-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/user-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/user-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user posts" + modelName: "Instagram User Posts (V2)" modelId: "instagram/v2/user-posts" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/user-reels.md b/model-api-reference/platform-apis/instagram/v2/user-reels.md index f251aba0..cf5748c3 100644 --- a/model-api-reference/platform-apis/instagram/v2/user-reels.md +++ b/model-api-reference/platform-apis/instagram/v2/user-reels.md @@ -1,13 +1,13 @@ --- -title: "Get user reels API Reference — Instagram V2 / User Reels API" -description: "SandBase API operation instagram/v2/user-reels." +title: "Instagram User Reels (V2) API Reference" +description: "Instagram User Reels (V2) API reference for SandBase. Use model instagram/v2/user-reels with /v1/api/instagram/v2/user-reels; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/user-reels" -apiReferenceJson: "{\"title\":\"Get user reels\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/user-reels\",\"description\":\"Get list of Reels published by Instagram user Support pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pagination_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token from previous response\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID (either username or user_id required)\"},{\"name\":\"username\",\"type\":\"string\",\"required\":false,\"description\":\"Username (either username or user_id required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/user-reels \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-reels\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-reels\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/user-reels\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/user-reels\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/user-reels\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/user-reels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/user-reels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/user-reels\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Reels (V2)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/user-reels\",\"description\":\"Returns a list of Reels from an Instagram account by username or user ID. Supports cursor-based pagination to browse past video content.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pagination_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token from previous response\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID (either username or user_id required)\"},{\"name\":\"username\",\"type\":\"string\",\"required\":false,\"description\":\"Username (either username or user_id required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/user-reels \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-reels\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-reels\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/user-reels\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/user-reels\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/user-reels\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/user-reels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/user-reels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/user-reels\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user reels" + modelName: "Instagram User Reels (V2)" modelId: "instagram/v2/user-reels" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/user-stories.md b/model-api-reference/platform-apis/instagram/v2/user-stories.md index fd4d778e..04f73209 100644 --- a/model-api-reference/platform-apis/instagram/v2/user-stories.md +++ b/model-api-reference/platform-apis/instagram/v2/user-stories.md @@ -1,13 +1,13 @@ --- -title: "Get user stories API Reference — Instagram V2 / User Stories API" -description: "SandBase API operation instagram/v2/user-stories." +title: "Instagram User Stories (V2) API Reference" +description: "Instagram User Stories (V2) API reference for SandBase. Use model instagram/v2/user-stories with /v1/api/instagram/v2/user-stories; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/user-stories" -apiReferenceJson: "{\"title\":\"Get user stories\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/user-stories\",\"description\":\"Get current stories published by Instagram user Stories expire after 24 hours\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID (either username or user_id required)\"},{\"name\":\"username\",\"type\":\"string\",\"required\":false,\"description\":\"Username (either username or user_id required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/user-stories \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-stories\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-stories\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/user-stories\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/user-stories\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/user-stories\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/user-stories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/user-stories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/user-stories\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Stories (V2)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/user-stories\",\"description\":\"Returns active stories posted by an Instagram user within the last 24 hours. The request accepts either an account username or a user identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID (either username or user_id required)\"},{\"name\":\"username\",\"type\":\"string\",\"required\":false,\"description\":\"Username (either username or user_id required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/user-stories \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"username\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"username\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-stories\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"username\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-stories\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/user-stories\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/user-stories\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/user-stories\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/user-stories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/user-stories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/user-stories\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user stories" + modelName: "Instagram User Stories (V2)" modelId: "instagram/v2/user-stories" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v2/user-tagged-posts.md b/model-api-reference/platform-apis/instagram/v2/user-tagged-posts.md index c7189979..35e8f212 100644 --- a/model-api-reference/platform-apis/instagram/v2/user-tagged-posts.md +++ b/model-api-reference/platform-apis/instagram/v2/user-tagged-posts.md @@ -1,13 +1,13 @@ --- -title: "Get user tagged posts — zsbdu API" -description: "SandBase API operation instagram/v2/user-tagged-posts." +title: "Instagram User Tagged Posts (V2) API Reference" +description: "SandBase API reference for model instagram/v2/user-tagged-posts. Call /v1/api/instagram/v2/user-tagged-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v2/user-tagged-posts" -apiReferenceJson: "{\"title\":\"Get user tagged posts\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/user-tagged-posts\",\"description\":\"Get posts where the user is tagged by others Support pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pagination_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token from previous response\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID (either username or user_id required)\"},{\"name\":\"username\",\"type\":\"string\",\"required\":false,\"description\":\"Username (either username or user_id required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/user-tagged-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-tagged-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-tagged-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/user-tagged-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/user-tagged-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/user-tagged-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/user-tagged-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/user-tagged-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/user-tagged-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Tagged Posts (V2)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v2/user-tagged-posts\",\"description\":\"Returns posts where a specified Instagram account has been tagged by other users. Supports looking up accounts by identifier or username, with pagination handling.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pagination_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token from previous response\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID (either username or user_id required)\"},{\"name\":\"username\",\"type\":\"string\",\"required\":false,\"description\":\"Username (either username or user_id required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v2/user-tagged-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-tagged-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v2/user-tagged-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v2/user-tagged-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v2/user-tagged-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v2/user-tagged-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v2/user-tagged-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v2/user-tagged-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v2/user-tagged-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user tagged posts" + modelName: "Instagram User Tagged Posts (V2)" modelId: "instagram/v2/user-tagged-posts" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/bulk-translate-comments.md b/model-api-reference/platform-apis/instagram/v3/bulk-translate-comments.md index 4fb8a512..16d957e1 100644 --- a/model-api-reference/platform-apis/instagram/v3/bulk-translate-comments.md +++ b/model-api-reference/platform-apis/instagram/v3/bulk-translate-comments.md @@ -1,13 +1,13 @@ --- -title: "Bulk translate comments API Reference" -description: "SandBase API operation instagram/v3/bulk-translate-comments." +title: "Instagram Comment Bulk Translation API Reference" +description: "SandBase API reference for model instagram/v3/bulk-translate-comments. Call /v1/api/instagram/v3/bulk-translate-comments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/bulk-translate-comments" -apiReferenceJson: "{\"title\":\"Bulk translate comments\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/bulk-translate-comments\",\"description\":\"Bulk translate Instagram comments Support translating multiple comments at once for better efficiency Comment IDs can be obtained from get_post_comments API\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"comment_ids\",\"type\":\"string\",\"required\":true,\"description\":\"Comment ID list, separated by commas, **max 10 IDs**\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/bulk-translate-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"comment_ids\\\": \\\"comment_ids\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"comment_ids\\\": \\\"comment_ids\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/bulk-translate-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"comment_ids\\\": \\\"comment_ids\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/bulk-translate-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/bulk-translate-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/bulk-translate-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/bulk-translate-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/bulk-translate-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/bulk-translate-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/bulk-translate-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Comment Bulk Translation\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/bulk-translate-comments\",\"description\":\"Returns bulk translations for multiple Instagram comments using a list of comment identifiers. Accepts up to 10 comma-separated IDs to translate multiple comments at once.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"comment_ids\",\"type\":\"string\",\"required\":true,\"description\":\"Comment ID list, separated by commas, **max 10 IDs**\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/bulk-translate-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"comment_ids\\\": \\\"comment_ids\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"comment_ids\\\": \\\"comment_ids\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/bulk-translate-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"comment_ids\\\": \\\"comment_ids\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/bulk-translate-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/bulk-translate-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/bulk-translate-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/bulk-translate-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/bulk-translate-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/bulk-translate-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/bulk-translate-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Bulk translate comments" + modelName: "Instagram Comment Bulk Translation" modelId: "instagram/v3/bulk-translate-comments" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/comment-replies.md b/model-api-reference/platform-apis/instagram/v3/comment-replies.md index 5d6ddcd4..345cd561 100644 --- a/model-api-reference/platform-apis/instagram/v3/comment-replies.md +++ b/model-api-reference/platform-apis/instagram/v3/comment-replies.md @@ -1,13 +1,13 @@ --- -title: "Get comment replies — wo84u3 API" -description: "SandBase API operation instagram/v3/comment-replies." +title: "Instagram Comment Replies (V3) API Reference" +description: "SandBase API reference for model instagram/v3/comment-replies. Call /v1/api/instagram/v3/comment-replies; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/comment-replies" -apiReferenceJson: "{\"title\":\"Get comment replies\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/comment-replies\",\"description\":\"Get Instagram comment's child comments (replies) list Support pagination to fetch all replies Parent comment's comment_id can be obtained from get_post_comments API\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"comment_id\",\"type\":\"string\",\"required\":true,\"description\":\"Parent comment ID (required, get `pk` field from get_post_comments response)\"},{\"name\":\"media_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post media ID (numeric ID, required), can be obtained via `/shortcode_to_media_id` endpoint\"},{\"name\":\"min_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request, get from previous response `data.next_min_child_cursor`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/comment-replies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"media_id\\\": \\\"media_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"media_id\\\": \\\"media_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/comment-replies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"media_id\\\": \\\"media_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/comment-replies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/comment-replies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/comment-replies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/comment-replies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/comment-replies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Comment Replies (V3)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/comment-replies\",\"description\":\"Returns child comment replies for a specific Instagram comment using the post media ID and parent comment ID. Supports pagination via cursor tokens.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"comment_id\",\"type\":\"string\",\"required\":true,\"description\":\"Parent comment ID (required, get `pk` field from get_post_comments response)\"},{\"name\":\"media_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post media ID (numeric ID, required), can be obtained via `/shortcode_to_media_id` endpoint\"},{\"name\":\"min_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request, get from previous response `data.next_min_child_cursor`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/comment-replies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"media_id\\\": \\\"media_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"media_id\\\": \\\"media_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/comment-replies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"media_id\\\": \\\"media_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/comment-replies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/comment-replies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/comment-replies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/comment-replies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/comment-replies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get comment replies" + modelName: "Instagram Comment Replies (V3)" modelId: "instagram/v3/comment-replies" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/explore.md b/model-api-reference/platform-apis/instagram/v3/explore.md index ffcbf4cf..e7f6ac3d 100644 --- a/model-api-reference/platform-apis/instagram/v3/explore.md +++ b/model-api-reference/platform-apis/instagram/v3/explore.md @@ -1,13 +1,13 @@ --- -title: "Get explore feed API Reference" -description: "SandBase API operation instagram/v3/explore." +title: "Instagram Explore Feed API Reference" +description: "Instagram Explore Feed API reference for SandBase. Use model instagram/v3/explore with /v1/api/instagram/v3/explore; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/explore" -apiReferenceJson: "{\"title\":\"Get explore feed\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/explore\",\"description\":\"Get Instagram Explore/Discover page recommended posts Returns personalized recommended post list Support pagination to fetch more recommendations\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request, get from previous response `data.next_max_id`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/explore \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"instagram/v3/explore\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"instagram/v3/explore\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/explore\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"instagram/v3/explore\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/explore\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/explore\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/explore\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/explore\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/explore\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/explore\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/explore\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Explore Feed\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/explore\",\"description\":\"Returns curated sectional items from the Instagram explore feed, including layout formats and feed types. Supports cursor-based pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request, get from previous response `data.next_max_id`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/explore \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/explore\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/explore\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/explore\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/explore\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/explore\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/explore\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/explore\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/explore\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get explore feed" + modelName: "Instagram Explore Feed" modelId: "instagram/v3/explore" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/extract-shortcode.md b/model-api-reference/platform-apis/instagram/v3/extract-shortcode.md index fcd11022..21c2dd91 100644 --- a/model-api-reference/platform-apis/instagram/v3/extract-shortcode.md +++ b/model-api-reference/platform-apis/instagram/v3/extract-shortcode.md @@ -1,13 +1,13 @@ --- -title: "Extract shortcode from URL API Reference" -description: "SandBase API operation instagram/v3/extract-shortcode." +title: "Instagram Shortcode Extractor API Reference" +description: "SandBase API reference for model instagram/v3/extract-shortcode. Call /v1/api/instagram/v3/extract-shortcode; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/extract-shortcode" -apiReferenceJson: "{\"title\":\"Extract shortcode from URL\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/extract-shortcode\",\"description\":\"Extract shortcode from full Instagram post URL Supports /p/, /reel/, /reels/, /tv/ URL formats Imported from a validated TikHub OpenAPI document. Pricing must be reviewed before enabling.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Full Instagram post URL\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/extract-shortcode \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://www.instagram.com/p/DUajw4YkorV/\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://www.instagram.com/p/DUajw4YkorV/\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/extract-shortcode\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://www.instagram.com/p/DUajw4YkorV/\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/extract-shortcode\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/extract-shortcode\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/extract-shortcode\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/extract-shortcode\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/extract-shortcode\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/extract-shortcode\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/extract-shortcode\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Shortcode Extractor\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/extract-shortcode\",\"description\":\"Extracts and returns the unique shortcode identifier from an Instagram post, reel, or TV URL. Requires the full target post URL as input.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Full Instagram post URL\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/extract-shortcode \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://www.instagram.com/p/DUajw4YkorV/\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://www.instagram.com/p/DUajw4YkorV/\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/extract-shortcode\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://www.instagram.com/p/DUajw4YkorV/\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/extract-shortcode\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/extract-shortcode\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/extract-shortcode\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/extract-shortcode\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/extract-shortcode\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/extract-shortcode\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/extract-shortcode\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Extract shortcode from URL" + modelName: "Instagram Shortcode Extractor" modelId: "instagram/v3/extract-shortcode" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/general-search.md b/model-api-reference/platform-apis/instagram/v3/general-search.md index 91e9e093..0bcae97f 100644 --- a/model-api-reference/platform-apis/instagram/v3/general-search.md +++ b/model-api-reference/platform-apis/instagram/v3/general-search.md @@ -1,13 +1,13 @@ --- -title: "General search (with pagination) API Reference" -description: "SandBase API operation instagram/v3/general-search." +title: "Instagram General Search (V3) API Reference" +description: "SandBase API reference for model instagram/v3/general-search. Call /v1/api/instagram/v3/general-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/general-search" -apiReferenceJson: "{\"title\":\"General search (with pagination)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/general-search\",\"description\":\"Instagram general search API (with pagination) Support pagination via next_max_id to fetch more search results Returns blended results of users, hashtags, places, etc.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"enable_metadata\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable metadata\",\"default\":\"true\"},{\"name\":\"next_max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination ID, omit for first request, get from previous response `data.next_max_id`\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"rank_token\",\"type\":\"string\",\"required\":false,\"description\":\"Rank token, omit for first request, get from previous response `data.rank_token`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/general-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/general-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/general-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/general-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/general-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/general-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/general-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/general-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/general-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram General Search (V3)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/general-search\",\"description\":\"Returns search results across media grids based on a keyword query. Supports pagination tokens and optional metadata flags.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"enable_metadata\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable metadata\",\"default\":\"true\"},{\"name\":\"next_max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination ID, omit for first request, get from previous response `data.next_max_id`\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"rank_token\",\"type\":\"string\",\"required\":false,\"description\":\"Rank token, omit for first request, get from previous response `data.rank_token`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/general-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/general-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/general-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/general-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/general-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/general-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/general-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/general-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/general-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "General search (with pagination)" + modelName: "Instagram General Search (V3)" modelId: "instagram/v3/general-search" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/hashtag-posts.md b/model-api-reference/platform-apis/instagram/v3/hashtag-posts.md index 645aee6c..fba4ca4d 100644 --- a/model-api-reference/platform-apis/instagram/v3/hashtag-posts.md +++ b/model-api-reference/platform-apis/instagram/v3/hashtag-posts.md @@ -1,13 +1,13 @@ --- -title: "Get hashtag posts API Reference — Instagram V3 / Hashtag Posts" -description: "SandBase API operation instagram/v3/hashtag-posts." +title: "Instagram Hashtag Posts (V3) API Reference" +description: "Instagram Hashtag Posts (V3) API reference for SandBase. Use model instagram/v3/hashtag-posts with /v1/api/instagram/v3/hashtag-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/hashtag-posts" -apiReferenceJson: "{\"title\":\"Get hashtag posts\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/hashtag-posts\",\"description\":\"Get posts under a hashtag, with pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor from previous response, omit for first request\"},{\"name\":\"tag\",\"type\":\"string\",\"required\":true,\"description\":\"Hashtag keyword (without #)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/hashtag-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"tag\\\": \\\"tag\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"tag\\\": \\\"tag\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/hashtag-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"tag\\\": \\\"tag\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/hashtag-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/hashtag-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/hashtag-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/hashtag-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/hashtag-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/hashtag-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/hashtag-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Hashtag Posts (V3)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/hashtag-posts\",\"description\":\"Retrieves public posts associated with a specified hashtag. Supports pagination cursors to browse through historical content feeds.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor from previous response, omit for first request\"},{\"name\":\"tag\",\"type\":\"string\",\"required\":true,\"description\":\"Hashtag keyword (without #)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/hashtag-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"tag\\\": \\\"tag\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"tag\\\": \\\"tag\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/hashtag-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"tag\\\": \\\"tag\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/hashtag-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/hashtag-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/hashtag-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/hashtag-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/hashtag-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/hashtag-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/hashtag-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get hashtag posts" + modelName: "Instagram Hashtag Posts (V3)" modelId: "instagram/v3/hashtag-posts" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/highlight-stories.md b/model-api-reference/platform-apis/instagram/v3/highlight-stories.md deleted file mode 100644 index fbb7776b..00000000 --- a/model-api-reference/platform-apis/instagram/v3/highlight-stories.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get highlight stories — 3n1317 API" -description: "SandBase API operation instagram/v3/highlight-stories." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/instagram/v3/highlight-stories" -apiReferenceJson: "{\"title\":\"Get highlight stories\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/highlight-stories\",\"description\":\"Get Instagram Highlight's detailed story/post content Returns all Stories media in the highlight collection\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"first\",\"type\":\"integer\",\"required\":false,\"description\":\"Items per page (default 3)\"},{\"name\":\"highlight_id\",\"type\":\"string\",\"required\":true,\"description\":\"Highlight ID, format `highlight:xxx` (get from get_user_highlights API)\"},{\"name\":\"last\",\"type\":\"integer\",\"required\":false,\"description\":\"Get last N items (default 2)\"},{\"name\":\"reel_ids\",\"type\":\"string\",\"required\":false,\"description\":\"Highlight ID list, comma separated (optional, if not provided only queries the highlight_id)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/highlight-stories \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"highlight_id\\\": \\\"highlight_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"highlight_id\\\": \\\"highlight_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/highlight-stories\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"highlight_id\\\": \\\"highlight_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/highlight-stories\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/highlight-stories\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/highlight-stories\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/highlight-stories\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/highlight-stories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/highlight-stories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/highlight-stories\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get highlight stories" - modelId: "instagram/v3/highlight-stories" - vendor: "Instagram" - vendorSlug: "instagram" - modelSlug: "v3/highlight-stories" - protocol: "API Reference" - endpoint: "/v1/api/instagram/v3/highlight-stories" - publishedAt: "" - capabilities: ["api","instagram"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/instagram/v3/location-info.md b/model-api-reference/platform-apis/instagram/v3/location-info.md index 7f346868..45774b04 100644 --- a/model-api-reference/platform-apis/instagram/v3/location-info.md +++ b/model-api-reference/platform-apis/instagram/v3/location-info.md @@ -1,13 +1,13 @@ --- -title: "Get location info API Reference — Instagram V3 / Location Info" -description: "SandBase API operation instagram/v3/location-info." +title: "Instagram Location Details (V3) API Reference" +description: "SandBase API reference for model instagram/v3/location-info. Call /v1/api/instagram/v3/location-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/location-info" -apiReferenceJson: "{\"title\":\"Get location info\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/location-info\",\"description\":\"Get Instagram location/place detail info Including name, address, coordinates, nearby places, etc. Location ID can be obtained from search API (search_places) or post details\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"location_id\",\"type\":\"string\",\"required\":true,\"description\":\"Location ID (numeric)\"},{\"name\":\"show_nearby\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to show nearby places (default true)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/location-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"location_id\\\": \\\"location_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"location_id\\\": \\\"location_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/location-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"location_id\\\": \\\"location_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/location-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/location-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/location-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/location-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/location-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/location-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/location-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Location Details (V3)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/location-info\",\"description\":\"Returns detailed place information including name, address, coordinates, and nearby places for an Instagram location. Queries are based on a specific location ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"location_id\",\"type\":\"string\",\"required\":true,\"description\":\"Location ID (numeric)\"},{\"name\":\"show_nearby\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to show nearby places (default true)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/location-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"location_id\\\": \\\"location_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"location_id\\\": \\\"location_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/location-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"location_id\\\": \\\"location_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/location-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/location-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/location-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/location-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/location-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/location-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/location-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get location info" + modelName: "Instagram Location Details (V3)" modelId: "instagram/v3/location-info" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/location-nearby.md b/model-api-reference/platform-apis/instagram/v3/location-nearby.md deleted file mode 100644 index c4cc6efd..00000000 --- a/model-api-reference/platform-apis/instagram/v3/location-nearby.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get nearby location content API Reference" -description: "SandBase API operation instagram/v3/location-nearby." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/instagram/v3/location-nearby" -apiReferenceJson: "{\"title\":\"Get nearby location content\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/location-nearby\",\"description\":\"Get nearby local content aggregation for a location, including nearby places and popular posts Useful for discovering related content in a geographic area\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"location_id\",\"type\":\"string\",\"required\":true,\"description\":\"Location ID, from post data `location.id` or via `/search_places`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/location-nearby \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"location_id\\\": \\\"location_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"location_id\\\": \\\"location_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/location-nearby\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"location_id\\\": \\\"location_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/location-nearby\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/location-nearby\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/location-nearby\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/location-nearby\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/location-nearby\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/location-nearby\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/location-nearby\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get nearby location content" - modelId: "instagram/v3/location-nearby" - vendor: "Instagram" - vendorSlug: "instagram" - modelSlug: "v3/location-nearby" - protocol: "API Reference" - endpoint: "/v1/api/instagram/v3/location-nearby" - publishedAt: "" - capabilities: ["api","instagram"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/instagram/v3/location-posts.md b/model-api-reference/platform-apis/instagram/v3/location-posts.md index 5418d620..b0dc2b59 100644 --- a/model-api-reference/platform-apis/instagram/v3/location-posts.md +++ b/model-api-reference/platform-apis/instagram/v3/location-posts.md @@ -1,13 +1,13 @@ --- -title: "Get location posts API Reference — Instagram V3 / Location Posts" -description: "SandBase API operation instagram/v3/location-posts." +title: "Instagram Location Posts (V3) API Reference" +description: "SandBase API reference for model instagram/v3/location-posts. Call /v1/api/instagram/v3/location-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/location-posts" -apiReferenceJson: "{\"title\":\"Get location posts\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/location-posts\",\"description\":\"Get Instagram location-related posts Support sorting by top or available Location ID can be obtained from search API (search_places) or post details\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor from previous response `page_info.end_cursor`\"},{\"name\":\"first\",\"type\":\"integer\",\"required\":false,\"description\":\"Posts per page (default 12, max 50)\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"location_id\",\"type\":\"string\",\"required\":true,\"description\":\"Location ID (numeric)\"},{\"name\":\"page_size_override\",\"type\":\"integer\",\"required\":false,\"description\":\"Posts per page (default 12)\"},{\"name\":\"tab\",\"type\":\"string\",\"required\":false,\"description\":\"Post sort order\",\"constraints\":\"Allowed values: ranked, recent\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/location-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"location_id\\\": \\\"location_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"location_id\\\": \\\"location_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/location-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"location_id\\\": \\\"location_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/location-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/location-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/location-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/location-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/location-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/location-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/location-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Location Posts (V3)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/location-posts\",\"description\":\"Returns Instagram posts associated with a specific location. Supports sorting by ranked or recent media alongside pagination controls.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor from previous response `page_info.end_cursor`\"},{\"name\":\"first\",\"type\":\"integer\",\"required\":false,\"description\":\"Posts per page (default 12, max 50)\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"location_id\",\"type\":\"string\",\"required\":true,\"description\":\"Location ID (numeric)\"},{\"name\":\"page_size_override\",\"type\":\"integer\",\"required\":false,\"description\":\"Posts per page (default 12)\"},{\"name\":\"tab\",\"type\":\"string\",\"required\":false,\"description\":\"Post sort order\",\"constraints\":\"Allowed values: ranked, recent\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/location-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"location_id\\\": \\\"location_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"location_id\\\": \\\"location_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/location-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"location_id\\\": \\\"location_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/location-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/location-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/location-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/location-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/location-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/location-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/location-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get location posts" + modelName: "Instagram Location Posts (V3)" modelId: "instagram/v3/location-posts" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/media-id-to-shortcode.md b/model-api-reference/platform-apis/instagram/v3/media-id-to-shortcode.md index 126418ec..c19155e0 100644 --- a/model-api-reference/platform-apis/instagram/v3/media-id-to-shortcode.md +++ b/model-api-reference/platform-apis/instagram/v3/media-id-to-shortcode.md @@ -1,13 +1,13 @@ --- -title: "Convert media ID to shortcode — fxufjp API" -description: "SandBase API operation instagram/v3/media-id-to-shortcode." +title: "Instagram Media ID to Shortcode (V3) API Reference" +description: "SandBase API reference for model instagram/v3/media-id-to-shortcode. Call /v1/api/instagram/v3/media-id-to-shortcode; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/media-id-to-shortcode" -apiReferenceJson: "{\"title\":\"Convert media ID to shortcode\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/media-id-to-shortcode\",\"description\":\"Convert numeric media_id to post shortcode Shortcode can be used to construct post URL: instagram.com/p/{shortcode}/\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"media_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post media ID (numeric ID)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/media-id-to-shortcode \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"media_id\\\": \\\"3850699893338385742\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"media_id\\\": \\\"3850699893338385742\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/media-id-to-shortcode\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"media_id\\\": \\\"3850699893338385742\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/media-id-to-shortcode\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/media-id-to-shortcode\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/media-id-to-shortcode\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/media-id-to-shortcode\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/media-id-to-shortcode\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/media-id-to-shortcode\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/media-id-to-shortcode\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Media ID to Shortcode (V3)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/media-id-to-shortcode\",\"description\":\"Converts a numeric Instagram media ID into a post shortcode for constructing web URLs. Requires the target post numeric identifier via media_id.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"media_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post media ID (numeric ID)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/media-id-to-shortcode \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"media_id\\\": \\\"3850699893338385742\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"media_id\\\": \\\"3850699893338385742\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/media-id-to-shortcode\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"media_id\\\": \\\"3850699893338385742\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/media-id-to-shortcode\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/media-id-to-shortcode\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/media-id-to-shortcode\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/media-id-to-shortcode\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/media-id-to-shortcode\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/media-id-to-shortcode\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/media-id-to-shortcode\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Convert media ID to shortcode" + modelName: "Instagram Media ID to Shortcode (V3)" modelId: "instagram/v3/media-id-to-shortcode" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/music-posts.md b/model-api-reference/platform-apis/instagram/v3/music-posts.md deleted file mode 100644 index 8c026293..00000000 --- a/model-api-reference/platform-apis/instagram/v3/music-posts.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get music (audio) posts API Reference" -description: "SandBase API operation instagram/v3/music-posts." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/instagram/v3/music-posts" -apiReferenceJson: "{\"title\":\"Get music (audio) posts\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/music-posts\",\"description\":\"Get Reels using a specific audio (background music), with pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"audio_cluster_id\",\"type\":\"string\",\"required\":true,\"description\":\"Audio ID, obtainable from Reels audio field\"},{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor from previous response, omit for first request\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/music-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"audio_cluster_id\\\": \\\"audio_cluster_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"audio_cluster_id\\\": \\\"audio_cluster_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/music-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"audio_cluster_id\\\": \\\"audio_cluster_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/music-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/music-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/music-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/music-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/music-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/music-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/music-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get music (audio) posts" - modelId: "instagram/v3/music-posts" - vendor: "Instagram" - vendorSlug: "instagram" - modelSlug: "v3/music-posts" - protocol: "API Reference" - endpoint: "/v1/api/instagram/v3/music-posts" - publishedAt: "" - capabilities: ["api","instagram"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/instagram/v3/post-comments.md b/model-api-reference/platform-apis/instagram/v3/post-comments.md index 6fbb1122..93d2dae2 100644 --- a/model-api-reference/platform-apis/instagram/v3/post-comments.md +++ b/model-api-reference/platform-apis/instagram/v3/post-comments.md @@ -1,13 +1,13 @@ --- -title: "Get post comments API Reference — Instagram V3 / Post Comments" -description: "SandBase API operation instagram/v3/post-comments." +title: "Instagram Post Comments (V3) API Reference" +description: "Instagram Post Comments (V3) API reference for SandBase. Use model instagram/v3/post-comments with /v1/api/instagram/v3/post-comments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/post-comments" -apiReferenceJson: "{\"title\":\"Get post comments\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/post-comments\",\"description\":\"Get Instagram post comment list Support pagination to fetch all comments Support sorting by popular or available\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"code\",\"type\":\"string\",\"required\":true,\"description\":\"Post shortcode (e.g., DUajw4YkorV, required)\"},{\"name\":\"min_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request, get from previous response `data.next_min_id`\"},{\"name\":\"sort_order\",\"type\":\"string\",\"required\":false,\"description\":\"Sort order\",\"default\":\"popular\",\"constraints\":\"Allowed values: popular, newest\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/post-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"code\\\": \\\"DUajw4YkorV\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"code\\\": \\\"DUajw4YkorV\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/post-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"code\\\": \\\"DUajw4YkorV\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/post-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/post-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/post-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/post-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/post-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Post Comments (V3)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/post-comments\",\"description\":\"Returns a list of comments for an Instagram post specified by its shortcode. Supports pagination and ordering by popular or available comments.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"code\",\"type\":\"string\",\"required\":true,\"description\":\"Post shortcode (e.g., DUajw4YkorV, required)\"},{\"name\":\"min_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request, get from previous response `data.next_min_id`\"},{\"name\":\"sort_order\",\"type\":\"string\",\"required\":false,\"description\":\"Sort order\",\"default\":\"popular\",\"constraints\":\"Allowed values: popular, newest\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/post-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"code\\\": \\\"DUajw4YkorV\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"code\\\": \\\"DUajw4YkorV\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/post-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"code\\\": \\\"DUajw4YkorV\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/post-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/post-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/post-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/post-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/post-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get post comments" + modelName: "Instagram Post Comments (V3)" modelId: "instagram/v3/post-comments" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/post-info-by-code.md b/model-api-reference/platform-apis/instagram/v3/post-info-by-code.md index 006c98c3..c22df055 100644 --- a/model-api-reference/platform-apis/instagram/v3/post-info-by-code.md +++ b/model-api-reference/platform-apis/instagram/v3/post-info-by-code.md @@ -1,13 +1,13 @@ --- -title: "Get post info by shortcode API Reference" -description: "SandBase API operation instagram/v3/post-info-by-code." +title: "Instagram Post Info by Shortcode API Reference" +description: "SandBase API reference for model instagram/v3/post-info-by-code. Call /v1/api/instagram/v3/post-info-by-code; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/post-info-by-code" -apiReferenceJson: "{\"title\":\"Get post info by shortcode\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/post-info-by-code\",\"description\":\"Get post details by shortcode Shortcode is the identifier in the post URL, e.g., `DUajw4YkorV` from `https://www.instagram.com/p/DUajw4YkorV/` Returns complete post info\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"code\",\"type\":\"string\",\"required\":true,\"description\":\"Post shortcode (e.g., DUajw4YkorV, required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/post-info-by-code \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"code\\\": \\\"DUajw4YkorV\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"code\\\": \\\"DUajw4YkorV\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/post-info-by-code\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"code\\\": \\\"DUajw4YkorV\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/post-info-by-code\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/post-info-by-code\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/post-info-by-code\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/post-info-by-code\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/post-info-by-code\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/post-info-by-code\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/post-info-by-code\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Post Info by Shortcode\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/post-info-by-code\",\"description\":\"Retrieves detailed post information and media items for an Instagram post using its shortcode. Provides carousel media details, accessibility captions, and post identifiers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"code\",\"type\":\"string\",\"required\":true,\"description\":\"Post shortcode (e.g., DUajw4YkorV, required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/post-info-by-code \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"code\\\": \\\"DUajw4YkorV\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"code\\\": \\\"DUajw4YkorV\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/post-info-by-code\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"code\\\": \\\"DUajw4YkorV\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/post-info-by-code\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/post-info-by-code\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/post-info-by-code\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/post-info-by-code\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/post-info-by-code\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/post-info-by-code\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/post-info-by-code\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get post info by shortcode" + modelName: "Instagram Post Info by Shortcode" modelId: "instagram/v3/post-info-by-code" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/post-info.md b/model-api-reference/platform-apis/instagram/v3/post-info.md index c1050b79..01fddcfa 100644 --- a/model-api-reference/platform-apis/instagram/v3/post-info.md +++ b/model-api-reference/platform-apis/instagram/v3/post-info.md @@ -1,13 +1,13 @@ --- -title: "Get post info (media_id or URL) API Reference" -description: "SandBase API operation instagram/v3/post-info." +title: "Instagram Post Details (V3) API Reference" +description: "Instagram Post Details (V3) API reference for SandBase. Use model instagram/v3/post-info with /v1/api/instagram/v3/post-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/post-info" -apiReferenceJson: "{\"title\":\"Get post info (media_id or URL)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/post-info\",\"description\":\"Get post details by media ID or post URL Returns complete post info including images/videos, likes, comments, author info, etc.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"media_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Post media ID (numeric ID), can be obtained via `/shortcode_to_media_id` endpoint\"},{\"name\":\"url\",\"type\":\"string | null\",\"required\":false,\"description\":\"Post URL, e.g. `https://www.instagram.com/p/DUajw4YkorV/`, supports `/p/`, `/reel/`, `/reels/`, `/tv/` paths\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/post-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/post-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/post-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/post-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/post-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/post-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/post-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/post-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/post-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Post Details (V3)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/post-info\",\"description\":\"Returns comprehensive details for an Instagram post, reel, or video. Look up content using either a direct media link or a specific media identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"media_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Post media ID (numeric ID), can be obtained via `/shortcode_to_media_id` endpoint\"},{\"name\":\"url\",\"type\":\"string | null\",\"required\":false,\"description\":\"Post URL, e.g. `https://www.instagram.com/p/DUajw4YkorV/`, supports `/p/`, `/reel/`, `/reels/`, `/tv/` paths\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/post-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/post-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/post-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/post-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/post-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/post-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/post-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/post-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/post-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get post info (media_id or URL)" + modelName: "Instagram Post Details (V3)" modelId: "instagram/v3/post-info" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/post-likes.md b/model-api-reference/platform-apis/instagram/v3/post-likes.md index da3ab64d..32238f01 100644 --- a/model-api-reference/platform-apis/instagram/v3/post-likes.md +++ b/model-api-reference/platform-apis/instagram/v3/post-likes.md @@ -1,13 +1,13 @@ --- -title: "Get post likes API Reference — Instagram V3 / Post Likes API" -description: "SandBase API operation instagram/v3/post-likes." +title: "Instagram Post Likes (V3) API Reference" +description: "Instagram Post Likes (V3) API reference for SandBase. Use model instagram/v3/post-likes with /v1/api/instagram/v3/post-likes; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/post-likes" -apiReferenceJson: "{\"title\":\"Get post likes\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/post-likes\",\"description\":\"Get list of users who liked an Instagram post\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"code\",\"type\":\"string\",\"required\":true,\"description\":\"Post shortcode (from post URL, e.g. instagram.com/p/{code}/)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/post-likes \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"code\\\": \\\"code\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"code\\\": \\\"code\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/post-likes\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"code\\\": \\\"code\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/post-likes\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/post-likes\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/post-likes\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/post-likes\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/post-likes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/post-likes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/post-likes\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Post Likes (V3)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/post-likes\",\"description\":\"Returns a list of users who liked a specific Instagram post. Queries engagement details using the unique post shortcode from the post URL.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"code\",\"type\":\"string\",\"required\":true,\"description\":\"Post shortcode (from post URL, e.g. instagram.com/p/{code}/)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/post-likes \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"code\\\": \\\"Dd9RyBWBVih\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"code\\\": \\\"Dd9RyBWBVih\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/post-likes\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"code\\\": \\\"Dd9RyBWBVih\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/post-likes\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/post-likes\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/post-likes\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/post-likes\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/post-likes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/post-likes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/post-likes\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get post likes" + modelName: "Instagram Post Likes (V3)" modelId: "instagram/v3/post-likes" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/post-oembed.md b/model-api-reference/platform-apis/instagram/v3/post-oembed.md deleted file mode 100644 index 3b7c09c8..00000000 --- a/model-api-reference/platform-apis/instagram/v3/post-oembed.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get post oEmbed info API Reference" -description: "SandBase API operation instagram/v3/post-oembed." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/instagram/v3/post-oembed" -apiReferenceJson: "{\"title\":\"Get post oEmbed info\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/post-oembed\",\"description\":\"Get Instagram post oEmbed embed info Returns HTML code for embedding and post metadata Suitable for embedding Instagram posts on third-party websites\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"hidecaption\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to hide caption (default false)\"},{\"name\":\"maxwidth\",\"type\":\"integer\",\"required\":false,\"description\":\"Max embed width in pixels (default 540)\"},{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Full Instagram post URL (e.g., `https://www.instagram.com/p/xxx/` or `https://www.instagram.com/reel/xxx/`)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/post-oembed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/post-oembed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/post-oembed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/post-oembed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/post-oembed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/post-oembed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/post-oembed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/post-oembed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/post-oembed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get post oEmbed info" - modelId: "instagram/v3/post-oembed" - vendor: "Instagram" - vendorSlug: "instagram" - modelSlug: "v3/post-oembed" - protocol: "API Reference" - endpoint: "/v1/api/instagram/v3/post-oembed" - publishedAt: "" - capabilities: ["api","instagram"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/instagram/v3/recommended-reels.md b/model-api-reference/platform-apis/instagram/v3/recommended-reels.md index 74f0f747..431d00ab 100644 --- a/model-api-reference/platform-apis/instagram/v3/recommended-reels.md +++ b/model-api-reference/platform-apis/instagram/v3/recommended-reels.md @@ -1,13 +1,13 @@ --- -title: "Get recommended Reels feed API Reference" -description: "SandBase API operation instagram/v3/recommended-reels." +title: "Instagram Recommended Reels Feed API Reference" +description: "SandBase API reference for model instagram/v3/recommended-reels. Call /v1/api/instagram/v3/recommended-reels; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/recommended-reels" -apiReferenceJson: "{\"title\":\"Get recommended Reels feed\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/recommended-reels\",\"description\":\"Get Instagram Reels recommendation feed Support pagination to fetch more Reels\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request, get from previous response `data.page_info.end_cursor`\"},{\"name\":\"first\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of Reels to fetch per request (default 12, max 50)\",\"default\":\"12\",\"constraints\":\"Range: 1 to 50\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/recommended-reels \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"instagram/v3/recommended-reels\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"instagram/v3/recommended-reels\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/recommended-reels\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"instagram/v3/recommended-reels\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/recommended-reels\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/recommended-reels\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/recommended-reels\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/recommended-reels\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/recommended-reels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/recommended-reels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/recommended-reels\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Recommended Reels Feed\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/recommended-reels\",\"description\":\"Returns the Instagram Reels recommendation feed with media details and pagination support. Use optional pagination parameters to control page size and navigate subsequent results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request, get from previous response `data.page_info.end_cursor`\"},{\"name\":\"first\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of Reels to fetch per request (default 12, max 50)\",\"default\":\"12\",\"constraints\":\"Range: 1 to 50\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/recommended-reels \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/recommended-reels\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/recommended-reels\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/recommended-reels\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/recommended-reels\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/recommended-reels\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/recommended-reels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/recommended-reels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/recommended-reels\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get recommended Reels feed" + modelName: "Instagram Recommended Reels Feed" modelId: "instagram/v3/recommended-reels" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/search-by-coordinates.md b/model-api-reference/platform-apis/instagram/v3/search-by-coordinates.md index 1bb4a080..c0af7cd8 100644 --- a/model-api-reference/platform-apis/instagram/v3/search-by-coordinates.md +++ b/model-api-reference/platform-apis/instagram/v3/search-by-coordinates.md @@ -1,13 +1,13 @@ --- -title: "Search locations by coordinates — vn43jp API" -description: "SandBase API operation instagram/v3/search-by-coordinates." +title: "Instagram Location Search by Coordinates (V3) API Reference" +description: "SandBase API reference for model instagram/v3/search-by-coordinates. Call /v1/api/instagram/v3/search-by-coordinates; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/search-by-coordinates" -apiReferenceJson: "{\"title\":\"Search locations by coordinates\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/search-by-coordinates\",\"description\":\"Search nearby Instagram locations by GPS coordinates\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"latitude\",\"type\":\"number\",\"required\":true,\"description\":\"Latitude\"},{\"name\":\"longitude\",\"type\":\"number\",\"required\":true,\"description\":\"Longitude\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/search-by-coordinates \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"latitude\\\": 0,\\n \\\"longitude\\\": 0\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"latitude\\\": 0,\\n \\\"longitude\\\": 0\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/search-by-coordinates\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"latitude\\\": 0,\\n \\\"longitude\\\": 0\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/search-by-coordinates\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/search-by-coordinates\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/search-by-coordinates\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/search-by-coordinates\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/search-by-coordinates\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/search-by-coordinates\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/search-by-coordinates\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Location Search by Coordinates (V3)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/search-by-coordinates\",\"description\":\"Returns nearby Instagram locations matching specific GPS coordinates. Provide latitude and longitude coordinates to discover venues and their external IDs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"latitude\",\"type\":\"number\",\"required\":true,\"description\":\"Latitude\"},{\"name\":\"longitude\",\"type\":\"number\",\"required\":true,\"description\":\"Longitude\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/search-by-coordinates \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"latitude\\\": 0,\\n \\\"longitude\\\": 0\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"latitude\\\": 0,\\n \\\"longitude\\\": 0\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/search-by-coordinates\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"latitude\\\": 0,\\n \\\"longitude\\\": 0\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/search-by-coordinates\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/search-by-coordinates\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/search-by-coordinates\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/search-by-coordinates\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/search-by-coordinates\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/search-by-coordinates\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/search-by-coordinates\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search locations by coordinates" + modelName: "Instagram Location Search by Coordinates (V3)" modelId: "instagram/v3/search-by-coordinates" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/search-hashtags.md b/model-api-reference/platform-apis/instagram/v3/search-hashtags.md index e6a4d8a0..61533b27 100644 --- a/model-api-reference/platform-apis/instagram/v3/search-hashtags.md +++ b/model-api-reference/platform-apis/instagram/v3/search-hashtags.md @@ -1,13 +1,13 @@ --- -title: "Search hashtags API Reference — Instagram V3 / Search Hashtags" -description: "SandBase API operation instagram/v3/search-hashtags." +title: "Instagram Hashtag Search (V3) API Reference" +description: "SandBase API reference for model instagram/v3/search-hashtags. Call /v1/api/instagram/v3/search-hashtags; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/search-hashtags" -apiReferenceJson: "{\"title\":\"Search hashtags\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/search-hashtags\",\"description\":\"Instagram hashtag search API Returns only hashtag search results\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"rank_token\",\"type\":\"string\",\"required\":false,\"description\":\"Rank token from previous search response for pagination\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/search-hashtags \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/search-hashtags\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/search-hashtags\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/search-hashtags\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/search-hashtags\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/search-hashtags\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/search-hashtags\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/search-hashtags\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/search-hashtags\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Hashtag Search (V3)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/search-hashtags\",\"description\":\"Searches Instagram hashtags by keyword and returns matching hashtag names, IDs, and media counts. Supports pagination via rank tokens.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"rank_token\",\"type\":\"string\",\"required\":false,\"description\":\"Rank token from previous search response for pagination\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/search-hashtags \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/search-hashtags\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/search-hashtags\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/search-hashtags\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/search-hashtags\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/search-hashtags\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/search-hashtags\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/search-hashtags\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/search-hashtags\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search hashtags" + modelName: "Instagram Hashtag Search (V3)" modelId: "instagram/v3/search-hashtags" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/search-users.md b/model-api-reference/platform-apis/instagram/v3/search-users.md index 6a5ff26f..7f96c965 100644 --- a/model-api-reference/platform-apis/instagram/v3/search-users.md +++ b/model-api-reference/platform-apis/instagram/v3/search-users.md @@ -1,13 +1,13 @@ --- -title: "Search users API Reference — Instagram V3 / Search Users API" -description: "SandBase API operation instagram/v3/search-users." +title: "Instagram User Search (V3) API Reference" +description: "Instagram User Search (V3) API reference for SandBase. Use model instagram/v3/search-users with /v1/api/instagram/v3/search-users; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/search-users" -apiReferenceJson: "{\"title\":\"Search users\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/search-users\",\"description\":\"Instagram user search API Returns only user search results\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"rank_token\",\"type\":\"string\",\"required\":false,\"description\":\"Rank token from previous search response for pagination\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/search-users \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/search-users\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/search-users\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/search-users\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/search-users\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/search-users\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/search-users\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/search-users\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/search-users\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Search (V3)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/search-users\",\"description\":\"Searches for Instagram accounts matching a keyword query and returns user profiles including account IDs, full names, and usernames.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"rank_token\",\"type\":\"string\",\"required\":false,\"description\":\"Rank token from previous search response for pagination\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/search-users \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/search-users\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/search-users\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/search-users\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/search-users\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/search-users\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/search-users\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/search-users\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/search-users\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search users" + modelName: "Instagram User Search (V3)" modelId: "instagram/v3/search-users" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/shortcode-to-media-id.md b/model-api-reference/platform-apis/instagram/v3/shortcode-to-media-id.md index 785da3b8..c79fb401 100644 --- a/model-api-reference/platform-apis/instagram/v3/shortcode-to-media-id.md +++ b/model-api-reference/platform-apis/instagram/v3/shortcode-to-media-id.md @@ -1,13 +1,13 @@ --- -title: "Convert shortcode to media ID — wqi96l API" -description: "SandBase API operation instagram/v3/shortcode-to-media-id." +title: "Instagram Shortcode to Media ID (V3) API Reference" +description: "SandBase API reference for model instagram/v3/shortcode-to-media-id. Call /v1/api/instagram/v3/shortcode-to-media-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/shortcode-to-media-id" -apiReferenceJson: "{\"title\":\"Convert shortcode to media ID\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/shortcode-to-media-id\",\"description\":\"Convert post shortcode to numeric media_id Imported from a validated TikHub OpenAPI document. Pricing must be reviewed before enabling.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"shortcode\",\"type\":\"string\",\"required\":true,\"description\":\"Post shortcode\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/shortcode-to-media-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"shortcode\\\": \\\"DUajw4YkorV\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"shortcode\\\": \\\"DUajw4YkorV\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/shortcode-to-media-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"shortcode\\\": \\\"DUajw4YkorV\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/shortcode-to-media-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/shortcode-to-media-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/shortcode-to-media-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/shortcode-to-media-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/shortcode-to-media-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/shortcode-to-media-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/shortcode-to-media-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Shortcode to Media ID (V3)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/shortcode-to-media-id\",\"description\":\"Converts an Instagram post shortcode into its corresponding numeric media ID. Requires a post shortcode string to return the unique platform identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"shortcode\",\"type\":\"string\",\"required\":true,\"description\":\"Post shortcode\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/shortcode-to-media-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"shortcode\\\": \\\"DUajw4YkorV\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"shortcode\\\": \\\"DUajw4YkorV\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/shortcode-to-media-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"shortcode\\\": \\\"DUajw4YkorV\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/shortcode-to-media-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/shortcode-to-media-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/shortcode-to-media-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/shortcode-to-media-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/shortcode-to-media-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/shortcode-to-media-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/shortcode-to-media-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Convert shortcode to media ID" + modelName: "Instagram Shortcode to Media ID (V3)" modelId: "instagram/v3/shortcode-to-media-id" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/similar-users.md b/model-api-reference/platform-apis/instagram/v3/similar-users.md index f7bc4017..fb16cb46 100644 --- a/model-api-reference/platform-apis/instagram/v3/similar-users.md +++ b/model-api-reference/platform-apis/instagram/v3/similar-users.md @@ -1,13 +1,13 @@ --- -title: "Get similar users API Reference — Instagram V3 / Similar Users" -description: "SandBase API operation instagram/v3/similar-users." +title: "Instagram Similar Users (V3) API Reference" +description: "Instagram Similar Users (V3) API reference for SandBase. Use model instagram/v3/similar-users with /v1/api/instagram/v3/similar-users; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/similar-users" -apiReferenceJson: "{\"title\":\"Get similar users\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/similar-users\",\"description\":\"Get recommended accounts similar to the given user\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Target user ID (numeric), obtainable via get_user_id_by_username\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/similar-users \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/similar-users\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/similar-users\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/similar-users\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/similar-users\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/similar-users\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/similar-users\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/similar-users\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/similar-users\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram Similar Users (V3)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/similar-users\",\"description\":\"Returns recommended Instagram accounts similar to a target profile. Provide a numeric user ID to look up related accounts, usernames, and profile details.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Target user ID (numeric), obtainable via get_user_id_by_username\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/similar-users \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"25025320\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"25025320\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/similar-users\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"25025320\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/similar-users\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/similar-users\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/similar-users\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/similar-users\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/similar-users\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/similar-users\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/similar-users\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get similar users" + modelName: "Instagram Similar Users (V3)" modelId: "instagram/v3/similar-users" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/translate-comment.md b/model-api-reference/platform-apis/instagram/v3/translate-comment.md deleted file mode 100644 index 6d0ef610..00000000 --- a/model-api-reference/platform-apis/instagram/v3/translate-comment.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Translate comment or caption API Reference" -description: "SandBase API operation instagram/v3/translate-comment." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/instagram/v3/translate-comment" -apiReferenceJson: "{\"title\":\"Translate comment or caption\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/translate-comment\",\"description\":\"Translate Instagram post caption Internally forces is_caption=True, specifically for translating post captions\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"comment_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post media ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/translate-comment \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/translate-comment\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/translate-comment\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/translate-comment\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/translate-comment\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/translate-comment\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/translate-comment\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/translate-comment\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/translate-comment\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Translate comment or caption" - modelId: "instagram/v3/translate-comment" - vendor: "Instagram" - vendorSlug: "instagram" - modelSlug: "v3/translate-comment" - protocol: "API Reference" - endpoint: "/v1/api/instagram/v3/translate-comment" - publishedAt: "" - capabilities: ["api","instagram"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/instagram/v3/user-about.md b/model-api-reference/platform-apis/instagram/v3/user-about.md index c537e3c3..9aba7b1d 100644 --- a/model-api-reference/platform-apis/instagram/v3/user-about.md +++ b/model-api-reference/platform-apis/instagram/v3/user-about.md @@ -1,13 +1,13 @@ --- -title: "Get user about info API Reference — Instagram V3 / User About API" -description: "SandBase API operation instagram/v3/user-about." +title: "Instagram User About Details API Reference" +description: "Instagram User About Details API reference for SandBase. Use model instagram/v3/user-about with /v1/api/instagram/v3/user-about; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/user-about" -apiReferenceJson: "{\"title\":\"Get user about info\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/user-about\",\"description\":\"Get Instagram user's About This Account information Including account creation date, location, former usernames, etc.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/user-about \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-about\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-about\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/user-about\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/user-about\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/user-about\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/user-about\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/user-about\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/user-about\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User About Details\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/user-about\",\"description\":\"Returns About This Account details for an Instagram profile using a target username. Output includes metadata such as account join date, location, and former usernames.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/user-about \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-about\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-about\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/user-about\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/user-about\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/user-about\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/user-about\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/user-about\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/user-about\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user about info" + modelName: "Instagram User About Details" modelId: "instagram/v3/user-about" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/user-brief.md b/model-api-reference/platform-apis/instagram/v3/user-brief.md index 0b39ede9..59376fa2 100644 --- a/model-api-reference/platform-apis/instagram/v3/user-brief.md +++ b/model-api-reference/platform-apis/instagram/v3/user-brief.md @@ -1,13 +1,13 @@ --- -title: "Get user brief info API Reference" -description: "SandBase API operation instagram/v3/user-brief." +title: "Instagram User Brief Info API Reference" +description: "Instagram User Brief Info API reference for SandBase. Use model instagram/v3/user-brief with /v1/api/instagram/v3/user-brief; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/user-brief" -apiReferenceJson: "{\"title\":\"Get user brief info\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/user-brief\",\"description\":\"Get Instagram user brief/hover card info Returns core user info, faster response than get_user_profile Suitable for batch fetching user summary info\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram user ID (numeric, required)\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/user-brief \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"25025320\\\",\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"25025320\\\",\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-brief\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"25025320\\\",\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-brief\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/user-brief\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/user-brief\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/user-brief\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/user-brief\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/user-brief\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/user-brief\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Brief Info\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/user-brief\",\"description\":\"Returns summary profile metrics and metadata for an Instagram account, including follower counts, media count, and profile picture URL, using user_id and username.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram user ID (numeric, required)\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/user-brief \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"25025320\\\",\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"25025320\\\",\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-brief\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"25025320\\\",\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-brief\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/user-brief\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/user-brief\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/user-brief\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/user-brief\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/user-brief\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/user-brief\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user brief info" + modelName: "Instagram User Brief Info" modelId: "instagram/v3/user-brief" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/user-followers.md b/model-api-reference/platform-apis/instagram/v3/user-followers.md index eaf6a5ff..b3a0601f 100644 --- a/model-api-reference/platform-apis/instagram/v3/user-followers.md +++ b/model-api-reference/platform-apis/instagram/v3/user-followers.md @@ -1,13 +1,13 @@ --- -title: "Get user followers list API Reference" -description: "SandBase API operation instagram/v3/user-followers." +title: "Instagram User Followers (V3) API Reference" +description: "SandBase API reference for model instagram/v3/user-followers. Call /v1/api/instagram/v3/user-followers; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/user-followers" -apiReferenceJson: "{\"title\":\"Get user followers list\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/user-followers\",\"description\":\"Get Instagram user's followers list Returns all accounts that follow this user Support pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of users to fetch per request (default 12, max 100)\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request, get from previous response `data.next_max_id`\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/user-followers \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-followers\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-followers\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/user-followers\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/user-followers\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/user-followers\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/user-followers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/user-followers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/user-followers\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Followers (V3)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/user-followers\",\"description\":\"Returns a list of followers for a specified Instagram account. Supports pagination cursors and limits up to 100 users per request.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of users to fetch per request (default 12, max 100)\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request, get from previous response `data.next_max_id`\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/user-followers \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-followers\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-followers\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/user-followers\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/user-followers\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/user-followers\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/user-followers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/user-followers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/user-followers\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user followers list" + modelName: "Instagram User Followers (V3)" modelId: "instagram/v3/user-followers" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/user-following.md b/model-api-reference/platform-apis/instagram/v3/user-following.md index 200b6eb3..cbf61700 100644 --- a/model-api-reference/platform-apis/instagram/v3/user-following.md +++ b/model-api-reference/platform-apis/instagram/v3/user-following.md @@ -1,13 +1,13 @@ --- -title: "Get user following list API Reference — Instagram User Following" -description: "SandBase API operation instagram/v3/user-following." +title: "Instagram User Following List API Reference" +description: "SandBase API reference for model instagram/v3/user-following. Call /v1/api/instagram/v3/user-following; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/user-following" -apiReferenceJson: "{\"title\":\"Get user following list\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/user-following\",\"description\":\"Get Instagram user's following list Returns all accounts the user follows Support pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of users to fetch per request (default 12, max 100)\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request, get from previous response `data.next_max_id`\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/user-following \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-following\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-following\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/user-following\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/user-following\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/user-following\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/user-following\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/user-following\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/user-following\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Following List\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/user-following\",\"description\":\"Returns a paginated list of accounts followed by a specified Instagram user. Supports filtering by username and custom result counts up to 100 users per request.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of users to fetch per request (default 12, max 100)\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, omit for first request, get from previous response `data.next_max_id`\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/user-following \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-following\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-following\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/user-following\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/user-following\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/user-following\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/user-following\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/user-following\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/user-following\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user following list" + modelName: "Instagram User Following List" modelId: "instagram/v3/user-following" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/user-former-usernames.md b/model-api-reference/platform-apis/instagram/v3/user-former-usernames.md deleted file mode 100644 index bd8e898e..00000000 --- a/model-api-reference/platform-apis/instagram/v3/user-former-usernames.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get user former usernames API Reference" -description: "SandBase API operation instagram/v3/user-former-usernames." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/instagram/v3/user-former-usernames" -apiReferenceJson: "{\"title\":\"Get user former usernames\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/user-former-usernames\",\"description\":\"Get Instagram user's former username history\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/user-former-usernames \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-former-usernames\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-former-usernames\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/user-former-usernames\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/user-former-usernames\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/user-former-usernames\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/user-former-usernames\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/user-former-usernames\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/user-former-usernames\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get user former usernames" - modelId: "instagram/v3/user-former-usernames" - vendor: "Instagram" - vendorSlug: "instagram" - modelSlug: "v3/user-former-usernames" - protocol: "API Reference" - endpoint: "/v1/api/instagram/v3/user-former-usernames" - publishedAt: "" - capabilities: ["api","instagram"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/instagram/v3/user-highlights.md b/model-api-reference/platform-apis/instagram/v3/user-highlights.md index 8e804d0f..eede6bd0 100644 --- a/model-api-reference/platform-apis/instagram/v3/user-highlights.md +++ b/model-api-reference/platform-apis/instagram/v3/user-highlights.md @@ -1,13 +1,13 @@ --- -title: "Get user highlights — 4vtzmc API" -description: "SandBase API operation instagram/v3/user-highlights." +title: "Instagram User Highlights (V3) API Reference" +description: "SandBase API reference for model instagram/v3/user-highlights. Call /v1/api/instagram/v3/user-highlights; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/user-highlights" -apiReferenceJson: "{\"title\":\"Get user highlights\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/user-highlights\",\"description\":\"Get Instagram user's Highlights list Returns all highlight collections created by the user Support pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Forward pagination cursor, from previous response `data.page_info.end_cursor`\"},{\"name\":\"before\",\"type\":\"string\",\"required\":false,\"description\":\"Backward pagination cursor, from previous response `data.page_info.start_cursor`\"},{\"name\":\"first\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of highlights per page (default 10, max 50)\",\"default\":\"10\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"last\",\"type\":\"integer\",\"required\":false,\"description\":\"Highlights per page for backward pagination, use with `before`\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/user-highlights \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-highlights\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-highlights\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/user-highlights\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/user-highlights\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/user-highlights\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/user-highlights\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/user-highlights\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/user-highlights\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Highlights (V3)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/user-highlights\",\"description\":\"Returns profile highlights for a specified Instagram account. Supports forward and backward cursor-based pagination to browse collections.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Forward pagination cursor, from previous response `data.page_info.end_cursor`\"},{\"name\":\"before\",\"type\":\"string\",\"required\":false,\"description\":\"Backward pagination cursor, from previous response `data.page_info.start_cursor`\"},{\"name\":\"first\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of highlights per page (default 10, max 50)\",\"default\":\"10\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"last\",\"type\":\"integer\",\"required\":false,\"description\":\"Highlights per page for backward pagination, use with `before`\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/user-highlights \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-highlights\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-highlights\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/user-highlights\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/user-highlights\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/user-highlights\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/user-highlights\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/user-highlights\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/user-highlights\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user highlights" + modelName: "Instagram User Highlights (V3)" modelId: "instagram/v3/user-highlights" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/user-id-by-username.md b/model-api-reference/platform-apis/instagram/v3/user-id-by-username.md index f0bc1ed2..0dfb5920 100644 --- a/model-api-reference/platform-apis/instagram/v3/user-id-by-username.md +++ b/model-api-reference/platform-apis/instagram/v3/user-id-by-username.md @@ -1,13 +1,13 @@ --- -title: "Get user ID by username API Reference" -description: "SandBase API operation instagram/v3/user-id-by-username." +title: "Instagram User ID Lookup API Reference" +description: "SandBase API reference for model instagram/v3/user-id-by-username. Call /v1/api/instagram/v3/user-id-by-username; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/user-id-by-username" -apiReferenceJson: "{\"title\":\"Get user ID by username\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/user-id-by-username\",\"description\":\"Get Instagram user ID by username User ID is the unique identifier used internally by Instagram, usually a numeric string\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/user-id-by-username \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"nasa\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"nasa\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-id-by-username\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"nasa\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-id-by-username\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/user-id-by-username\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/user-id-by-username\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/user-id-by-username\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/user-id-by-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/user-id-by-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/user-id-by-username\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User ID Lookup\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/user-id-by-username\",\"description\":\"Convert an Instagram username into its numeric user ID, the internal identifier needed by most Instagram profile, posts and followers APIs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/user-id-by-username \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"nasa\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"nasa\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-id-by-username\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"nasa\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-id-by-username\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/user-id-by-username\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/user-id-by-username\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/user-id-by-username\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/user-id-by-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/user-id-by-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/user-id-by-username\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user ID by username" + modelName: "Instagram User ID Lookup" modelId: "instagram/v3/user-id-by-username" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/user-id-to-username.md b/model-api-reference/platform-apis/instagram/v3/user-id-to-username.md index 94b2048f..453cbe1e 100644 --- a/model-api-reference/platform-apis/instagram/v3/user-id-to-username.md +++ b/model-api-reference/platform-apis/instagram/v3/user-id-to-username.md @@ -1,13 +1,13 @@ --- -title: "Get user info by user ID — 2hagil API" -description: "SandBase API operation instagram/v3/user-id-to-username." +title: "Instagram User Info by ID API Reference" +description: "SandBase API reference for model instagram/v3/user-id-to-username. Call /v1/api/instagram/v3/user-id-to-username; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/user-id-to-username" -apiReferenceJson: "{\"title\":\"Get user info by user ID\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/user-id-to-username\",\"description\":\"Get Instagram user info by user ID Inverse operation of get_user_id_by_username (ID → user info)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram user ID (numeric string)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/user-id-to-username \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-id-to-username\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"25025320\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-id-to-username\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/user-id-to-username\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/user-id-to-username\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/user-id-to-username\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/user-id-to-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/user-id-to-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/user-id-to-username\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Info by ID\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/user-id-to-username\",\"description\":\"Returns an Instagram profile's details, including username, full name, follower count, and media metrics using an account ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram user ID (numeric string)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/user-id-to-username \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"25025320\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"25025320\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-id-to-username\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"25025320\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-id-to-username\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/user-id-to-username\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/user-id-to-username\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/user-id-to-username\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/user-id-to-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/user-id-to-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/user-id-to-username\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user info by user ID" + modelName: "Instagram User Info by ID" modelId: "instagram/v3/user-id-to-username" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/user-posts.md b/model-api-reference/platform-apis/instagram/v3/user-posts.md index ebfea749..63b72c19 100644 --- a/model-api-reference/platform-apis/instagram/v3/user-posts.md +++ b/model-api-reference/platform-apis/instagram/v3/user-posts.md @@ -1,13 +1,13 @@ --- -title: "Get user posts API Reference — Instagram V3 / User Posts API" -description: "SandBase API operation instagram/v3/user-posts." +title: "Instagram User Posts (V3) API Reference" +description: "Instagram User Posts (V3) API reference for SandBase. Use model instagram/v3/user-posts with /v1/api/instagram/v3/user-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/user-posts" -apiReferenceJson: "{\"title\":\"Get user posts\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/user-posts\",\"description\":\"Get user's post list with forward/backward pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Forward pagination cursor, from previous response `page_info.end_cursor`\"},{\"name\":\"before\",\"type\":\"string\",\"required\":false,\"description\":\"Backward pagination cursor, from previous response `page_info.start_cursor`\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of posts for first request (default 12)\"},{\"name\":\"first\",\"type\":\"integer\",\"required\":false,\"description\":\"Posts per page for forward pagination (default 12, max 50)\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"last\",\"type\":\"integer\",\"required\":false,\"description\":\"Posts per page for backward pagination, use with `before`\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Username string (e.g. `99brasil`), **NOT numeric user_id**\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/user-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/user-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/user-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/user-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/user-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Posts (V3)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/user-posts\",\"description\":\"Returns a list of posts from a specific Instagram account. Supports bidirectional cursor pagination using the account username.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Forward pagination cursor, from previous response `page_info.end_cursor`\"},{\"name\":\"before\",\"type\":\"string\",\"required\":false,\"description\":\"Backward pagination cursor, from previous response `page_info.start_cursor`\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of posts for first request (default 12)\"},{\"name\":\"first\",\"type\":\"integer\",\"required\":false,\"description\":\"Posts per page for forward pagination (default 12, max 50)\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"last\",\"type\":\"integer\",\"required\":false,\"description\":\"Posts per page for backward pagination, use with `before`\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Username string (e.g. `99brasil`), **NOT numeric user_id**\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/user-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"username\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"username\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"username\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/user-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/user-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/user-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/user-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user posts" + modelName: "Instagram User Posts (V3)" modelId: "instagram/v3/user-posts" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/user-profile.md b/model-api-reference/platform-apis/instagram/v3/user-profile.md index 0d157b1c..0010db39 100644 --- a/model-api-reference/platform-apis/instagram/v3/user-profile.md +++ b/model-api-reference/platform-apis/instagram/v3/user-profile.md @@ -1,13 +1,13 @@ --- -title: "Get user profile API Reference — Instagram V3 / User Profile API" -description: "SandBase API operation instagram/v3/user-profile." +title: "Instagram User Profile (V3) API Reference" +description: "Instagram User Profile (V3) API reference for SandBase. Use model instagram/v3/user-profile with /v1/api/instagram/v3/user-profile; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/user-profile" -apiReferenceJson: "{\"title\":\"Get user profile\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/user-profile\",\"description\":\"Get complete Instagram user profile information Including basic info, statistics, recent posts, etc.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"nasa\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"nasa\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"nasa\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Profile (V3)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/user-profile\",\"description\":\"Returns complete profile details for an Instagram account, including follower counts, media metrics, and bio links based on the provided username.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"nasa\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"nasa\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"nasa\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user profile" + modelName: "Instagram User Profile (V3)" modelId: "instagram/v3/user-profile" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/user-reels.md b/model-api-reference/platform-apis/instagram/v3/user-reels.md index 56249a8a..e3f3c757 100644 --- a/model-api-reference/platform-apis/instagram/v3/user-reels.md +++ b/model-api-reference/platform-apis/instagram/v3/user-reels.md @@ -1,13 +1,13 @@ --- -title: "Get user reels API Reference — Instagram V3 / User Reels API" -description: "SandBase API operation instagram/v3/user-reels." +title: "Instagram User Reels (V3) API Reference" +description: "Instagram User Reels (V3) API reference for SandBase. Use model instagram/v3/user-reels with /v1/api/instagram/v3/user-reels; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/user-reels" -apiReferenceJson: "{\"title\":\"Get user reels\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/user-reels\",\"description\":\"Get Instagram user's Reels list Support pagination to fetch all user's Reels\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Forward pagination cursor, from previous response `data.page_info.end_cursor`\"},{\"name\":\"before\",\"type\":\"string\",\"required\":false,\"description\":\"Backward pagination cursor, from previous response `data.page_info.start_cursor`\"},{\"name\":\"first\",\"type\":\"integer\",\"required\":false,\"description\":\"Reels per page for forward pagination (default 12, max 50)\",\"default\":\"12\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"last\",\"type\":\"integer\",\"required\":false,\"description\":\"Reels per page for backward pagination, use with `before`\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Videos per page (default 12)\",\"default\":\"12\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/user-reels \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-reels\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-reels\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/user-reels\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/user-reels\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/user-reels\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/user-reels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/user-reels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/user-reels\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Reels (V3)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/user-reels\",\"description\":\"Returns a list of Reels for a specific Instagram user. Supports cursor-based forward and backward pagination alongside page size limits.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Forward pagination cursor, from previous response `data.page_info.end_cursor`\"},{\"name\":\"before\",\"type\":\"string\",\"required\":false,\"description\":\"Backward pagination cursor, from previous response `data.page_info.start_cursor`\"},{\"name\":\"first\",\"type\":\"integer\",\"required\":false,\"description\":\"Reels per page for forward pagination (default 12, max 50)\",\"default\":\"12\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"last\",\"type\":\"integer\",\"required\":false,\"description\":\"Reels per page for backward pagination, use with `before`\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Videos per page (default 12)\",\"default\":\"12\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/user-reels \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-reels\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-reels\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/user-reels\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/user-reels\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/user-reels\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/user-reels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/user-reels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/user-reels\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user reels" + modelName: "Instagram User Reels (V3)" modelId: "instagram/v3/user-reels" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/user-stories.md b/model-api-reference/platform-apis/instagram/v3/user-stories.md index 9dea4a6e..b6c4a970 100644 --- a/model-api-reference/platform-apis/instagram/v3/user-stories.md +++ b/model-api-reference/platform-apis/instagram/v3/user-stories.md @@ -1,13 +1,13 @@ --- -title: "Get user stories API Reference — Instagram V3 / User Stories API" -description: "SandBase API operation instagram/v3/user-stories." +title: "Instagram User Stories (V3) API Reference" +description: "Instagram User Stories (V3) API reference for SandBase. Use model instagram/v3/user-stories with /v1/api/instagram/v3/user-stories; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/user-stories" -apiReferenceJson: "{\"title\":\"Get user stories\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/user-stories\",\"description\":\"Get Instagram user's Stories list Stories displayed when clicking on user's profile picture (published within 24 hours)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/user-stories \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-stories\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-stories\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/user-stories\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/user-stories\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/user-stories\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/user-stories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/user-stories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/user-stories\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Stories (V3)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/user-stories\",\"description\":\"Returns active Instagram stories posted by a user within the last 24 hours. Queries data using the target profile username.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/user-stories \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-stories\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-stories\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/user-stories\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/user-stories\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/user-stories\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/user-stories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/user-stories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/user-stories\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user stories" + modelName: "Instagram User Stories (V3)" modelId: "instagram/v3/user-stories" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/instagram/v3/user-tagged-posts.md b/model-api-reference/platform-apis/instagram/v3/user-tagged-posts.md index f397b06b..f28617c2 100644 --- a/model-api-reference/platform-apis/instagram/v3/user-tagged-posts.md +++ b/model-api-reference/platform-apis/instagram/v3/user-tagged-posts.md @@ -1,13 +1,13 @@ --- -title: "Get user tagged posts — eyka1t API" -description: "SandBase API operation instagram/v3/user-tagged-posts." +title: "Instagram User Tagged Posts (V3) API Reference" +description: "SandBase API reference for model instagram/v3/user-tagged-posts. Call /v1/api/instagram/v3/user-tagged-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/instagram/v3/user-tagged-posts" -apiReferenceJson: "{\"title\":\"Get user tagged posts\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/user-tagged-posts\",\"description\":\"Get Instagram user's tagged posts list Posts where other users tagged this user Support pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Forward pagination cursor, from previous response `data.page_info.end_cursor`\"},{\"name\":\"before\",\"type\":\"string\",\"required\":false,\"description\":\"Backward pagination cursor, from previous response `data.page_info.start_cursor`\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of posts for first request (default 12)\",\"default\":\"12\"},{\"name\":\"first\",\"type\":\"integer\",\"required\":false,\"description\":\"Posts per page for forward pagination (default 12, max 50)\",\"default\":\"12\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"last\",\"type\":\"integer\",\"required\":false,\"description\":\"Posts per page for backward pagination, use with `before`\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/user-tagged-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-tagged-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-tagged-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/user-tagged-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/user-tagged-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/user-tagged-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/user-tagged-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/user-tagged-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/user-tagged-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Instagram User Tagged Posts (V3)\",\"operation\":\"Instagram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/instagram/v3/user-tagged-posts\",\"description\":\"Returns a list of posts where a specified Instagram account is tagged by other users. Supports both forward and backward cursor pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Forward pagination cursor, from previous response `data.page_info.end_cursor`\"},{\"name\":\"before\",\"type\":\"string\",\"required\":false,\"description\":\"Backward pagination cursor, from previous response `data.page_info.start_cursor`\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of posts for first request (default 12)\",\"default\":\"12\"},{\"name\":\"first\",\"type\":\"integer\",\"required\":false,\"description\":\"Posts per page for forward pagination (default 12, max 50)\",\"default\":\"12\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"last\",\"type\":\"integer\",\"required\":false,\"description\":\"Posts per page for backward pagination, use with `before`\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Instagram username (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, instagram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/instagram/v3/user-tagged-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"instagram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"instagram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-tagged-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"instagram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/instagram/v3/user-tagged-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"instagram/v3/user-tagged-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"instagram/v3/user-tagged-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"instagram/v3/user-tagged-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"instagram/v3/user-tagged-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"instagram/v3/user-tagged-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"instagram/v3/user-tagged-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user tagged posts" + modelName: "Instagram User Tagged Posts (V3)" modelId: "instagram/v3/user-tagged-posts" vendor: "Instagram" vendorSlug: "instagram" diff --git a/model-api-reference/platform-apis/kuaishou/app/brand-top-list.md b/model-api-reference/platform-apis/kuaishou/app/brand-top-list.md index 5581f654..79923f09 100644 --- a/model-api-reference/platform-apis/kuaishou/app/brand-top-list.md +++ b/model-api-reference/platform-apis/kuaishou/app/brand-top-list.md @@ -1,13 +1,13 @@ --- -title: "Kuaishou brand top list API Reference" -description: "SandBase API operation kuaishou/app/brand-top-list." +title: "Kuaishou Brand Top List API Reference" +description: "Kuaishou Brand Top List API reference for SandBase. Use model kuaishou/app/brand-top-list with /v1/api/kuaishou/app/brand-top-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/app/brand-top-list" -apiReferenceJson: "{\"title\":\"Kuaishou brand top list\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/brand-top-list\",\"description\":\"Kuaishou brand top list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"subTabId\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"default\":\"0\"},{\"name\":\"subTabName\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/brand-top-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kuaishou/app/brand-top-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"kuaishou/app/brand-top-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/brand-top-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"kuaishou/app/brand-top-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/brand-top-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/brand-top-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/brand-top-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/brand-top-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/brand-top-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/brand-top-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/brand-top-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Brand Top List\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/brand-top-list\",\"description\":\"Returns top brand rankings and related live stream links from Kuaishou. Allows filtering ranking data by sub-tab category ID or sub-tab name.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"subTabId\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"default\":\"0\"},{\"name\":\"subTabName\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/brand-top-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/brand-top-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/brand-top-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/brand-top-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/brand-top-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/brand-top-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/brand-top-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/brand-top-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/brand-top-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Kuaishou brand top list" + modelName: "Kuaishou Brand Top List" modelId: "kuaishou/app/brand-top-list" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/app/generate-share-link.md b/model-api-reference/platform-apis/kuaishou/app/generate-share-link.md index 4e91d691..dbd5b551 100644 --- a/model-api-reference/platform-apis/kuaishou/app/generate-share-link.md +++ b/model-api-reference/platform-apis/kuaishou/app/generate-share-link.md @@ -1,13 +1,13 @@ --- -title: "Generate Kuaishou share link API Reference" -description: "SandBase API operation kuaishou/app/generate-share-link." +title: "Kuaishou App Share Link API Reference" +description: "SandBase API reference for model kuaishou/app/generate-share-link. Call /v1/api/kuaishou/app/generate-share-link; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/app/generate-share-link" -apiReferenceJson: "{\"title\":\"Generate Kuaishou share link\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/generate-share-link\",\"description\":\"Generate Kuaishou share link\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"shareObjectId\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/generate-share-link \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"shareObjectId\\\": \\\"shareObjectId\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"shareObjectId\\\": \\\"shareObjectId\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/generate-share-link\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"shareObjectId\\\": \\\"shareObjectId\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/generate-share-link\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/generate-share-link\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/generate-share-link\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/generate-share-link\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/generate-share-link\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/generate-share-link\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/generate-share-link\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou App Share Link\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/generate-share-link\",\"description\":\"Generates a shareable URL for Kuaishou application content using a specified object identifier. Returns share link details for the target item.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"shareObjectId\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/generate-share-link \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"shareObjectId\\\": \\\"shareObjectId\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"shareObjectId\\\": \\\"shareObjectId\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/generate-share-link\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"shareObjectId\\\": \\\"shareObjectId\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/generate-share-link\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/generate-share-link\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/generate-share-link\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/generate-share-link\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/generate-share-link\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/generate-share-link\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/generate-share-link\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate Kuaishou share link" + modelName: "Kuaishou App Share Link" modelId: "kuaishou/app/generate-share-link" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/app/hot-board-categories.md b/model-api-reference/platform-apis/kuaishou/app/hot-board-categories.md index 63b7c5a9..a1716e3d 100644 --- a/model-api-reference/platform-apis/kuaishou/app/hot-board-categories.md +++ b/model-api-reference/platform-apis/kuaishou/app/hot-board-categories.md @@ -1,13 +1,13 @@ --- -title: "Kuaishou hot categories API Reference" -description: "SandBase API operation kuaishou/app/hot-board-categories." +title: "Kuaishou Hot Board Categories API Reference" +description: "SandBase API reference for model kuaishou/app/hot-board-categories. Call /v1/api/kuaishou/app/hot-board-categories; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/app/hot-board-categories" -apiReferenceJson: "{\"title\":\"Kuaishou hot categories\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/hot-board-categories\",\"description\":\"Kuaishou hot categories\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/hot-board-categories \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kuaishou/app/hot-board-categories\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"kuaishou/app/hot-board-categories\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/hot-board-categories\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"kuaishou/app/hot-board-categories\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/hot-board-categories\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/hot-board-categories\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/hot-board-categories\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/hot-board-categories\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/hot-board-categories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/hot-board-categories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/hot-board-categories\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Hot Board Categories\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/hot-board-categories\",\"description\":\"Returns the active list of hot board categories available in the Kuaishou app. Use this endpoint to inspect category identifiers and names for trending content rankings.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/hot-board-categories \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/hot-board-categories\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/hot-board-categories\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/hot-board-categories\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/hot-board-categories\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/hot-board-categories\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/hot-board-categories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/hot-board-categories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/hot-board-categories\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Kuaishou hot categories" + modelName: "Kuaishou Hot Board Categories" modelId: "kuaishou/app/hot-board-categories" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/app/hot-board-detail.md b/model-api-reference/platform-apis/kuaishou/app/hot-board-detail.md index 3242fbf9..449ac007 100644 --- a/model-api-reference/platform-apis/kuaishou/app/hot-board-detail.md +++ b/model-api-reference/platform-apis/kuaishou/app/hot-board-detail.md @@ -1,13 +1,13 @@ --- -title: "Kuaishou hot board detail API Reference" -description: "SandBase API operation kuaishou/app/hot-board-detail." +title: "Kuaishou Hot Board Detail API Reference" +description: "SandBase API reference for model kuaishou/app/hot-board-detail. Call /v1/api/kuaishou/app/hot-board-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/app/hot-board-detail" -apiReferenceJson: "{\"title\":\"Kuaishou hot board detail\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/hot-board-detail\",\"description\":\"Kuaishou hot board detail\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"boardId\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"boardType\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/hot-board-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kuaishou/app/hot-board-detail\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"kuaishou/app/hot-board-detail\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/hot-board-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"kuaishou/app/hot-board-detail\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/hot-board-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/hot-board-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/hot-board-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/hot-board-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/hot-board-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/hot-board-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/hot-board-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Hot Board Detail\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/hot-board-detail\",\"description\":\"Returns trending topics and search keywords from Kuaishou hot boards based on the specified board identifier and board type.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"boardId\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"boardType\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/hot-board-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/hot-board-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/hot-board-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/hot-board-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/hot-board-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/hot-board-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/hot-board-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/hot-board-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/hot-board-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Kuaishou hot board detail" + modelName: "Kuaishou Hot Board Detail" modelId: "kuaishou/app/hot-board-detail" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/app/hot-search-person.md b/model-api-reference/platform-apis/kuaishou/app/hot-search-person.md index e157ce70..b6d830f9 100644 --- a/model-api-reference/platform-apis/kuaishou/app/hot-search-person.md +++ b/model-api-reference/platform-apis/kuaishou/app/hot-search-person.md @@ -1,13 +1,13 @@ --- -title: "Kuaishou hot search person board API Reference" -description: "SandBase API operation kuaishou/app/hot-search-person." +title: "Kuaishou Hot Search Person Board API Reference" +description: "SandBase API reference for model kuaishou/app/hot-search-person. Call /v1/api/kuaishou/app/hot-search-person; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/app/hot-search-person" -apiReferenceJson: "{\"title\":\"Kuaishou hot search person board\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/hot-search-person\",\"description\":\"Kuaishou hot search person board\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/hot-search-person \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kuaishou/app/hot-search-person\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"kuaishou/app/hot-search-person\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/hot-search-person\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"kuaishou/app/hot-search-person\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/hot-search-person\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/hot-search-person\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/hot-search-person\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/hot-search-person\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/hot-search-person\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/hot-search-person\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/hot-search-person\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Hot Search Person Board\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/hot-search-person\",\"description\":\"Returns the current Kuaishou hot search person board rankings. Delivers real-time trending individuals and popular figures featured across the platform.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/hot-search-person \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/hot-search-person\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/hot-search-person\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/hot-search-person\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/hot-search-person\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/hot-search-person\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/hot-search-person\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/hot-search-person\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/hot-search-person\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Kuaishou hot search person board" + modelName: "Kuaishou Hot Search Person Board" modelId: "kuaishou/app/hot-search-person" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/app/live-top-list.md b/model-api-reference/platform-apis/kuaishou/app/live-top-list.md index 2f195e82..2b22e07b 100644 --- a/model-api-reference/platform-apis/kuaishou/app/live-top-list.md +++ b/model-api-reference/platform-apis/kuaishou/app/live-top-list.md @@ -1,13 +1,13 @@ --- -title: "Kuaishou live top list API Reference" -description: "SandBase API operation kuaishou/app/live-top-list." +title: "Kuaishou Stream Top List API Reference" +description: "Kuaishou Stream Top List API reference for SandBase. Use model kuaishou/app/live-top-list with /v1/api/kuaishou/app/live-top-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/app/live-top-list" -apiReferenceJson: "{\"title\":\"Kuaishou live top list\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/live-top-list\",\"description\":\"Kuaishou live top list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"subTabId\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"default\":\"0\"},{\"name\":\"subTabName\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/live-top-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kuaishou/app/live-top-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"kuaishou/app/live-top-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/live-top-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"kuaishou/app/live-top-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/live-top-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/live-top-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/live-top-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/live-top-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/live-top-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/live-top-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/live-top-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Stream Top List\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/live-top-list\",\"description\":\"Returns ranking information for trending streams on Kuaishou. Accepts optional tab parameters to filter leaderboards by category.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"subTabId\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"default\":\"0\"},{\"name\":\"subTabName\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/live-top-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/live-top-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/live-top-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/live-top-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/live-top-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/live-top-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/live-top-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/live-top-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/live-top-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Kuaishou live top list" + modelName: "Kuaishou Stream Top List" modelId: "kuaishou/app/live-top-list" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/app/music-ranking.md b/model-api-reference/platform-apis/kuaishou/app/music-ranking.md index 606284f7..26807dfe 100644 --- a/model-api-reference/platform-apis/kuaishou/app/music-ranking.md +++ b/model-api-reference/platform-apis/kuaishou/app/music-ranking.md @@ -1,13 +1,13 @@ --- -title: "Music ranking API Reference" -description: "SandBase API operation kuaishou/app/music-ranking." +title: "Kuaishou Music Ranking API Reference" +description: "Kuaishou Music Ranking API reference for SandBase. Use model kuaishou/app/music-ranking with /v1/api/kuaishou/app/music-ranking; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/app/music-ranking" -apiReferenceJson: "{\"title\":\"Music ranking\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/music-ranking\",\"description\":\"Fetch music ranking (songs in musics[]), with cursor pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Page size, default 20, range 1-50\",\"default\":\"20\"},{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, empty for first page\",\"default\":\"\\\"\\\"\"},{\"name\":\"tab_id\",\"type\":\"integer\",\"required\":false,\"description\":\"100002=hot songs (default), 100063=Pi-plan ranking\",\"default\":\"100002\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/music-ranking \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kuaishou/app/music-ranking\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"kuaishou/app/music-ranking\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/music-ranking\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"kuaishou/app/music-ranking\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/music-ranking\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/music-ranking\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/music-ranking\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/music-ranking\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/music-ranking\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/music-ranking\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/music-ranking\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Music Ranking\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/music-ranking\",\"description\":\"Returns ranked music tracks on Kuaishou, including track IDs, titles, hot counts, and audio URLs. Supports filtering by chart type and cursor pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Page size, default 20, range 1-50\",\"default\":\"20\"},{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, empty for first page\",\"default\":\"\\\"\\\"\"},{\"name\":\"tab_id\",\"type\":\"integer\",\"required\":false,\"description\":\"100002=hot songs (default), 100063=Pi-plan ranking\",\"default\":\"100002\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/music-ranking \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/music-ranking\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/music-ranking\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/music-ranking\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/music-ranking\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/music-ranking\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/music-ranking\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/music-ranking\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/music-ranking\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Music ranking" + modelName: "Kuaishou Music Ranking" modelId: "kuaishou/app/music-ranking" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/app/one-user-v2.md b/model-api-reference/platform-apis/kuaishou/app/one-user-v2.md index 707235ce..3c7d2cbb 100644 --- a/model-api-reference/platform-apis/kuaishou/app/one-user-v2.md +++ b/model-api-reference/platform-apis/kuaishou/app/one-user-v2.md @@ -1,13 +1,13 @@ --- -title: "Get single user data V2 API Reference" -description: "SandBase API operation kuaishou/app/one-user-v2." +title: "Kuaishou Single User Data (V2) API Reference" +description: "Kuaishou Single User Data (V2) API reference for SandBase. Use model kuaishou/app/one-user-v2 with /v1/api/kuaishou/app/one-user-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/app/one-user-v2" -apiReferenceJson: "{\"title\":\"Get single user data V2\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/one-user-v2\",\"description\":\"Fetch single user data V2 This API is more expensive, but more stable, please check the price list in the user background for specific prices.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/one-user-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/one-user-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/one-user-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/one-user-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/one-user-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/one-user-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/one-user-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/one-user-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/one-user-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Single User Data (V2)\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/one-user-v2\",\"description\":\"Returns profile details and personal entrance configurations for a specific Kuaishou account using the target user identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/one-user-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"3795214411\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"3795214411\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/one-user-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"3795214411\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/one-user-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/one-user-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/one-user-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/one-user-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/one-user-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/one-user-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/one-user-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single user data V2" + modelName: "Kuaishou Single User Data (V2)" modelId: "kuaishou/app/one-user-v2" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/app/one-video-by-url.md b/model-api-reference/platform-apis/kuaishou/app/one-video-by-url.md index 16bfb067..dce98030 100644 --- a/model-api-reference/platform-apis/kuaishou/app/one-video-by-url.md +++ b/model-api-reference/platform-apis/kuaishou/app/one-video-by-url.md @@ -1,13 +1,13 @@ --- -title: "Fetch single video by URL API Reference — Kuaishou Video By URL" -description: "SandBase API operation kuaishou/app/one-video-by-url." +title: "Kuaishou Video Details by URL API Reference" +description: "SandBase API reference for model kuaishou/app/one-video-by-url. Call /v1/api/kuaishou/app/one-video-by-url; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/app/one-video-by-url" -apiReferenceJson: "{\"title\":\"Fetch single video by URL\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/one-video-by-url\",\"description\":\"Fetch single video by URL.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_text\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/one-video-by-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"share_text\\\": \\\"https://v.kuaishou.com/cNYP0Z\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"share_text\\\": \\\"https://v.kuaishou.com/cNYP0Z\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/one-video-by-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"share_text\\\": \\\"https://v.kuaishou.com/cNYP0Z\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/one-video-by-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/one-video-by-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/one-video-by-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/one-video-by-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/one-video-by-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/one-video-by-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/one-video-by-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Video Details by URL\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/one-video-by-url\",\"description\":\"Returns video and photo information for a single Kuaishou post using its shared link. Input the full share URL to retrieve media metadata.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_text\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/one-video-by-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"share_text\\\": \\\"https://v.kuaishou.com/cNYP0Z\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"share_text\\\": \\\"https://v.kuaishou.com/cNYP0Z\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/one-video-by-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"share_text\\\": \\\"https://v.kuaishou.com/cNYP0Z\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/one-video-by-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/one-video-by-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/one-video-by-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/one-video-by-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/one-video-by-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/one-video-by-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/one-video-by-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch single video by URL" + modelName: "Kuaishou Video Details by URL" modelId: "kuaishou/app/one-video-by-url" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/app/one-video.md b/model-api-reference/platform-apis/kuaishou/app/one-video.md index 79081409..5e13a48c 100644 --- a/model-api-reference/platform-apis/kuaishou/app/one-video.md +++ b/model-api-reference/platform-apis/kuaishou/app/one-video.md @@ -1,13 +1,13 @@ --- -title: "Video detailsV1 API Reference" -description: "SandBase API operation kuaishou/app/one-video." +title: "Kuaishou Video Details (V1) API Reference" +description: "Kuaishou Video Details (V1) API reference for SandBase. Use model kuaishou/app/one-video with /v1/api/kuaishou/app/one-video; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/app/one-video" -apiReferenceJson: "{\"title\":\"Video detailsV1\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/one-video\",\"description\":\"Fetch single video data API V1.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"photo_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/one-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"photo_id\\\": \\\"photo_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"photo_id\\\": \\\"photo_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/one-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"photo_id\\\": \\\"photo_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/one-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/one-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/one-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/one-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/one-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Video Details (V1)\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/one-video\",\"description\":\"Returns detailed video metadata for a single Kuaishou video post using its photo identifier. Query by video ID to inspect post attributes.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"photo_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/one-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"photo_id\\\": \\\"5193494945927590140\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"photo_id\\\": \\\"5193494945927590140\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/one-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"photo_id\\\": \\\"5193494945927590140\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/one-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/one-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/one-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/one-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/one-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Video detailsV1" + modelName: "Kuaishou Video Details (V1)" modelId: "kuaishou/app/one-video" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/app/search-comprehensive.md b/model-api-reference/platform-apis/kuaishou/app/search-comprehensive.md index 564ad092..efbd65a4 100644 --- a/model-api-reference/platform-apis/kuaishou/app/search-comprehensive.md +++ b/model-api-reference/platform-apis/kuaishou/app/search-comprehensive.md @@ -1,13 +1,13 @@ --- -title: "Comprehensive search API Reference — Kuaishou Comprehensive" -description: "SandBase API operation kuaishou/app/search-comprehensive." +title: "Kuaishou Comprehensive Search API Reference" +description: "SandBase API reference for model kuaishou/app/search-comprehensive. Call /v1/api/kuaishou/app/search-comprehensive; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/app/search-comprehensive" -apiReferenceJson: "{\"title\":\"Comprehensive search\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/search-comprehensive\",\"description\":\"Kuaishou comprehensive search API, supports searching videos, users, etc., and provides multi-dimensional filtering.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"duration\",\"type\":\"string\",\"required\":false,\"description\":\"Duration filter\",\"default\":\"all\",\"constraints\":\"Allowed values: all, under_1_min, 1_to_5_min, over_5_min\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"publish_time\",\"type\":\"string\",\"required\":false,\"description\":\"Publish time filter\",\"default\":\"all\",\"constraints\":\"Allowed values: all, one_day, one_week, one_month\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sort type\",\"default\":\"all\",\"constraints\":\"Allowed values: all, newest, most_likes\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/search-comprehensive \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-comprehensive\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-comprehensive\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/search-comprehensive\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/search-comprehensive\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/search-comprehensive\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/search-comprehensive\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/search-comprehensive\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/search-comprehensive\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Comprehensive Search\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/search-comprehensive\",\"description\":\"Returns aggregated search feeds across videos and users on Kuaishou, with filtering options for duration, sort order, and release timeframe.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"duration\",\"type\":\"string\",\"required\":false,\"description\":\"Duration filter\",\"default\":\"all\",\"constraints\":\"Allowed values: all, under_1_min, 1_to_5_min, over_5_min\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"publish_time\",\"type\":\"string\",\"required\":false,\"description\":\"Publish time filter\",\"default\":\"all\",\"constraints\":\"Allowed values: all, one_day, one_week, one_month\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sort type\",\"default\":\"all\",\"constraints\":\"Allowed values: all, newest, most_likes\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/search-comprehensive \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-comprehensive\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-comprehensive\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/search-comprehensive\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/search-comprehensive\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/search-comprehensive\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/search-comprehensive\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/search-comprehensive\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/search-comprehensive\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Comprehensive search" + modelName: "Kuaishou Comprehensive Search" modelId: "kuaishou/app/search-comprehensive" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/app/search-image.md b/model-api-reference/platform-apis/kuaishou/app/search-image.md index 381ea728..1f811156 100644 --- a/model-api-reference/platform-apis/kuaishou/app/search-image.md +++ b/model-api-reference/platform-apis/kuaishou/app/search-image.md @@ -1,13 +1,13 @@ --- -title: "Search image API Reference" -description: "SandBase API operation kuaishou/app/search-image." +title: "Kuaishou Image Post Search API Reference" +description: "Kuaishou Image Post Search API reference for SandBase. Use model kuaishou/app/search-image with /v1/api/kuaishou/app/search-image; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/app/search-image" -apiReferenceJson: "{\"title\":\"Search image\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/search-image\",\"description\":\"Search image posts by keyword, with cursor pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, empty for first page\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/search-image \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-image\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-image\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/search-image\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/search-image\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/search-image\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/search-image\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/search-image\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/search-image\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Image Post Search\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/search-image\",\"description\":\"Searches Kuaishou image posts matching a specified search term. Returns feed details including captions, engagement metrics, and pagination tokens.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, empty for first page\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/search-image \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-image\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-image\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/search-image\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/search-image\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/search-image\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/search-image\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/search-image\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/search-image\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search image" + modelName: "Kuaishou Image Post Search" modelId: "kuaishou/app/search-image" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/app/search-live.md b/model-api-reference/platform-apis/kuaishou/app/search-live.md index d7c14eff..ed7522a3 100644 --- a/model-api-reference/platform-apis/kuaishou/app/search-live.md +++ b/model-api-reference/platform-apis/kuaishou/app/search-live.md @@ -1,13 +1,13 @@ --- -title: "Search live API Reference — Kuaishou App / Search Live API" -description: "SandBase API operation kuaishou/app/search-live." +title: "Kuaishou Livestream Search API Reference" +description: "Kuaishou Livestream Search API reference for SandBase. Use model kuaishou/app/search-live with /v1/api/kuaishou/app/search-live; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/app/search-live" -apiReferenceJson: "{\"title\":\"Search live\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/search-live\",\"description\":\"Search live rooms by keyword, with cursor pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, empty for first page\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/search-live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/search-live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/search-live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/search-live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/search-live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/search-live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/search-live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Livestream Search\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/search-live\",\"description\":\"Searches Kuaishou livestreams using a specified search term. Returns matching active broadcast rooms with cursor pagination support.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, empty for first page\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/search-live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/search-live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/search-live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/search-live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/search-live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/search-live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/search-live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search live" + modelName: "Kuaishou Livestream Search" modelId: "kuaishou/app/search-live" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/app/search-music.md b/model-api-reference/platform-apis/kuaishou/app/search-music.md index f937ebe2..b9863fa1 100644 --- a/model-api-reference/platform-apis/kuaishou/app/search-music.md +++ b/model-api-reference/platform-apis/kuaishou/app/search-music.md @@ -1,13 +1,13 @@ --- -title: "Search music API Reference — Kuaishou App / Search Music API" -description: "SandBase API operation kuaishou/app/search-music." +title: "Kuaishou Music Search API Reference" +description: "Kuaishou Music Search API reference for SandBase. Use model kuaishou/app/search-music with /v1/api/kuaishou/app/search-music; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/app/search-music" -apiReferenceJson: "{\"title\":\"Search music\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/search-music\",\"description\":\"Search music by keyword (song / artist), with cursor pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, empty for first page\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/search-music \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-music\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-music\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/search-music\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/search-music\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/search-music\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/search-music\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/search-music\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/search-music\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Music Search\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/search-music\",\"description\":\"Searches for Kuaishou music tracks by song name or artist keyword. Returns matched audio results with support for cursor-based pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, empty for first page\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/search-music \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-music\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-music\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/search-music\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/search-music\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/search-music\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/search-music\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/search-music\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/search-music\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search music" + modelName: "Kuaishou Music Search" modelId: "kuaishou/app/search-music" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/app/search-tag.md b/model-api-reference/platform-apis/kuaishou/app/search-tag.md deleted file mode 100644 index 9a666354..00000000 --- a/model-api-reference/platform-apis/kuaishou/app/search-tag.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Search tag API Reference" -description: "SandBase API operation kuaishou/app/search-tag." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/kuaishou/app/search-tag" -apiReferenceJson: "{\"title\":\"Search tag\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/search-tag\",\"description\":\"Search tags (hashtags) by keyword. Use /fetch_tag_feed to browse a tag's feed.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, empty for first page\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/search-tag \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-tag\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-tag\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/search-tag\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/search-tag\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/search-tag\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/search-tag\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/search-tag\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/search-tag\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Search tag" - modelId: "kuaishou/app/search-tag" - vendor: "Kuaishou" - vendorSlug: "kuaishou" - modelSlug: "app/search-tag" - protocol: "API Reference" - endpoint: "/v1/api/kuaishou/app/search-tag" - publishedAt: "" - capabilities: ["api","kuaishou"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/kuaishou/app/search-user-v2.md b/model-api-reference/platform-apis/kuaishou/app/search-user-v2.md index 1f9e075e..1e6b6097 100644 --- a/model-api-reference/platform-apis/kuaishou/app/search-user-v2.md +++ b/model-api-reference/platform-apis/kuaishou/app/search-user-v2.md @@ -1,13 +1,13 @@ --- -title: "Search user V2 API Reference — Kuaishou App / Search User V2 API" -description: "SandBase API operation kuaishou/app/search-user-v2." +title: "Kuaishou User Search (V2) API Reference" +description: "Kuaishou User Search (V2) API reference for SandBase. Use model kuaishou/app/search-user-v2 with /v1/api/kuaishou/app/search-user-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/app/search-user-v2" -apiReferenceJson: "{\"title\":\"Search user V2\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/search-user-v2\",\"description\":\"Search user V2 This API is more expensive, but more stable, please check the price list in the user background for specific prices.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"fans_sort\",\"type\":\"string\",\"required\":false,\"description\":\"default / most_to_least / least_to_most\",\"constraints\":\"Allowed values: default, most_to_least, least_to_most\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, empty for first page, pass pcursor from previous response\"},{\"name\":\"user_gender\",\"type\":\"string\",\"required\":false,\"description\":\"all / male / female\",\"constraints\":\"Allowed values: all, male, female\"},{\"name\":\"user_relation\",\"type\":\"string\",\"required\":false,\"description\":\"all / same_city / verified / live / following\",\"constraints\":\"Allowed values: all, same_city, verified, live, following\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/search-user-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-user-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-user-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/search-user-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/search-user-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/search-user-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/search-user-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/search-user-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/search-user-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou User Search (V2)\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/search-user-v2\",\"description\":\"Searches for Kuaishou accounts matching a query term. Results can be filtered by gender and account relationship status, as well as sorted by follower count.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"fans_sort\",\"type\":\"string\",\"required\":false,\"description\":\"default / most_to_least / least_to_most\",\"constraints\":\"Allowed values: default, most_to_least, least_to_most\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, empty for first page, pass pcursor from previous response\"},{\"name\":\"user_gender\",\"type\":\"string\",\"required\":false,\"description\":\"all / male / female\",\"constraints\":\"Allowed values: all, male, female\"},{\"name\":\"user_relation\",\"type\":\"string\",\"required\":false,\"description\":\"all / same_city / verified / live / following\",\"constraints\":\"Allowed values: all, same_city, verified, live, following\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/search-user-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"keyword\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"keyword\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-user-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"keyword\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-user-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/search-user-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/search-user-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/search-user-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/search-user-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/search-user-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/search-user-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search user V2" + modelName: "Kuaishou User Search (V2)" modelId: "kuaishou/app/search-user-v2" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/app/search-video-v2.md b/model-api-reference/platform-apis/kuaishou/app/search-video-v2.md index 6f86e2c3..2e99e7d1 100644 --- a/model-api-reference/platform-apis/kuaishou/app/search-video-v2.md +++ b/model-api-reference/platform-apis/kuaishou/app/search-video-v2.md @@ -1,13 +1,13 @@ --- -title: "Search video V2 API Reference" -description: "SandBase API operation kuaishou/app/search-video-v2." +title: "Kuaishou Video Search (V2) API Reference" +description: "SandBase API reference for model kuaishou/app/search-video-v2. Call /v1/api/kuaishou/app/search-video-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/app/search-video-v2" -apiReferenceJson: "{\"title\":\"Search video V2\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/search-video-v2\",\"description\":\"Search video V2 This API is more expensive, but more stable, please check the price list in the user background for specific prices.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, empty for first page, pass pcursor from previous response\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/search-video-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-video-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-video-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/search-video-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/search-video-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/search-video-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/search-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/search-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/search-video-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Video Search (V2)\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/search-video-v2\",\"description\":\"Searches for Kuaishou videos matching a designated keyword query. Returns matching video results with support for cursor-based pagination across multiple pages.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, empty for first page, pass pcursor from previous response\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/search-video-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-video-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/search-video-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/search-video-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/search-video-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/search-video-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/search-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/search-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/search-video-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search video V2" + modelName: "Kuaishou Video Search (V2)" modelId: "kuaishou/app/search-video-v2" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/app/selection-feed.md b/model-api-reference/platform-apis/kuaishou/app/selection-feed.md index 92c5df10..e178189d 100644 --- a/model-api-reference/platform-apis/kuaishou/app/selection-feed.md +++ b/model-api-reference/platform-apis/kuaishou/app/selection-feed.md @@ -1,13 +1,13 @@ --- -title: "Selection feed API Reference" -description: "SandBase API operation kuaishou/app/selection-feed." +title: "Kuaishou App Selection Feed API Reference" +description: "Kuaishou App Selection Feed API reference for SandBase. Use model kuaishou/app/selection-feed with /v1/api/kuaishou/app/selection-feed; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/app/selection-feed" -apiReferenceJson: "{\"title\":\"Selection feed\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/selection-feed\",\"description\":\"Fetch the \\\"Selection / Recommended\\\" feed of the App home page. The feed has no cursor pagination; call again for more content.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/selection-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kuaishou/app/selection-feed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"kuaishou/app/selection-feed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/selection-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"kuaishou/app/selection-feed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/selection-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/selection-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/selection-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/selection-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/selection-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/selection-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/selection-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou App Selection Feed\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/selection-feed\",\"description\":\"Returns the recommended selection feed from the Kuaishou app home page. The endpoint requires no parameters and provides fresh recommended video items on each call.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/selection-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/selection-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/selection-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/selection-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/selection-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/selection-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/selection-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/selection-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/selection-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Selection feed" + modelName: "Kuaishou App Selection Feed" modelId: "kuaishou/app/selection-feed" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/app/shopping-top-list.md b/model-api-reference/platform-apis/kuaishou/app/shopping-top-list.md index 9f283498..e79af31d 100644 --- a/model-api-reference/platform-apis/kuaishou/app/shopping-top-list.md +++ b/model-api-reference/platform-apis/kuaishou/app/shopping-top-list.md @@ -1,13 +1,13 @@ --- -title: "Kuaishou shopping top list API Reference" -description: "SandBase API operation kuaishou/app/shopping-top-list." +title: "Kuaishou Shopping Top List API Reference" +description: "SandBase API reference for model kuaishou/app/shopping-top-list. Call /v1/api/kuaishou/app/shopping-top-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/app/shopping-top-list" -apiReferenceJson: "{\"title\":\"Kuaishou shopping top list\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/shopping-top-list\",\"description\":\"Kuaishou shopping top list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"subTabId\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"default\":\"0\"},{\"name\":\"subTabName\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/shopping-top-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kuaishou/app/shopping-top-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"kuaishou/app/shopping-top-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/shopping-top-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"kuaishou/app/shopping-top-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/shopping-top-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/shopping-top-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/shopping-top-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/shopping-top-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/shopping-top-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/shopping-top-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/shopping-top-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Shopping Top List\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/shopping-top-list\",\"description\":\"Returns ranked shopping live streams and top product leaderboards from Kuaishou. Filter results by specific sub-tab identifiers or names.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"subTabId\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"default\":\"0\"},{\"name\":\"subTabName\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/shopping-top-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/shopping-top-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/shopping-top-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/shopping-top-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/shopping-top-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/shopping-top-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/shopping-top-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/shopping-top-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/shopping-top-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Kuaishou shopping top list" + modelName: "Kuaishou Shopping Top List" modelId: "kuaishou/app/shopping-top-list" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/app/tag-feed.md b/model-api-reference/platform-apis/kuaishou/app/tag-feed.md deleted file mode 100644 index d74a647c..00000000 --- a/model-api-reference/platform-apis/kuaishou/app/tag-feed.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Tag feed API Reference" -description: "SandBase API operation kuaishou/app/tag-feed." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/kuaishou/app/tag-feed" -apiReferenceJson: "{\"title\":\"Tag feed\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/tag-feed\",\"description\":\"Tag aggregation page: tagInfo + related feed (mixFeeds[]). Hashtag page has 4 sub tabs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"from_photo_id\",\"type\":\"string\",\"required\":false,\"description\":\"Source photoId (optional)\"},{\"name\":\"general_tag_id\",\"type\":\"string\",\"required\":true,\"description\":\"Tag ID. Topic tag uses tag name or search_tag's numeric id; sound tag uses encoded id.\"},{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, empty for first page\"},{\"name\":\"tab\",\"type\":\"string\",\"required\":false,\"description\":\"hot / latest / image / live\",\"constraints\":\"Allowed values: hot, latest, image, live\"},{\"name\":\"tag_name\",\"type\":\"string\",\"required\":false,\"description\":\"Tag display name (recommended for topic tags)\"},{\"name\":\"tag_source\",\"type\":\"integer\",\"required\":false,\"description\":\"2=from search, 3=sound tag from photo page\"},{\"name\":\"tag_type\",\"type\":\"integer\",\"required\":false,\"description\":\"1=topic tag, 29=sound/music tag\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/tag-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"general_tag_id\\\": \\\"general_tag_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"general_tag_id\\\": \\\"general_tag_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/tag-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"general_tag_id\\\": \\\"general_tag_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/tag-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/tag-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/tag-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/tag-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/tag-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/tag-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/tag-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Tag feed" - modelId: "kuaishou/app/tag-feed" - vendor: "Kuaishou" - vendorSlug: "kuaishou" - modelSlug: "app/tag-feed" - protocol: "API Reference" - endpoint: "/v1/api/kuaishou/app/tag-feed" - publishedAt: "" - capabilities: ["api","kuaishou"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/kuaishou/app/user-hot-post.md b/model-api-reference/platform-apis/kuaishou/app/user-hot-post.md index 181c8758..69a85eb4 100644 --- a/model-api-reference/platform-apis/kuaishou/app/user-hot-post.md +++ b/model-api-reference/platform-apis/kuaishou/app/user-hot-post.md @@ -1,13 +1,13 @@ --- -title: "Get user hot post data API Reference" -description: "SandBase API operation kuaishou/app/user-hot-post." +title: "Kuaishou User Hot Posts API Reference" +description: "Kuaishou User Hot Posts API reference for SandBase. Use model kuaishou/app/user-hot-post with /v1/api/kuaishou/app/user-hot-post; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/app/user-hot-post" -apiReferenceJson: "{\"title\":\"Get user hot post data\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/user-hot-post\",\"description\":\"Get user hot post data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/user-hot-post \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/user-hot-post\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/user-hot-post\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/user-hot-post\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/user-hot-post\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/user-hot-post\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/user-hot-post\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/user-hot-post\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/user-hot-post\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou User Hot Posts\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/user-hot-post\",\"description\":\"Returns popular posts from a specified Kuaishou user profile, including captions and interaction metrics such as comments and collects.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/user-hot-post \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"3795214411\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"3795214411\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/user-hot-post\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"3795214411\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/user-hot-post\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/user-hot-post\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/user-hot-post\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/user-hot-post\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/user-hot-post\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/user-hot-post\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/user-hot-post\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user hot post data" + modelName: "Kuaishou User Hot Posts" modelId: "kuaishou/app/user-hot-post" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/app/user-live-info.md b/model-api-reference/platform-apis/kuaishou/app/user-live-info.md index 3406d6c1..23a83f6b 100644 --- a/model-api-reference/platform-apis/kuaishou/app/user-live-info.md +++ b/model-api-reference/platform-apis/kuaishou/app/user-live-info.md @@ -1,13 +1,13 @@ --- -title: "Get user live info API Reference" -description: "SandBase API operation kuaishou/app/user-live-info." +title: "Kuaishou User Broadcast Details API Reference" +description: "SandBase API reference for model kuaishou/app/user-live-info. Call /v1/api/kuaishou/app/user-live-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/app/user-live-info" -apiReferenceJson: "{\"title\":\"Get user live info\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/user-live-info\",\"description\":\"Get user live info\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/user-live-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/user-live-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/user-live-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/user-live-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/user-live-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/user-live-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/user-live-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/user-live-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/user-live-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou User Broadcast Details\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/user-live-info\",\"description\":\"Returns broadcast information and stream status for a specified Kuaishou account. Requests target a creator profile using the unique user identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/user-live-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"3795214411\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"3795214411\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/user-live-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"3795214411\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/user-live-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/user-live-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/user-live-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/user-live-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/user-live-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/user-live-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/user-live-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user live info" + modelName: "Kuaishou User Broadcast Details" modelId: "kuaishou/app/user-live-info" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/app/user-post-v2.md b/model-api-reference/platform-apis/kuaishou/app/user-post-v2.md index e1e10e55..ac0ff53a 100644 --- a/model-api-reference/platform-apis/kuaishou/app/user-post-v2.md +++ b/model-api-reference/platform-apis/kuaishou/app/user-post-v2.md @@ -1,13 +1,13 @@ --- -title: "User video list V2 API Reference" -description: "SandBase API operation kuaishou/app/user-post-v2." +title: "Kuaishou User Video List (V2) API Reference" +description: "Kuaishou User Video List (V2) API reference for SandBase. Use model kuaishou/app/user-post-v2 with /v1/api/kuaishou/app/user-post-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/app/user-post-v2" -apiReferenceJson: "{\"title\":\"User video list V2\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/user-post-v2\",\"description\":\"User video list V2 This API is more expensive, but more stable, please check the price list in the user background for specific prices.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Video cursor, empty for the first request, and use the pcursor value in the returned response for subsequent requests.\"},{\"name\":\"sort\",\"type\":\"string\",\"required\":false,\"description\":\"Sort type, latest (default) / hot.\",\"constraints\":\"Allowed values: latest, hot\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/user-post-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/user-post-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/user-post-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/user-post-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/user-post-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/user-post-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/user-post-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/user-post-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/user-post-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou User Video List (V2)\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/user-post-v2\",\"description\":\"Retrieves a list of video feeds posted by a specific Kuaishou user. Supports sorting by available or hot posts and cursor-based pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Video cursor, empty for the first request, and use the pcursor value in the returned response for subsequent requests.\"},{\"name\":\"sort\",\"type\":\"string\",\"required\":false,\"description\":\"Sort type, latest (default) / hot.\",\"constraints\":\"Allowed values: latest, hot\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/user-post-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"3795214411\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"3795214411\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/user-post-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"3795214411\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/user-post-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/user-post-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/user-post-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/user-post-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/user-post-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/user-post-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/user-post-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "User video list V2" + modelName: "Kuaishou User Video List (V2)" modelId: "kuaishou/app/user-post-v2" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/app/video-comment.md b/model-api-reference/platform-apis/kuaishou/app/video-comment.md index 48b58a0f..f9465dc8 100644 --- a/model-api-reference/platform-apis/kuaishou/app/video-comment.md +++ b/model-api-reference/platform-apis/kuaishou/app/video-comment.md @@ -1,13 +1,13 @@ --- -title: "Get single video comment data API Reference" -description: "SandBase API operation kuaishou/app/video-comment." +title: "Kuaishou Video Comments (App) API Reference" +description: "Kuaishou Video Comments (App) API reference for SandBase. Use model kuaishou/app/video-comment with /v1/api/kuaishou/app/video-comment; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/app/video-comment" -apiReferenceJson: "{\"title\":\"Get single video comment data\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/video-comment\",\"description\":\"Fetch single video comment data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"photo_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/video-comment \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"photo_id\\\": \\\"photo_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"photo_id\\\": \\\"photo_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/video-comment\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"photo_id\\\": \\\"photo_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/video-comment\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/video-comment\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/video-comment\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/video-comment\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/video-comment\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/video-comment\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/video-comment\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Video Comments (App)\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/video-comment\",\"description\":\"Returns comment records for a specified Kuaishou video, including author metadata and like counts. Supports pagination using a cursor.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"photo_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/video-comment \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"photo_id\\\": \\\"5193494945927590140\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"photo_id\\\": \\\"5193494945927590140\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/video-comment\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"photo_id\\\": \\\"5193494945927590140\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/video-comment\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/video-comment\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/video-comment\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/video-comment\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/video-comment\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/video-comment\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/video-comment\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video comment data" + modelName: "Kuaishou Video Comments (App)" modelId: "kuaishou/app/video-comment" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/app/video-sub-comments.md b/model-api-reference/platform-apis/kuaishou/app/video-sub-comments.md index 870f1cd5..d1d0de1c 100644 --- a/model-api-reference/platform-apis/kuaishou/app/video-sub-comments.md +++ b/model-api-reference/platform-apis/kuaishou/app/video-sub-comments.md @@ -1,13 +1,13 @@ --- -title: "Video sub comments API Reference" -description: "SandBase API operation kuaishou/app/video-sub-comments." +title: "Kuaishou Video Sub Comments (App) API Reference" +description: "SandBase API reference for model kuaishou/app/video-sub-comments. Call /v1/api/kuaishou/app/video-sub-comments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/app/video-sub-comments" -apiReferenceJson: "{\"title\":\"Video sub comments\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/video-sub-comments\",\"description\":\"Fetch sub comments (replies) under a root comment, with cursor pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Page size, default 8, range 1-20\"},{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, empty for first page\"},{\"name\":\"photo_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"root_comment_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/video-sub-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"photo_id\\\": \\\"photo_id\\\",\\n \\\"root_comment_id\\\": \\\"root_comment_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"photo_id\\\": \\\"photo_id\\\",\\n \\\"root_comment_id\\\": \\\"root_comment_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/video-sub-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"photo_id\\\": \\\"photo_id\\\",\\n \\\"root_comment_id\\\": \\\"root_comment_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/video-sub-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/video-sub-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/video-sub-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/video-sub-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/video-sub-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/video-sub-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/video-sub-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Video Sub Comments (App)\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/video-sub-comments\",\"description\":\"Returns sub comments and replies under a root comment for a Kuaishou video. Supports pagination using a cursor and page size configuration.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Page size, default 8, range 1-20\"},{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, empty for first page\"},{\"name\":\"photo_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"root_comment_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/video-sub-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"photo_id\\\": \\\"photo_id\\\",\\n \\\"root_comment_id\\\": \\\"root_comment_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"photo_id\\\": \\\"photo_id\\\",\\n \\\"root_comment_id\\\": \\\"root_comment_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/video-sub-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"photo_id\\\": \\\"photo_id\\\",\\n \\\"root_comment_id\\\": \\\"root_comment_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/video-sub-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/video-sub-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/video-sub-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/video-sub-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/video-sub-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/video-sub-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/video-sub-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Video sub comments" + modelName: "Kuaishou Video Sub Comments (App)" modelId: "kuaishou/app/video-sub-comments" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/app/videos-batch.md b/model-api-reference/platform-apis/kuaishou/app/videos-batch.md index 9b7ff09a..c7c3a296 100644 --- a/model-api-reference/platform-apis/kuaishou/app/videos-batch.md +++ b/model-api-reference/platform-apis/kuaishou/app/videos-batch.md @@ -1,13 +1,13 @@ --- -title: "Kuaishou batch video query API Reference" -description: "SandBase API operation kuaishou/app/videos-batch." +title: "Kuaishou Batch Video Details API Reference" +description: "Kuaishou Batch Video Details API reference for SandBase. Use model kuaishou/app/videos-batch with /v1/api/kuaishou/app/videos-batch; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/app/videos-batch" -apiReferenceJson: "{\"title\":\"Kuaishou batch video query API\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/videos-batch\",\"description\":\"Batch fetch multiple video data, supports up to 40 video IDs per request. If this API continuously fails, you can try to use the more expensive V2 API for redundant requests. The default charging standard for this API is: 40 * 0.001 = 0.04 USD/time.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"photo_ids\",\"type\":\"string\",\"required\":true,\"description\":\"Photo ID list, multiple IDs separated by commas, max 40 per request\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/videos-batch \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"photo_ids\\\": \\\"photo_ids\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"photo_ids\\\": \\\"photo_ids\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/videos-batch\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"photo_ids\\\": \\\"photo_ids\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/videos-batch\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/videos-batch\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/videos-batch\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/videos-batch\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/videos-batch\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/videos-batch\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/videos-batch\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Batch Video Details\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/app/videos-batch\",\"description\":\"Retrieves video details for multiple Kuaishou posts in a single request. Specify comma-separated photo IDs to look up information for up to 40 videos at once.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"photo_ids\",\"type\":\"string\",\"required\":true,\"description\":\"Photo ID list, multiple IDs separated by commas, max 40 per request\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/app/videos-batch \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"photo_ids\\\": \\\"photo_ids\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"photo_ids\\\": \\\"photo_ids\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/videos-batch\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"photo_ids\\\": \\\"photo_ids\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/app/videos-batch\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/app/videos-batch\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/app/videos-batch\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/app/videos-batch\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/app/videos-batch\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/app/videos-batch\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/app/videos-batch\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Kuaishou batch video query API" + modelName: "Kuaishou Batch Video Details" modelId: "kuaishou/app/videos-batch" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/web/generate-share-short-url.md b/model-api-reference/platform-apis/kuaishou/web/generate-share-short-url.md index 204ebb4c..cbf65abb 100644 --- a/model-api-reference/platform-apis/kuaishou/web/generate-share-short-url.md +++ b/model-api-reference/platform-apis/kuaishou/web/generate-share-short-url.md @@ -1,13 +1,13 @@ --- -title: "Generate share short URL API Reference" -description: "SandBase API operation kuaishou/web/generate-share-short-url." +title: "Kuaishou Web Share Short URL API Reference" +description: "SandBase API reference for model kuaishou/web/generate-share-short-url. Call /v1/api/kuaishou/web/generate-share-short-url; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/web/generate-share-short-url" -apiReferenceJson: "{\"title\":\"Generate share short URL\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/web/generate-share-short-url\",\"description\":\"Generate share short URL\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"photo_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/web/generate-share-short-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"photo_id\\\": \\\"photo_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"photo_id\\\": \\\"photo_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/generate-share-short-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"photo_id\\\": \\\"photo_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/generate-share-short-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/web/generate-share-short-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/web/generate-share-short-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/web/generate-share-short-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/web/generate-share-short-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/web/generate-share-short-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/web/generate-share-short-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Web Share Short URL\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/web/generate-share-short-url\",\"description\":\"Returns a shareable short URL for a specified Kuaishou video or photo post. Supply the target post identifier using the photo_id query parameter.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"photo_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/web/generate-share-short-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"photo_id\\\": \\\"5193494945927590140\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"photo_id\\\": \\\"5193494945927590140\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/generate-share-short-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"photo_id\\\": \\\"5193494945927590140\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/generate-share-short-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/web/generate-share-short-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/web/generate-share-short-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/web/generate-share-short-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/web/generate-share-short-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/web/generate-share-short-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/web/generate-share-short-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate share short URL" + modelName: "Kuaishou Web Share Short URL" modelId: "kuaishou/web/generate-share-short-url" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/web/get-user-id.md b/model-api-reference/platform-apis/kuaishou/web/get-user-id.md index 5f9d43ef..e3fe9c64 100644 --- a/model-api-reference/platform-apis/kuaishou/web/get-user-id.md +++ b/model-api-reference/platform-apis/kuaishou/web/get-user-id.md @@ -1,13 +1,13 @@ --- -title: "Fetch user ID API Reference" -description: "SandBase API operation kuaishou/web/get-user-id." +title: "Kuaishou User ID Lookup API Reference" +description: "Kuaishou User ID Lookup API reference for SandBase. Use model kuaishou/web/get-user-id with /v1/api/kuaishou/web/get-user-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/web/get-user-id" -apiReferenceJson: "{\"title\":\"Fetch user ID\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/web/get-user-id\",\"description\":\"Fetch user ID via user share link\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_link\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/web/get-user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"share_link\\\": \\\"https://c.kuaishou.com/fw/user/3xcuu5habgc8z29\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"share_link\\\": \\\"https://c.kuaishou.com/fw/user/3xcuu5habgc8z29\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/get-user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"share_link\\\": \\\"https://c.kuaishou.com/fw/user/3xcuu5habgc8z29\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/get-user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/web/get-user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/web/get-user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/web/get-user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/web/get-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/web/get-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/web/get-user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou User ID Lookup\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/web/get-user-id\",\"description\":\"Resolves a Kuaishou user ID from a provided user share link. Useful for extracting internal profile identifiers from public sharing URLs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_link\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/web/get-user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"share_link\\\": \\\"https://c.kuaishou.com/fw/user/3xcuu5habgc8z29\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"share_link\\\": \\\"https://c.kuaishou.com/fw/user/3xcuu5habgc8z29\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/get-user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"share_link\\\": \\\"https://c.kuaishou.com/fw/user/3xcuu5habgc8z29\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/get-user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/web/get-user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/web/get-user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/web/get-user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/web/get-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/web/get-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/web/get-user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch user ID" + modelName: "Kuaishou User ID Lookup" modelId: "kuaishou/web/get-user-id" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/web/hot-list-v1.md b/model-api-reference/platform-apis/kuaishou/web/hot-list-v1.md index 61080ae7..2fac0b00 100644 --- a/model-api-reference/platform-apis/kuaishou/web/hot-list-v1.md +++ b/model-api-reference/platform-apis/kuaishou/web/hot-list-v1.md @@ -1,13 +1,13 @@ --- -title: "Fetch Kuaishou Hot List V1 API Reference" -description: "SandBase API operation kuaishou/web/hot-list-v1." +title: "Kuaishou Web Hot List API Reference" +description: "Kuaishou Web Hot List API reference for SandBase. Use model kuaishou/web/hot-list-v1 with /v1/api/kuaishou/web/hot-list-v1; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/web/hot-list-v1" -apiReferenceJson: "{\"title\":\"Fetch Kuaishou Hot List V1\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/web/hot-list-v1\",\"description\":\"Fetch Kuaishou Hot List V1\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/web/hot-list-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kuaishou/web/hot-list-v1\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"kuaishou/web/hot-list-v1\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/hot-list-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"kuaishou/web/hot-list-v1\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/hot-list-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/web/hot-list-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/web/hot-list-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/web/hot-list-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/web/hot-list-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/web/hot-list-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/web/hot-list-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Web Hot List\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/web/hot-list-v1\",\"description\":\"Returns the current trending hot list from Kuaishou Web. It delivers trending topics and popular content rankings directly from the platform.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/web/hot-list-v1 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/hot-list-v1\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/hot-list-v1\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/web/hot-list-v1\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/web/hot-list-v1\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/web/hot-list-v1\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/web/hot-list-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/web/hot-list-v1\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/web/hot-list-v1\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch Kuaishou Hot List V1" + modelName: "Kuaishou Web Hot List" modelId: "kuaishou/web/hot-list-v1" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/web/hot-list-v2.md b/model-api-reference/platform-apis/kuaishou/web/hot-list-v2.md index 6efa2c5c..d7b6c51f 100644 --- a/model-api-reference/platform-apis/kuaishou/web/hot-list-v2.md +++ b/model-api-reference/platform-apis/kuaishou/web/hot-list-v2.md @@ -1,13 +1,13 @@ --- -title: "Fetch Kuaishou Hot List V2 API Reference" -description: "SandBase API operation kuaishou/web/hot-list-v2." +title: "Kuaishou Web Hot List (V2) API Reference" +description: "Kuaishou Web Hot List (V2) API reference for SandBase. Use model kuaishou/web/hot-list-v2 with /v1/api/kuaishou/web/hot-list-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/web/hot-list-v2" -apiReferenceJson: "{\"title\":\"Fetch Kuaishou Hot List V2\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/web/hot-list-v2\",\"description\":\"Fetch Kuaishou Hot List V2\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"board_type\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/web/hot-list-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kuaishou/web/hot-list-v2\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"kuaishou/web/hot-list-v2\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/hot-list-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"kuaishou/web/hot-list-v2\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/hot-list-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/web/hot-list-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/web/hot-list-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/web/hot-list-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/web/hot-list-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/web/hot-list-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/web/hot-list-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Web Hot List (V2)\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/web/hot-list-v2\",\"description\":\"Returns current trending search rankings and hot topics on Kuaishou web. Supports selecting different ranking boards using the board type parameter.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"board_type\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/web/hot-list-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/hot-list-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/hot-list-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/web/hot-list-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/web/hot-list-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/web/hot-list-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/web/hot-list-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/web/hot-list-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/web/hot-list-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch Kuaishou Hot List V2" + modelName: "Kuaishou Web Hot List (V2)" modelId: "kuaishou/web/hot-list-v2" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/web/one-video-by-url.md b/model-api-reference/platform-apis/kuaishou/web/one-video-by-url.md index 9004a642..52f36781 100644 --- a/model-api-reference/platform-apis/kuaishou/web/one-video-by-url.md +++ b/model-api-reference/platform-apis/kuaishou/web/one-video-by-url.md @@ -1,13 +1,13 @@ --- -title: "Fetch single video by URL — t2ynjj API" -description: "SandBase API operation kuaishou/web/one-video-by-url." +title: "Kuaishou Single Video by URL API Reference" +description: "SandBase API reference for model kuaishou/web/one-video-by-url. Call /v1/api/kuaishou/web/one-video-by-url; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/web/one-video-by-url" -apiReferenceJson: "{\"title\":\"Fetch single video by URL\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/web/one-video-by-url\",\"description\":\"Fetch single video by URL\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Download URL for a generated output asset.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/web/one-video-by-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://v.kuaishou.com/GKTpYm\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://v.kuaishou.com/GKTpYm\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/one-video-by-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://v.kuaishou.com/GKTpYm\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/one-video-by-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/web/one-video-by-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/web/one-video-by-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/web/one-video-by-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/web/one-video-by-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/web/one-video-by-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/web/one-video-by-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Single Video by URL\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/web/one-video-by-url\",\"description\":\"Retrieves video manifest data and streaming representation details for a specific Kuaishou post using its web link. Returns media properties such as resolution, frame rate, and direct video URLs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Download URL for a generated output asset.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/web/one-video-by-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://v.kuaishou.com/GKTpYm\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://v.kuaishou.com/GKTpYm\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/one-video-by-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://v.kuaishou.com/GKTpYm\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/one-video-by-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/web/one-video-by-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/web/one-video-by-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/web/one-video-by-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/web/one-video-by-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/web/one-video-by-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/web/one-video-by-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch single video by URL" + modelName: "Kuaishou Single Video by URL" modelId: "kuaishou/web/one-video-by-url" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/web/one-video-comment.md b/model-api-reference/platform-apis/kuaishou/web/one-video-comment.md index 11a2213f..bd1fec39 100644 --- a/model-api-reference/platform-apis/kuaishou/web/one-video-comment.md +++ b/model-api-reference/platform-apis/kuaishou/web/one-video-comment.md @@ -1,13 +1,13 @@ --- -title: "Fetch video comments API Reference" -description: "SandBase API operation kuaishou/web/one-video-comment." +title: "Kuaishou Video Comments (Web) API Reference" +description: "SandBase API reference for model kuaishou/web/one-video-comment. Call /v1/api/kuaishou/web/one-video-comment; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/web/one-video-comment" -apiReferenceJson: "{\"title\":\"Fetch video comments\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/web/one-video-comment\",\"description\":\"Fetch single video comment data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"photo_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/web/one-video-comment \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"photo_id\\\": \\\"photo_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"photo_id\\\": \\\"photo_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/one-video-comment\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"photo_id\\\": \\\"photo_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/one-video-comment\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/web/one-video-comment\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/web/one-video-comment\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/web/one-video-comment\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/web/one-video-comment\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/web/one-video-comment\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/web/one-video-comment\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Video Comments (Web)\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/web/one-video-comment\",\"description\":\"Returns root comments for a specified Kuaishou video, including author details, content, and like counts. Queries require a video ID and support cursor pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"photo_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/web/one-video-comment \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"photo_id\\\": \\\"5193494945927590140\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"photo_id\\\": \\\"5193494945927590140\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/one-video-comment\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"photo_id\\\": \\\"5193494945927590140\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/one-video-comment\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/web/one-video-comment\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/web/one-video-comment\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/web/one-video-comment\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/web/one-video-comment\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/web/one-video-comment\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/web/one-video-comment\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch video comments" + modelName: "Kuaishou Video Comments (Web)" modelId: "kuaishou/web/one-video-comment" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/web/one-video-sub-comment.md b/model-api-reference/platform-apis/kuaishou/web/one-video-sub-comment.md index ec37584e..9b1548d8 100644 --- a/model-api-reference/platform-apis/kuaishou/web/one-video-sub-comment.md +++ b/model-api-reference/platform-apis/kuaishou/web/one-video-sub-comment.md @@ -1,13 +1,13 @@ --- -title: "Fetch video sub comments API Reference" -description: "SandBase API operation kuaishou/web/one-video-sub-comment." +title: "Kuaishou Video Sub Comments (Web) API Reference" +description: "SandBase API reference for model kuaishou/web/one-video-sub-comment. Call /v1/api/kuaishou/web/one-video-sub-comment; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/web/one-video-sub-comment" -apiReferenceJson: "{\"title\":\"Fetch video sub comments\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/web/one-video-sub-comment\",\"description\":\"Fetch single video comment data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"photo_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"root_comment_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/web/one-video-sub-comment \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"photo_id\\\": \\\"photo_id\\\",\\n \\\"root_comment_id\\\": \\\"root_comment_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"photo_id\\\": \\\"photo_id\\\",\\n \\\"root_comment_id\\\": \\\"root_comment_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/one-video-sub-comment\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"photo_id\\\": \\\"photo_id\\\",\\n \\\"root_comment_id\\\": \\\"root_comment_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/one-video-sub-comment\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/web/one-video-sub-comment\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/web/one-video-sub-comment\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/web/one-video-sub-comment\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/web/one-video-sub-comment\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/web/one-video-sub-comment\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/web/one-video-sub-comment\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Video Sub Comments (Web)\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/web/one-video-sub-comment\",\"description\":\"Returns sub-comments and replies for a specific comment on a Kuaishou video. Requires the video ID and root comment ID with optional cursor pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"photo_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"root_comment_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/web/one-video-sub-comment \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"photo_id\\\": \\\"photo_id\\\",\\n \\\"root_comment_id\\\": \\\"root_comment_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"photo_id\\\": \\\"photo_id\\\",\\n \\\"root_comment_id\\\": \\\"root_comment_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/one-video-sub-comment\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"photo_id\\\": \\\"photo_id\\\",\\n \\\"root_comment_id\\\": \\\"root_comment_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/one-video-sub-comment\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/web/one-video-sub-comment\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/web/one-video-sub-comment\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/web/one-video-sub-comment\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/web/one-video-sub-comment\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/web/one-video-sub-comment\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/web/one-video-sub-comment\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch video sub comments" + modelName: "Kuaishou Video Sub Comments (Web)" modelId: "kuaishou/web/one-video-sub-comment" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/web/one-video-v2.md b/model-api-reference/platform-apis/kuaishou/web/one-video-v2.md index c2d9a546..8c5855f8 100644 --- a/model-api-reference/platform-apis/kuaishou/web/one-video-v2.md +++ b/model-api-reference/platform-apis/kuaishou/web/one-video-v2.md @@ -1,13 +1,13 @@ --- -title: "Get single video data V2 API Reference — Kuaishou / One Video V2" -description: "SandBase API operation kuaishou/web/one-video-v2." +title: "Kuaishou Single Video Details (V2) API Reference" +description: "SandBase API reference for model kuaishou/web/one-video-v2. Call /v1/api/kuaishou/web/one-video-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/web/one-video-v2" -apiReferenceJson: "{\"title\":\"Get single video data V2\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/web/one-video-v2\",\"description\":\"Kuaishou single video query API V2\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"photo_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/web/one-video-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"photo_id\\\": \\\"photo_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"photo_id\\\": \\\"photo_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/one-video-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"photo_id\\\": \\\"photo_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/one-video-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/web/one-video-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/web/one-video-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/web/one-video-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/web/one-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/web/one-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/web/one-video-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Single Video Details (V2)\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/web/one-video-v2\",\"description\":\"Retrieves video streaming manifests and media details for a specific Kuaishou video using its unique identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"photo_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/web/one-video-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"photo_id\\\": \\\"5193494945927590140\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"photo_id\\\": \\\"5193494945927590140\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/one-video-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"photo_id\\\": \\\"5193494945927590140\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/one-video-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/web/one-video-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/web/one-video-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/web/one-video-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/web/one-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/web/one-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/web/one-video-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video data V2" + modelName: "Kuaishou Single Video Details (V2)" modelId: "kuaishou/web/one-video-v2" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/web/one-video.md b/model-api-reference/platform-apis/kuaishou/web/one-video.md index 86f68fe1..a18d087b 100644 --- a/model-api-reference/platform-apis/kuaishou/web/one-video.md +++ b/model-api-reference/platform-apis/kuaishou/web/one-video.md @@ -1,13 +1,13 @@ --- -title: "Get single video data V1 API Reference" -description: "SandBase API operation kuaishou/web/one-video." +title: "Kuaishou Single Video Details API Reference" +description: "Kuaishou Single Video Details API reference for SandBase. Use model kuaishou/web/one-video with /v1/api/kuaishou/web/one-video; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/web/one-video" -apiReferenceJson: "{\"title\":\"Get single video data V1\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/web/one-video\",\"description\":\"Fetch single video data, this interface does not support photo only posts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_text\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/web/one-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"share_text\\\": \\\"share_text\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"share_text\\\": \\\"share_text\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/one-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"share_text\\\": \\\"share_text\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/one-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/web/one-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/web/one-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/web/one-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/web/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/web/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/web/one-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Single Video Details\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/web/one-video\",\"description\":\"Returns detailed metadata for a single Kuaishou video post using shared link content. Note that photo-only posts are not supported.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_text\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/web/one-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"share_text\\\": \\\"share_text\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"share_text\\\": \\\"share_text\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/one-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"share_text\\\": \\\"share_text\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/one-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/web/one-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/web/one-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/web/one-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/web/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/web/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/web/one-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video data V1" + modelName: "Kuaishou Single Video Details" modelId: "kuaishou/web/one-video" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/web/user-collect.md b/model-api-reference/platform-apis/kuaishou/web/user-collect.md index 46ed1ed2..3e2e421f 100644 --- a/model-api-reference/platform-apis/kuaishou/web/user-collect.md +++ b/model-api-reference/platform-apis/kuaishou/web/user-collect.md @@ -1,13 +1,13 @@ --- -title: "Fetch user collect API Reference" -description: "SandBase API operation kuaishou/web/user-collect." +title: "Kuaishou User Favorites API Reference" +description: "Kuaishou User Favorites API reference for SandBase. Use model kuaishou/web/user-collect with /v1/api/kuaishou/web/user-collect; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/web/user-collect" -apiReferenceJson: "{\"title\":\"Fetch user collect\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/web/user-collect\",\"description\":\"Fetch user favorite Note: This API requires the user's eid, which can be extracted from the user's profile URL. For example: In the URL https://www.kuaishou.com/profile/3xz63mn6fngqtiq, the eid is 3xz63mn6fngqtiq. Note: Querying with uid (pure numeric user ID) is not supported.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/web/user-collect \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/user-collect\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/user-collect\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/web/user-collect\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/web/user-collect\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/web/user-collect\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/web/user-collect\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/web/user-collect\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/web/user-collect\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou User Favorites\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/web/user-collect\",\"description\":\"Retrieves the list of collected or favorited items for a specified Kuaishou account. Supports pagination through cursor tokens to browse older entries.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/web/user-collect \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"3795214411\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"3795214411\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/user-collect\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"3795214411\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/user-collect\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/web/user-collect\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/web/user-collect\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/web/user-collect\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/web/user-collect\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/web/user-collect\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/web/user-collect\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch user collect" + modelName: "Kuaishou User Favorites" modelId: "kuaishou/web/user-collect" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/web/user-info.md b/model-api-reference/platform-apis/kuaishou/web/user-info.md index aa0f44a4..cdb3563d 100644 --- a/model-api-reference/platform-apis/kuaishou/web/user-info.md +++ b/model-api-reference/platform-apis/kuaishou/web/user-info.md @@ -1,13 +1,13 @@ --- -title: "Fetch user info API Reference — Kuaishou Web / User Info API" -description: "SandBase API operation kuaishou/web/user-info." +title: "Kuaishou Web User Info API Reference" +description: "Kuaishou Web User Info API reference for SandBase. Use model kuaishou/web/user-info with /v1/api/kuaishou/web/user-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/web/user-info" -apiReferenceJson: "{\"title\":\"Fetch user info\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/web/user-info\",\"description\":\"Fetch user info Note: This API requires the user's eid, which can be extracted from the user's profile URL. For example: In the URL https://www.kuaishou.com/profile/3xz63mn6fngqtiq, the eid is 3xz63mn6fngqtiq. Note: Querying with uid (pure numeric user ID) is not supported. Note: Please set the timeout to more than 30 seconds when making requests to this API, otherwise it may cause the client to not receive the response in time and result in billing. Due to the special nature of risk control for this API, we try to keep it stable, but we still cannot guarantee 100% stability. If you encounter a request failure, please try again later. It is recommended to keep retrying until successful, and set the timeout to more than 30 seconds.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/web/user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"3xz63mn6fngqtiq\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"3xz63mn6fngqtiq\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"3xz63mn6fngqtiq\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/web/user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/web/user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/web/user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/web/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/web/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/web/user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou Web User Info\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/web/user-info\",\"description\":\"Returns public profile information for a specified Kuaishou web user. Supply the target user identifier to retrieve account metadata.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/web/user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"3xz63mn6fngqtiq\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"3xz63mn6fngqtiq\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"3xz63mn6fngqtiq\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/web/user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/web/user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/web/user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/web/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/web/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/web/user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch user info" + modelName: "Kuaishou Web User Info" modelId: "kuaishou/web/user-info" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/kuaishou/web/user-live-replay.md b/model-api-reference/platform-apis/kuaishou/web/user-live-replay.md index 00510bf1..101ba08b 100644 --- a/model-api-reference/platform-apis/kuaishou/web/user-live-replay.md +++ b/model-api-reference/platform-apis/kuaishou/web/user-live-replay.md @@ -1,13 +1,13 @@ --- -title: "Fetch user live replay API Reference" -description: "SandBase API operation kuaishou/web/user-live-replay." +title: "Kuaishou User Broadcast Replay API Reference" +description: "SandBase API reference for model kuaishou/web/user-live-replay. Call /v1/api/kuaishou/web/user-live-replay; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/kuaishou/web/user-live-replay" -apiReferenceJson: "{\"title\":\"Fetch user live replay\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/web/user-live-replay\",\"description\":\"Fetch user live replay Note: This API requires the user's eid, which can be extracted from the user's profile URL. For example: In the URL https://www.kuaishou.com/profile/3xz63mn6fngqtiq, the eid is 3xz63mn6fngqtiq. Note: Querying with uid (pure numeric user ID) is not supported.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/web/user-live-replay \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/user-live-replay\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/user-live-replay\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/web/user-live-replay\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/web/user-live-replay\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/web/user-live-replay\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/web/user-live-replay\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/web/user-live-replay\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/web/user-live-replay\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kuaishou User Broadcast Replay\",\"operation\":\"Kuaishou API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/kuaishou/web/user-live-replay\",\"description\":\"Returns recorded stream replay data for a specified Kuaishou user. The endpoint accepts a user identifier and an optional cursor parameter for paginating through past streams.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pcursor\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, kuaishou\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/kuaishou/web/user-live-replay \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"3795214411\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"3795214411\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/user-live-replay\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"3795214411\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/kuaishou/web/user-live-replay\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"kuaishou/web/user-live-replay\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"kuaishou/web/user-live-replay\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"kuaishou/web/user-live-replay\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"kuaishou/web/user-live-replay\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"kuaishou/web/user-live-replay\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"kuaishou/web/user-live-replay\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch user live replay" + modelName: "Kuaishou User Broadcast Replay" modelId: "kuaishou/web/user-live-replay" vendor: "Kuaishou" vendorSlug: "kuaishou" diff --git a/model-api-reference/platform-apis/lemon8/app/discover-banners.md b/model-api-reference/platform-apis/lemon8/app/discover-banners.md index 37c4d8c7..f54e1ad6 100644 --- a/model-api-reference/platform-apis/lemon8/app/discover-banners.md +++ b/model-api-reference/platform-apis/lemon8/app/discover-banners.md @@ -1,13 +1,13 @@ --- -title: "Get banners of discover page API Reference" -description: "SandBase API operation lemon8/app/discover-banners." +title: "Lemon8 Discover Page Banners API Reference" +description: "SandBase API reference for model lemon8/app/discover-banners. Call /v1/api/lemon8/app/discover-banners; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/lemon8/app/discover-banners" -apiReferenceJson: "{\"title\":\"Get banners of discover page\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/discover-banners\",\"description\":\"Get banners of discover page\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/discover-banners \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lemon8/app/discover-banners\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"lemon8/app/discover-banners\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/discover-banners\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"lemon8/app/discover-banners\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/discover-banners\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/discover-banners\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/discover-banners\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/discover-banners\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/discover-banners\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/discover-banners\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/discover-banners\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Lemon8 Discover Page Banners\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/discover-banners\",\"description\":\"Returns the current promotional and featured banners displayed on the Lemon8 discover page. Applications can use this data to inspect active platform campaigns and highlighted topics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/discover-banners \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/discover-banners\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/discover-banners\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/discover-banners\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/discover-banners\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/discover-banners\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/discover-banners\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/discover-banners\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/discover-banners\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get banners of discover page" + modelName: "Lemon8 Discover Page Banners" modelId: "lemon8/app/discover-banners" vendor: "Lemon8" vendorSlug: "lemon8" diff --git a/model-api-reference/platform-apis/lemon8/app/discover-tab-information-tabs.md b/model-api-reference/platform-apis/lemon8/app/discover-tab-information-tabs.md index c509089d..d2112e79 100644 --- a/model-api-reference/platform-apis/lemon8/app/discover-tab-information-tabs.md +++ b/model-api-reference/platform-apis/lemon8/app/discover-tab-information-tabs.md @@ -1,13 +1,13 @@ --- -title: "Get Editor's Picks of discover page API Reference" -description: "SandBase API operation lemon8/app/discover-tab-information-tabs." +title: "Lemon8 Discover Editor Picks API Reference" +description: "SandBase API reference for model lemon8/app/discover-tab-information-tabs. Call /v1/api/lemon8/app/discover-tab-information-tabs; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/lemon8/app/discover-tab-information-tabs" -apiReferenceJson: "{\"title\":\"Get Editor's Picks of discover page\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/discover-tab-information-tabs\",\"description\":\"Get Editor's Picks of discover page\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/discover-tab-information-tabs \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lemon8/app/discover-tab-information-tabs\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"lemon8/app/discover-tab-information-tabs\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/discover-tab-information-tabs\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"lemon8/app/discover-tab-information-tabs\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/discover-tab-information-tabs\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/discover-tab-information-tabs\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/discover-tab-information-tabs\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/discover-tab-information-tabs\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/discover-tab-information-tabs\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/discover-tab-information-tabs\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/discover-tab-information-tabs\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Lemon8 Discover Editor Picks\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/discover-tab-information-tabs\",\"description\":\"Returns the Editor's Picks and discover tab information from the Lemon8 mobile app. Use this endpoint to inspect curated featured categories and discover sections.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/discover-tab-information-tabs \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/discover-tab-information-tabs\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/discover-tab-information-tabs\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/discover-tab-information-tabs\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/discover-tab-information-tabs\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/discover-tab-information-tabs\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/discover-tab-information-tabs\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/discover-tab-information-tabs\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/discover-tab-information-tabs\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Editor's Picks of discover page" + modelName: "Lemon8 Discover Editor Picks" modelId: "lemon8/app/discover-tab-information-tabs" vendor: "Lemon8" vendorSlug: "lemon8" diff --git a/model-api-reference/platform-apis/lemon8/app/discover-tab.md b/model-api-reference/platform-apis/lemon8/app/discover-tab.md index a0009781..e74b62bc 100644 --- a/model-api-reference/platform-apis/lemon8/app/discover-tab.md +++ b/model-api-reference/platform-apis/lemon8/app/discover-tab.md @@ -1,13 +1,13 @@ --- -title: "Get main content of discover page API Reference" -description: "SandBase API operation lemon8/app/discover-tab." +title: "Lemon8 Discover Page Content API Reference" +description: "Lemon8 Discover Page Content API reference for SandBase. Use model lemon8/app/discover-tab with /v1/api/lemon8/app/discover-tab; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/lemon8/app/discover-tab" -apiReferenceJson: "{\"title\":\"Get main content of discover page\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/discover-tab\",\"description\":\"Get main content of discover page\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/discover-tab \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lemon8/app/discover-tab\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"lemon8/app/discover-tab\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/discover-tab\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"lemon8/app/discover-tab\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/discover-tab\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/discover-tab\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/discover-tab\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/discover-tab\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/discover-tab\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/discover-tab\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/discover-tab\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Lemon8 Discover Page Content\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/discover-tab\",\"description\":\"Returns the main content featured on the Lemon8 discover tab. Retrieve trending recommendations and highlighted posts directly from the app feed.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/discover-tab \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/discover-tab\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/discover-tab\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/discover-tab\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/discover-tab\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/discover-tab\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/discover-tab\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/discover-tab\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/discover-tab\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get main content of discover page" + modelName: "Lemon8 Discover Page Content" modelId: "lemon8/app/discover-tab" vendor: "Lemon8" vendorSlug: "lemon8" diff --git a/model-api-reference/platform-apis/lemon8/app/hot-search-keywords.md b/model-api-reference/platform-apis/lemon8/app/hot-search-keywords.md index 92070a8c..7bb3fda4 100644 --- a/model-api-reference/platform-apis/lemon8/app/hot-search-keywords.md +++ b/model-api-reference/platform-apis/lemon8/app/hot-search-keywords.md @@ -1,13 +1,13 @@ --- -title: "Get hot search keywords API Reference" -description: "SandBase API operation lemon8/app/hot-search-keywords." +title: "Lemon8 Hot Search Keywords API Reference" +description: "SandBase API reference for model lemon8/app/hot-search-keywords. Call /v1/api/lemon8/app/hot-search-keywords; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/lemon8/app/hot-search-keywords" -apiReferenceJson: "{\"title\":\"Get hot search keywords\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/hot-search-keywords\",\"description\":\"Get hot search keywords\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/hot-search-keywords \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lemon8/app/hot-search-keywords\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"lemon8/app/hot-search-keywords\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/hot-search-keywords\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"lemon8/app/hot-search-keywords\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/hot-search-keywords\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/hot-search-keywords\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/hot-search-keywords\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/hot-search-keywords\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/hot-search-keywords\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/hot-search-keywords\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/hot-search-keywords\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Lemon8 Hot Search Keywords\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/hot-search-keywords\",\"description\":\"Returns trending search keywords and topics currently popular on Lemon8. Call this endpoint to track real-time user discovery trends across the app.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/hot-search-keywords \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/hot-search-keywords\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/hot-search-keywords\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/hot-search-keywords\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/hot-search-keywords\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/hot-search-keywords\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/hot-search-keywords\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/hot-search-keywords\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/hot-search-keywords\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get hot search keywords" + modelName: "Lemon8 Hot Search Keywords" modelId: "lemon8/app/hot-search-keywords" vendor: "Lemon8" vendorSlug: "lemon8" diff --git a/model-api-reference/platform-apis/lemon8/app/item-id.md b/model-api-reference/platform-apis/lemon8/app/item-id.md index 68eb2764..7e02d8f4 100644 --- a/model-api-reference/platform-apis/lemon8/app/item-id.md +++ b/model-api-reference/platform-apis/lemon8/app/item-id.md @@ -1,13 +1,13 @@ --- -title: "Get post ID through sharing link API Reference" -description: "SandBase API operation lemon8/app/item-id." +title: "Lemon8 Post ID from Share Link API Reference" +description: "Lemon8 Post ID from Share Link API reference for SandBase. Use model lemon8/app/item-id with /v1/api/lemon8/app/item-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/lemon8/app/item-id" -apiReferenceJson: "{\"title\":\"Get post ID through sharing link\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/item-id\",\"description\":\"Get post ID through sharing link\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_text\",\"type\":\"string\",\"required\":true,\"description\":\"Share link, supports long links and short links, can be obtained and copied from the share button on the web and APP.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/item-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"share_text\\\": \\\"share_text\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"share_text\\\": \\\"share_text\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/item-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"share_text\\\": \\\"share_text\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/item-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/item-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/item-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/item-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/item-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/item-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/item-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Lemon8 Post ID from Share Link\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/item-id\",\"description\":\"Resolves a Lemon8 share URL into its canonical post ID. Accepts both long and short sharing links copied from the web platform or mobile app.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_text\",\"type\":\"string\",\"required\":true,\"description\":\"Share link, supports long links and short links, can be obtained and copied from the share button on the web and APP.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/item-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"share_text\\\": \\\"share_text\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"share_text\\\": \\\"share_text\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/item-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"share_text\\\": \\\"share_text\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/item-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/item-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/item-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/item-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/item-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/item-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/item-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get post ID through sharing link" + modelName: "Lemon8 Post ID from Share Link" modelId: "lemon8/app/item-id" vendor: "Lemon8" vendorSlug: "lemon8" diff --git a/model-api-reference/platform-apis/lemon8/app/item-ids.md b/model-api-reference/platform-apis/lemon8/app/item-ids.md index 62649293..3d37f5b4 100644 --- a/model-api-reference/platform-apis/lemon8/app/item-ids.md +++ b/model-api-reference/platform-apis/lemon8/app/item-ids.md @@ -1,13 +1,13 @@ --- -title: "Get post IDs in batch through sharing links API Reference" -description: "SandBase API operation lemon8/app/item-ids." +title: "Lemon8 Post IDs from Share Links API Reference" +description: "Lemon8 Post IDs from Share Links API reference for SandBase. Use model lemon8/app/item-ids with /v1/api/lemon8/app/item-ids; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/lemon8/app/item-ids" -apiReferenceJson: "{\"title\":\"Get post IDs in batch through sharing links\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/item-ids\",\"description\":\"Get post IDs in batch through sharing links, up to 10 at a time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"Share links list\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/item-ids \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/item-ids\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/item-ids\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/item-ids\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/item-ids\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/item-ids\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/item-ids\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/item-ids\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/item-ids\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Lemon8 Post IDs from Share Links\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/item-ids\",\"description\":\"Batch resolves Lemon8 post IDs from shared URLs. Accepts an array of share links and returns corresponding post IDs for up to 10 links at a time.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"Share links list\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/item-ids \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/item-ids\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/item-ids\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/item-ids\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/item-ids\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/item-ids\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/item-ids\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/item-ids\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/item-ids\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get post IDs in batch through sharing links" + modelName: "Lemon8 Post IDs from Share Links" modelId: "lemon8/app/item-ids" vendor: "Lemon8" vendorSlug: "lemon8" diff --git a/model-api-reference/platform-apis/lemon8/app/post-comment-list.md b/model-api-reference/platform-apis/lemon8/app/post-comment-list.md index 8b5f1f55..a28620c1 100644 --- a/model-api-reference/platform-apis/lemon8/app/post-comment-list.md +++ b/model-api-reference/platform-apis/lemon8/app/post-comment-list.md @@ -1,13 +1,13 @@ --- -title: "Get comments list of specified post API Reference" -description: "SandBase API operation lemon8/app/post-comment-list." +title: "Lemon8 Post Comments List API Reference" +description: "Lemon8 Post Comments List API reference for SandBase. Use model lemon8/app/post-comment-list with /v1/api/lemon8/app/post-comment-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/lemon8/app/post-comment-list" -apiReferenceJson: "{\"title\":\"Get comments list of specified post\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/post-comment-list\",\"description\":\"Get comments list of specified post\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"group_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post's group_id, can be obtained from the interface `/lemon8/app/fetch_post_detail`\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post's item_id, can be obtained from the interface `/lemon8/app/fetch_post_detail` or `/lemon8/app/get_item_id`\"},{\"name\":\"media_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post's media_id, can be obtained from the interface `/lemon8/app/fetch_post_detail`\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter, can be obtained from the return result of the last request. It is empty for the first request, and the offset returned by the last request is used for subsequent requests.\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/post-comment-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"group_id\\\": \\\"7361926875709129222\\\",\\n \\\"item_id\\\": \\\"7361926875709129222\\\",\\n \\\"media_id\\\": \\\"7428056850216862763\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"group_id\\\": \\\"7361926875709129222\\\",\\n \\\"item_id\\\": \\\"7361926875709129222\\\",\\n \\\"media_id\\\": \\\"7428056850216862763\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/post-comment-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"group_id\\\": \\\"7361926875709129222\\\",\\n \\\"item_id\\\": \\\"7361926875709129222\\\",\\n \\\"media_id\\\": \\\"7428056850216862763\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/post-comment-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/post-comment-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/post-comment-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/post-comment-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/post-comment-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/post-comment-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/post-comment-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Lemon8 Post Comments List\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/post-comment-list\",\"description\":\"Retrieves the list of comments for a specific Lemon8 post. Requires the post item ID, group ID, and media ID with support for paginated results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"group_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post's group_id, can be obtained from the interface `/lemon8/app/fetch_post_detail`\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post's item_id, can be obtained from the interface `/lemon8/app/fetch_post_detail` or `/lemon8/app/get_item_id`\"},{\"name\":\"media_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post's media_id, can be obtained from the interface `/lemon8/app/fetch_post_detail`\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter, can be obtained from the return result of the last request. It is empty for the first request, and the offset returned by the last request is used for subsequent requests.\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/post-comment-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"group_id\\\": \\\"7361926875709129222\\\",\\n \\\"item_id\\\": \\\"7361926875709129222\\\",\\n \\\"media_id\\\": \\\"7428056850216862763\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"group_id\\\": \\\"7361926875709129222\\\",\\n \\\"item_id\\\": \\\"7361926875709129222\\\",\\n \\\"media_id\\\": \\\"7428056850216862763\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/post-comment-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"group_id\\\": \\\"7361926875709129222\\\",\\n \\\"item_id\\\": \\\"7361926875709129222\\\",\\n \\\"media_id\\\": \\\"7428056850216862763\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/post-comment-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/post-comment-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/post-comment-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/post-comment-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/post-comment-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/post-comment-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/post-comment-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get comments list of specified post" + modelName: "Lemon8 Post Comments List" modelId: "lemon8/app/post-comment-list" vendor: "Lemon8" vendorSlug: "lemon8" diff --git a/model-api-reference/platform-apis/lemon8/app/post-detail.md b/model-api-reference/platform-apis/lemon8/app/post-detail.md index c3ac26cb..7f52e801 100644 --- a/model-api-reference/platform-apis/lemon8/app/post-detail.md +++ b/model-api-reference/platform-apis/lemon8/app/post-detail.md @@ -1,13 +1,13 @@ --- -title: "Get information of specified post API Reference" -description: "SandBase API operation lemon8/app/post-detail." +title: "Lemon8 Post Details API Reference" +description: "Lemon8 Post Details API reference for SandBase. Use model lemon8/app/post-detail with /v1/api/lemon8/app/post-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/lemon8/app/post-detail" -apiReferenceJson: "{\"title\":\"Get information of specified post\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/post-detail\",\"description\":\"Get information of specified post\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID, can be obtained from the interface `/lemon8/app/get_item_id`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/post-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"item_id\\\": \\\"7361926875709129222\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"item_id\\\": \\\"7361926875709129222\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/post-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"item_id\\\": \\\"7361926875709129222\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/post-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/post-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/post-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/post-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/post-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Lemon8 Post Details\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/post-detail\",\"description\":\"Returns detailed information for a specified Lemon8 post using its unique post ID. Retrieve post metadata and content metrics by providing the target item identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID, can be obtained from the interface `/lemon8/app/get_item_id`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/post-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"item_id\\\": \\\"7361926875709129222\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"item_id\\\": \\\"7361926875709129222\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/post-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"item_id\\\": \\\"7361926875709129222\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/post-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/post-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/post-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/post-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/post-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get information of specified post" + modelName: "Lemon8 Post Details" modelId: "lemon8/app/post-detail" vendor: "Lemon8" vendorSlug: "lemon8" diff --git a/model-api-reference/platform-apis/lemon8/app/search.md b/model-api-reference/platform-apis/lemon8/app/search.md index c0ea18a3..9feb9c76 100644 --- a/model-api-reference/platform-apis/lemon8/app/search.md +++ b/model-api-reference/platform-apis/lemon8/app/search.md @@ -1,13 +1,13 @@ --- -title: "Search API Reference — Lemon8 App / Search API" -description: "SandBase API operation lemon8/app/search." +title: "Lemon8 Search API Reference" +description: "Lemon8 Search API reference for SandBase. Use model lemon8/app/search with /v1/api/lemon8/app/search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/lemon8/app/search" -apiReferenceJson: "{\"title\":\"Search API\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/search\",\"description\":\"Search API\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"filter_type\",\"type\":\"string\",\"required\":false,\"description\":\"Search filter type, default is an empty string, optional values are as follows:\",\"default\":\"\\\"\\\"\"},{\"name\":\"max_cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter, can be obtained from the return result of the last request. It is empty for the first request, and the `max_cursor` returned by the last request is used for subsequent requests. You can judge whether there is more data by the `has_more` field in the return result.\",\"default\":\"\\\"\\\"\"},{\"name\":\"order_by\",\"type\":\"string\",\"required\":false,\"description\":\"Search sort type, default is an empty string, optional values are as follows:\",\"default\":\"\\\"\\\"\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"search_tab\",\"type\":\"string\",\"required\":false,\"description\":\"Search type, default is `main`, optional values are as follows:\",\"default\":\"main\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Lemon8 Search\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/search\",\"description\":\"Search Lemon8 posts and users by keyword: post titles, content, authors, images and engagement, with Top and other tabs, sorting and filters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"filter_type\",\"type\":\"string\",\"required\":false,\"description\":\"Search filter type, default is an empty string, optional values are as follows: Empty string: All (default using this parameter to search); video: Search only video; posts: Search only posts\",\"default\":\"\\\"\\\"\"},{\"name\":\"max_cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter, can be obtained from the return result of the last request. It is empty for the first request, and the `max_cursor` returned by the last request is used for subsequent requests. You can judge whether there is more data by the `has_more` field in the return result.\",\"default\":\"\\\"\\\"\"},{\"name\":\"order_by\",\"type\":\"string\",\"required\":false,\"description\":\"Search sort type, default is an empty string, optional values are as follows: Empty string: Relevance (default using this parameter to sort); popular: Sort by popularity; recent: Sort from new to old\",\"default\":\"\\\"\\\"\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"search_tab\",\"type\":\"string\",\"required\":false,\"description\":\"Search type, default is `main`, optional values are as follows: main: Display as `Top` in the APP (comprehensive search, default using this parameter to search); user: Display as `Accounts` in the APP (search user accounts); hashtag: Display as `Hashtags` in the APP (search hashtags); article: Display as `Posts` in the APP (search articles)\",\"default\":\"main\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search API" + modelName: "Lemon8 Search" modelId: "lemon8/app/search" vendor: "Lemon8" vendorSlug: "lemon8" diff --git a/model-api-reference/platform-apis/lemon8/app/topic-info.md b/model-api-reference/platform-apis/lemon8/app/topic-info.md index 867d1cb1..012bf458 100644 --- a/model-api-reference/platform-apis/lemon8/app/topic-info.md +++ b/model-api-reference/platform-apis/lemon8/app/topic-info.md @@ -1,13 +1,13 @@ --- -title: "Get topic information API Reference" -description: "SandBase API operation lemon8/app/topic-info." +title: "Lemon8 Topic Information API Reference" +description: "Lemon8 Topic Information API reference for SandBase. Use model lemon8/app/topic-info with /v1/api/lemon8/app/topic-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/lemon8/app/topic-info" -apiReferenceJson: "{\"title\":\"Get topic information\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/topic-info\",\"description\":\"Get topic information\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"forum_id\",\"type\":\"string\",\"required\":true,\"description\":\"Topic ID, can be obtained from the following interfaces\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/topic-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"forum_id\\\": \\\"7174447913778593798\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"forum_id\\\": \\\"7174447913778593798\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/topic-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"forum_id\\\": \\\"7174447913778593798\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/topic-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/topic-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/topic-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/topic-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/topic-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/topic-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/topic-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Lemon8 Topic Information\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/topic-info\",\"description\":\"Returns detailed information and background visual assets for a specific Lemon8 topic using its unique forum identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"forum_id\",\"type\":\"string\",\"required\":true,\"description\":\"Topic ID, can be obtained from the following interfaces: Get information of specified post: `lemon8/app/post-detail`; Get Editor's Picks of discover page: `lemon8/app/discover-tab-information-tabs`; search hashtags: `lemon8/app/search` with `search_tab: hashtag`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/topic-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"forum_id\\\": \\\"7174447913778593798\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"forum_id\\\": \\\"7174447913778593798\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/topic-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"forum_id\\\": \\\"7174447913778593798\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/topic-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/topic-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/topic-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/topic-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/topic-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/topic-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/topic-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get topic information" + modelName: "Lemon8 Topic Information" modelId: "lemon8/app/topic-info" vendor: "Lemon8" vendorSlug: "lemon8" diff --git a/model-api-reference/platform-apis/lemon8/app/topic-post-list.md b/model-api-reference/platform-apis/lemon8/app/topic-post-list.md index 54db6cbe..ca903c5f 100644 --- a/model-api-reference/platform-apis/lemon8/app/topic-post-list.md +++ b/model-api-reference/platform-apis/lemon8/app/topic-post-list.md @@ -1,13 +1,13 @@ --- -title: "Get topic post list API Reference" -description: "SandBase API operation lemon8/app/topic-post-list." +title: "Lemon8 Topic Post List API Reference" +description: "Lemon8 Topic Post List API reference for SandBase. Use model lemon8/app/topic-post-list with /v1/api/lemon8/app/topic-post-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/lemon8/app/topic-post-list" -apiReferenceJson: "{\"title\":\"Get topic post list\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/topic-post-list\",\"description\":\"Get topic post list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"category\",\"type\":\"string\",\"required\":true,\"description\":\"Topic category ID, can be obtained from the interface `/lemon8/app/fetch_topic_info`\"},{\"name\":\"category_parameter\",\"type\":\"string\",\"required\":true,\"description\":\"Category parameter ID, can be obtained from the interface `/lemon8/app/fetch_topic_info`\"},{\"name\":\"hashtag_name\",\"type\":\"string\",\"required\":true,\"description\":\"Hashtag name, can be obtained from the interface `/lemon8/app/fetch_topic_info`\"},{\"name\":\"max_behot_time\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter, can be obtained from the return result of the last request. It is empty for the first request, and the max_behot_time returned by the last request is used for subsequent requests.\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sort type, 0 for default sort, currently only support default sort, please do not pass other values.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/topic-post-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"category\\\": \\\"category\\\",\\n \\\"category_parameter\\\": \\\"category_parameter\\\",\\n \\\"hashtag_name\\\": \\\"hashtag_name\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"category\\\": \\\"category\\\",\\n \\\"category_parameter\\\": \\\"category_parameter\\\",\\n \\\"hashtag_name\\\": \\\"hashtag_name\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/topic-post-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"category\\\": \\\"category\\\",\\n \\\"category_parameter\\\": \\\"category_parameter\\\",\\n \\\"hashtag_name\\\": \\\"hashtag_name\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/topic-post-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/topic-post-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/topic-post-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/topic-post-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/topic-post-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/topic-post-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/topic-post-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Lemon8 Topic Post List\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/topic-post-list\",\"description\":\"Returns posts under a specific topic or hashtag on Lemon8. Requires the topic category ID, category parameter, and hashtag name.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"category\",\"type\":\"string\",\"required\":true,\"description\":\"Topic category ID, can be obtained from the interface `/lemon8/app/fetch_topic_info`\"},{\"name\":\"category_parameter\",\"type\":\"string\",\"required\":true,\"description\":\"Category parameter ID, can be obtained from the interface `/lemon8/app/fetch_topic_info`\"},{\"name\":\"hashtag_name\",\"type\":\"string\",\"required\":true,\"description\":\"Hashtag name, can be obtained from the interface `/lemon8/app/fetch_topic_info`\"},{\"name\":\"max_behot_time\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter, can be obtained from the return result of the last request. It is empty for the first request, and the max_behot_time returned by the last request is used for subsequent requests.\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sort type, 0 for default sort, currently only support default sort, please do not pass other values.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/topic-post-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"category\\\": \\\"category\\\",\\n \\\"category_parameter\\\": \\\"category_parameter\\\",\\n \\\"hashtag_name\\\": \\\"hashtag_name\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"category\\\": \\\"category\\\",\\n \\\"category_parameter\\\": \\\"category_parameter\\\",\\n \\\"hashtag_name\\\": \\\"hashtag_name\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/topic-post-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"category\\\": \\\"category\\\",\\n \\\"category_parameter\\\": \\\"category_parameter\\\",\\n \\\"hashtag_name\\\": \\\"hashtag_name\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/topic-post-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/topic-post-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/topic-post-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/topic-post-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/topic-post-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/topic-post-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/topic-post-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get topic post list" + modelName: "Lemon8 Topic Post List" modelId: "lemon8/app/topic-post-list" vendor: "Lemon8" vendorSlug: "lemon8" diff --git a/model-api-reference/platform-apis/lemon8/app/user-follower-list.md b/model-api-reference/platform-apis/lemon8/app/user-follower-list.md index 15bc00ec..5c54222f 100644 --- a/model-api-reference/platform-apis/lemon8/app/user-follower-list.md +++ b/model-api-reference/platform-apis/lemon8/app/user-follower-list.md @@ -1,13 +1,13 @@ --- -title: "Get fans list of specified user API Reference" -description: "SandBase API operation lemon8/app/user-follower-list." +title: "Lemon8 User Followers List API Reference" +description: "SandBase API reference for model lemon8/app/user-follower-list. Call /v1/api/lemon8/app/user-follower-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/lemon8/app/user-follower-list" -apiReferenceJson: "{\"title\":\"Get fans list of specified user\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/user-follower-list\",\"description\":\"Get fans list of specified user\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter, can be obtained from the return result of the last request. It is empty for the first request, and the cursor returned by the last request is used for subsequent requests.\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID, can be obtained from the interface `/lemon8/app/get_user_id`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/user-follower-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/user-follower-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/user-follower-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/user-follower-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/user-follower-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/user-follower-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/user-follower-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/user-follower-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/user-follower-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Lemon8 User Followers List\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/user-follower-list\",\"description\":\"Returns the followers list for a specified Lemon8 user. Accepts a user identifier and an optional pagination cursor to browse through followers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter, can be obtained from the return result of the last request. It is empty for the first request, and the cursor returned by the last request is used for subsequent requests.\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID, can be obtained from the interface `/lemon8/app/get_user_id`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/user-follower-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/user-follower-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/user-follower-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/user-follower-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/user-follower-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/user-follower-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/user-follower-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/user-follower-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/user-follower-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get fans list of specified user" + modelName: "Lemon8 User Followers List" modelId: "lemon8/app/user-follower-list" vendor: "Lemon8" vendorSlug: "lemon8" diff --git a/model-api-reference/platform-apis/lemon8/app/user-following-list.md b/model-api-reference/platform-apis/lemon8/app/user-following-list.md index 9fd53c47..3563c1c8 100644 --- a/model-api-reference/platform-apis/lemon8/app/user-following-list.md +++ b/model-api-reference/platform-apis/lemon8/app/user-following-list.md @@ -1,13 +1,13 @@ --- -title: "Get following list of specified user API Reference — Lemon8 List" -description: "SandBase API operation lemon8/app/user-following-list." +title: "Lemon8 User Following List API Reference" +description: "SandBase API reference for model lemon8/app/user-following-list. Call /v1/api/lemon8/app/user-following-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/lemon8/app/user-following-list" -apiReferenceJson: "{\"title\":\"Get following list of specified user\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/user-following-list\",\"description\":\"Get following list of specified user\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter, can be obtained from the return result of the last request. It is empty for the first request, and the cursor returned by the last request is used for subsequent requests.\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID, can be obtained from the interface `/lemon8/app/get_user_id`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/user-following-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/user-following-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/user-following-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/user-following-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/user-following-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/user-following-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/user-following-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/user-following-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/user-following-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Lemon8 User Following List\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/user-following-list\",\"description\":\"Returns the list of accounts followed by a specified Lemon8 user. Accepts a user identifier and supports cursor-based pagination for browsing results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter, can be obtained from the return result of the last request. It is empty for the first request, and the cursor returned by the last request is used for subsequent requests.\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID, can be obtained from the interface `/lemon8/app/get_user_id`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/user-following-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/user-following-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/user-following-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/user-following-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/user-following-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/user-following-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/user-following-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/user-following-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/user-following-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get following list of specified user" + modelName: "Lemon8 User Following List" modelId: "lemon8/app/user-following-list" vendor: "Lemon8" vendorSlug: "lemon8" diff --git a/model-api-reference/platform-apis/lemon8/app/user-id.md b/model-api-reference/platform-apis/lemon8/app/user-id.md index ad4c2660..2704ab56 100644 --- a/model-api-reference/platform-apis/lemon8/app/user-id.md +++ b/model-api-reference/platform-apis/lemon8/app/user-id.md @@ -1,13 +1,13 @@ --- -title: "Get user ID through sharing link API Reference" -description: "SandBase API operation lemon8/app/user-id." +title: "Lemon8 User ID from Share Link API Reference" +description: "Lemon8 User ID from Share Link API reference for SandBase. Use model lemon8/app/user-id with /v1/api/lemon8/app/user-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/lemon8/app/user-id" -apiReferenceJson: "{\"title\":\"Get user ID through sharing link\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/user-id\",\"description\":\"Get user ID through sharing link\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_text\",\"type\":\"string\",\"required\":true,\"description\":\"Share link, supports long links and short links, can be obtained and copied from the share button on the web and APP.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"share_text\\\": \\\"https://www.lemon8-app.com/lemon8cars?region=us\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"share_text\\\": \\\"https://www.lemon8-app.com/lemon8cars?region=us\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"share_text\\\": \\\"https://www.lemon8-app.com/lemon8cars?region=us\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Lemon8 User ID from Share Link\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/user-id\",\"description\":\"Returns a Lemon8 user ID extracted from a user profile share link. Input supports long or short sharing URLs copied from the web or app.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_text\",\"type\":\"string\",\"required\":true,\"description\":\"Share link, supports long links and short links, can be obtained and copied from the share button on the web and APP.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"share_text\\\": \\\"https://www.lemon8-app.com/lemon8cars?region=us\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"share_text\\\": \\\"https://www.lemon8-app.com/lemon8cars?region=us\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"share_text\\\": \\\"https://www.lemon8-app.com/lemon8cars?region=us\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user ID through sharing link" + modelName: "Lemon8 User ID from Share Link" modelId: "lemon8/app/user-id" vendor: "Lemon8" vendorSlug: "lemon8" diff --git a/model-api-reference/platform-apis/lemon8/app/user-ids.md b/model-api-reference/platform-apis/lemon8/app/user-ids.md index ec3deea0..0b6a0a21 100644 --- a/model-api-reference/platform-apis/lemon8/app/user-ids.md +++ b/model-api-reference/platform-apis/lemon8/app/user-ids.md @@ -1,13 +1,13 @@ --- -title: "Get user IDs in batch through sharing links API Reference" -description: "SandBase API operation lemon8/app/user-ids." +title: "Lemon8 User IDs by Share Links API Reference" +description: "Lemon8 User IDs by Share Links API reference for SandBase. Use model lemon8/app/user-ids with /v1/api/lemon8/app/user-ids; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/lemon8/app/user-ids" -apiReferenceJson: "{\"title\":\"Get user IDs in batch through sharing links\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/user-ids\",\"description\":\"Get user IDs in batch through sharing links, up to 10 at a time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"Share links list\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/user-ids \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/user-ids\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/user-ids\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/user-ids\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/user-ids\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/user-ids\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/user-ids\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/user-ids\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/user-ids\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Lemon8 User IDs by Share Links\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/user-ids\",\"description\":\"Resolves Lemon8 user identifiers in batch from shared profile links. Accepts an array of up to 10 share links per request and returns the corresponding user IDs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"Share links list\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/user-ids \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/user-ids\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/user-ids\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/user-ids\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/user-ids\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/user-ids\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/user-ids\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/user-ids\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/user-ids\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user IDs in batch through sharing links" + modelName: "Lemon8 User IDs by Share Links" modelId: "lemon8/app/user-ids" vendor: "Lemon8" vendorSlug: "lemon8" diff --git a/model-api-reference/platform-apis/lemon8/app/user-profile.md b/model-api-reference/platform-apis/lemon8/app/user-profile.md index 426075ea..2ab2885d 100644 --- a/model-api-reference/platform-apis/lemon8/app/user-profile.md +++ b/model-api-reference/platform-apis/lemon8/app/user-profile.md @@ -1,13 +1,13 @@ --- -title: "Get information of specified user API Reference — Lemon8 Profile" -description: "SandBase API operation lemon8/app/user-profile." +title: "Lemon8 User Profile Details API Reference" +description: "Lemon8 User Profile Details API reference for SandBase. Use model lemon8/app/user-profile with /v1/api/lemon8/app/user-profile; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/lemon8/app/user-profile" -apiReferenceJson: "{\"title\":\"Get information of specified user\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/user-profile\",\"description\":\"Get information of specified user\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID, can be obtained from the interface `/lemon8/app/get_user_id`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"7217844966059656197\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"7217844966059656197\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"7217844966059656197\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Lemon8 User Profile Details\",\"operation\":\"Lemon8 API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/lemon8/app/user-profile\",\"description\":\"Returns profile information for a specified Lemon8 user. The query requires a unique user identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID, can be obtained from the interface `/lemon8/app/get_user_id`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, lemon8\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/lemon8/app/user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"7217844966059656197\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"7217844966059656197\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/lemon8/app/user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"7217844966059656197\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/lemon8/app/user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"lemon8/app/user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"lemon8/app/user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"lemon8/app/user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"lemon8/app/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"lemon8/app/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"lemon8/app/user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get information of specified user" + modelName: "Lemon8 User Profile Details" modelId: "lemon8/app/user-profile" vendor: "Lemon8" vendorSlug: "lemon8" diff --git a/model-api-reference/platform-apis/linkedin/web-v2/company-posts.md b/model-api-reference/platform-apis/linkedin/web-v2/company-posts.md index eb7bbde8..85bf5f46 100644 --- a/model-api-reference/platform-apis/linkedin/web-v2/company-posts.md +++ b/model-api-reference/platform-apis/linkedin/web-v2/company-posts.md @@ -1,13 +1,13 @@ --- -title: "Get company's posts API Reference" -description: "SandBase API operation linkedin/web-v2/company-posts." +title: "LinkedIn Company Posts API Reference" +description: "LinkedIn Company Posts API reference for SandBase. Use model linkedin/web-v2/company-posts with /v1/api/linkedin/web-v2/company-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/linkedin/web-v2/company-posts" -apiReferenceJson: "{\"title\":\"Get company's posts\",\"operation\":\"LinkedIn API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/linkedin/web-v2/company-posts\",\"description\":\"Fetch a company's posts by company URL.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pagination_token\",\"type\":\"string | null\",\"required\":false,\"description\":\"Token from the `paging` object of the previous response.\"},{\"name\":\"sort_by\",\"type\":\"string | null\",\"required\":false,\"description\":\"top or recent.\"},{\"name\":\"start\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Pagination offset — 0 for page 1, 50 for page 2, and so on.\"},{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Company URL.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, linkedin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/linkedin/web-v2/company-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/company-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/company-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"linkedin/web-v2/company-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"linkedin/web-v2/company-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"linkedin/web-v2/company-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"linkedin/web-v2/company-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"linkedin/web-v2/company-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"linkedin/web-v2/company-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"LinkedIn Company Posts\",\"operation\":\"LinkedIn API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/linkedin/web-v2/company-posts\",\"description\":\"Returns posts from a LinkedIn organization page using the company URL. Supports ordering by top or recent posts and offset or token pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pagination_token\",\"type\":\"string | null\",\"required\":false,\"description\":\"Token from the `paging` object of the previous response.\"},{\"name\":\"sort_by\",\"type\":\"string | null\",\"required\":false,\"description\":\"top or recent.\"},{\"name\":\"start\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Pagination offset — 0 for page 1, 50 for page 2, and so on.\"},{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Company URL.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, linkedin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/linkedin/web-v2/company-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/company-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/company-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"linkedin/web-v2/company-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"linkedin/web-v2/company-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"linkedin/web-v2/company-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"linkedin/web-v2/company-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"linkedin/web-v2/company-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"linkedin/web-v2/company-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get company's posts" + modelName: "LinkedIn Company Posts" modelId: "linkedin/web-v2/company-posts" vendor: "LinkedIn" vendorSlug: "linkedin" diff --git a/model-api-reference/platform-apis/linkedin/web-v2/company-profile.md b/model-api-reference/platform-apis/linkedin/web-v2/company-profile.md index e1699e2e..c51be212 100644 --- a/model-api-reference/platform-apis/linkedin/web-v2/company-profile.md +++ b/model-api-reference/platform-apis/linkedin/web-v2/company-profile.md @@ -1,13 +1,13 @@ --- -title: "Get company profile API Reference" -description: "SandBase API operation linkedin/web-v2/company-profile." +title: "LinkedIn Company Profile API Reference" +description: "SandBase API reference for model linkedin/web-v2/company-profile. Call /v1/api/linkedin/web-v2/company-profile; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/linkedin/web-v2/company-profile" -apiReferenceJson: "{\"title\":\"Get company profile\",\"operation\":\"LinkedIn API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/linkedin/web-v2/company-profile\",\"description\":\"Fetch a company's profile by URL.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Full company URL (e.g. https://www.linkedin.com/company/microsoft/).\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, linkedin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/linkedin/web-v2/company-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://www.linkedin.com/company/microsoft/\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://www.linkedin.com/company/microsoft/\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/company-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://www.linkedin.com/company/microsoft/\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/company-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"linkedin/web-v2/company-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"linkedin/web-v2/company-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"linkedin/web-v2/company-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"linkedin/web-v2/company-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"linkedin/web-v2/company-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"linkedin/web-v2/company-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"LinkedIn Company Profile\",\"operation\":\"LinkedIn API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/linkedin/web-v2/company-profile\",\"description\":\"Returns LinkedIn company profile details, including affiliated organizations, using a direct company page URL.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Full company URL (e.g. https://www.linkedin.com/company/microsoft/).\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, linkedin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/linkedin/web-v2/company-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://www.linkedin.com/company/microsoft/\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://www.linkedin.com/company/microsoft/\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/company-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://www.linkedin.com/company/microsoft/\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/company-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"linkedin/web-v2/company-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"linkedin/web-v2/company-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"linkedin/web-v2/company-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"linkedin/web-v2/company-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"linkedin/web-v2/company-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"linkedin/web-v2/company-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get company profile" + modelName: "LinkedIn Company Profile" modelId: "linkedin/web-v2/company-profile" vendor: "LinkedIn" vendorSlug: "linkedin" diff --git a/model-api-reference/platform-apis/linkedin/web-v2/job-detail.md b/model-api-reference/platform-apis/linkedin/web-v2/job-detail.md index 1667ccb6..1d7d19ce 100644 --- a/model-api-reference/platform-apis/linkedin/web-v2/job-detail.md +++ b/model-api-reference/platform-apis/linkedin/web-v2/job-detail.md @@ -1,13 +1,13 @@ --- -title: "Get job detail API Reference" -description: "SandBase API operation linkedin/web-v2/job-detail." +title: "LinkedIn Job Details API Reference" +description: "LinkedIn Job Details API reference for SandBase. Use model linkedin/web-v2/job-detail with /v1/api/linkedin/web-v2/job-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/linkedin/web-v2/job-detail" -apiReferenceJson: "{\"title\":\"Get job detail\",\"operation\":\"LinkedIn API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/linkedin/web-v2/job-detail\",\"description\":\"Fetch a job posting by its URL.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"include_hiring_team\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to include hiring team information.\"},{\"name\":\"include_skills\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to include the required skills.\"},{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Job URL, e.g. https://www.linkedin.com/jobs/view/3766410207/.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, linkedin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/linkedin/web-v2/job-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/job-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/job-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"linkedin/web-v2/job-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"linkedin/web-v2/job-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"linkedin/web-v2/job-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"linkedin/web-v2/job-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"linkedin/web-v2/job-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"linkedin/web-v2/job-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"LinkedIn Job Details\",\"operation\":\"LinkedIn API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/linkedin/web-v2/job-detail\",\"description\":\"Returns detailed information for a specific LinkedIn job posting via its URL. Allows optional inclusion of required skills and hiring team details.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"include_hiring_team\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to include hiring team information.\"},{\"name\":\"include_skills\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to include the required skills.\"},{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Job URL, e.g. https://www.linkedin.com/jobs/view/3766410207/.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, linkedin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/linkedin/web-v2/job-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/job-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/job-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"linkedin/web-v2/job-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"linkedin/web-v2/job-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"linkedin/web-v2/job-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"linkedin/web-v2/job-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"linkedin/web-v2/job-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"linkedin/web-v2/job-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get job detail" + modelName: "LinkedIn Job Details" modelId: "linkedin/web-v2/job-detail" vendor: "LinkedIn" vendorSlug: "linkedin" diff --git a/model-api-reference/platform-apis/linkedin/web-v2/post-comments.md b/model-api-reference/platform-apis/linkedin/web-v2/post-comments.md index f733587f..d86e05f5 100644 --- a/model-api-reference/platform-apis/linkedin/web-v2/post-comments.md +++ b/model-api-reference/platform-apis/linkedin/web-v2/post-comments.md @@ -1,13 +1,13 @@ --- -title: "Get post comments API Reference — LinkedIn Web V2 / Post Comments" -description: "SandBase API operation linkedin/web-v2/post-comments." +title: "LinkedIn Post Comments API Reference" +description: "LinkedIn Post Comments API reference for SandBase. Use model linkedin/web-v2/post-comments with /v1/api/linkedin/web-v2/post-comments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/linkedin/web-v2/post-comments" -apiReferenceJson: "{\"title\":\"Get post comments\",\"operation\":\"LinkedIn API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/linkedin/web-v2/post-comments\",\"description\":\"Fetch comments of a post by its activity urn.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Page number, starting at 1.\"},{\"name\":\"pagination_token\",\"type\":\"string | null\",\"required\":false,\"description\":\"Token returned by the previous response.\"},{\"name\":\"share_urn\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional share urn for shared posts.\"},{\"name\":\"sort_by\",\"type\":\"string | null\",\"required\":false,\"description\":\"Most relevant (default) or Most recent.\"},{\"name\":\"urn\",\"type\":\"string\",\"required\":true,\"description\":\"Post activity urn (the numeric part of .../urn:li:activity:/).\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, linkedin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/linkedin/web-v2/post-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"urn\\\": \\\"urn\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"urn\\\": \\\"urn\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/post-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"urn\\\": \\\"urn\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/post-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"linkedin/web-v2/post-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"linkedin/web-v2/post-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"linkedin/web-v2/post-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"linkedin/web-v2/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"linkedin/web-v2/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"linkedin/web-v2/post-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"LinkedIn Post Comments\",\"operation\":\"LinkedIn API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/linkedin/web-v2/post-comments\",\"description\":\"Returns comments for a specific LinkedIn post using its activity URN. Supports filtering by share URN, sorting by relevance or recency, and paginating through results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Page number, starting at 1.\"},{\"name\":\"pagination_token\",\"type\":\"string | null\",\"required\":false,\"description\":\"Token returned by the previous response.\"},{\"name\":\"share_urn\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional share urn for shared posts.\"},{\"name\":\"sort_by\",\"type\":\"string | null\",\"required\":false,\"description\":\"Most relevant (default) or Most recent.\"},{\"name\":\"urn\",\"type\":\"string\",\"required\":true,\"description\":\"Post activity urn (the numeric part of .../urn:li:activity:/).\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, linkedin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/linkedin/web-v2/post-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"urn\\\": \\\"urn\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"urn\\\": \\\"urn\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/post-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"urn\\\": \\\"urn\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/post-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"linkedin/web-v2/post-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"linkedin/web-v2/post-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"linkedin/web-v2/post-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"linkedin/web-v2/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"linkedin/web-v2/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"linkedin/web-v2/post-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get post comments" + modelName: "LinkedIn Post Comments" modelId: "linkedin/web-v2/post-comments" vendor: "LinkedIn" vendorSlug: "linkedin" diff --git a/model-api-reference/platform-apis/linkedin/web-v2/post-detail.md b/model-api-reference/platform-apis/linkedin/web-v2/post-detail.md index d4b97374..ca1057ea 100644 --- a/model-api-reference/platform-apis/linkedin/web-v2/post-detail.md +++ b/model-api-reference/platform-apis/linkedin/web-v2/post-detail.md @@ -1,13 +1,13 @@ --- -title: "Get post or article detail API Reference" -description: "SandBase API operation linkedin/web-v2/post-detail." +title: "LinkedIn Post or Article Detail API Reference" +description: "SandBase API reference for model linkedin/web-v2/post-detail. Call /v1/api/linkedin/web-v2/post-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/linkedin/web-v2/post-detail" -apiReferenceJson: "{\"title\":\"Get post or article detail\",\"operation\":\"LinkedIn API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/linkedin/web-v2/post-detail\",\"description\":\"Fetch a post or an article by URL.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Full post or article URL (both /posts/... and /pulse/... are\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, linkedin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/linkedin/web-v2/post-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://www.linkedin.com/posts/...-activity-...-xxxx\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://www.linkedin.com/posts/...-activity-...-xxxx\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/post-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://www.linkedin.com/posts/...-activity-...-xxxx\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/post-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"linkedin/web-v2/post-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"linkedin/web-v2/post-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"linkedin/web-v2/post-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"linkedin/web-v2/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"linkedin/web-v2/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"linkedin/web-v2/post-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"LinkedIn Post or Article Detail\",\"operation\":\"LinkedIn API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/linkedin/web-v2/post-detail\",\"description\":\"Returns content and metadata for a LinkedIn post or article using its web address. Works with both standard post and pulse article links.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Full post or article URL (both /posts/... and /pulse/... are\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, linkedin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/linkedin/web-v2/post-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://www.linkedin.com/posts/...-activity-...-xxxx\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://www.linkedin.com/posts/...-activity-...-xxxx\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/post-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://www.linkedin.com/posts/...-activity-...-xxxx\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/post-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"linkedin/web-v2/post-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"linkedin/web-v2/post-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"linkedin/web-v2/post-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"linkedin/web-v2/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"linkedin/web-v2/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"linkedin/web-v2/post-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get post or article detail" + modelName: "LinkedIn Post or Article Detail" modelId: "linkedin/web-v2/post-detail" vendor: "LinkedIn" vendorSlug: "linkedin" diff --git a/model-api-reference/platform-apis/linkedin/web-v2/user-posts.md b/model-api-reference/platform-apis/linkedin/web-v2/user-posts.md index b53fc143..c08b57ce 100644 --- a/model-api-reference/platform-apis/linkedin/web-v2/user-posts.md +++ b/model-api-reference/platform-apis/linkedin/web-v2/user-posts.md @@ -1,13 +1,13 @@ --- -title: "Get user's posts API Reference" -description: "SandBase API operation linkedin/web-v2/user-posts." +title: "LinkedIn User Posts API Reference" +description: "LinkedIn User Posts API reference for SandBase. Use model linkedin/web-v2/user-posts with /v1/api/linkedin/web-v2/user-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/linkedin/web-v2/user-posts" -apiReferenceJson: "{\"title\":\"Get user's posts\",\"operation\":\"LinkedIn API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/linkedin/web-v2/user-posts\",\"description\":\"Fetch a member's posts, commented posts, or reacted posts by profile URL.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pagination_token\",\"type\":\"string | null\",\"required\":false,\"description\":\"Token from the `paging` object of the previous response.\"},{\"name\":\"start\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Pagination offset — 0 for page 1, 50 for page 2, and so on.\"},{\"name\":\"type\",\"type\":\"string\",\"required\":false,\"description\":\"posts / comments / reactions. Defaults to posts.\"},{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Profile URL.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, linkedin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/linkedin/web-v2/user-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/user-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/user-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"linkedin/web-v2/user-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"linkedin/web-v2/user-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"linkedin/web-v2/user-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"linkedin/web-v2/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"linkedin/web-v2/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"linkedin/web-v2/user-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"LinkedIn User Posts\",\"operation\":\"LinkedIn API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/linkedin/web-v2/user-posts\",\"description\":\"Retrieves a member's posts, commented posts, or reacted posts using their profile URL. Supports filtering by activity type and paginating through results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pagination_token\",\"type\":\"string | null\",\"required\":false,\"description\":\"Token from the `paging` object of the previous response.\"},{\"name\":\"start\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Pagination offset — 0 for page 1, 50 for page 2, and so on.\"},{\"name\":\"type\",\"type\":\"string\",\"required\":false,\"description\":\"posts / comments / reactions. Defaults to posts.\"},{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Profile URL.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, linkedin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/linkedin/web-v2/user-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/user-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/user-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"linkedin/web-v2/user-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"linkedin/web-v2/user-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"linkedin/web-v2/user-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"linkedin/web-v2/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"linkedin/web-v2/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"linkedin/web-v2/user-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user's posts" + modelName: "LinkedIn User Posts" modelId: "linkedin/web-v2/user-posts" vendor: "LinkedIn" vendorSlug: "linkedin" diff --git a/model-api-reference/platform-apis/linkedin/web-v2/user-profile.md b/model-api-reference/platform-apis/linkedin/web-v2/user-profile.md index d40a5e87..d733f07f 100644 --- a/model-api-reference/platform-apis/linkedin/web-v2/user-profile.md +++ b/model-api-reference/platform-apis/linkedin/web-v2/user-profile.md @@ -1,13 +1,13 @@ --- -title: "Get user profile API Reference — LinkedIn Web V2 / User Profile" -description: "SandBase API operation linkedin/web-v2/user-profile." +title: "LinkedIn User Profile API Reference" +description: "LinkedIn User Profile API reference for SandBase. Use model linkedin/web-v2/user-profile with /v1/api/linkedin/web-v2/user-profile; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/linkedin/web-v2/user-profile" -apiReferenceJson: "{\"title\":\"Get user profile\",\"operation\":\"LinkedIn API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/linkedin/web-v2/user-profile\",\"description\":\"Fetch a LinkedIn member's public profile by URL.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Full profile URL (e.g. https://www.linkedin.com/in/williamhgates/).\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, linkedin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/linkedin/web-v2/user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"linkedin/web-v2/user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"linkedin/web-v2/user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"linkedin/web-v2/user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"linkedin/web-v2/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"linkedin/web-v2/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"linkedin/web-v2/user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"LinkedIn User Profile\",\"operation\":\"LinkedIn API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/linkedin/web-v2/user-profile\",\"description\":\"Retrieves public profile details for a LinkedIn member. Input the full profile link to look up member information.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Full profile URL (e.g. https://www.linkedin.com/in/williamhgates/).\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, linkedin\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/linkedin/web-v2/user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://www.linkedin.com/posts/...-activity-...-xxxx\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://www.linkedin.com/posts/...-activity-...-xxxx\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://www.linkedin.com/posts/...-activity-...-xxxx\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/linkedin/web-v2/user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"linkedin/web-v2/user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"linkedin/web-v2/user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"linkedin/web-v2/user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"linkedin/web-v2/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"linkedin/web-v2/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"linkedin/web-v2/user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user profile" + modelName: "LinkedIn User Profile" modelId: "linkedin/web-v2/user-profile" vendor: "LinkedIn" vendorSlug: "linkedin" diff --git a/model-api-reference/platform-apis/pinterest/board.md b/model-api-reference/platform-apis/pinterest/board.md index 3c86ff34..6c69d1cb 100644 --- a/model-api-reference/platform-apis/pinterest/board.md +++ b/model-api-reference/platform-apis/pinterest/board.md @@ -1,13 +1,13 @@ --- -title: "Pinterest Board API Reference" -description: "SandBase API operation pinterest/board." +title: "Pinterest Board Pins API Reference" +description: "Pinterest Board Pins API reference for SandBase. Use model pinterest/board with /v1/api/pinterest/board; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/pinterest/board" -apiReferenceJson: "{\"title\":\"Pinterest Board\",\"operation\":\"Pinterest API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pinterest/board\",\"description\":\"Fetch a paginated list of pins from a Pinterest board by URL. Each pin includes id, description, title, images, board info, pin_join annotations, and aggregated_pin_data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the Pinterest board to fetch pins from.\"},{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor from a previous response to get the next page.\"},{\"name\":\"trim\",\"type\":\"boolean\",\"required\":false,\"description\":\"Set to true for a trimmed down version of the response.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"social-media\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pinterest/board \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pinterest/board\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pinterest/board\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pinterest/board\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pinterest/board\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pinterest/board\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pinterest/board\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pinterest/board\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pinterest/board\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Pinterest Board Pins\",\"operation\":\"Pinterest API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pinterest/board\",\"description\":\"Returns a paginated list of pins from a specified Pinterest board URL, including pin metadata, images, and aggregated pin metrics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the Pinterest board to fetch pins from.\"},{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor from a previous response to get the next page.\"},{\"name\":\"trim\",\"type\":\"boolean\",\"required\":false,\"description\":\"Set to true for a trimmed down version of the response.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"social-media\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pinterest/board \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pinterest/board\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pinterest/board\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pinterest/board\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pinterest/board\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pinterest/board\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pinterest/board\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pinterest/board\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pinterest/board\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Pinterest Board" + modelName: "Pinterest Board Pins" modelId: "pinterest/board" vendor: "Pinterest" vendorSlug: "pinterest" diff --git a/model-api-reference/platform-apis/pinterest/pin.md b/model-api-reference/platform-apis/pinterest/pin.md index 172caff4..5d835f17 100644 --- a/model-api-reference/platform-apis/pinterest/pin.md +++ b/model-api-reference/platform-apis/pinterest/pin.md @@ -1,11 +1,11 @@ --- title: "Pinterest Pin Details API Reference" -description: "SandBase API operation pinterest/pin." +description: "Pinterest Pin Details API reference for SandBase. Use model pinterest/pin with /v1/api/pinterest/pin; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/pinterest/pin" -apiReferenceJson: "{\"title\":\"Pinterest Pin Details\",\"operation\":\"Pinterest API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pinterest/pin\",\"description\":\"Fetch detailed information about a single Pinterest pin by URL. Returns title, description, link, dominantColor, originPinner, pinner, images at multiple resolutions, and pinJoin with visual annotations.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"The Pinterest pin URL to fetch details for.\"},{\"name\":\"trim\",\"type\":\"boolean\",\"required\":false,\"description\":\"Set to true for a trimmed down version of the response.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"social-media\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pinterest/pin \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pinterest/pin\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pinterest/pin\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pinterest/pin\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pinterest/pin\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pinterest/pin\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pinterest/pin\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pinterest/pin\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pinterest/pin\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Pinterest Pin Details\",\"operation\":\"Pinterest API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pinterest/pin\",\"description\":\"Returns detailed information for a single Pinterest pin using its page URL. Supports an optional setting to return a trimmed response payload.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"The Pinterest pin URL to fetch details for.\"},{\"name\":\"trim\",\"type\":\"boolean\",\"required\":false,\"description\":\"Set to true for a trimmed down version of the response.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"social-media\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pinterest/pin \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pinterest/pin\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pinterest/pin\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pinterest/pin\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pinterest/pin\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pinterest/pin\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pinterest/pin\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pinterest/pin\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pinterest/pin\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: modelName: "Pinterest Pin Details" modelId: "pinterest/pin" diff --git a/model-api-reference/platform-apis/pinterest/search.md b/model-api-reference/platform-apis/pinterest/search.md index b87adc91..1ac43094 100644 --- a/model-api-reference/platform-apis/pinterest/search.md +++ b/model-api-reference/platform-apis/pinterest/search.md @@ -1,11 +1,11 @@ --- title: "Pinterest Search API Reference" -description: "SandBase API operation pinterest/search." +description: "Pinterest Search API reference for SandBase. Use model pinterest/search with /v1/api/pinterest/search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/pinterest/search" -apiReferenceJson: "{\"title\":\"Pinterest Search\",\"operation\":\"Pinterest API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pinterest/search\",\"description\":\"Search Pinterest for pins matching a query. Returns pins with id, url, title, description, images, link, domain, board info, and pinner details. Supports pagination via cursor.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search query for Pinterest pins.\"},{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor from a previous response to fetch the next page.\"},{\"name\":\"trim\",\"type\":\"boolean\",\"required\":false,\"description\":\"Set to true for a trimmed down version of the response.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"social-media, image-search\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pinterest/search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"query\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"query\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pinterest/search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"query\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pinterest/search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pinterest/search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pinterest/search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pinterest/search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pinterest/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pinterest/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pinterest/search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Pinterest Search\",\"operation\":\"Pinterest API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pinterest/search\",\"description\":\"Search Pinterest pins by keyword and get pin IDs, URLs, titles, descriptions and images, with cursor pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search query for Pinterest pins.\"},{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor from a previous response to fetch the next page.\"},{\"name\":\"trim\",\"type\":\"boolean\",\"required\":false,\"description\":\"Set to true for a trimmed down version of the response.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"social-media, image-search\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pinterest/search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"home office ideas\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"home office ideas\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pinterest/search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"home office ideas\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pinterest/search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pinterest/search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pinterest/search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pinterest/search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pinterest/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pinterest/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pinterest/search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: modelName: "Pinterest Search" modelId: "pinterest/search" diff --git a/model-api-reference/platform-apis/pinterest/user-boards.md b/model-api-reference/platform-apis/pinterest/user-boards.md index c2ac85b8..48997fc9 100644 --- a/model-api-reference/platform-apis/pinterest/user-boards.md +++ b/model-api-reference/platform-apis/pinterest/user-boards.md @@ -1,11 +1,11 @@ --- title: "Pinterest User Boards API Reference" -description: "SandBase API operation pinterest/user-boards." +description: "Pinterest User Boards API reference for SandBase. Use model pinterest/user-boards with /v1/api/pinterest/user-boards; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/pinterest/user-boards" -apiReferenceJson: "{\"title\":\"Pinterest User Boards\",\"operation\":\"Pinterest API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pinterest/user-boards\",\"description\":\"Fetch a paginated list of boards for a Pinterest user by username. Each board includes name, url, description, pin_count, follower_count, owner info, cover images, and created_at.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"handle\",\"type\":\"string\",\"required\":true,\"description\":\"The Pinterest username to get boards for (e.g. 'broadstbullycom' from https://www.pinterest.com/broadstbullycom/).\"},{\"name\":\"trim\",\"type\":\"boolean\",\"required\":false,\"description\":\"Set to true for a trimmed down version of the response.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"social-media\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pinterest/user-boards \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"handle\\\": \\\"handle\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"handle\\\": \\\"handle\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pinterest/user-boards\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"handle\\\": \\\"handle\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pinterest/user-boards\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pinterest/user-boards\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pinterest/user-boards\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pinterest/user-boards\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pinterest/user-boards\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pinterest/user-boards\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pinterest/user-boards\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Pinterest User Boards\",\"operation\":\"Pinterest API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pinterest/user-boards\",\"description\":\"Get a Pinterest user's boards by username: board name, URL, description, pin and follower counts, cover images and creation date.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"handle\",\"type\":\"string\",\"required\":true,\"description\":\"The Pinterest username to get boards for (e.g. 'broadstbullycom' from https://www.pinterest.com/broadstbullycom/).\"},{\"name\":\"trim\",\"type\":\"boolean\",\"required\":false,\"description\":\"Set to true for a trimmed down version of the response.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"social-media\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pinterest/user-boards \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"handle\\\": \\\"pinterest\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"handle\\\": \\\"pinterest\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pinterest/user-boards\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"handle\\\": \\\"pinterest\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pinterest/user-boards\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pinterest/user-boards\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pinterest/user-boards\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pinterest/user-boards\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pinterest/user-boards\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pinterest/user-boards\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pinterest/user-boards\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: modelName: "Pinterest User Boards" modelId: "pinterest/user-boards" diff --git a/model-api-reference/platform-apis/pipixia/app/hashtag-detail.md b/model-api-reference/platform-apis/pipixia/app/hashtag-detail.md index e195a714..0d06ac38 100644 --- a/model-api-reference/platform-apis/pipixia/app/hashtag-detail.md +++ b/model-api-reference/platform-apis/pipixia/app/hashtag-detail.md @@ -1,13 +1,13 @@ --- -title: "Get hashtag detail API Reference" -description: "SandBase API operation pipixia/app/hashtag-detail." +title: "Pipixia Hashtag Details API Reference" +description: "Pipixia Hashtag Details API reference for SandBase. Use model pipixia/app/hashtag-detail with /v1/api/pipixia/app/hashtag-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/pipixia/app/hashtag-detail" -apiReferenceJson: "{\"title\":\"Get hashtag detail\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/hashtag-detail\",\"description\":\"Get hashtag detail data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"hashtag_id\",\"type\":\"string\",\"required\":true,\"description\":\"AKA hashtag id, can be obtained from the share link.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/hashtag-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"hashtag_id\\\": \\\"129559\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"hashtag_id\\\": \\\"129559\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/hashtag-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"hashtag_id\\\": \\\"129559\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/hashtag-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/hashtag-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/hashtag-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/hashtag-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/hashtag-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/hashtag-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/hashtag-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Pipixia Hashtag Details\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/hashtag-detail\",\"description\":\"Retrieves metadata and profile assets for a specific Pipixia hashtag by its unique identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"hashtag_id\",\"type\":\"string\",\"required\":true,\"description\":\"AKA hashtag id, can be obtained from the share link.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/hashtag-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"hashtag_id\\\": \\\"129559\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"hashtag_id\\\": \\\"129559\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/hashtag-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"hashtag_id\\\": \\\"129559\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/hashtag-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/hashtag-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/hashtag-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/hashtag-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/hashtag-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/hashtag-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/hashtag-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get hashtag detail" + modelName: "Pipixia Hashtag Details" modelId: "pipixia/app/hashtag-detail" vendor: "Pipixia" vendorSlug: "pipixia" diff --git a/model-api-reference/platform-apis/pipixia/app/hashtag-post-list.md b/model-api-reference/platform-apis/pipixia/app/hashtag-post-list.md index 9eb5777d..75a7c1b8 100644 --- a/model-api-reference/platform-apis/pipixia/app/hashtag-post-list.md +++ b/model-api-reference/platform-apis/pipixia/app/hashtag-post-list.md @@ -1,13 +1,13 @@ --- -title: "Get hashtag post list API Reference" -description: "SandBase API operation pipixia/app/hashtag-post-list." +title: "Pipixia Hashtag Post List API Reference" +description: "SandBase API reference for model pipixia/app/hashtag-post-list. Call /v1/api/pipixia/app/hashtag-post-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/pipixia/app/hashtag-post-list" -apiReferenceJson: "{\"title\":\"Get hashtag post list\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/hashtag-post-list\",\"description\":\"Get hashtag post list data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Page cursor, default is 0, get the corresponding value from the `loadmore_cursor` Key in the previous page.\",\"default\":\"0\"},{\"name\":\"feed_count\",\"type\":\"string\",\"required\":false,\"description\":\"Page count, default is 0, add 1 for each page, such as 0 for the first page, 1 for the second page, 2 for the third page, and so on.\",\"default\":\"0\"},{\"name\":\"hashtag_id\",\"type\":\"string\",\"required\":true,\"description\":\"AKA hashtag id, can be obtained from the share link.\"},{\"name\":\"hashtag_request_type\",\"type\":\"string\",\"required\":false,\"description\":\"Hashtag request type\",\"default\":\"0\"},{\"name\":\"hashtag_sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Hashtag sort type\",\"default\":\"3\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/hashtag-post-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"hashtag_id\\\": \\\"129559\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"hashtag_id\\\": \\\"129559\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/hashtag-post-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"hashtag_id\\\": \\\"129559\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/hashtag-post-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/hashtag-post-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/hashtag-post-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/hashtag-post-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/hashtag-post-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/hashtag-post-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/hashtag-post-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Pipixia Hashtag Post List\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/hashtag-post-list\",\"description\":\"Returns a list of posts associated with a specific hashtag on Pipixia. Filter by hashtag identifier, sort options, and paginate through results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Page cursor, default is 0, get the corresponding value from the `loadmore_cursor` Key in the previous page.\",\"default\":\"0\"},{\"name\":\"feed_count\",\"type\":\"string\",\"required\":false,\"description\":\"Page count, default is 0, add 1 for each page, such as 0 for the first page, 1 for the second page, 2 for the third page, and so on.\",\"default\":\"0\"},{\"name\":\"hashtag_id\",\"type\":\"string\",\"required\":true,\"description\":\"AKA hashtag id, can be obtained from the share link.\"},{\"name\":\"hashtag_request_type\",\"type\":\"string\",\"required\":false,\"description\":\"Hashtag request type\",\"default\":\"0\"},{\"name\":\"hashtag_sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Hashtag sort type\",\"default\":\"3\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/hashtag-post-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"hashtag_id\\\": \\\"129559\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"hashtag_id\\\": \\\"129559\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/hashtag-post-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"hashtag_id\\\": \\\"129559\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/hashtag-post-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/hashtag-post-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/hashtag-post-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/hashtag-post-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/hashtag-post-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/hashtag-post-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/hashtag-post-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get hashtag post list" + modelName: "Pipixia Hashtag Post List" modelId: "pipixia/app/hashtag-post-list" vendor: "Pipixia" vendorSlug: "pipixia" diff --git a/model-api-reference/platform-apis/pipixia/app/home-feed.md b/model-api-reference/platform-apis/pipixia/app/home-feed.md index ec2b0002..7fabf988 100644 --- a/model-api-reference/platform-apis/pipixia/app/home-feed.md +++ b/model-api-reference/platform-apis/pipixia/app/home-feed.md @@ -1,13 +1,13 @@ --- -title: "Get home feed API Reference — Pipixia App / Home Feed API" -description: "SandBase API operation pipixia/app/home-feed." +title: "Pipixia App Home Feed API Reference" +description: "Pipixia App Home Feed API reference for SandBase. Use model pipixia/app/home-feed with /v1/api/pipixia/app/home-feed; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/pipixia/app/home-feed" -apiReferenceJson: "{\"title\":\"Get home feed\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/home-feed\",\"description\":\"Get home feed data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Page cursor, default is 0, get the corresponding value from the `loadmore_cursor` Key in the previous page.\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/home-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pipixia/app/home-feed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"pipixia/app/home-feed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/home-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"pipixia/app/home-feed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/home-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/home-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/home-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/home-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/home-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/home-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/home-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Pipixia App Home Feed\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/home-feed\",\"description\":\"Returns recommended posts from the Pipixia home feed. Supports cursor-based pagination to browse subsequent pages of feed items.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Page cursor, default is 0, get the corresponding value from the `loadmore_cursor` Key in the previous page.\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/home-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/home-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/home-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/home-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/home-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/home-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/home-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/home-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/home-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get home feed" + modelName: "Pipixia App Home Feed" modelId: "pipixia/app/home-feed" vendor: "Pipixia" vendorSlug: "pipixia" diff --git a/model-api-reference/platform-apis/pipixia/app/home-short-drama-feed.md b/model-api-reference/platform-apis/pipixia/app/home-short-drama-feed.md index db33f014..b6a48cde 100644 --- a/model-api-reference/platform-apis/pipixia/app/home-short-drama-feed.md +++ b/model-api-reference/platform-apis/pipixia/app/home-short-drama-feed.md @@ -1,13 +1,13 @@ --- -title: "Get home short drama feed API Reference" -description: "SandBase API operation pipixia/app/home-short-drama-feed." +title: "Pipixia Home Short Drama Feed API Reference" +description: "SandBase API reference for model pipixia/app/home-short-drama-feed. Call /v1/api/pipixia/app/home-short-drama-feed; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/pipixia/app/home-short-drama-feed" -apiReferenceJson: "{\"title\":\"Get home short drama feed\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/home-short-drama-feed\",\"description\":\"Get home short drama feed data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default is 1, add 1 for each page.\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/home-short-drama-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pipixia/app/home-short-drama-feed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"pipixia/app/home-short-drama-feed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/home-short-drama-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"pipixia/app/home-short-drama-feed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/home-short-drama-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/home-short-drama-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/home-short-drama-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/home-short-drama-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/home-short-drama-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/home-short-drama-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/home-short-drama-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Pipixia Home Short Drama Feed\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/home-short-drama-feed\",\"description\":\"Returns short drama and novel recommendations from the Pipixia home feed. Supports pagination to browse through items sequentially.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default is 1, add 1 for each page.\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/home-short-drama-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/home-short-drama-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/home-short-drama-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/home-short-drama-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/home-short-drama-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/home-short-drama-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/home-short-drama-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/home-short-drama-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/home-short-drama-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get home short drama feed" + modelName: "Pipixia Home Short Drama Feed" modelId: "pipixia/app/home-short-drama-feed" vendor: "Pipixia" vendorSlug: "pipixia" diff --git a/model-api-reference/platform-apis/pipixia/app/hot-search-board-detail.md b/model-api-reference/platform-apis/pipixia/app/hot-search-board-detail.md index 1bc84eb8..ec571a54 100644 --- a/model-api-reference/platform-apis/pipixia/app/hot-search-board-detail.md +++ b/model-api-reference/platform-apis/pipixia/app/hot-search-board-detail.md @@ -1,13 +1,13 @@ --- -title: "Get hot search board detail API Reference" -description: "SandBase API operation pipixia/app/hot-search-board-detail." +title: "Pipixia Hot Search Board Detail API Reference" +description: "SandBase API reference for model pipixia/app/hot-search-board-detail. Call /v1/api/pipixia/app/hot-search-board-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/pipixia/app/hot-search-board-detail" -apiReferenceJson: "{\"title\":\"Get hot search board detail\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/hot-search-board-detail\",\"description\":\"Get hot search board detail data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"block_type\",\"type\":\"integer\",\"required\":true,\"description\":\"Board type, can be obtained from the `/fetch_hot_search_board_list` interface.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/hot-search-board-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"block_type\\\": 12\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"block_type\\\": 12\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/hot-search-board-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"block_type\\\": 12\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/hot-search-board-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/hot-search-board-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/hot-search-board-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/hot-search-board-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/hot-search-board-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/hot-search-board-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/hot-search-board-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Pipixia Hot Search Board Detail\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/hot-search-board-detail\",\"description\":\"Returns detailed items from a Pipixia hot search board, including item identifiers, like metrics, and highlighted comments for a specified board type.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"block_type\",\"type\":\"integer\",\"required\":true,\"description\":\"Board type, can be obtained from the `/fetch_hot_search_board_list` interface.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/hot-search-board-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"block_type\\\": 12\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"block_type\\\": 12\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/hot-search-board-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"block_type\\\": 12\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/hot-search-board-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/hot-search-board-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/hot-search-board-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/hot-search-board-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/hot-search-board-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/hot-search-board-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/hot-search-board-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get hot search board detail" + modelName: "Pipixia Hot Search Board Detail" modelId: "pipixia/app/hot-search-board-detail" vendor: "Pipixia" vendorSlug: "pipixia" diff --git a/model-api-reference/platform-apis/pipixia/app/hot-search-board-list.md b/model-api-reference/platform-apis/pipixia/app/hot-search-board-list.md index e2d00108..81f080b8 100644 --- a/model-api-reference/platform-apis/pipixia/app/hot-search-board-list.md +++ b/model-api-reference/platform-apis/pipixia/app/hot-search-board-list.md @@ -1,13 +1,13 @@ --- -title: "Get hot search board list API Reference" -description: "SandBase API operation pipixia/app/hot-search-board-list." +title: "Pipixia Hot Search API Reference" +description: "SandBase API reference for model pipixia/app/hot-search-board-list. Call /v1/api/pipixia/app/hot-search-board-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/pipixia/app/hot-search-board-list" -apiReferenceJson: "{\"title\":\"Get hot search board list\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/hot-search-board-list\",\"description\":\"Get hot search board list data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/hot-search-board-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pipixia/app/hot-search-board-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"pipixia/app/hot-search-board-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/hot-search-board-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"pipixia/app/hot-search-board-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/hot-search-board-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/hot-search-board-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/hot-search-board-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/hot-search-board-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/hot-search-board-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/hot-search-board-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/hot-search-board-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Pipixia Hot Search\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/hot-search-board-list\",\"description\":\"Get the Pipixia hot search boards: trending posts with daily likes and top comments.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/hot-search-board-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/hot-search-board-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/hot-search-board-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/hot-search-board-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/hot-search-board-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/hot-search-board-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/hot-search-board-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/hot-search-board-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/hot-search-board-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get hot search board list" + modelName: "Pipixia Hot Search" modelId: "pipixia/app/hot-search-board-list" vendor: "Pipixia" vendorSlug: "pipixia" diff --git a/model-api-reference/platform-apis/pipixia/app/hot-search-words.md b/model-api-reference/platform-apis/pipixia/app/hot-search-words.md index ba2fa526..aa374fb4 100644 --- a/model-api-reference/platform-apis/pipixia/app/hot-search-words.md +++ b/model-api-reference/platform-apis/pipixia/app/hot-search-words.md @@ -1,13 +1,13 @@ --- -title: "Get hot search words API Reference" -description: "SandBase API operation pipixia/app/hot-search-words." +title: "Pipixia Hot Search Words API Reference" +description: "Pipixia Hot Search Words API reference for SandBase. Use model pipixia/app/hot-search-words with /v1/api/pipixia/app/hot-search-words; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/pipixia/app/hot-search-words" -apiReferenceJson: "{\"title\":\"Get hot search words\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/hot-search-words\",\"description\":\"Get hot search words data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/hot-search-words \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pipixia/app/hot-search-words\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"pipixia/app/hot-search-words\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/hot-search-words\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"pipixia/app/hot-search-words\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/hot-search-words\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/hot-search-words\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/hot-search-words\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/hot-search-words\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/hot-search-words\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/hot-search-words\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/hot-search-words\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Pipixia Hot Search Words\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/hot-search-words\",\"description\":\"Returns the current list of trending search keywords from Pipixia. Helps track popular search topics and user query trends across the platform without requiring input parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/hot-search-words \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/hot-search-words\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/hot-search-words\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/hot-search-words\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/hot-search-words\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/hot-search-words\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/hot-search-words\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/hot-search-words\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/hot-search-words\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get hot search words" + modelName: "Pipixia Hot Search Words" modelId: "pipixia/app/hot-search-words" vendor: "Pipixia" vendorSlug: "pipixia" diff --git a/model-api-reference/platform-apis/pipixia/app/increase-post-view-count.md b/model-api-reference/platform-apis/pipixia/app/increase-post-view-count.md index d44e30b4..89bff619 100644 --- a/model-api-reference/platform-apis/pipixia/app/increase-post-view-count.md +++ b/model-api-reference/platform-apis/pipixia/app/increase-post-view-count.md @@ -1,13 +1,13 @@ --- -title: "Increase post view count API Reference" -description: "SandBase API operation pipixia/app/increase-post-view-count." +title: "Pipixia Post View Count Increment API Reference" +description: "SandBase API reference for model pipixia/app/increase-post-view-count. Call /v1/api/pipixia/app/increase-post-view-count; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/pipixia/app/increase-post-view-count" -apiReferenceJson: "{\"title\":\"Increase post view count\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/increase-post-view-count\",\"description\":\"Increase post view count.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cell_id\",\"type\":\"string\",\"required\":true,\"description\":\"AKA video id, can be obtained from the share link.\"},{\"name\":\"cell_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Video type, 1 for video, keep the default value for other types.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/increase-post-view-count \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cell_id\\\": \\\"cell_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cell_id\\\": \\\"cell_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/increase-post-view-count\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cell_id\\\": \\\"cell_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/increase-post-view-count\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/increase-post-view-count\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/increase-post-view-count\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/increase-post-view-count\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/increase-post-view-count\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/increase-post-view-count\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/increase-post-view-count\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Pipixia Post View Count Increment\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/increase-post-view-count\",\"description\":\"Registers an increment for a Pipixia post view count using the specified cell ID. Returns a status code along with a response timestamp.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cell_id\",\"type\":\"string\",\"required\":true,\"description\":\"AKA video id, can be obtained from the share link.\"},{\"name\":\"cell_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Video type, 1 for video, keep the default value for other types.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/increase-post-view-count \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"cell_id\\\": \\\"7411241327297299263\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"cell_id\\\": \\\"7411241327297299263\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/increase-post-view-count\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"cell_id\\\": \\\"7411241327297299263\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/increase-post-view-count\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/increase-post-view-count\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/increase-post-view-count\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/increase-post-view-count\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/increase-post-view-count\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/increase-post-view-count\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/increase-post-view-count\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Increase post view count" + modelName: "Pipixia Post View Count Increment" modelId: "pipixia/app/increase-post-view-count" vendor: "Pipixia" vendorSlug: "pipixia" diff --git a/model-api-reference/platform-apis/pipixia/app/post-comment-list.md b/model-api-reference/platform-apis/pipixia/app/post-comment-list.md index 57bcdfb7..b500dd3b 100644 --- a/model-api-reference/platform-apis/pipixia/app/post-comment-list.md +++ b/model-api-reference/platform-apis/pipixia/app/post-comment-list.md @@ -1,13 +1,13 @@ --- -title: "Get post comment list API Reference" -description: "SandBase API operation pipixia/app/post-comment-list." +title: "Pipixia Post Comments API Reference" +description: "Pipixia Post Comments API reference for SandBase. Use model pipixia/app/post-comment-list with /v1/api/pipixia/app/post-comment-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/pipixia/app/post-comment-list" -apiReferenceJson: "{\"title\":\"Get post comment list\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/post-comment-list\",\"description\":\"Get the comment list of a post.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cell_id\",\"type\":\"string\",\"required\":true,\"description\":\"AKA video id, can be obtained from the share link.\"},{\"name\":\"cell_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Video type, 1 for video, keep the default value for other types.\",\"default\":\"1\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Page cursor, default is 0, get the corresponding value from the `offset` Key in the previous page.\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/post-comment-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cell_id\\\": \\\"7411193113223371043\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cell_id\\\": \\\"7411193113223371043\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/post-comment-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cell_id\\\": \\\"7411193113223371043\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/post-comment-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/post-comment-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/post-comment-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/post-comment-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/post-comment-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/post-comment-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/post-comment-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Pipixia Post Comments\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/post-comment-list\",\"description\":\"Returns comments for a Pipixia post using its video identifier. Supports cursor-based pagination and cell type filtering to browse feedback.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cell_id\",\"type\":\"string\",\"required\":true,\"description\":\"AKA video id, can be obtained from the share link.\"},{\"name\":\"cell_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Video type, 1 for video, keep the default value for other types.\",\"default\":\"1\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Page cursor, default is 0, get the corresponding value from the `offset` Key in the previous page.\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/post-comment-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"cell_id\\\": \\\"7411193113223371043\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"cell_id\\\": \\\"7411193113223371043\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/post-comment-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"cell_id\\\": \\\"7411193113223371043\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/post-comment-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/post-comment-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/post-comment-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/post-comment-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/post-comment-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/post-comment-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/post-comment-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get post comment list" + modelName: "Pipixia Post Comments" modelId: "pipixia/app/post-comment-list" vendor: "Pipixia" vendorSlug: "pipixia" diff --git a/model-api-reference/platform-apis/pipixia/app/post-detail.md b/model-api-reference/platform-apis/pipixia/app/post-detail.md index 27b15c4f..96e51159 100644 --- a/model-api-reference/platform-apis/pipixia/app/post-detail.md +++ b/model-api-reference/platform-apis/pipixia/app/post-detail.md @@ -1,13 +1,13 @@ --- -title: "Get single video data API Reference — Pipixia App / Post Detail" -description: "SandBase API operation pipixia/app/post-detail." +title: "Pipixia Post Detail API Reference" +description: "Pipixia Post Detail API reference for SandBase. Use model pipixia/app/post-detail with /v1/api/pipixia/app/post-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/pipixia/app/post-detail" -apiReferenceJson: "{\"title\":\"Get single video data\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/post-detail\",\"description\":\"Get single video data, support photo, video, etc.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cell_id\",\"type\":\"string\",\"required\":true,\"description\":\"AKA video id, can be obtained from the share link.\"},{\"name\":\"cell_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Video type, 1 for video, keep the default value for other types.\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/post-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cell_id\\\": \\\"7411193113223371043\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cell_id\\\": \\\"7411193113223371043\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/post-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cell_id\\\": \\\"7411193113223371043\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/post-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/post-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/post-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/post-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/post-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Pipixia Post Detail\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/post-detail\",\"description\":\"Returns detailed data for a Pipixia post, including video and photo content, using a specific post identifier and optional post type.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cell_id\",\"type\":\"string\",\"required\":true,\"description\":\"AKA video id, can be obtained from the share link.\"},{\"name\":\"cell_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Video type, 1 for video, keep the default value for other types.\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/post-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"cell_id\\\": \\\"7411193113223371043\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"cell_id\\\": \\\"7411193113223371043\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/post-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"cell_id\\\": \\\"7411193113223371043\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/post-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/post-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/post-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/post-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/post-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video data" + modelName: "Pipixia Post Detail" modelId: "pipixia/app/post-detail" vendor: "Pipixia" vendorSlug: "pipixia" diff --git a/model-api-reference/platform-apis/pipixia/app/post-statistics.md b/model-api-reference/platform-apis/pipixia/app/post-statistics.md index 95276f60..d9fc4e4d 100644 --- a/model-api-reference/platform-apis/pipixia/app/post-statistics.md +++ b/model-api-reference/platform-apis/pipixia/app/post-statistics.md @@ -1,13 +1,13 @@ --- -title: "Get post statistics API Reference" -description: "SandBase API operation pipixia/app/post-statistics." +title: "Pipixia Post Statistics API Reference" +description: "Pipixia Post Statistics API reference for SandBase. Use model pipixia/app/post-statistics with /v1/api/pipixia/app/post-statistics; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/pipixia/app/post-statistics" -apiReferenceJson: "{\"title\":\"Get post statistics\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/post-statistics\",\"description\":\"Get the statistics of a single post, such as the number of likes, comments, reposts, etc.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cell_id\",\"type\":\"string\",\"required\":true,\"description\":\"AKA video id, can be obtained from the share link.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/post-statistics \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cell_id\\\": \\\"7411193113223371043\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cell_id\\\": \\\"7411193113223371043\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/post-statistics\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cell_id\\\": \\\"7411193113223371043\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/post-statistics\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/post-statistics\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/post-statistics\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/post-statistics\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/post-statistics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/post-statistics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/post-statistics\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Pipixia Post Statistics\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/post-statistics\",\"description\":\"Returns engagement metrics and statistics for a single Pipixia post using its identifier. Includes figures such as likes, comments, and reposts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cell_id\",\"type\":\"string\",\"required\":true,\"description\":\"AKA video id, can be obtained from the share link.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/post-statistics \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"cell_id\\\": \\\"7411193113223371043\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"cell_id\\\": \\\"7411193113223371043\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/post-statistics\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"cell_id\\\": \\\"7411193113223371043\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/post-statistics\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/post-statistics\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/post-statistics\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/post-statistics\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/post-statistics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/post-statistics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/post-statistics\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get post statistics" + modelName: "Pipixia Post Statistics" modelId: "pipixia/app/post-statistics" vendor: "Pipixia" vendorSlug: "pipixia" diff --git a/model-api-reference/platform-apis/pipixia/app/search.md b/model-api-reference/platform-apis/pipixia/app/search.md index 0b0929fa..7899f96b 100644 --- a/model-api-reference/platform-apis/pipixia/app/search.md +++ b/model-api-reference/platform-apis/pipixia/app/search.md @@ -1,13 +1,13 @@ --- -title: "Search API Reference — Pipixia App / Search API" -description: "SandBase API operation pipixia/app/search." +title: "Pipixia Search API Reference" +description: "Pipixia Search API reference for SandBase. Use model pipixia/app/search with /v1/api/pipixia/app/search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/pipixia/app/search" -apiReferenceJson: "{\"title\":\"Search API\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/search\",\"description\":\"Search API, support search user, post, etc.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword.\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Page cursor, default is 0, get the corresponding value from the `offset` Key in the previous page.\",\"default\":\"0\"},{\"name\":\"search_type\",\"type\":\"string\",\"required\":false,\"description\":\"Search type, available values are as follows:\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Pipixia Search\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/search\",\"description\":\"Search Pipixia (ByteDance humor community) by keyword across posts, videos, images, users and hashtags.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword.\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Page cursor, default is 0, get the corresponding value from the `offset` Key in the previous page.\",\"default\":\"0\"},{\"name\":\"search_type\",\"type\":\"string\",\"required\":false,\"description\":\"Search type, available values are as follows: 1: Comprehensive; 8: Hot; 9: Fresh; 2: Video; 3: Photo; 4: User; 5: Hashtag\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search API" + modelName: "Pipixia Search" modelId: "pipixia/app/search" vendor: "Pipixia" vendorSlug: "pipixia" diff --git a/model-api-reference/platform-apis/pipixia/app/short-url.md b/model-api-reference/platform-apis/pipixia/app/short-url.md index 2172a419..c3ab8b5d 100644 --- a/model-api-reference/platform-apis/pipixia/app/short-url.md +++ b/model-api-reference/platform-apis/pipixia/app/short-url.md @@ -1,13 +1,13 @@ --- -title: "Generate short URL API Reference" -description: "SandBase API operation pipixia/app/short-url." +title: "Pipixia Short URL Conversion API Reference" +description: "Pipixia Short URL Conversion API reference for SandBase. Use model pipixia/app/short-url with /v1/api/pipixia/app/short-url; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/pipixia/app/short-url" -apiReferenceJson: "{\"title\":\"Generate short URL\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/short-url\",\"description\":\"Generate short URL.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"original_url\",\"type\":\"string\",\"required\":true,\"description\":\"Original URL, can be any link.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/short-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"original_url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"original_url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/short-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"original_url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/short-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/short-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/short-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/short-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/short-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/short-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/short-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Pipixia Short URL Conversion\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/short-url\",\"description\":\"Returns a shortened link for a specified web address. Takes an original web link as input and converts it into a Pipixia-compatible short URL format.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"original_url\",\"type\":\"string\",\"required\":true,\"description\":\"Original URL, can be any link.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/short-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"original_url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"original_url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/short-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"original_url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/short-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/short-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/short-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/short-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/short-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/short-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/short-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate short URL" + modelName: "Pipixia Short URL Conversion" modelId: "pipixia/app/short-url" vendor: "Pipixia" vendorSlug: "pipixia" diff --git a/model-api-reference/platform-apis/pipixia/app/user-follower-list.md b/model-api-reference/platform-apis/pipixia/app/user-follower-list.md index 712c6b47..8dabd284 100644 --- a/model-api-reference/platform-apis/pipixia/app/user-follower-list.md +++ b/model-api-reference/platform-apis/pipixia/app/user-follower-list.md @@ -1,13 +1,13 @@ --- -title: "Get user follower list API Reference" -description: "SandBase API operation pipixia/app/user-follower-list." +title: "Pipixia User Follower List API Reference" +description: "SandBase API reference for model pipixia/app/user-follower-list. Call /v1/api/pipixia/app/user-follower-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/pipixia/app/user-follower-list" -apiReferenceJson: "{\"title\":\"Get user follower list\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/user-follower-list\",\"description\":\"Get user's follower list.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Page cursor, default is 0, get the corresponding value from the `loadmore_cursor` Key in the previous page.\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"AKA user id, can be obtained from the share link.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/user-follower-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/user-follower-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/user-follower-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/user-follower-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/user-follower-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/user-follower-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/user-follower-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/user-follower-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/user-follower-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Pipixia User Follower List\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/user-follower-list\",\"description\":\"Returns a list of followers for a specified Pipixia user account. Supports pagination through cursor tokens to navigate subsequent pages.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Page cursor, default is 0, get the corresponding value from the `loadmore_cursor` Key in the previous page.\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"AKA user id, can be obtained from the share link.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/user-follower-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"3602444694069495\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"3602444694069495\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/user-follower-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"3602444694069495\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/user-follower-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/user-follower-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/user-follower-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/user-follower-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/user-follower-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/user-follower-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/user-follower-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user follower list" + modelName: "Pipixia User Follower List" modelId: "pipixia/app/user-follower-list" vendor: "Pipixia" vendorSlug: "pipixia" diff --git a/model-api-reference/platform-apis/pipixia/app/user-following-list.md b/model-api-reference/platform-apis/pipixia/app/user-following-list.md index b26320cf..dc68036b 100644 --- a/model-api-reference/platform-apis/pipixia/app/user-following-list.md +++ b/model-api-reference/platform-apis/pipixia/app/user-following-list.md @@ -1,13 +1,13 @@ --- -title: "Get user following list API Reference — Pipixia Following List" -description: "SandBase API operation pipixia/app/user-following-list." +title: "Pipixia User Following List API Reference" +description: "SandBase API reference for model pipixia/app/user-following-list. Call /v1/api/pipixia/app/user-following-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/pipixia/app/user-following-list" -apiReferenceJson: "{\"title\":\"Get user following list\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/user-following-list\",\"description\":\"Get user's following list.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Page cursor, default is 0, get the corresponding value from the `loadmore_cursor` Key in the previous page.\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"AKA user id, can be obtained from the share link.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/user-following-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/user-following-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/user-following-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/user-following-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/user-following-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/user-following-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/user-following-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/user-following-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/user-following-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Pipixia User Following List\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/user-following-list\",\"description\":\"Retrieves the list of accounts followed by a specified Pipixia user. Returns profile summaries and engagement statistics with cursor pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Page cursor, default is 0, get the corresponding value from the `loadmore_cursor` Key in the previous page.\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"AKA user id, can be obtained from the share link.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/user-following-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"3602444694069495\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"3602444694069495\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/user-following-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"3602444694069495\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/user-following-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/user-following-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/user-following-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/user-following-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/user-following-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/user-following-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/user-following-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user following list" + modelName: "Pipixia User Following List" modelId: "pipixia/app/user-following-list" vendor: "Pipixia" vendorSlug: "pipixia" diff --git a/model-api-reference/platform-apis/pipixia/app/user-info.md b/model-api-reference/platform-apis/pipixia/app/user-info.md index 9f8c3cf6..094c9fbe 100644 --- a/model-api-reference/platform-apis/pipixia/app/user-info.md +++ b/model-api-reference/platform-apis/pipixia/app/user-info.md @@ -1,13 +1,13 @@ --- -title: "Get user information API Reference — Pipixia App / User Info API" -description: "SandBase API operation pipixia/app/user-info." +title: "Pipixia User Information API Reference" +description: "Pipixia User Information API reference for SandBase. Use model pipixia/app/user-info with /v1/api/pipixia/app/user-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/pipixia/app/user-info" -apiReferenceJson: "{\"title\":\"Get user information\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/user-info\",\"description\":\"Get user information, such as nickname and avatar.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"AKA user id, can be obtained from the share link.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Pipixia User Information\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/user-info\",\"description\":\"Retrieves public profile details for a Pipixia user, including avatar image URLs. Takes a user identifier obtained from a share link.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"AKA user id, can be obtained from the share link.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"3602444694069495\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"3602444694069495\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"3602444694069495\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user information" + modelName: "Pipixia User Information" modelId: "pipixia/app/user-info" vendor: "Pipixia" vendorSlug: "pipixia" diff --git a/model-api-reference/platform-apis/pipixia/app/user-post-list.md b/model-api-reference/platform-apis/pipixia/app/user-post-list.md index 23d77a62..ba43b6bf 100644 --- a/model-api-reference/platform-apis/pipixia/app/user-post-list.md +++ b/model-api-reference/platform-apis/pipixia/app/user-post-list.md @@ -1,13 +1,13 @@ --- -title: "Get user post list API Reference — Pipixia App / User Post List" -description: "SandBase API operation pipixia/app/user-post-list." +title: "Pipixia User Post List API Reference" +description: "Pipixia User Post List API reference for SandBase. Use model pipixia/app/user-post-list with /v1/api/pipixia/app/user-post-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/pipixia/app/user-post-list" -apiReferenceJson: "{\"title\":\"Get user post list\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/user-post-list\",\"description\":\"Get user post list, such as videos, photos, etc.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Page cursor, default is 0, get the corresponding value from the `loadmore_cursor` Key in the previous page.\"},{\"name\":\"feed_count\",\"type\":\"string\",\"required\":false,\"description\":\"Page count, default is 0, add 1 for each page, such as 0 for the first page, 1 for the second page, 2 for the third page, and so on.\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"AKA user id, can be obtained from the share link.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/user-post-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/user-post-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/user-post-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/user-post-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/user-post-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/user-post-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/user-post-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/user-post-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/user-post-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Pipixia User Post List\",\"operation\":\"Pipixia API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/pipixia/app/user-post-list\",\"description\":\"Returns a list of posts, including videos and photos, for a specified user profile. Supports pagination via cursor and feed count parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Page cursor, default is 0, get the corresponding value from the `loadmore_cursor` Key in the previous page.\"},{\"name\":\"feed_count\",\"type\":\"string\",\"required\":false,\"description\":\"Page count, default is 0, add 1 for each page, such as 0 for the first page, 1 for the second page, 2 for the third page, and so on.\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"AKA user id, can be obtained from the share link.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, pipixia\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/pipixia/app/user-post-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"3602444694069495\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"3602444694069495\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/pipixia/app/user-post-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"3602444694069495\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/pipixia/app/user-post-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"pipixia/app/user-post-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"pipixia/app/user-post-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"pipixia/app/user-post-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"pipixia/app/user-post-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"pipixia/app/user-post-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"pipixia/app/user-post-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user post list" + modelName: "Pipixia User Post List" modelId: "pipixia/app/user-post-list" vendor: "Pipixia" vendorSlug: "pipixia" diff --git a/model-api-reference/platform-apis/reddit/app/check-subreddit-muted.md b/model-api-reference/platform-apis/reddit/app/check-subreddit-muted.md index 2ed20175..5ed2fdcc 100644 --- a/model-api-reference/platform-apis/reddit/app/check-subreddit-muted.md +++ b/model-api-reference/platform-apis/reddit/app/check-subreddit-muted.md @@ -1,13 +1,13 @@ --- -title: "Check if Subreddit is Muted API Reference" -description: "SandBase API operation reddit/app/check-subreddit-muted." +title: "Reddit Subreddit Mute Status API Reference" +description: "SandBase API reference for model reddit/app/check-subreddit-muted. Call /v1/api/reddit/app/check-subreddit-muted; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/reddit/app/check-subreddit-muted" -apiReferenceJson: "{\"title\":\"Check if Subreddit is Muted\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/check-subreddit-muted\",\"description\":\"Check if a specified Reddit subreddit is muted by the current user\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\"},{\"name\":\"subreddit_id\",\"type\":\"string\",\"required\":true,\"description\":\"Subreddit ID starting with \\\"t5_\\\", can be obtained from fetch_subreddit_info endpoint\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/check-subreddit-muted \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"subreddit_id\\\": \\\"subreddit_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"subreddit_id\\\": \\\"subreddit_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/check-subreddit-muted\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"subreddit_id\\\": \\\"subreddit_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/check-subreddit-muted\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/check-subreddit-muted\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/check-subreddit-muted\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/check-subreddit-muted\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/check-subreddit-muted\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/check-subreddit-muted\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/check-subreddit-muted\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Reddit Subreddit Mute Status\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/check-subreddit-muted\",\"description\":\"Checks whether a specified Reddit subreddit is muted by the current account using its ID. Supports an optional flag to format the returned output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\"},{\"name\":\"subreddit_id\",\"type\":\"string\",\"required\":true,\"description\":\"Subreddit ID starting with \\\"t5_\\\", can be obtained from fetch_subreddit_info endpoint\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/check-subreddit-muted \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"subreddit_id\\\": \\\"subreddit_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"subreddit_id\\\": \\\"subreddit_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/check-subreddit-muted\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"subreddit_id\\\": \\\"subreddit_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/check-subreddit-muted\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/check-subreddit-muted\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/check-subreddit-muted\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/check-subreddit-muted\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/check-subreddit-muted\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/check-subreddit-muted\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/check-subreddit-muted\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Check if Subreddit is Muted" + modelName: "Reddit Subreddit Mute Status" modelId: "reddit/app/check-subreddit-muted" vendor: "Reddit" vendorSlug: "reddit" diff --git a/model-api-reference/platform-apis/reddit/app/comment-replies.md b/model-api-reference/platform-apis/reddit/app/comment-replies.md index dba1eb7a..74e8a675 100644 --- a/model-api-reference/platform-apis/reddit/app/comment-replies.md +++ b/model-api-reference/platform-apis/reddit/app/comment-replies.md @@ -1,13 +1,13 @@ --- -title: "Fetch Reddit APP Comment Replies (Sub-comments) API Reference" -description: "SandBase API operation reddit/app/comment-replies." +title: "Reddit App Comment Replies API Reference" +description: "Reddit App Comment Replies API reference for SandBase. Use model reddit/app/comment-replies with /v1/api/reddit/app/comment-replies; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/reddit/app/comment-replies" -apiReferenceJson: "{\"title\":\"Fetch Reddit APP Comment Replies (Sub-comments)\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/comment-replies\",\"description\":\"Fetch replies (sub-comments/second-level comments) under a specified Reddit APP comment Use this endpoint when a comment node has more.cursor field to get its sub-comments\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":true,\"description\":\"Comment cursor from the more.cursor field in comment data, format like \\\"commenttree:ex:(xxx)\\\"\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\"},{\"name\":\"post_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID, format like \\\"t3_XXXXXX\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sort method, supports CONFIDENCE, NEW, TOP, HOT, CONTROVERSIAL, OLD, RANDOM\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/comment-replies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cursor\\\": \\\"cursor\\\",\\n \\\"post_id\\\": \\\"post_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cursor\\\": \\\"cursor\\\",\\n \\\"post_id\\\": \\\"post_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/comment-replies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cursor\\\": \\\"cursor\\\",\\n \\\"post_id\\\": \\\"post_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/comment-replies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/comment-replies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/comment-replies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/comment-replies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/comment-replies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Reddit App Comment Replies\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/comment-replies\",\"description\":\"Returns replies and nested sub-comments under a Reddit post comment using a continuation cursor. Supports custom sorting methods and data formatting options.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":true,\"description\":\"Comment cursor from the more.cursor field in comment data, format like \\\"commenttree:ex:(xxx)\\\"\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\"},{\"name\":\"post_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID, format like \\\"t3_XXXXXX\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sort method, supports CONFIDENCE, NEW, TOP, HOT, CONTROVERSIAL, OLD, RANDOM\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/comment-replies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"cursor\\\": \\\"cursor\\\",\\n \\\"post_id\\\": \\\"post_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"cursor\\\": \\\"cursor\\\",\\n \\\"post_id\\\": \\\"post_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/comment-replies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"cursor\\\": \\\"cursor\\\",\\n \\\"post_id\\\": \\\"post_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/comment-replies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/comment-replies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/comment-replies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/comment-replies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/comment-replies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch Reddit APP Comment Replies (Sub-comments)" + modelName: "Reddit App Comment Replies" modelId: "reddit/app/comment-replies" vendor: "Reddit" vendorSlug: "reddit" diff --git a/model-api-reference/platform-apis/reddit/app/community-highlights.md b/model-api-reference/platform-apis/reddit/app/community-highlights.md index 7c1a8f08..22f7fb18 100644 --- a/model-api-reference/platform-apis/reddit/app/community-highlights.md +++ b/model-api-reference/platform-apis/reddit/app/community-highlights.md @@ -1,13 +1,13 @@ --- -title: "Fetch Reddit APP Community Highlights API Reference" -description: "SandBase API operation reddit/app/community-highlights." +title: "Reddit Community Highlights API Reference" +description: "SandBase API reference for model reddit/app/community-highlights. Call /v1/api/reddit/app/community-highlights; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/reddit/app/community-highlights" -apiReferenceJson: "{\"title\":\"Fetch Reddit APP Community Highlights\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/community-highlights\",\"description\":\"Fetch featured highlight content of a specified Reddit APP community, including popular posts and important announcements\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"subreddit_id\",\"type\":\"string\",\"required\":true,\"description\":\"Subreddit ID starting with \\\"t5_\\\", can be obtained from fetch_subreddit_info endpoint\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/community-highlights \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"subreddit_id\\\": \\\"t5_2qh0u\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"subreddit_id\\\": \\\"t5_2qh0u\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/community-highlights\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"subreddit_id\\\": \\\"t5_2qh0u\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/community-highlights\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/community-highlights\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/community-highlights\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/community-highlights\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/community-highlights\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/community-highlights\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/community-highlights\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Reddit Community Highlights\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/community-highlights\",\"description\":\"Returns featured highlight content for a designated Reddit community, such as popular posts and announcements, by subreddit ID. Supports optional response data formatting.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"subreddit_id\",\"type\":\"string\",\"required\":true,\"description\":\"Subreddit ID starting with \\\"t5_\\\", can be obtained from fetch_subreddit_info endpoint\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/community-highlights \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"subreddit_id\\\": \\\"t5_2qh0u\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"subreddit_id\\\": \\\"t5_2qh0u\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/community-highlights\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"subreddit_id\\\": \\\"t5_2qh0u\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/community-highlights\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/community-highlights\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/community-highlights\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/community-highlights\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/community-highlights\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/community-highlights\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/community-highlights\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch Reddit APP Community Highlights" + modelName: "Reddit Community Highlights" modelId: "reddit/app/community-highlights" vendor: "Reddit" vendorSlug: "reddit" diff --git a/model-api-reference/platform-apis/reddit/app/dynamic-search.md b/model-api-reference/platform-apis/reddit/app/dynamic-search.md index ef04e823..f4220ce8 100644 --- a/model-api-reference/platform-apis/reddit/app/dynamic-search.md +++ b/model-api-reference/platform-apis/reddit/app/dynamic-search.md @@ -1,13 +1,13 @@ --- -title: "Fetch Reddit APP Dynamic Search Results API Reference" -description: "SandBase API operation reddit/app/dynamic-search." +title: "Reddit Search API Reference" +description: "Reddit Search API reference for SandBase. Use model reddit/app/dynamic-search with /v1/api/reddit/app/dynamic-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/reddit/app/dynamic-search" -apiReferenceJson: "{\"title\":\"Fetch Reddit APP Dynamic Search Results\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/dynamic-search\",\"description\":\"Perform Reddit APP dynamic search, supporting posts, communities, comments, media, and users\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter for fetching next page\",\"default\":\"\\\"\\\"\"},{\"name\":\"allow_nsfw\",\"type\":\"string\",\"required\":false,\"description\":\"Allow NSFW content, \\\"0\\\" or \\\"1\\\"\",\"default\":\"0\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"safe_search\",\"type\":\"string\",\"required\":false,\"description\":\"Safe search setting, \\\"unset\\\" or \\\"strict\\\"\",\"default\":\"unset\"},{\"name\":\"search_type\",\"type\":\"string\",\"required\":false,\"description\":\"Search type, options:\",\"default\":\"post\"},{\"name\":\"sort\",\"type\":\"string\",\"required\":false,\"description\":\"Sort method (only for post/comment/media types), options:\"},{\"name\":\"time_range\",\"type\":\"string\",\"required\":false,\"description\":\"Time range (only for post/media types), options:\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/dynamic-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/dynamic-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/dynamic-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/dynamic-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/dynamic-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/dynamic-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/dynamic-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/dynamic-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/dynamic-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Reddit Search\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/dynamic-search\",\"description\":\"Search Reddit posts, communities, comments, media and users with the Reddit app search. Sort by relevance, hot, top, new or comments and filter by time range, with NSFW and safe-search controls.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter for fetching next page\",\"default\":\"\\\"\\\"\"},{\"name\":\"allow_nsfw\",\"type\":\"string\",\"required\":false,\"description\":\"Allow NSFW content, \\\"0\\\" or \\\"1\\\"\",\"default\":\"0\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"safe_search\",\"type\":\"string\",\"required\":false,\"description\":\"Safe search setting, \\\"unset\\\" or \\\"strict\\\"\",\"default\":\"unset\"},{\"name\":\"search_type\",\"type\":\"string\",\"required\":false,\"description\":\"Search type: post, community, comment, media, people\",\"default\":\"post\"},{\"name\":\"sort\",\"type\":\"string\",\"required\":false,\"description\":\"Sort method (only for post/comment/media): RELEVANCE, HOT, TOP, NEW, COMMENTS\"},{\"name\":\"time_range\",\"type\":\"string\",\"required\":false,\"description\":\"Time range (only for post/media): all, year, month, week, day, hour\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/dynamic-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/dynamic-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/dynamic-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/dynamic-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/dynamic-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/dynamic-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/dynamic-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/dynamic-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/dynamic-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch Reddit APP Dynamic Search Results" + modelName: "Reddit Search" modelId: "reddit/app/dynamic-search" vendor: "Reddit" vendorSlug: "reddit" diff --git a/model-api-reference/platform-apis/reddit/app/games-feed.md b/model-api-reference/platform-apis/reddit/app/games-feed.md index 872ead20..4e378b3e 100644 --- a/model-api-reference/platform-apis/reddit/app/games-feed.md +++ b/model-api-reference/platform-apis/reddit/app/games-feed.md @@ -1,13 +1,13 @@ --- -title: "Fetch Reddit APP Games Feed API Reference" -description: "SandBase API operation reddit/app/games-feed." +title: "Reddit App Games Feed API Reference" +description: "Reddit App Games Feed API reference for SandBase. Use model reddit/app/games-feed with /v1/api/reddit/app/games-feed; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/reddit/app/games-feed" -apiReferenceJson: "{\"title\":\"Fetch Reddit APP Games Feed\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/games-feed\",\"description\":\"Fetch gaming-related recommended content on Reddit APP, displaying popular posts from gaming communities\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter for fetching next page\",\"default\":\"\\\"\\\"\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"sort\",\"type\":\"string\",\"required\":false,\"description\":\"Sort method, options: NEW, HOT, TOP, RISING\",\"default\":\"NEW\"},{\"name\":\"time\",\"type\":\"string\",\"required\":false,\"description\":\"Time range, options: ALL, HOUR, DAY, WEEK, MONTH, YEAR\",\"default\":\"ALL\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/games-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"reddit/app/games-feed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"reddit/app/games-feed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/games-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"reddit/app/games-feed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/games-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/games-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/games-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/games-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/games-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/games-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/games-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Reddit App Games Feed\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/games-feed\",\"description\":\"Returns recommended gaming posts from Reddit app feeds. Supports filtering by sorting method and time range, with optional response formatting.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter for fetching next page\",\"default\":\"\\\"\\\"\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"sort\",\"type\":\"string\",\"required\":false,\"description\":\"Sort method, options: NEW, HOT, TOP, RISING\",\"default\":\"NEW\"},{\"name\":\"time\",\"type\":\"string\",\"required\":false,\"description\":\"Time range, options: ALL, HOUR, DAY, WEEK, MONTH, YEAR\",\"default\":\"ALL\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/games-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/games-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/games-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/games-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/games-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/games-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/games-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/games-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/games-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch Reddit APP Games Feed" + modelName: "Reddit App Games Feed" modelId: "reddit/app/games-feed" vendor: "Reddit" vendorSlug: "reddit" diff --git a/model-api-reference/platform-apis/reddit/app/generated-comments.md b/model-api-reference/platform-apis/reddit/app/generated-comments.md deleted file mode 100644 index eeeb7279..00000000 --- a/model-api-reference/platform-apis/reddit/app/generated-comments.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Fetch Reddit Answers Generated Comments API Reference" -description: "SandBase API operation reddit/app/generated-comments." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/reddit/app/generated-comments" -apiReferenceJson: "{\"title\":\"Fetch Reddit Answers Generated Comments\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/generated-comments\",\"description\":\"Fetch lightweight comment info used by Reddit Answers \\\"Generated for you\\\" cards Returns: id / createdAt / score / authorInfo / postInfo / permalink\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"comment_ids\",\"type\":\"string\",\"required\":true,\"description\":\"Comment IDs comma-separated, e.g. \\\"t1_XXXXXX,t1_YYYYYY\\\"\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/generated-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"comment_ids\\\": \\\"comment_ids\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"comment_ids\\\": \\\"comment_ids\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/generated-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"comment_ids\\\": \\\"comment_ids\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/generated-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/generated-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/generated-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/generated-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/generated-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/generated-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/generated-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Fetch Reddit Answers Generated Comments" - modelId: "reddit/app/generated-comments" - vendor: "Reddit" - vendorSlug: "reddit" - modelSlug: "app/generated-comments" - protocol: "API Reference" - endpoint: "/v1/api/reddit/app/generated-comments" - publishedAt: "" - capabilities: ["api","reddit"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/reddit/app/generated-posts.md b/model-api-reference/platform-apis/reddit/app/generated-posts.md deleted file mode 100644 index 7c909794..00000000 --- a/model-api-reference/platform-apis/reddit/app/generated-posts.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Fetch Reddit Answers Generated Posts API Reference" -description: "SandBase API operation reddit/app/generated-posts." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/reddit/app/generated-posts" -apiReferenceJson: "{\"title\":\"Fetch Reddit Answers Generated Posts\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/generated-posts\",\"description\":\"Fetch lightweight post info used by the Reddit Answers \\\"Generated for you\\\" cards More concise than fetch_post_details_batch, only includes id / title / score / commentCount / createdAt / url / authorInfo / subreddit / media\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\"},{\"name\":\"post_ids\",\"type\":\"string\",\"required\":true,\"description\":\"Post IDs comma-separated, e.g. \\\"t3_XXXXXX,t3_YYYYYY\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/generated-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"post_ids\\\": \\\"post_ids\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"post_ids\\\": \\\"post_ids\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/generated-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"post_ids\\\": \\\"post_ids\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/generated-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/generated-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/generated-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/generated-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/generated-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/generated-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/generated-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Fetch Reddit Answers Generated Posts" - modelId: "reddit/app/generated-posts" - vendor: "Reddit" - vendorSlug: "reddit" - modelSlug: "app/generated-posts" - protocol: "API Reference" - endpoint: "/v1/api/reddit/app/generated-posts" - publishedAt: "" - capabilities: ["api","reddit"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/reddit/app/home-feed.md b/model-api-reference/platform-apis/reddit/app/home-feed.md index 7afff793..4ac91281 100644 --- a/model-api-reference/platform-apis/reddit/app/home-feed.md +++ b/model-api-reference/platform-apis/reddit/app/home-feed.md @@ -1,13 +1,13 @@ --- -title: "Fetch Reddit APP Home Feed API Reference" -description: "SandBase API operation reddit/app/home-feed." +title: "Reddit App Home Feed API Reference" +description: "Reddit App Home Feed API reference for SandBase. Use model reddit/app/home-feed with /v1/api/reddit/app/home-feed; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/reddit/app/home-feed" -apiReferenceJson: "{\"title\":\"Fetch Reddit APP Home Feed\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/home-feed\",\"description\":\"Fetch Reddit APP home feed content\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter for fetching the next page\"},{\"name\":\"filter_posts\",\"type\":\"array\",\"required\":false,\"description\":\"List of post IDs to filter out, used to exclude already fetched posts\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\"},{\"name\":\"sort\",\"type\":\"string\",\"required\":false,\"description\":\"Sort method, supports HOT, NEW, TOP, BEST, CONTROVERSIAL\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/home-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"reddit/app/home-feed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"reddit/app/home-feed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/home-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"reddit/app/home-feed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/home-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/home-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/home-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/home-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/home-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/home-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/home-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Reddit App Home Feed\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/home-feed\",\"description\":\"Returns Reddit mobile app home feed content including post metadata, author details, scores, and media links. Supports sorting methods, pagination tokens, and post exclusion lists.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter for fetching the next page\"},{\"name\":\"filter_posts\",\"type\":\"array\",\"required\":false,\"description\":\"List of post IDs to filter out, used to exclude already fetched posts\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\"},{\"name\":\"sort\",\"type\":\"string\",\"required\":false,\"description\":\"Sort method, supports HOT, NEW, TOP, BEST, CONTROVERSIAL\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/home-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/home-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/home-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/home-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/home-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/home-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/home-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/home-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/home-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch Reddit APP Home Feed" + modelName: "Reddit App Home Feed" modelId: "reddit/app/home-feed" vendor: "Reddit" vendorSlug: "reddit" diff --git a/model-api-reference/platform-apis/reddit/app/news-feed.md b/model-api-reference/platform-apis/reddit/app/news-feed.md index f38cf5e1..dd5706f7 100644 --- a/model-api-reference/platform-apis/reddit/app/news-feed.md +++ b/model-api-reference/platform-apis/reddit/app/news-feed.md @@ -1,13 +1,13 @@ --- -title: "Fetch Reddit APP News Feed API Reference" -description: "SandBase API operation reddit/app/news-feed." +title: "Reddit App News Feed API Reference" +description: "Reddit App News Feed API reference for SandBase. Use model reddit/app/news-feed with /v1/api/reddit/app/news-feed; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/reddit/app/news-feed" -apiReferenceJson: "{\"title\":\"Fetch Reddit APP News Feed\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/news-feed\",\"description\":\"Fetch news-related recommended content on Reddit APP, displaying available news and current affairs discussions\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter for fetching next page\",\"default\":\"\\\"\\\"\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"subtopic_ids\",\"type\":\"array\",\"required\":false,\"description\":\"List of subtopic IDs, default [\\\"all\\\"] means all news categories\",\"default\":\"[\\\"all\\\"]\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/news-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"reddit/app/news-feed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"reddit/app/news-feed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/news-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"reddit/app/news-feed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/news-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/news-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/news-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/news-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/news-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/news-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/news-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Reddit App News Feed\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/news-feed\",\"description\":\"Returns news-related recommended content from the Reddit app, including current affairs discussions, with optional subtopic filtering and formatting.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter for fetching next page\",\"default\":\"\\\"\\\"\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"subtopic_ids\",\"type\":\"array\",\"required\":false,\"description\":\"List of subtopic IDs, default [\\\"all\\\"] means all news categories\",\"default\":\"[\\\"all\\\"]\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/news-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/news-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/news-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/news-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/news-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/news-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/news-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/news-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/news-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch Reddit APP News Feed" + modelName: "Reddit App News Feed" modelId: "reddit/app/news-feed" vendor: "Reddit" vendorSlug: "reddit" diff --git a/model-api-reference/platform-apis/reddit/app/popular-feed.md b/model-api-reference/platform-apis/reddit/app/popular-feed.md index ee76d9a6..8314acea 100644 --- a/model-api-reference/platform-apis/reddit/app/popular-feed.md +++ b/model-api-reference/platform-apis/reddit/app/popular-feed.md @@ -1,13 +1,13 @@ --- -title: "Fetch Reddit APP Popular Feed API Reference" -description: "SandBase API operation reddit/app/popular-feed." +title: "Reddit App Popular Feed API Reference" +description: "Reddit App Popular Feed API reference for SandBase. Use model reddit/app/popular-feed with /v1/api/reddit/app/popular-feed; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/reddit/app/popular-feed" -apiReferenceJson: "{\"title\":\"Fetch Reddit APP Popular Feed\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/popular-feed\",\"description\":\"Fetch popular/trending recommended content on Reddit APP, displaying the most popular posts site-wide\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter for fetching next page\",\"default\":\"\\\"\\\"\"},{\"name\":\"filter_posts\",\"type\":\"array\",\"required\":false,\"description\":\"List of post IDs to filter out, used to avoid duplicate fetches\",\"default\":\"[]\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"sort\",\"type\":\"string\",\"required\":false,\"description\":\"Sort method, options: BEST, HOT, NEW, TOP, CONTROVERSIAL, RISING\",\"default\":\"BEST\"},{\"name\":\"time\",\"type\":\"string\",\"required\":false,\"description\":\"Time range, options: ALL, HOUR, DAY, WEEK, MONTH, YEAR\",\"default\":\"ALL\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/popular-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"reddit/app/popular-feed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"reddit/app/popular-feed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/popular-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"reddit/app/popular-feed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/popular-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/popular-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/popular-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/popular-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/popular-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/popular-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/popular-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Reddit App Popular Feed\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/popular-feed\",\"description\":\"Returns trending and popular posts across Reddit with engagement metrics, subreddit details, and media metadata. Supports sorting and time filters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter for fetching next page\",\"default\":\"\\\"\\\"\"},{\"name\":\"filter_posts\",\"type\":\"array\",\"required\":false,\"description\":\"List of post IDs to filter out, used to avoid duplicate fetches\",\"default\":\"[]\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"sort\",\"type\":\"string\",\"required\":false,\"description\":\"Sort method, options: BEST, HOT, NEW, TOP, CONTROVERSIAL, RISING\",\"default\":\"BEST\"},{\"name\":\"time\",\"type\":\"string\",\"required\":false,\"description\":\"Time range, options: ALL, HOUR, DAY, WEEK, MONTH, YEAR\",\"default\":\"ALL\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/popular-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/popular-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/popular-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/popular-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/popular-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/popular-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/popular-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/popular-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/popular-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch Reddit APP Popular Feed" + modelName: "Reddit App Popular Feed" modelId: "reddit/app/popular-feed" vendor: "Reddit" vendorSlug: "reddit" diff --git a/model-api-reference/platform-apis/reddit/app/post-comments.md b/model-api-reference/platform-apis/reddit/app/post-comments.md index 5ff3ef4f..afb6875b 100644 --- a/model-api-reference/platform-apis/reddit/app/post-comments.md +++ b/model-api-reference/platform-apis/reddit/app/post-comments.md @@ -1,13 +1,13 @@ --- -title: "Fetch Reddit APP Post Comments API Reference" -description: "SandBase API operation reddit/app/post-comments." +title: "Reddit App Post Comments API Reference" +description: "Reddit App Post Comments API reference for SandBase. Use model reddit/app/post-comments with /v1/api/reddit/app/post-comments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/reddit/app/post-comments" -apiReferenceJson: "{\"title\":\"Fetch Reddit APP Post Comments\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/post-comments\",\"description\":\"Fetch comments under a specified Reddit APP post\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter for fetching the next page, can be found in the last comment node in commentForest, e.g., $.data.postInfoById.commentForest.trees[-1].more.cursor\",\"default\":\"\\\"\\\"\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"post_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID, format like \\\"t3_XXXXXX\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sort method, supports HOT, NEW, TOP, BEST, CONTROVERSIAL\",\"default\":\"CONFIDENCE\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/post-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"post_id\\\": \\\"t3_1ojnvca\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"post_id\\\": \\\"t3_1ojnvca\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/post-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"post_id\\\": \\\"t3_1ojnvca\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/post-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/post-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/post-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/post-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/post-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Reddit App Post Comments\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/post-comments\",\"description\":\"Returns comment trees for a specific Reddit post by its ID. Supports comment sorting by hot, new, top, best, or controversial, with optional pagination via a cursor.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter for fetching the next page, can be found in the last comment node in commentForest, e.g., $.data.postInfoById.commentForest.trees[-1].more.cursor\",\"default\":\"\\\"\\\"\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"post_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID, format like \\\"t3_XXXXXX\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sort method, supports HOT, NEW, TOP, BEST, CONTROVERSIAL\",\"default\":\"CONFIDENCE\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/post-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"post_id\\\": \\\"t3_1ojnvca\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"post_id\\\": \\\"t3_1ojnvca\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/post-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"post_id\\\": \\\"t3_1ojnvca\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/post-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/post-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/post-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/post-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/post-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch Reddit APP Post Comments" + modelName: "Reddit App Post Comments" modelId: "reddit/app/post-comments" vendor: "Reddit" vendorSlug: "reddit" diff --git a/model-api-reference/platform-apis/reddit/app/post-details-batch-large.md b/model-api-reference/platform-apis/reddit/app/post-details-batch-large.md index 8888ce69..dda0939f 100644 --- a/model-api-reference/platform-apis/reddit/app/post-details-batch-large.md +++ b/model-api-reference/platform-apis/reddit/app/post-details-batch-large.md @@ -1,13 +1,13 @@ --- -title: "Fetch Reddit Post Details in Large Batch (Max 30) API Reference" -description: "SandBase API operation reddit/app/post-details-batch-large." +title: "Reddit Post Details Large Batch API Reference" +description: "SandBase API reference for model reddit/app/post-details-batch-large. Call /v1/api/reddit/app/post-details-batch-large; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/reddit/app/post-details-batch-large" -apiReferenceJson: "{\"title\":\"Fetch Reddit Post Details in Large Batch (Max 30)\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/post-details-batch-large\",\"description\":\"Fetch post details in large batch by post ID list Support batch query for up to 30 posts Optionally include context for specific comments\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"comment_id\",\"type\":\"string\",\"required\":false,\"description\":\"Comment ID (used when include_comment_id is True), format like \\\"t1_XXXXXX\\\"\"},{\"name\":\"include_comment_id\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to include specific comment ID, default False\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\"},{\"name\":\"post_ids\",\"type\":\"string\",\"required\":true,\"description\":\"Post IDs comma-separated, format like \\\"t3_XXXXXX,t3_YYYYYY,...\\\", max 30 posts\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/post-details-batch-large \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"post_ids\\\": \\\"post_ids\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"post_ids\\\": \\\"post_ids\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/post-details-batch-large\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"post_ids\\\": \\\"post_ids\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/post-details-batch-large\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/post-details-batch-large\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/post-details-batch-large\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/post-details-batch-large\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/post-details-batch-large\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/post-details-batch-large\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/post-details-batch-large\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Reddit Post Details Large Batch\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/post-details-batch-large\",\"description\":\"Returns details for up to 30 Reddit posts in a single request using comma-separated post IDs. Supports optional comment context and formatted output data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"comment_id\",\"type\":\"string\",\"required\":false,\"description\":\"Comment ID (used when include_comment_id is True), format like \\\"t1_XXXXXX\\\"\"},{\"name\":\"include_comment_id\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to include specific comment ID, default False\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\"},{\"name\":\"post_ids\",\"type\":\"string\",\"required\":true,\"description\":\"Post IDs comma-separated, format like \\\"t3_XXXXXX,t3_YYYYYY,...\\\", max 30 posts\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/post-details-batch-large \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"post_ids\\\": \\\"post_ids\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"post_ids\\\": \\\"post_ids\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/post-details-batch-large\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"post_ids\\\": \\\"post_ids\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/post-details-batch-large\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/post-details-batch-large\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/post-details-batch-large\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/post-details-batch-large\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/post-details-batch-large\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/post-details-batch-large\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/post-details-batch-large\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch Reddit Post Details in Large Batch (Max 30)" + modelName: "Reddit Post Details Large Batch" modelId: "reddit/app/post-details-batch-large" vendor: "Reddit" vendorSlug: "reddit" diff --git a/model-api-reference/platform-apis/reddit/app/post-details-batch.md b/model-api-reference/platform-apis/reddit/app/post-details-batch.md index 7ab9ca03..7bbef97b 100644 --- a/model-api-reference/platform-apis/reddit/app/post-details-batch.md +++ b/model-api-reference/platform-apis/reddit/app/post-details-batch.md @@ -1,13 +1,13 @@ --- -title: "Fetch Reddit Post Details in Batch (Max 5) API Reference" -description: "SandBase API operation reddit/app/post-details-batch." +title: "Reddit Batch Post Details API Reference" +description: "SandBase API reference for model reddit/app/post-details-batch. Call /v1/api/reddit/app/post-details-batch; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/reddit/app/post-details-batch" -apiReferenceJson: "{\"title\":\"Fetch Reddit Post Details in Batch (Max 5)\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/post-details-batch\",\"description\":\"Fetch post details in batch by post ID list Support batch query for up to 5 posts Optionally include context for specific comments\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"comment_id\",\"type\":\"string\",\"required\":false,\"description\":\"Comment ID (used when include_comment_id is True), format like \\\"t1_XXXXXX\\\"\"},{\"name\":\"include_comment_id\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to include specific comment ID, default False\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\"},{\"name\":\"post_ids\",\"type\":\"string\",\"required\":true,\"description\":\"Post IDs comma-separated, format like \\\"t3_XXXXXX,t3_YYYYYY\\\", max 5 posts\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/post-details-batch \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"post_ids\\\": \\\"post_ids\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"post_ids\\\": \\\"post_ids\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/post-details-batch\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"post_ids\\\": \\\"post_ids\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/post-details-batch\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/post-details-batch\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/post-details-batch\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/post-details-batch\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/post-details-batch\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/post-details-batch\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/post-details-batch\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Reddit Batch Post Details\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/post-details-batch\",\"description\":\"Returns detailed post data for up to five Reddit posts specified by ID. Supports optional comment context and structured data formatting.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"comment_id\",\"type\":\"string\",\"required\":false,\"description\":\"Comment ID (used when include_comment_id is True), format like \\\"t1_XXXXXX\\\"\"},{\"name\":\"include_comment_id\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to include specific comment ID, default False\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\"},{\"name\":\"post_ids\",\"type\":\"string\",\"required\":true,\"description\":\"Post IDs comma-separated, format like \\\"t3_XXXXXX,t3_YYYYYY\\\", max 5 posts\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/post-details-batch \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"post_ids\\\": \\\"post_ids\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"post_ids\\\": \\\"post_ids\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/post-details-batch\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"post_ids\\\": \\\"post_ids\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/post-details-batch\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/post-details-batch\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/post-details-batch\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/post-details-batch\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/post-details-batch\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/post-details-batch\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/post-details-batch\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch Reddit Post Details in Batch (Max 5)" + modelName: "Reddit Batch Post Details" modelId: "reddit/app/post-details-batch" vendor: "Reddit" vendorSlug: "reddit" diff --git a/model-api-reference/platform-apis/reddit/app/post-details.md b/model-api-reference/platform-apis/reddit/app/post-details.md index 2a9b9a3e..ff562887 100644 --- a/model-api-reference/platform-apis/reddit/app/post-details.md +++ b/model-api-reference/platform-apis/reddit/app/post-details.md @@ -1,13 +1,13 @@ --- -title: "Fetch Single Reddit Post Details API Reference" -description: "SandBase API operation reddit/app/post-details." +title: "Reddit Post Details API Reference" +description: "Reddit Post Details API reference for SandBase. Use model reddit/app/post-details with /v1/api/reddit/app/post-details; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/reddit/app/post-details" -apiReferenceJson: "{\"title\":\"Fetch Single Reddit Post Details\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/post-details\",\"description\":\"Fetch single post details by post ID Optionally include context for specific comments\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"comment_id\",\"type\":\"string\",\"required\":false,\"description\":\"Comment ID (used when include_comment_id is True), format like \\\"t1_XXXXXX\\\"\",\"default\":\"\\\"\\\"\"},{\"name\":\"include_comment_id\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to include specific comment ID, default False\",\"default\":\"false\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"post_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID, format like \\\"t3_XXXXXX\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/post-details \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"post_id\\\": \\\"t3_1ojnh50\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"post_id\\\": \\\"t3_1ojnh50\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/post-details\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"post_id\\\": \\\"t3_1ojnh50\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/post-details\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/post-details\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/post-details\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/post-details\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/post-details\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/post-details\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/post-details\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Reddit Post Details\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/post-details\",\"description\":\"Returns detailed metadata for a Reddit post by ID, including engagement metrics, author info, and subreddit data. Supports optional comment context.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"comment_id\",\"type\":\"string\",\"required\":false,\"description\":\"Comment ID (used when include_comment_id is True), format like \\\"t1_XXXXXX\\\"\",\"default\":\"\\\"\\\"\"},{\"name\":\"include_comment_id\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to include specific comment ID, default False\",\"default\":\"false\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"post_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID, format like \\\"t3_XXXXXX\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/post-details \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"post_id\\\": \\\"t3_1ojnh50\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"post_id\\\": \\\"t3_1ojnh50\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/post-details\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"post_id\\\": \\\"t3_1ojnh50\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/post-details\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/post-details\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/post-details\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/post-details\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/post-details\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/post-details\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/post-details\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch Single Reddit Post Details" + modelName: "Reddit Post Details" modelId: "reddit/app/post-details" vendor: "Reddit" vendorSlug: "reddit" diff --git a/model-api-reference/platform-apis/reddit/app/search-typeahead.md b/model-api-reference/platform-apis/reddit/app/search-typeahead.md index 001c66c6..c18dea1f 100644 --- a/model-api-reference/platform-apis/reddit/app/search-typeahead.md +++ b/model-api-reference/platform-apis/reddit/app/search-typeahead.md @@ -1,13 +1,13 @@ --- -title: "Fetch Reddit APP Search Typeahead Suggestions API Reference" -description: "SandBase API operation reddit/app/search-typeahead." +title: "Reddit App Search Typeahead API Reference" +description: "Reddit App Search Typeahead API reference for SandBase. Use model reddit/app/search-typeahead with /v1/api/reddit/app/search-typeahead; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/reddit/app/search-typeahead" -apiReferenceJson: "{\"title\":\"Fetch Reddit APP Search Typeahead Suggestions\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/search-typeahead\",\"description\":\"Fetch autocomplete suggestions for the Reddit APP search box, including recommended subreddits, users, and search terms\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"allow_nsfw\",\"type\":\"string\",\"required\":false,\"description\":\"Whether to allow NSFW (adult) content display, \\\"0\\\" means disallow, \\\"1\\\" means allow\",\"default\":\"0\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword, the search text being typed\"},{\"name\":\"safe_search\",\"type\":\"string\",\"required\":false,\"description\":\"Safe search setting, options are \\\"unset\\\" or \\\"strict\\\"\",\"default\":\"unset\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/search-typeahead \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/search-typeahead\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/search-typeahead\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/search-typeahead\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/search-typeahead\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/search-typeahead\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/search-typeahead\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/search-typeahead\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/search-typeahead\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Reddit App Search Typeahead\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/search-typeahead\",\"description\":\"Returns autocomplete suggestions for the Reddit search box based on typed input. Includes options to toggle adult content, apply safe search settings, and format response data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"allow_nsfw\",\"type\":\"string\",\"required\":false,\"description\":\"Whether to allow NSFW (adult) content display, \\\"0\\\" means disallow, \\\"1\\\" means allow\",\"default\":\"0\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword, the search text being typed\"},{\"name\":\"safe_search\",\"type\":\"string\",\"required\":false,\"description\":\"Safe search setting, options are \\\"unset\\\" or \\\"strict\\\"\",\"default\":\"unset\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/search-typeahead \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/search-typeahead\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/search-typeahead\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/search-typeahead\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/search-typeahead\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/search-typeahead\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/search-typeahead\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/search-typeahead\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/search-typeahead\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch Reddit APP Search Typeahead Suggestions" + modelName: "Reddit App Search Typeahead" modelId: "reddit/app/search-typeahead" vendor: "Reddit" vendorSlug: "reddit" diff --git a/model-api-reference/platform-apis/reddit/app/subreddit-feed.md b/model-api-reference/platform-apis/reddit/app/subreddit-feed.md index da8af933..2aedd376 100644 --- a/model-api-reference/platform-apis/reddit/app/subreddit-feed.md +++ b/model-api-reference/platform-apis/reddit/app/subreddit-feed.md @@ -1,13 +1,13 @@ --- -title: "Fetch Reddit APP Subreddit Feed API Reference" -description: "SandBase API operation reddit/app/subreddit-feed." +title: "Reddit Subreddit Feed API Reference" +description: "Reddit Subreddit Feed API reference for SandBase. Use model reddit/app/subreddit-feed with /v1/api/reddit/app/subreddit-feed; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/reddit/app/subreddit-feed" -apiReferenceJson: "{\"title\":\"Fetch Reddit APP Subreddit Feed\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/subreddit-feed\",\"description\":\"Fetch feed content stream of a specified Reddit subreddit, displaying the post list of that subreddit\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter for fetching next page\",\"default\":\"\\\"\\\"\"},{\"name\":\"filter_posts\",\"type\":\"array\",\"required\":false,\"description\":\"List of post IDs to filter out\",\"default\":\"[]\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"sort\",\"type\":\"string\",\"required\":false,\"description\":\"Sort method, options: BEST, HOT, NEW, TOP, CONTROVERSIAL, RISING\",\"default\":\"BEST\"},{\"name\":\"subreddit_name\",\"type\":\"string\",\"required\":true,\"description\":\"Subreddit name (without r/ prefix), e.g., \\\"pics\\\", \\\"funny\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/subreddit-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"subreddit_name\\\": \\\"technology\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"subreddit_name\\\": \\\"technology\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/subreddit-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"subreddit_name\\\": \\\"technology\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/subreddit-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/subreddit-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/subreddit-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/subreddit-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/subreddit-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/subreddit-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/subreddit-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Reddit Subreddit Feed\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/subreddit-feed\",\"description\":\"Returns the post stream for a specified subreddit. Supports sorting methods, cursor pagination, and filters to exclude specific post IDs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter for fetching next page\",\"default\":\"\\\"\\\"\"},{\"name\":\"filter_posts\",\"type\":\"array\",\"required\":false,\"description\":\"List of post IDs to filter out\",\"default\":\"[]\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"sort\",\"type\":\"string\",\"required\":false,\"description\":\"Sort method, options: BEST, HOT, NEW, TOP, CONTROVERSIAL, RISING\",\"default\":\"BEST\"},{\"name\":\"subreddit_name\",\"type\":\"string\",\"required\":true,\"description\":\"Subreddit name (without r/ prefix), e.g., \\\"pics\\\", \\\"funny\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/subreddit-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"subreddit_name\\\": \\\"technology\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"subreddit_name\\\": \\\"technology\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/subreddit-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"subreddit_name\\\": \\\"technology\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/subreddit-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/subreddit-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/subreddit-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/subreddit-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/subreddit-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/subreddit-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/subreddit-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch Reddit APP Subreddit Feed" + modelName: "Reddit Subreddit Feed" modelId: "reddit/app/subreddit-feed" vendor: "Reddit" vendorSlug: "reddit" diff --git a/model-api-reference/platform-apis/reddit/app/subreddit-info.md b/model-api-reference/platform-apis/reddit/app/subreddit-info.md index 239bfb29..72a618bc 100644 --- a/model-api-reference/platform-apis/reddit/app/subreddit-info.md +++ b/model-api-reference/platform-apis/reddit/app/subreddit-info.md @@ -1,13 +1,13 @@ --- -title: "Fetch Reddit APP Subreddit Info API Reference" -description: "SandBase API operation reddit/app/subreddit-info." +title: "Reddit App Subreddit Info API Reference" +description: "Reddit App Subreddit Info API reference for SandBase. Use model reddit/app/subreddit-info with /v1/api/reddit/app/subreddit-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/reddit/app/subreddit-info" -apiReferenceJson: "{\"title\":\"Fetch Reddit APP Subreddit Info\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/subreddit-info\",\"description\":\"Fetch detailed information of a specified Reddit APP subreddit, including description, subscriber count, creation time, rules, and other metadata\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"subreddit_name\",\"type\":\"string\",\"required\":false,\"description\":\"Subreddit name (without r/ prefix), e.g., \\\"pics\\\", \\\"funny\\\", \\\"AskReddit\\\"\",\"default\":\"pics\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/subreddit-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"reddit/app/subreddit-info\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"reddit/app/subreddit-info\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/subreddit-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"reddit/app/subreddit-info\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/subreddit-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/subreddit-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/subreddit-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/subreddit-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/subreddit-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/subreddit-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/subreddit-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Reddit App Subreddit Info\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/subreddit-info\",\"description\":\"Returns detailed metadata for a Reddit subreddit, such as rules, descriptions, and app installations. Look up data by subreddit name with optional response formatting.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"subreddit_name\",\"type\":\"string\",\"required\":false,\"description\":\"Subreddit name (without r/ prefix), e.g., \\\"pics\\\", \\\"funny\\\", \\\"AskReddit\\\"\",\"default\":\"pics\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/subreddit-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/subreddit-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/subreddit-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/subreddit-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/subreddit-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/subreddit-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/subreddit-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/subreddit-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/subreddit-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch Reddit APP Subreddit Info" + modelName: "Reddit App Subreddit Info" modelId: "reddit/app/subreddit-info" vendor: "Reddit" vendorSlug: "reddit" diff --git a/model-api-reference/platform-apis/reddit/app/subreddit-post-channels.md b/model-api-reference/platform-apis/reddit/app/subreddit-post-channels.md index 1b97e366..4bd2d580 100644 --- a/model-api-reference/platform-apis/reddit/app/subreddit-post-channels.md +++ b/model-api-reference/platform-apis/reddit/app/subreddit-post-channels.md @@ -1,13 +1,13 @@ --- -title: "Fetch Reddit APP Subreddit Post Channels API Reference" -description: "SandBase API operation reddit/app/subreddit-post-channels." +title: "Reddit App Subreddit Post Channels API Reference" +description: "SandBase API reference for model reddit/app/subreddit-post-channels. Call /v1/api/reddit/app/subreddit-post-channels; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/reddit/app/subreddit-post-channels" -apiReferenceJson: "{\"title\":\"Fetch Reddit APP Subreddit Post Channels\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/subreddit-post-channels\",\"description\":\"Fetch post channel information of a specified Reddit APP subreddit\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"range\",\"type\":\"string\",\"required\":false,\"description\":\"Time range, supports HOUR, DAY, WEEK, MONTH, YEAR, ALL\",\"default\":\"DAY\"},{\"name\":\"sort\",\"type\":\"string\",\"required\":false,\"description\":\"Sort method, supports HOT, NEW, TOP, CONTROVERSIAL, RISING\",\"default\":\"HOT\"},{\"name\":\"subreddit_name\",\"type\":\"string\",\"required\":false,\"description\":\"Subreddit name\",\"default\":\"pics\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/subreddit-post-channels \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"reddit/app/subreddit-post-channels\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"reddit/app/subreddit-post-channels\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/subreddit-post-channels\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"reddit/app/subreddit-post-channels\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/subreddit-post-channels\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/subreddit-post-channels\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/subreddit-post-channels\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/subreddit-post-channels\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/subreddit-post-channels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/subreddit-post-channels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/subreddit-post-channels\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Reddit App Subreddit Post Channels\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/subreddit-post-channels\",\"description\":\"Returns post channel and flair details for a target subreddit. Supports custom sort methods and time range filters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"range\",\"type\":\"string\",\"required\":false,\"description\":\"Time range, supports HOUR, DAY, WEEK, MONTH, YEAR, ALL\",\"default\":\"DAY\"},{\"name\":\"sort\",\"type\":\"string\",\"required\":false,\"description\":\"Sort method, supports HOT, NEW, TOP, CONTROVERSIAL, RISING\",\"default\":\"HOT\"},{\"name\":\"subreddit_name\",\"type\":\"string\",\"required\":false,\"description\":\"Subreddit name\",\"default\":\"pics\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/subreddit-post-channels \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/subreddit-post-channels\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/subreddit-post-channels\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/subreddit-post-channels\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/subreddit-post-channels\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/subreddit-post-channels\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/subreddit-post-channels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/subreddit-post-channels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/subreddit-post-channels\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch Reddit APP Subreddit Post Channels" + modelName: "Reddit App Subreddit Post Channels" modelId: "reddit/app/subreddit-post-channels" vendor: "Reddit" vendorSlug: "reddit" diff --git a/model-api-reference/platform-apis/reddit/app/subreddit-settings.md b/model-api-reference/platform-apis/reddit/app/subreddit-settings.md index 825b98ef..877688cc 100644 --- a/model-api-reference/platform-apis/reddit/app/subreddit-settings.md +++ b/model-api-reference/platform-apis/reddit/app/subreddit-settings.md @@ -1,13 +1,13 @@ --- -title: "Fetch Reddit APP Subreddit Settings API Reference" -description: "SandBase API operation reddit/app/subreddit-settings." +title: "Reddit App Subreddit Settings API Reference" +description: "SandBase API reference for model reddit/app/subreddit-settings. Call /v1/api/reddit/app/subreddit-settings; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/reddit/app/subreddit-settings" -apiReferenceJson: "{\"title\":\"Fetch Reddit APP Subreddit Settings\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/subreddit-settings\",\"description\":\"Fetch settings information of a specified Reddit APP subreddit, including posting rules, flair settings, moderation settings, and other configurations\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"subreddit_id\",\"type\":\"string\",\"required\":true,\"description\":\"Subreddit ID with format starting with t5_, e.g., \\\"t5_2qh0u\\\" (can be obtained from the fetch_subreddit_info endpoint)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/subreddit-settings \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"subreddit_id\\\": \\\"t5_2qh0u\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"subreddit_id\\\": \\\"t5_2qh0u\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/subreddit-settings\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"subreddit_id\\\": \\\"t5_2qh0u\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/subreddit-settings\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/subreddit-settings\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/subreddit-settings\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/subreddit-settings\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/subreddit-settings\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/subreddit-settings\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/subreddit-settings\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Reddit App Subreddit Settings\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/subreddit-settings\",\"description\":\"Returns settings and configuration details for a specified Reddit subreddit, including posting rules, flair settings, and moderation configurations.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"subreddit_id\",\"type\":\"string\",\"required\":true,\"description\":\"Subreddit ID with format starting with t5_, e.g., \\\"t5_2qh0u\\\" (can be obtained from the fetch_subreddit_info endpoint)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/subreddit-settings \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"subreddit_id\\\": \\\"t5_2qh0u\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"subreddit_id\\\": \\\"t5_2qh0u\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/subreddit-settings\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"subreddit_id\\\": \\\"t5_2qh0u\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/subreddit-settings\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/subreddit-settings\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/subreddit-settings\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/subreddit-settings\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/subreddit-settings\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/subreddit-settings\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/subreddit-settings\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch Reddit APP Subreddit Settings" + modelName: "Reddit App Subreddit Settings" modelId: "reddit/app/subreddit-settings" vendor: "Reddit" vendorSlug: "reddit" diff --git a/model-api-reference/platform-apis/reddit/app/subreddit-style.md b/model-api-reference/platform-apis/reddit/app/subreddit-style.md index a448c2a5..4a86edfb 100644 --- a/model-api-reference/platform-apis/reddit/app/subreddit-style.md +++ b/model-api-reference/platform-apis/reddit/app/subreddit-style.md @@ -1,13 +1,13 @@ --- -title: "Fetch Reddit APP Subreddit Rules and Style Info API Reference" -description: "SandBase API operation reddit/app/subreddit-style." +title: "Reddit Subreddit Rules and Style Info API Reference" +description: "SandBase API reference for model reddit/app/subreddit-style. Call /v1/api/reddit/app/subreddit-style; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/reddit/app/subreddit-style" -apiReferenceJson: "{\"title\":\"Fetch Reddit APP Subreddit Rules and Style Info\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/subreddit-style\",\"description\":\"Fetch rules and style information of a specified Reddit APP subreddit\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"subreddit_name\",\"type\":\"string\",\"required\":false,\"description\":\"Subreddit name\",\"default\":\"pics\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/subreddit-style \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"reddit/app/subreddit-style\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"reddit/app/subreddit-style\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/subreddit-style\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"reddit/app/subreddit-style\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/subreddit-style\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/subreddit-style\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/subreddit-style\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/subreddit-style\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/subreddit-style\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/subreddit-style\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/subreddit-style\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Reddit Subreddit Rules and Style Info\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/subreddit-style\",\"description\":\"Returns rules, styling details, and moderator information for a designated Reddit subreddit. Accepts the subreddit name and an optional formatting toggle.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"subreddit_name\",\"type\":\"string\",\"required\":false,\"description\":\"Subreddit name\",\"default\":\"pics\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/subreddit-style \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/subreddit-style\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/subreddit-style\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/subreddit-style\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/subreddit-style\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/subreddit-style\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/subreddit-style\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/subreddit-style\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/subreddit-style\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch Reddit APP Subreddit Rules and Style Info" + modelName: "Reddit Subreddit Rules and Style Info" modelId: "reddit/app/subreddit-style" vendor: "Reddit" vendorSlug: "reddit" diff --git a/model-api-reference/platform-apis/reddit/app/topic-feed.md b/model-api-reference/platform-apis/reddit/app/topic-feed.md deleted file mode 100644 index be720612..00000000 --- a/model-api-reference/platform-apis/reddit/app/topic-feed.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Fetch Reddit APP Topic Feed API Reference" -description: "SandBase API operation reddit/app/topic-feed." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/reddit/app/topic-feed" -apiReferenceJson: "{\"title\":\"Fetch Reddit APP Topic Feed\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/topic-feed\",\"description\":\"Fetch the feed for a specific Reddit community topic Typical flow: call `/fetch_explore_feed` first to get topicIds, then pass one here\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean\"},{\"name\":\"scheme_name\",\"type\":\"string\",\"required\":false,\"description\":\"Topic scheme, App defaults to \\\"communities_tab_taxonomy_topics_default\\\"\"},{\"name\":\"sort\",\"type\":\"string\",\"required\":false,\"description\":\"Sort method\"},{\"name\":\"time\",\"type\":\"string\",\"required\":false,\"description\":\"Time range\"},{\"name\":\"topic_id\",\"type\":\"string\",\"required\":true,\"description\":\"Topic ID, format \\\"tx1_XXXXX\\\", get from `/fetch_explore_feed` response's `topics[].id`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/topic-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"topic_id\\\": \\\"topic_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"topic_id\\\": \\\"topic_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/topic-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"topic_id\\\": \\\"topic_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/topic-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/topic-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/topic-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/topic-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/topic-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/topic-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/topic-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Fetch Reddit APP Topic Feed" - modelId: "reddit/app/topic-feed" - vendor: "Reddit" - vendorSlug: "reddit" - modelSlug: "app/topic-feed" - protocol: "API Reference" - endpoint: "/v1/api/reddit/app/topic-feed" - publishedAt: "" - capabilities: ["api","reddit"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/reddit/app/trending-searches.md b/model-api-reference/platform-apis/reddit/app/trending-searches.md index c4d50388..3a91cb17 100644 --- a/model-api-reference/platform-apis/reddit/app/trending-searches.md +++ b/model-api-reference/platform-apis/reddit/app/trending-searches.md @@ -1,13 +1,13 @@ --- -title: "Fetch Reddit APP Trending Searches API Reference" -description: "SandBase API operation reddit/app/trending-searches." +title: "Reddit App Trending Searches API Reference" +description: "SandBase API reference for model reddit/app/trending-searches. Call /v1/api/reddit/app/trending-searches; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/reddit/app/trending-searches" -apiReferenceJson: "{\"title\":\"Fetch Reddit APP Trending Searches\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/trending-searches\",\"description\":\"Fetch currently trending search topics and content on Reddit APP\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/trending-searches \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"reddit/app/trending-searches\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"reddit/app/trending-searches\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/trending-searches\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"reddit/app/trending-searches\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/trending-searches\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/trending-searches\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/trending-searches\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/trending-searches\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/trending-searches\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/trending-searches\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/trending-searches\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Reddit App Trending Searches\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/trending-searches\",\"description\":\"Returns currently trending search queries and topics from the Reddit mobile application, with an option to clean and format the output data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/trending-searches \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/trending-searches\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/trending-searches\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/trending-searches\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/trending-searches\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/trending-searches\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/trending-searches\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/trending-searches\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/trending-searches\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch Reddit APP Trending Searches" + modelName: "Reddit App Trending Searches" modelId: "reddit/app/trending-searches" vendor: "Reddit" vendorSlug: "reddit" diff --git a/model-api-reference/platform-apis/reddit/app/user-active-subreddits.md b/model-api-reference/platform-apis/reddit/app/user-active-subreddits.md index 4fd8dcaf..695e012d 100644 --- a/model-api-reference/platform-apis/reddit/app/user-active-subreddits.md +++ b/model-api-reference/platform-apis/reddit/app/user-active-subreddits.md @@ -1,13 +1,13 @@ --- -title: "Fetch User's Active Subreddits API Reference" -description: "SandBase API operation reddit/app/user-active-subreddits." +title: "Reddit User Active Subreddits API Reference" +description: "SandBase API reference for model reddit/app/user-active-subreddits. Call /v1/api/reddit/app/user-active-subreddits; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/reddit/app/user-active-subreddits" -apiReferenceJson: "{\"title\":\"Fetch User's Active Subreddits\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/user-active-subreddits\",\"description\":\"Fetch list of Reddit communities where the specified user is most active\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Reddit username\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/user-active-subreddits \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/user-active-subreddits\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/user-active-subreddits\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/user-active-subreddits\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/user-active-subreddits\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/user-active-subreddits\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/user-active-subreddits\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/user-active-subreddits\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/user-active-subreddits\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Reddit User Active Subreddits\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/user-active-subreddits\",\"description\":\"Returns a list of Reddit communities where a specified user participates most actively. Supports optional response formatting.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Reddit username\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/user-active-subreddits \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"username\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"username\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/user-active-subreddits\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"username\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/user-active-subreddits\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/user-active-subreddits\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/user-active-subreddits\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/user-active-subreddits\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/user-active-subreddits\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/user-active-subreddits\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/user-active-subreddits\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch User's Active Subreddits" + modelName: "Reddit User Active Subreddits" modelId: "reddit/app/user-active-subreddits" vendor: "Reddit" vendorSlug: "reddit" diff --git a/model-api-reference/platform-apis/reddit/app/user-comments.md b/model-api-reference/platform-apis/reddit/app/user-comments.md index 718f878c..8ecd5cac 100644 --- a/model-api-reference/platform-apis/reddit/app/user-comments.md +++ b/model-api-reference/platform-apis/reddit/app/user-comments.md @@ -1,13 +1,13 @@ --- -title: "Fetch User Comments API Reference" -description: "SandBase API operation reddit/app/user-comments." +title: "Reddit User Comments API Reference" +description: "Reddit User Comments API reference for SandBase. Use model reddit/app/user-comments with /v1/api/reddit/app/user-comments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/reddit/app/user-comments" -apiReferenceJson: "{\"title\":\"Fetch User Comments\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/user-comments\",\"description\":\"Fetch list of comments posted by the specified user\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter for fetching next page\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of comments per page, default 25\"},{\"name\":\"sort\",\"type\":\"string\",\"required\":false,\"description\":\"Sort method, options: NEW (newest), TOP (top rated), HOT (hot), CONTROVERSIAL (controversial)\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Reddit username\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/user-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/user-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/user-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/user-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/user-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/user-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/user-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/user-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/user-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Reddit User Comments\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/user-comments\",\"description\":\"Returns a list of comments submitted by a specified Reddit user. Supports multiple sorting options, customizable page sizes, and pagination tokens.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter for fetching next page\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of comments per page, default 25\"},{\"name\":\"sort\",\"type\":\"string\",\"required\":false,\"description\":\"Sort method, options: NEW (newest), TOP (top rated), HOT (hot), CONTROVERSIAL (controversial)\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Reddit username\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/user-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"username\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"username\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/user-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"username\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/user-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/user-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/user-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/user-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/user-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/user-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/user-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch User Comments" + modelName: "Reddit User Comments" modelId: "reddit/app/user-comments" vendor: "Reddit" vendorSlug: "reddit" diff --git a/model-api-reference/platform-apis/reddit/app/user-posts.md b/model-api-reference/platform-apis/reddit/app/user-posts.md index 8339c82e..6c68c897 100644 --- a/model-api-reference/platform-apis/reddit/app/user-posts.md +++ b/model-api-reference/platform-apis/reddit/app/user-posts.md @@ -1,13 +1,13 @@ --- -title: "Fetch User Posts API Reference" -description: "SandBase API operation reddit/app/user-posts." +title: "Reddit User Posts API Reference" +description: "Reddit User Posts API reference for SandBase. Use model reddit/app/user-posts with /v1/api/reddit/app/user-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/reddit/app/user-posts" -apiReferenceJson: "{\"title\":\"Fetch User Posts\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/user-posts\",\"description\":\"Fetch list of posts submitted by the specified user\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter for fetching next page\",\"default\":\"\\\"\\\"\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"sort\",\"type\":\"string\",\"required\":false,\"description\":\"Sort method, options: NEW (newest), TOP (top rated), HOT (hot), CONTROVERSIAL (controversial)\",\"default\":\"NEW\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Reddit username\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/user-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"spez\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"spez\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/user-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"spez\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/user-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/user-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/user-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/user-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/user-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Reddit User Posts\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/user-posts\",\"description\":\"Returns a list of posts submitted by a specified Reddit user. Results can be sorted by new, top, hot, or controversial order with optional formatting.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination parameter for fetching next page\",\"default\":\"\\\"\\\"\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"sort\",\"type\":\"string\",\"required\":false,\"description\":\"Sort method, options: NEW (newest), TOP (top rated), HOT (hot), CONTROVERSIAL (controversial)\",\"default\":\"NEW\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Reddit username\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/user-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"spez\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"spez\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/user-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"spez\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/user-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/user-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/user-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/user-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/user-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch User Posts" + modelName: "Reddit User Posts" modelId: "reddit/app/user-posts" vendor: "Reddit" vendorSlug: "reddit" diff --git a/model-api-reference/platform-apis/reddit/app/user-profile.md b/model-api-reference/platform-apis/reddit/app/user-profile.md index 9873102c..1b44d44a 100644 --- a/model-api-reference/platform-apis/reddit/app/user-profile.md +++ b/model-api-reference/platform-apis/reddit/app/user-profile.md @@ -1,13 +1,13 @@ --- -title: "Fetch Reddit APP User Profile API Reference" -description: "SandBase API operation reddit/app/user-profile." +title: "Reddit App User Profile API Reference" +description: "Reddit App User Profile API reference for SandBase. Use model reddit/app/user-profile with /v1/api/reddit/app/user-profile; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/reddit/app/user-profile" -apiReferenceJson: "{\"title\":\"Fetch Reddit APP User Profile\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/user-profile\",\"description\":\"Fetch detailed profile information of a specified Reddit APP user\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Reddit username (without u/ prefix)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"spez\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"spez\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"spez\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Reddit App User Profile\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/user-profile\",\"description\":\"Returns detailed profile information for a specified Reddit app user by username. Supports an optional flag to clean and format the output data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"false\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Reddit username (without u/ prefix)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"spez\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"spez\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"spez\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch Reddit APP User Profile" + modelName: "Reddit App User Profile" modelId: "reddit/app/user-profile" vendor: "Reddit" vendorSlug: "reddit" diff --git a/model-api-reference/platform-apis/reddit/app/user-trophies.md b/model-api-reference/platform-apis/reddit/app/user-trophies.md index 8189d571..e0bc459c 100644 --- a/model-api-reference/platform-apis/reddit/app/user-trophies.md +++ b/model-api-reference/platform-apis/reddit/app/user-trophies.md @@ -1,13 +1,13 @@ --- -title: "Fetch User Public Trophies API Reference" -description: "SandBase API operation reddit/app/user-trophies." +title: "Reddit User Public Trophies API Reference" +description: "Reddit User Public Trophies API reference for SandBase. Use model reddit/app/user-trophies with /v1/api/reddit/app/user-trophies; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/reddit/app/user-trophies" -apiReferenceJson: "{\"title\":\"Fetch User Public Trophies\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/user-trophies\",\"description\":\"Fetch public trophies/achievements list of a specified Reddit user\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Reddit username (without u/ prefix)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/user-trophies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/user-trophies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/user-trophies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/user-trophies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/user-trophies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/user-trophies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/user-trophies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/user-trophies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/user-trophies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Reddit User Public Trophies\",\"operation\":\"Reddit API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/reddit/app/user-trophies\",\"description\":\"Returns a list of public trophies and achievements for a specified Reddit account. Users can supply a username and optionally request cleaned, formatted data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Reddit username (without u/ prefix)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, reddit\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/reddit/app/user-trophies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"username\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"username\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/reddit/app/user-trophies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"username\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/reddit/app/user-trophies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"reddit/app/user-trophies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"reddit/app/user-trophies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"reddit/app/user-trophies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"reddit/app/user-trophies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"reddit/app/user-trophies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"reddit/app/user-trophies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch User Public Trophies" + modelName: "Reddit User Public Trophies" modelId: "reddit/app/user-trophies" vendor: "Reddit" vendorSlug: "reddit" diff --git a/model-api-reference/platform-apis/sandbase/airtable.md b/model-api-reference/platform-apis/sandbase/airtable.md index 68a8de78..b63b3f97 100644 --- a/model-api-reference/platform-apis/sandbase/airtable.md +++ b/model-api-reference/platform-apis/sandbase/airtable.md @@ -1,13 +1,13 @@ --- -title: "Airtable API Reference" -description: "SandBase API operation sandbase/airtable." +title: "SandBase Airtable Connector API Reference" +description: "SandBase Airtable Connector API reference for SandBase. Use model sandbase/airtable with /v1/api/sandbase/airtable; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/sandbase/airtable" -apiReferenceJson: "{\"title\":\"Airtable\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/airtable\",\"description\":\"Access the full Airtable REST API through OAuth. List bases, read and write records, and manage your spreadsheet databases — powered by Nango Connector Gateway.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Airtable API path, e.g. /v0/meta/bases\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, database, productivity\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/airtable \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/airtable\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/airtable\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/airtable\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/airtable\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/airtable\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/airtable\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/airtable\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/airtable\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"SandBase Airtable Connector\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/airtable\",\"description\":\"Execute requests against the Airtable REST API via OAuth. Access bases, query records, and pass parameters using a target `endpoint` path and HTTP `method`.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Airtable API path, e.g. /v0/meta/bases\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, database, productivity\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/airtable \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/airtable\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/airtable\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/airtable\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/airtable\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/airtable\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/airtable\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/airtable\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/airtable\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Airtable" + modelName: "SandBase Airtable Connector" modelId: "sandbase/airtable" vendor: "SandBase" vendorSlug: "sandbase" diff --git a/model-api-reference/platform-apis/sandbase/calendly.md b/model-api-reference/platform-apis/sandbase/calendly.md index 842e68d0..d71a0aa8 100644 --- a/model-api-reference/platform-apis/sandbase/calendly.md +++ b/model-api-reference/platform-apis/sandbase/calendly.md @@ -1,13 +1,13 @@ --- -title: "Calendly API Reference" -description: "SandBase API operation sandbase/calendly." +title: "SandBase Calendly Gateway API Reference" +description: "SandBase Calendly Gateway API reference for SandBase. Use model sandbase/calendly with /v1/api/sandbase/calendly; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/sandbase/calendly" -apiReferenceJson: "{\"title\":\"Calendly\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/calendly\",\"description\":\"Access the Calendly API through OAuth. Read scheduled events, event types, and invitees — powered by Nango Connector Gateway.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Calendly API path, e.g. /users/me\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, scheduling, productivity\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/calendly \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/calendly\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/calendly\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/calendly\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/calendly\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/calendly\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/calendly\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/calendly\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/calendly\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"SandBase Calendly Gateway\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/calendly\",\"description\":\"Executes requests to the Calendly API via OAuth. Specify the target `endpoint` path, HTTP `method`, query `params`, and optional request `body` to access scheduled events, event types, and invitees.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Calendly API path, e.g. /users/me\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, scheduling, productivity\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/calendly \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/calendly\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/calendly\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/calendly\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/calendly\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/calendly\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/calendly\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/calendly\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/calendly\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Calendly" + modelName: "SandBase Calendly Gateway" modelId: "sandbase/calendly" vendor: "SandBase" vendorSlug: "sandbase" diff --git a/model-api-reference/platform-apis/sandbase/discord.md b/model-api-reference/platform-apis/sandbase/discord.md index 08427bff..5360e491 100644 --- a/model-api-reference/platform-apis/sandbase/discord.md +++ b/model-api-reference/platform-apis/sandbase/discord.md @@ -1,13 +1,13 @@ --- -title: "Discord API Reference" -description: "SandBase API operation sandbase/discord." +title: "SandBase Discord Gateway API Reference" +description: "SandBase Discord Gateway API reference for SandBase. Use model sandbase/discord with /v1/api/sandbase/discord; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/sandbase/discord" -apiReferenceJson: "{\"title\":\"Discord\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/discord\",\"description\":\"Access the Discord API through OAuth. Read user info, guilds, and channels — powered by Nango Connector Gateway.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Discord API path, e.g. /users/@me\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, messaging\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/discord \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/discord\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/discord\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/discord\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/discord\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/discord\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/discord\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/discord\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/discord\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"SandBase Discord Gateway\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/discord\",\"description\":\"Calls Discord endpoints via OAuth to inspect user profiles, guilds, and channels. Specify the target path using `endpoint` alongside optional `method`, `params`, and `body`.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Discord API path, e.g. /users/@me\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, messaging\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/discord \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/discord\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/discord\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/discord\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/discord\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/discord\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/discord\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/discord\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/discord\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Discord" + modelName: "SandBase Discord Gateway" modelId: "sandbase/discord" vendor: "SandBase" vendorSlug: "sandbase" diff --git a/model-api-reference/platform-apis/sandbase/github.md b/model-api-reference/platform-apis/sandbase/github.md index b2757574..db2d5861 100644 --- a/model-api-reference/platform-apis/sandbase/github.md +++ b/model-api-reference/platform-apis/sandbase/github.md @@ -1,13 +1,13 @@ --- -title: "GitHub API Reference" -description: "SandBase API operation sandbase/github." +title: "SandBase GitHub REST Proxy API Reference" +description: "SandBase GitHub REST Proxy API reference for SandBase. Use model sandbase/github with /v1/api/sandbase/github; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/sandbase/github" -apiReferenceJson: "{\"title\":\"GitHub\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/github\",\"description\":\"Access the full GitHub REST API through OAuth. Manage repositories, issues, pull requests, users, organizations, and more — powered by Nango Connector Gateway.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"GitHub REST API path, e.g. /user/repos\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, code-hosting, dev-tools\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/github \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/github\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/github\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/github\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/github\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/github\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/github\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/github\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/github\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"SandBase GitHub REST Proxy\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/github\",\"description\":\"Executes calls to the GitHub REST API using OAuth credentials. Specify the target path via endpoint and configure optional HTTP methods, headers, parameters, and payloads.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"GitHub REST API path, e.g. /user/repos\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, code-hosting, dev-tools\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/github \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/github\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/github\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/github\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/github\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/github\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/github\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/github\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/github\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "GitHub" + modelName: "SandBase GitHub REST Proxy" modelId: "sandbase/github" vendor: "SandBase" vendorSlug: "sandbase" diff --git a/model-api-reference/platform-apis/sandbase/gitlab.md b/model-api-reference/platform-apis/sandbase/gitlab.md index 7c3684d8..ee50c654 100644 --- a/model-api-reference/platform-apis/sandbase/gitlab.md +++ b/model-api-reference/platform-apis/sandbase/gitlab.md @@ -1,13 +1,13 @@ --- -title: "GitLab API Reference" -description: "SandBase API operation sandbase/gitlab." +title: "SandBase GitLab REST Request API Reference" +description: "SandBase GitLab REST Request API reference for SandBase. Use model sandbase/gitlab with /v1/api/sandbase/gitlab; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/sandbase/gitlab" -apiReferenceJson: "{\"title\":\"GitLab\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/gitlab\",\"description\":\"Access the GitLab REST API through OAuth. Manage projects, merge requests, issues, pipelines, and users — powered by Nango Connector Gateway.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"GitLab REST API path, e.g. /api/v4/user\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, code-hosting, dev-tools\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/gitlab \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/gitlab\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/gitlab\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/gitlab\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/gitlab\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/gitlab\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/gitlab\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/gitlab\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/gitlab\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"SandBase GitLab REST Request\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/gitlab\",\"description\":\"Execute authenticated requests to the GitLab REST API through OAuth. Specify the target path, HTTP method, query parameters, and payload.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"GitLab REST API path, e.g. /api/v4/user\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, code-hosting, dev-tools\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/gitlab \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/gitlab\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/gitlab\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/gitlab\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/gitlab\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/gitlab\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/gitlab\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/gitlab\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/gitlab\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "GitLab" + modelName: "SandBase GitLab REST Request" modelId: "sandbase/gitlab" vendor: "SandBase" vendorSlug: "sandbase" diff --git a/model-api-reference/platform-apis/sandbase/gmail.md b/model-api-reference/platform-apis/sandbase/gmail.md index dbfae498..e4a01ddf 100644 --- a/model-api-reference/platform-apis/sandbase/gmail.md +++ b/model-api-reference/platform-apis/sandbase/gmail.md @@ -1,13 +1,13 @@ --- -title: "Gmail API Reference" -description: "SandBase API operation sandbase/gmail." +title: "SandBase Gmail Connector API Reference" +description: "SandBase Gmail Connector API reference for SandBase. Use model sandbase/gmail with /v1/api/sandbase/gmail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/sandbase/gmail" -apiReferenceJson: "{\"title\":\"Gmail\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/gmail\",\"description\":\"Access the Gmail API through OAuth. Read, send, and manage emails and labels — powered by Nango Connector Gateway.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Gmail API path, e.g. /gmail/v1/users/me/messages\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, email, productivity\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/gmail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/gmail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/gmail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/gmail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/gmail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/gmail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/gmail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/gmail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/gmail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"SandBase Gmail Connector\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/gmail\",\"description\":\"Calls Gmail API endpoints through OAuth to read messages, manage labels, and query mailbox data. Specify the target path using endpoint alongside optional HTTP method, query params, and body payload.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Gmail API path, e.g. /gmail/v1/users/me/messages\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, email, productivity\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/gmail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/gmail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/gmail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/gmail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/gmail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/gmail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/gmail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/gmail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/gmail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Gmail" + modelName: "SandBase Gmail Connector" modelId: "sandbase/gmail" vendor: "SandBase" vendorSlug: "sandbase" diff --git a/model-api-reference/platform-apis/sandbase/google-calendar.md b/model-api-reference/platform-apis/sandbase/google-calendar.md index 1e4c75cc..3828d9b5 100644 --- a/model-api-reference/platform-apis/sandbase/google-calendar.md +++ b/model-api-reference/platform-apis/sandbase/google-calendar.md @@ -1,13 +1,13 @@ --- -title: "Google Calendar API Reference" -description: "SandBase API operation sandbase/google-calendar." +title: "SandBase Google Calendar Gateway API Reference" +description: "SandBase Google Calendar Gateway API reference for SandBase. Use model sandbase/google-calendar with /v1/api/sandbase/google-calendar; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/sandbase/google-calendar" -apiReferenceJson: "{\"title\":\"Google Calendar\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/google-calendar\",\"description\":\"Access the Google Calendar API through OAuth. Manage events, calendars, and availability — powered by Nango Connector Gateway.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Google Calendar API path, e.g. /calendar/v3/calendars/primary/events\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, calendar, productivity\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/google-calendar \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/google-calendar\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/google-calendar\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/google-calendar\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/google-calendar\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/google-calendar\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/google-calendar\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/google-calendar\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/google-calendar\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"SandBase Google Calendar Gateway\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/google-calendar\",\"description\":\"Executes requests to the Google Calendar API via an authorized gateway connection. Provide a target `endpoint` path, HTTP `method`, and optional query `params` or `body`.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Google Calendar API path, e.g. /calendar/v3/calendars/primary/events\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, calendar, productivity\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/google-calendar \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/google-calendar\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/google-calendar\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/google-calendar\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/google-calendar\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/google-calendar\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/google-calendar\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/google-calendar\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/google-calendar\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Google Calendar" + modelName: "SandBase Google Calendar Gateway" modelId: "sandbase/google-calendar" vendor: "SandBase" vendorSlug: "sandbase" diff --git a/model-api-reference/platform-apis/sandbase/google-sheets.md b/model-api-reference/platform-apis/sandbase/google-sheets.md index 34b98b06..15348820 100644 --- a/model-api-reference/platform-apis/sandbase/google-sheets.md +++ b/model-api-reference/platform-apis/sandbase/google-sheets.md @@ -1,13 +1,13 @@ --- -title: "Google Sheets API Reference" -description: "SandBase API operation sandbase/google-sheets." +title: "SandBase Google Sheets Gateway API Reference" +description: "SandBase Google Sheets Gateway API reference for SandBase. Use model sandbase/google-sheets with /v1/api/sandbase/google-sheets; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/sandbase/google-sheets" -apiReferenceJson: "{\"title\":\"Google Sheets\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/google-sheets\",\"description\":\"Access the Google Sheets API through OAuth. Read and write spreadsheet values and metadata — powered by Nango Connector Gateway.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Google Sheets API path, e.g. /v4/spreadsheets/{spreadsheetId}\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, spreadsheet, productivity\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/google-sheets \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/google-sheets\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/google-sheets\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/google-sheets\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/google-sheets\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/google-sheets\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/google-sheets\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/google-sheets\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/google-sheets\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"SandBase Google Sheets Gateway\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/google-sheets\",\"description\":\"Proxies requests to the Google Sheets API to read spreadsheet values and metadata via OAuth. Accepts a specific API path along with HTTP methods, query parameters, and payload data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Google Sheets API path, e.g. /v4/spreadsheets/{spreadsheetId}\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, spreadsheet, productivity\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/google-sheets \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/google-sheets\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/google-sheets\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/google-sheets\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/google-sheets\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/google-sheets\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/google-sheets\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/google-sheets\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/google-sheets\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Google Sheets" + modelName: "SandBase Google Sheets Gateway" modelId: "sandbase/google-sheets" vendor: "SandBase" vendorSlug: "sandbase" diff --git a/model-api-reference/platform-apis/sandbase/hubspot.md b/model-api-reference/platform-apis/sandbase/hubspot.md index df67c5f9..cf2f8c20 100644 --- a/model-api-reference/platform-apis/sandbase/hubspot.md +++ b/model-api-reference/platform-apis/sandbase/hubspot.md @@ -1,13 +1,13 @@ --- -title: "HubSpot API Reference" -description: "SandBase API operation sandbase/hubspot." +title: "SandBase HubSpot Connector API Reference" +description: "SandBase HubSpot Connector API reference for SandBase. Use model sandbase/hubspot with /v1/api/sandbase/hubspot; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/sandbase/hubspot" -apiReferenceJson: "{\"title\":\"HubSpot\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/hubspot\",\"description\":\"Access the full HubSpot CRM API through OAuth. Manage contacts, companies, deals, and marketing automation — powered by Nango Connector Gateway.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"HubSpot API path, e.g. /crm/v3/objects/contacts\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, crm, marketing\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/hubspot \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/hubspot\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/hubspot\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/hubspot\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/hubspot\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/hubspot\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/hubspot\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/hubspot\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/hubspot\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"SandBase HubSpot Connector\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/hubspot\",\"description\":\"Access HubSpot CRM endpoints to retrieve or submit contacts, companies, and deals. Provide the target HubSpot path in endpoint along with optional query parameters, headers, and request methods.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"HubSpot API path, e.g. /crm/v3/objects/contacts\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, crm, marketing\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/hubspot \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/hubspot\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/hubspot\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/hubspot\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/hubspot\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/hubspot\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/hubspot\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/hubspot\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/hubspot\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "HubSpot" + modelName: "SandBase HubSpot Connector" modelId: "sandbase/hubspot" vendor: "SandBase" vendorSlug: "sandbase" diff --git a/model-api-reference/platform-apis/sandbase/linear.md b/model-api-reference/platform-apis/sandbase/linear.md index a5dca8b3..774c43bf 100644 --- a/model-api-reference/platform-apis/sandbase/linear.md +++ b/model-api-reference/platform-apis/sandbase/linear.md @@ -1,13 +1,13 @@ --- -title: "Linear API Reference" -description: "SandBase API operation sandbase/linear." +title: "SandBase Linear Integration API Reference" +description: "SandBase Linear Integration API reference for SandBase. Use model sandbase/linear with /v1/api/sandbase/linear; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/sandbase/linear" -apiReferenceJson: "{\"title\":\"Linear\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/linear\",\"description\":\"Access the Linear GraphQL API through OAuth. Manage issues, projects, teams, and cycles for modern software development — powered by Nango Connector Gateway.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Linear API path, e.g. /graphql\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, productivity, ticketing\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/linear \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/linear\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/linear\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/linear\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/linear\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/linear\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/linear\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/linear\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/linear\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"SandBase Linear Integration\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/linear\",\"description\":\"Executes calls to the Linear API, returning issue, project, and team data through OAuth. Configure the target path with endpoint and select the HTTP method.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Linear API path, e.g. /graphql\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, productivity, ticketing\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/linear \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/linear\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/linear\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/linear\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/linear\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/linear\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/linear\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/linear\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/linear\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Linear" + modelName: "SandBase Linear Integration" modelId: "sandbase/linear" vendor: "SandBase" vendorSlug: "sandbase" diff --git a/model-api-reference/platform-apis/sandbase/linkedin.md b/model-api-reference/platform-apis/sandbase/linkedin.md index 659c5370..5399de56 100644 --- a/model-api-reference/platform-apis/sandbase/linkedin.md +++ b/model-api-reference/platform-apis/sandbase/linkedin.md @@ -1,13 +1,13 @@ --- -title: "LinkedIn API Reference" -description: "SandBase API operation sandbase/linkedin." +title: "SandBase LinkedIn Gateway API Reference" +description: "SandBase LinkedIn Gateway API reference for SandBase. Use model sandbase/linkedin with /v1/api/sandbase/linkedin; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/sandbase/linkedin" -apiReferenceJson: "{\"title\":\"LinkedIn\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/linkedin\",\"description\":\"Access the LinkedIn API through OAuth. Read profile info and share content — powered by Nango Connector Gateway.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"LinkedIn API path, e.g. /v2/userinfo\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, social\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/linkedin \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/linkedin\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/linkedin\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/linkedin\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/linkedin\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/linkedin\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/linkedin\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/linkedin\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/linkedin\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"SandBase LinkedIn Gateway\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/linkedin\",\"description\":\"Proxies requests to the LinkedIn API via OAuth. Provide the target path in endpoint along with optional HTTP method, query params, headers, and request body.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"LinkedIn API path, e.g. /v2/userinfo\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, social\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/linkedin \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/linkedin\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/linkedin\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/linkedin\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/linkedin\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/linkedin\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/linkedin\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/linkedin\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/linkedin\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "LinkedIn" + modelName: "SandBase LinkedIn Gateway" modelId: "sandbase/linkedin" vendor: "SandBase" vendorSlug: "sandbase" diff --git a/model-api-reference/platform-apis/sandbase/notion.md b/model-api-reference/platform-apis/sandbase/notion.md index 4f62a440..b540877e 100644 --- a/model-api-reference/platform-apis/sandbase/notion.md +++ b/model-api-reference/platform-apis/sandbase/notion.md @@ -1,13 +1,13 @@ --- -title: "Notion API Reference" -description: "SandBase API operation sandbase/notion." +title: "SandBase Notion Integration API Reference" +description: "SandBase Notion Integration API reference for SandBase. Use model sandbase/notion with /v1/api/sandbase/notion; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/sandbase/notion" -apiReferenceJson: "{\"title\":\"Notion\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/notion\",\"description\":\"Access the full Notion API through OAuth. Search pages, create databases, manage blocks, and automate your knowledge base — powered by Nango Connector Gateway.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Notion API path, e.g. /v1/search\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, knowledge-base, productivity\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/notion \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/notion\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/notion\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/notion\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/notion\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/notion\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/notion\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/notion\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/notion\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"SandBase Notion Integration\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/notion\",\"description\":\"Executes requests against Notion API paths using OAuth credentials. Supports custom HTTP methods, query parameters, request bodies, and automatic retries.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Notion API path, e.g. /v1/search\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, knowledge-base, productivity\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/notion \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/notion\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/notion\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/notion\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/notion\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/notion\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/notion\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/notion\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/notion\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Notion" + modelName: "SandBase Notion Integration" modelId: "sandbase/notion" vendor: "SandBase" vendorSlug: "sandbase" diff --git a/model-api-reference/platform-apis/sandbase/sentry.md b/model-api-reference/platform-apis/sandbase/sentry.md index 6ba990e1..3a994811 100644 --- a/model-api-reference/platform-apis/sandbase/sentry.md +++ b/model-api-reference/platform-apis/sandbase/sentry.md @@ -1,13 +1,13 @@ --- -title: "Sentry API Reference" -description: "SandBase API operation sandbase/sentry." +title: "SandBase Sentry Connector API Reference" +description: "SandBase Sentry Connector API reference for SandBase. Use model sandbase/sentry with /v1/api/sandbase/sentry; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/sandbase/sentry" -apiReferenceJson: "{\"title\":\"Sentry\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/sentry\",\"description\":\"Access the Sentry REST API. Query issues, events, projects, and releases for error monitoring — powered by Nango Connector Gateway.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Sentry API path, e.g. /api/0/projects/\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, dev-tools, monitoring\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/sentry \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/sentry\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/sentry\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/sentry\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/sentry\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/sentry\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/sentry\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/sentry\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/sentry\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"SandBase Sentry Connector\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/sentry\",\"description\":\"Accesses the Sentry REST API to query issues, events, projects, and releases. Route requests by specifying the target `endpoint`, HTTP `method`, and query `params`.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Sentry API path, e.g. /api/0/projects/\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, dev-tools, monitoring\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/sentry \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/sentry\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/sentry\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/sentry\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/sentry\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/sentry\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/sentry\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/sentry\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/sentry\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Sentry" + modelName: "SandBase Sentry Connector" modelId: "sandbase/sentry" vendor: "SandBase" vendorSlug: "sandbase" diff --git a/model-api-reference/platform-apis/sandbase/slack.md b/model-api-reference/platform-apis/sandbase/slack.md index e90fa243..a84fbd9a 100644 --- a/model-api-reference/platform-apis/sandbase/slack.md +++ b/model-api-reference/platform-apis/sandbase/slack.md @@ -1,13 +1,13 @@ --- -title: "Slack API Reference" -description: "SandBase API operation sandbase/slack." +title: "SandBase Slack Gateway API Reference" +description: "SandBase Slack Gateway API reference for SandBase. Use model sandbase/slack with /v1/api/sandbase/slack; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/sandbase/slack" -apiReferenceJson: "{\"title\":\"Slack\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/slack\",\"description\":\"Access the full Slack Web API through OAuth. Send messages, manage channels, list users, and automate workspace interactions — powered by Nango Connector Gateway.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Slack Web API method path, e.g. /conversations.list\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, messaging, productivity\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/slack \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/slack\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/slack\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/slack\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/slack\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/slack\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/slack\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/slack\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/slack\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"SandBase Slack Gateway\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/slack\",\"description\":\"Provides access to Slack Web API methods through OAuth. Specify the target Slack path using endpoint along with optional method, params, headers, and body.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Slack Web API method path, e.g. /conversations.list\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, messaging, productivity\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/slack \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/slack\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/slack\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/slack\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/slack\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/slack\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/slack\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/slack\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/slack\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Slack" + modelName: "SandBase Slack Gateway" modelId: "sandbase/slack" vendor: "SandBase" vendorSlug: "sandbase" diff --git a/model-api-reference/platform-apis/sandbase/stripe.md b/model-api-reference/platform-apis/sandbase/stripe.md index e445311c..5e07f92f 100644 --- a/model-api-reference/platform-apis/sandbase/stripe.md +++ b/model-api-reference/platform-apis/sandbase/stripe.md @@ -1,13 +1,13 @@ --- -title: "Stripe API Reference" -description: "SandBase API operation sandbase/stripe." +title: "SandBase Stripe Gateway API Reference" +description: "SandBase Stripe Gateway API reference for SandBase. Use model sandbase/stripe with /v1/api/sandbase/stripe; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/sandbase/stripe" -apiReferenceJson: "{\"title\":\"Stripe\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/stripe\",\"description\":\"Access the Stripe API through OAuth (Stripe Connect). Query charges, customers, subscriptions, and balance — powered by Nango Connector Gateway.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Stripe API path, e.g. /v1/charges\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, payment\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/stripe \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/stripe\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/stripe\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/stripe\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/stripe\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/stripe\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/stripe\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/stripe\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/stripe\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"SandBase Stripe Gateway\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/stripe\",\"description\":\"Access Stripe resources such as charges, customers, subscriptions, and balances through Stripe Connect. Specify the target path using the endpoint parameter and pass optional query parameters or headers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Stripe API path, e.g. /v1/charges\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, payment\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/stripe \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/stripe\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/stripe\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/stripe\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/stripe\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/stripe\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/stripe\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/stripe\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/stripe\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Stripe" + modelName: "SandBase Stripe Gateway" modelId: "sandbase/stripe" vendor: "SandBase" vendorSlug: "sandbase" diff --git a/model-api-reference/platform-apis/sandbase/supabase.md b/model-api-reference/platform-apis/sandbase/supabase.md index 21848c4d..661dca15 100644 --- a/model-api-reference/platform-apis/sandbase/supabase.md +++ b/model-api-reference/platform-apis/sandbase/supabase.md @@ -1,13 +1,13 @@ --- -title: "Supabase API Reference" -description: "SandBase API operation sandbase/supabase." +title: "SandBase Supabase Management Gateway API Reference" +description: "SandBase Supabase Management Gateway API reference for SandBase. Use model sandbase/supabase with /v1/api/sandbase/supabase; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/sandbase/supabase" -apiReferenceJson: "{\"title\":\"Supabase\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/supabase\",\"description\":\"Access the Supabase Management API. Manage projects, database config, and platform resources — powered by Nango Connector Gateway.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Supabase Management API path, e.g. /v1/projects\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, dev-tools, database\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/supabase \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/supabase\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/supabase\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/supabase\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/supabase\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/supabase\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/supabase\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/supabase\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/supabase\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"SandBase Supabase Management Gateway\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/supabase\",\"description\":\"Accesses the Supabase Management API through a proxy gateway. Pass target endpoints and HTTP methods to inspect projects, database configurations, and platform resources.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Supabase Management API path, e.g. /v1/projects\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, dev-tools, database\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/supabase \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/supabase\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/supabase\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/supabase\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/supabase\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/supabase\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/supabase\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/supabase\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/supabase\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Supabase" + modelName: "SandBase Supabase Management Gateway" modelId: "sandbase/supabase" vendor: "SandBase" vendorSlug: "sandbase" diff --git a/model-api-reference/platform-apis/sandbase/twitter.md b/model-api-reference/platform-apis/sandbase/twitter.md index 01bb3143..7fe32c17 100644 --- a/model-api-reference/platform-apis/sandbase/twitter.md +++ b/model-api-reference/platform-apis/sandbase/twitter.md @@ -1,13 +1,13 @@ --- -title: "X (Twitter) API Reference" -description: "SandBase API operation sandbase/twitter." +title: "SandBase X Gateway API Reference" +description: "SandBase X Gateway API reference for SandBase. Use model sandbase/twitter with /v1/api/sandbase/twitter; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/sandbase/twitter" -apiReferenceJson: "{\"title\":\"X (Twitter)\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/twitter\",\"description\":\"Access the X (Twitter) API v2 through OAuth. Read and post tweets, query users, and fetch engagement — powered by Nango Connector Gateway.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"X API v2 path, e.g. /2/users/me\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, social\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/twitter \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/twitter\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/twitter\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/twitter\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/twitter\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/twitter\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/twitter\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/twitter\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/twitter\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"SandBase X Gateway\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/twitter\",\"description\":\"Proxy requests to X API v2 endpoints via OAuth. Specify the target path using the endpoint parameter alongside optional query parameters, headers, and request bodies.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"X API v2 path, e.g. /2/users/me\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, oauth, social\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/twitter \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/twitter\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/twitter\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/twitter\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/twitter\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/twitter\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/twitter\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/twitter\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/twitter\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "X (Twitter)" + modelName: "SandBase X Gateway" modelId: "sandbase/twitter" vendor: "SandBase" vendorSlug: "sandbase" diff --git a/model-api-reference/platform-apis/sandbase/vercel.md b/model-api-reference/platform-apis/sandbase/vercel.md index 560339a0..d3c9c24f 100644 --- a/model-api-reference/platform-apis/sandbase/vercel.md +++ b/model-api-reference/platform-apis/sandbase/vercel.md @@ -1,13 +1,13 @@ --- -title: "Vercel API Reference" -description: "SandBase API operation sandbase/vercel." +title: "SandBase Vercel Gateway API Reference" +description: "SandBase Vercel Gateway API reference for SandBase. Use model sandbase/vercel with /v1/api/sandbase/vercel; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/sandbase/vercel" -apiReferenceJson: "{\"title\":\"Vercel\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/vercel\",\"description\":\"Access the Vercel REST API. Manage deployments, projects, domains, and environment variables — powered by Nango Connector Gateway.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Vercel API path, e.g. /v2/deployments\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, dev-tools, deployment\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/vercel \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/vercel\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/vercel\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/vercel\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/vercel\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/vercel\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/vercel\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/vercel\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/vercel\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"SandBase Vercel Gateway\",\"operation\":\"SandBase API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/sandbase/vercel\",\"description\":\"Proxies requests to the Vercel REST platform to manage deployments, projects, domains, and environment settings. Specify the target path and optional HTTP method.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endpoint\",\"type\":\"string\",\"required\":true,\"description\":\"Vercel API path, e.g. /v2/deployments\"},{\"name\":\"method\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"constraints\":\"Allowed values: GET, POST, PUT, PATCH, DELETE\"},{\"name\":\"params\",\"type\":\"object\",\"required\":false,\"description\":\"URL query parameters as key-value pairs.\"},{\"name\":\"headers\",\"type\":\"object\",\"required\":false,\"description\":\"Additional request headers.\"},{\"name\":\"body\",\"type\":\"object\",\"required\":false,\"description\":\"Request body (POST/PUT/PATCH).\"},{\"name\":\"retries\",\"type\":\"integer\",\"required\":false,\"description\":\"Retry count on 5xx/timeout.\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"connector, dev-tools, deployment\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/sandbase/vercel \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/sandbase/vercel\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"endpoint\\\": \\\"endpoint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/sandbase/vercel\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"sandbase/vercel\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"sandbase/vercel\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"sandbase/vercel\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"sandbase/vercel\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"sandbase/vercel\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"sandbase/vercel\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Vercel" + modelName: "SandBase Vercel Gateway" modelId: "sandbase/vercel" vendor: "SandBase" vendorSlug: "sandbase" diff --git a/model-api-reference/platform-apis/scholar/explain.md b/model-api-reference/platform-apis/scholar/explain.md deleted file mode 100644 index 8494d289..00000000 --- a/model-api-reference/platform-apis/scholar/explain.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Scholar Explain API Reference" -description: "SandBase API operation scholar/explain." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/scholar/explain" -apiReferenceJson: "{\"title\":\"Scholar Explain\",\"operation\":\"Scholar API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/scholar/explain\",\"description\":\"Generate explanations for search results in different languages and formats. Supports streaming (COMPLETE/INCREMENTAL) and non-streaming modes.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"The original search query to explain results for.\"},{\"name\":\"results\",\"type\":\"array\",\"required\":false,\"description\":\"Search results to explain. Typically from a prior search/scholar or search/mixed call.\"},{\"name\":\"results[].snippet\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"results[].title\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"results[].url\",\"type\":\"string\",\"required\":false,\"description\":\"Download URL for a generated output asset.\"},{\"name\":\"language\",\"type\":\"string\",\"required\":false,\"description\":\"Language for the explanation output.\"},{\"name\":\"response_mode\",\"type\":\"string\",\"required\":false,\"description\":\"NON_STREAMING returns JSON; COMPLETE/INCREMENTAL stream server-sent events.\",\"constraints\":\"Allowed values: NON_STREAMING, COMPLETE, INCREMENTAL\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"academic-search, text-generation\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/scholar/explain \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"query\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"query\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/scholar/explain\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"query\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/scholar/explain\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"scholar/explain\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"scholar/explain\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"scholar/explain\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"scholar/explain\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"scholar/explain\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"scholar/explain\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Scholar Explain" - modelId: "scholar/explain" - vendor: "Scholar" - vendorSlug: "scholar" - modelSlug: "explain" - protocol: "API Reference" - endpoint: "/v1/api/scholar/explain" - publishedAt: "2024-01-01T00:00:00Z" - capabilities: ["academic-search","text-generation"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/scholar/search-mixed.md b/model-api-reference/platform-apis/scholar/search-mixed.md index a34be230..8a6998f7 100644 --- a/model-api-reference/platform-apis/scholar/search-mixed.md +++ b/model-api-reference/platform-apis/scholar/search-mixed.md @@ -1,11 +1,11 @@ --- title: "Scholar Smart Search API Reference" -description: "SandBase API operation scholar/search-mixed." +description: "Scholar Smart Search API reference for SandBase. Use model scholar/search-mixed with /v1/api/scholar/search-mixed; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/scholar/search-mixed" -apiReferenceJson: "{\"title\":\"Scholar Smart Search\",\"operation\":\"Scholar API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/scholar/search-mixed\",\"description\":\"Perform intelligent search that combines web and academic results. Returns a mix of scholarly papers and web pages ranked by relevance.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search query for scholarly materials.\"},{\"name\":\"max_num_results\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of search results to return, up to 100.\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"as_ylo\",\"type\":\"integer\",\"required\":false,\"description\":\"Year of publication lower bound.\",\"constraints\":\"Range: 1900 to 2030\"},{\"name\":\"as_yhi\",\"type\":\"integer\",\"required\":false,\"description\":\"Year of publication upper bound.\",\"constraints\":\"Range: 1900 to 2030\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"academic-search, web-search\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/scholar/search-mixed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"query\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"query\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/scholar/search-mixed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"query\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/scholar/search-mixed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"scholar/search-mixed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"scholar/search-mixed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"scholar/search-mixed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"scholar/search-mixed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"scholar/search-mixed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"scholar/search-mixed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Scholar Smart Search\",\"operation\":\"Scholar API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/scholar/search-mixed\",\"description\":\"Returns scholarly and academic search results matching a query. Supports filtering by publication year range and limiting the total number of returned entries.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search query for scholarly materials.\"},{\"name\":\"max_num_results\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of search results to return, up to 100.\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"as_ylo\",\"type\":\"integer\",\"required\":false,\"description\":\"Year of publication lower bound.\",\"constraints\":\"Range: 1900 to 2030\"},{\"name\":\"as_yhi\",\"type\":\"integer\",\"required\":false,\"description\":\"Year of publication upper bound.\",\"constraints\":\"Range: 1900 to 2030\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"academic-search, web-search\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/scholar/search-mixed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/scholar/search-mixed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/scholar/search-mixed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"scholar/search-mixed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"scholar/search-mixed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"scholar/search-mixed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"scholar/search-mixed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"scholar/search-mixed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"scholar/search-mixed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: modelName: "Scholar Smart Search" modelId: "scholar/search-mixed" diff --git a/model-api-reference/platform-apis/scholar/search-scholar.md b/model-api-reference/platform-apis/scholar/search-scholar.md index 1d8c542a..f0d46560 100644 --- a/model-api-reference/platform-apis/scholar/search-scholar.md +++ b/model-api-reference/platform-apis/scholar/search-scholar.md @@ -1,13 +1,13 @@ --- -title: "Scholar Academic Search API Reference" -description: "SandBase API operation scholar/search-scholar." +title: "Scholar Search (Google Scholar) API Reference" +description: "Scholar Search (Google Scholar) API reference for SandBase. Use model scholar/search-scholar with /v1/api/scholar/search-scholar; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/scholar/search-scholar" -apiReferenceJson: "{\"title\":\"Scholar Academic Search\",\"operation\":\"Scholar API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/scholar/search-scholar\",\"description\":\"Perform academic paper search using Google Scholar or similar sources. Returns scholarly papers with citations, authors, and abstracts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search query for scholarly materials.\"},{\"name\":\"max_num_results\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of search results to return, up to 100.\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"as_ylo\",\"type\":\"integer\",\"required\":false,\"description\":\"Year of publication lower bound.\",\"constraints\":\"Range: 1900 to 2030\"},{\"name\":\"as_yhi\",\"type\":\"integer\",\"required\":false,\"description\":\"Year of publication upper bound.\",\"constraints\":\"Range: 1900 to 2030\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"academic-search\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/scholar/search-scholar \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"query\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"query\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/scholar/search-scholar\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"query\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/scholar/search-scholar\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"scholar/search-scholar\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"scholar/search-scholar\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"scholar/search-scholar\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"scholar/search-scholar\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"scholar/search-scholar\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"scholar/search-scholar\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Scholar Search (Google Scholar)\",\"operation\":\"Scholar API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/scholar/search-scholar\",\"description\":\"Search academic papers on Google Scholar: titles, authors, links, citation counts and snippets, with publication-year filters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search query for scholarly materials.\"},{\"name\":\"max_num_results\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of search results to return, up to 100.\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"as_ylo\",\"type\":\"integer\",\"required\":false,\"description\":\"Year of publication lower bound.\",\"constraints\":\"Range: 1900 to 2030\"},{\"name\":\"as_yhi\",\"type\":\"integer\",\"required\":false,\"description\":\"Year of publication upper bound.\",\"constraints\":\"Range: 1900 to 2030\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"academic-search\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/scholar/search-scholar \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"large language models\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"large language models\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/scholar/search-scholar\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"large language models\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/scholar/search-scholar\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"scholar/search-scholar\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"scholar/search-scholar\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"scholar/search-scholar\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"scholar/search-scholar\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"scholar/search-scholar\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"scholar/search-scholar\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Scholar Academic Search" + modelName: "Scholar Search (Google Scholar)" modelId: "scholar/search-scholar" vendor: "Scholar" vendorSlug: "scholar" diff --git a/model-api-reference/platform-apis/scholar/search-web.md b/model-api-reference/platform-apis/scholar/search-web.md index 1eb769fc..6c56e9f8 100644 --- a/model-api-reference/platform-apis/scholar/search-web.md +++ b/model-api-reference/platform-apis/scholar/search-web.md @@ -1,11 +1,11 @@ --- title: "Scholar Web Search API Reference" -description: "SandBase API operation scholar/search-web." +description: "Scholar Web Search API reference for SandBase. Use model scholar/search-web with /v1/api/scholar/search-web; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/scholar/search-web" -apiReferenceJson: "{\"title\":\"Scholar Web Search\",\"operation\":\"Scholar API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/scholar/search-web\",\"description\":\"Perform web search and return structured results. Optimized for finding web content relevant to academic and research topics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search query for scholarly materials.\"},{\"name\":\"max_num_results\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of search results to return, up to 100.\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"as_ylo\",\"type\":\"integer\",\"required\":false,\"description\":\"Year of publication lower bound.\",\"constraints\":\"Range: 1900 to 2030\"},{\"name\":\"as_yhi\",\"type\":\"integer\",\"required\":false,\"description\":\"Year of publication upper bound.\",\"constraints\":\"Range: 1900 to 2030\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"web-search\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/scholar/search-web \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"query\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"query\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/scholar/search-web\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"query\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/scholar/search-web\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"scholar/search-web\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"scholar/search-web\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"scholar/search-web\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"scholar/search-web\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"scholar/search-web\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"scholar/search-web\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Scholar Web Search\",\"operation\":\"Scholar API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/scholar/search-web\",\"description\":\"Returns web search results tailored to academic and research topics. Supports filtering by publication year ranges and limiting the total result count.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search query for scholarly materials.\"},{\"name\":\"max_num_results\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of search results to return, up to 100.\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"as_ylo\",\"type\":\"integer\",\"required\":false,\"description\":\"Year of publication lower bound.\",\"constraints\":\"Range: 1900 to 2030\"},{\"name\":\"as_yhi\",\"type\":\"integer\",\"required\":false,\"description\":\"Year of publication upper bound.\",\"constraints\":\"Range: 1900 to 2030\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"web-search\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/scholar/search-web \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/scholar/search-web\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/scholar/search-web\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"scholar/search-web\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"scholar/search-web\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"scholar/search-web\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"scholar/search-web\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"scholar/search-web\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"scholar/search-web\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: modelName: "Scholar Web Search" modelId: "scholar/search-web" diff --git a/model-api-reference/platform-apis/tavily/extract.md b/model-api-reference/platform-apis/tavily/extract.md index a066bd76..da13df21 100644 --- a/model-api-reference/platform-apis/tavily/extract.md +++ b/model-api-reference/platform-apis/tavily/extract.md @@ -1,13 +1,13 @@ --- -title: "Tavily Extract API Reference" -description: "SandBase API operation tavily/extract." +title: "Tavily URL Content Extraction API Reference" +description: "Tavily URL Content Extraction API reference for SandBase. Use model tavily/extract with /v1/api/tavily/extract; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tavily/extract" -apiReferenceJson: "{\"title\":\"Tavily Extract\",\"operation\":\"Tavily API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tavily/extract\",\"description\":\"Extract clean content from web pages by URL. Returns structured text with optional images. Use when you already know the URLs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"urls\",\"type\":\"array\",\"required\":true,\"description\":\"URLs to extract content from.\"},{\"name\":\"extract_depth\",\"type\":\"string\",\"required\":false,\"description\":\"Depth of content extraction.\",\"constraints\":\"Allowed values: basic, advanced\"},{\"name\":\"include_images\",\"type\":\"boolean\",\"required\":false,\"description\":\"Include images found on the pages.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"content-extraction, web-scraping\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tavily/extract \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"urls\\\": [\\n \\\"urls_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"urls\\\": [\\n \\\"urls_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tavily/extract\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"urls\\\": [\\n \\\"urls_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tavily/extract\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tavily/extract\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tavily/extract\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tavily/extract\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tavily/extract\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tavily/extract\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tavily/extract\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Tavily URL Content Extraction\",\"operation\":\"Tavily API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tavily/extract\",\"description\":\"Extracts clean text content from specified web pages using their URLs. Supports basic or advanced extraction depth and optional image inclusion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"urls\",\"type\":\"array\",\"required\":true,\"description\":\"URLs to extract content from.\"},{\"name\":\"extract_depth\",\"type\":\"string\",\"required\":false,\"description\":\"Depth of content extraction.\",\"constraints\":\"Allowed values: basic, advanced\"},{\"name\":\"include_images\",\"type\":\"boolean\",\"required\":false,\"description\":\"Include images found on the pages.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"content-extraction, web-scraping\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tavily/extract \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"urls\\\": [\\n \\\"urls_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"urls\\\": [\\n \\\"urls_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tavily/extract\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"urls\\\": [\\n \\\"urls_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tavily/extract\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tavily/extract\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tavily/extract\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tavily/extract\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tavily/extract\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tavily/extract\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tavily/extract\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Tavily Extract" + modelName: "Tavily URL Content Extraction" modelId: "tavily/extract" vendor: "Tavily" vendorSlug: "tavily" diff --git a/model-api-reference/platform-apis/tavily/map.md b/model-api-reference/platform-apis/tavily/map.md index a8bb5d15..d9417c77 100644 --- a/model-api-reference/platform-apis/tavily/map.md +++ b/model-api-reference/platform-apis/tavily/map.md @@ -1,13 +1,13 @@ --- -title: "Tavily Map API Reference" -description: "SandBase API operation tavily/map." +title: "Tavily Site Map API Reference" +description: "Tavily Site Map API reference for SandBase. Use model tavily/map with /v1/api/tavily/map; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tavily/map" -apiReferenceJson: "{\"title\":\"Tavily Map\",\"operation\":\"Tavily API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tavily/map\",\"description\":\"Generate comprehensive site maps. Discover the URL structure of a website without extracting full page content.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"The starting URL to map.\"},{\"name\":\"max_depth\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum traversal depth from the starting URL.\",\"constraints\":\"Range: 1 to 5\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of URLs to discover.\",\"constraints\":\"Range: 1 to 1000\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"site-mapping, url-discovery\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tavily/map \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tavily/map\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tavily/map\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tavily/map\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tavily/map\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tavily/map\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tavily/map\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tavily/map\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tavily/map\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Tavily Site Map\",\"operation\":\"Tavily API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tavily/map\",\"description\":\"Discovers the URL structure of a target website without extracting full page content. Accepts a starting URL, maximum traversal depth, and URL discovery limits.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"The starting URL to map.\"},{\"name\":\"max_depth\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum traversal depth from the starting URL.\",\"constraints\":\"Range: 1 to 5\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of URLs to discover.\",\"constraints\":\"Range: 1 to 1000\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"site-mapping, url-discovery\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tavily/map \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tavily/map\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tavily/map\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tavily/map\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tavily/map\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tavily/map\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tavily/map\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tavily/map\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tavily/map\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Tavily Map" + modelName: "Tavily Site Map" modelId: "tavily/map" vendor: "Tavily" vendorSlug: "tavily" diff --git a/model-api-reference/platform-apis/tavily/search.md b/model-api-reference/platform-apis/tavily/search.md index 889fc050..bc44010c 100644 --- a/model-api-reference/platform-apis/tavily/search.md +++ b/model-api-reference/platform-apis/tavily/search.md @@ -1,11 +1,11 @@ --- title: "Tavily Search API Reference" -description: "SandBase API operation tavily/search." +description: "Tavily Search API reference for SandBase. Use model tavily/search with /v1/api/tavily/search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tavily/search" -apiReferenceJson: "{\"title\":\"Tavily Search\",\"operation\":\"Tavily API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tavily/search\",\"description\":\"AI-optimized web search. Returns ranked results with extracted page content — no separate scrape step needed. Supports depth control, topic filtering, time range, and optional LLM-generated answer.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"The search query.\"},{\"name\":\"search_depth\",\"type\":\"string\",\"required\":false,\"description\":\"Depth of search. 'advanced' returns more comprehensive results.\",\"default\":\"basic\",\"constraints\":\"Allowed values: basic, advanced\"},{\"name\":\"max_results\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of results to return.\",\"default\":\"5\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"topic\",\"type\":\"string\",\"required\":false,\"description\":\"Topic category to focus the search.\",\"default\":\"general\",\"constraints\":\"Allowed values: general, news, finance\"},{\"name\":\"include_answer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Include an LLM-generated answer summarizing the results.\",\"default\":\"false\"},{\"name\":\"include_raw_content\",\"type\":\"boolean\",\"required\":false,\"description\":\"Include the full raw page content for each result.\",\"default\":\"false\"},{\"name\":\"include_domains\",\"type\":\"array\",\"required\":false,\"description\":\"Only include results from these domains.\"},{\"name\":\"exclude_domains\",\"type\":\"array\",\"required\":false,\"description\":\"Exclude results from these domains.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"web-search, AI-search, research\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tavily/search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"OpenAI Codex documentation\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"OpenAI Codex documentation\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tavily/search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"OpenAI Codex documentation\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tavily/search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tavily/search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tavily/search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tavily/search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tavily/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tavily/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tavily/search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Tavily Search\",\"operation\":\"Tavily API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tavily/search\",\"description\":\"AI-optimized web search for agents and RAG: ranked results with titles, URLs and relevant content, depth control, news and finance topics, domain filters and an optional generated answer.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"The search query.\"},{\"name\":\"search_depth\",\"type\":\"string\",\"required\":false,\"description\":\"Depth of search. 'advanced' returns more comprehensive results.\",\"default\":\"basic\",\"constraints\":\"Allowed values: basic, advanced\"},{\"name\":\"max_results\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of results to return.\",\"default\":\"5\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"topic\",\"type\":\"string\",\"required\":false,\"description\":\"Topic category to focus the search.\",\"default\":\"general\",\"constraints\":\"Allowed values: general, news, finance\"},{\"name\":\"include_answer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Include an LLM-generated answer summarizing the results.\",\"default\":\"false\"},{\"name\":\"include_raw_content\",\"type\":\"boolean\",\"required\":false,\"description\":\"Include the full raw page content for each result.\",\"default\":\"false\"},{\"name\":\"include_domains\",\"type\":\"array\",\"required\":false,\"description\":\"Only include results from these domains.\"},{\"name\":\"exclude_domains\",\"type\":\"array\",\"required\":false,\"description\":\"Exclude results from these domains.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"web-search, AI-search, research\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tavily/search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"OpenAI Codex documentation\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"OpenAI Codex documentation\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tavily/search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"OpenAI Codex documentation\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tavily/search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tavily/search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tavily/search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tavily/search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tavily/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tavily/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tavily/search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: modelName: "Tavily Search" modelId: "tavily/search" diff --git a/model-api-reference/platform-apis/telegram/web/batch-channel-info.md b/model-api-reference/platform-apis/telegram/web/batch-channel-info.md index 069b58d0..5fdaab61 100644 --- a/model-api-reference/platform-apis/telegram/web/batch-channel-info.md +++ b/model-api-reference/platform-apis/telegram/web/batch-channel-info.md @@ -1,13 +1,13 @@ --- -title: "Batch channel info API Reference" -description: "SandBase API operation telegram/web/batch-channel-info." +title: "Telegram Batch Channel Info API Reference" +description: "SandBase API reference for model telegram/web/batch-channel-info. Call /v1/api/telegram/web/batch-channel-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/telegram/web/batch-channel-info" -apiReferenceJson: "{\"title\":\"Batch channel info\",\"operation\":\"Telegram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/telegram/web/batch-channel-info\",\"description\":\"Fetch basic info (title/description/avatar/subscribers/verified) for multiple public channels concurrently.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channels\",\"type\":\"string\",\"required\":true,\"description\":\"Comma-separated channel usernames, up to 20 per request.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, telegram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/telegram/web/batch-channel-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"channels\\\": \\\"telegram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"channels\\\": \\\"telegram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/telegram/web/batch-channel-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"channels\\\": \\\"telegram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/telegram/web/batch-channel-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"telegram/web/batch-channel-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"telegram/web/batch-channel-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"telegram/web/batch-channel-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"telegram/web/batch-channel-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"telegram/web/batch-channel-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"telegram/web/batch-channel-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Telegram Batch Channel Info\",\"operation\":\"Telegram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/telegram/web/batch-channel-info\",\"description\":\"Returns basic channel profile details including title, description, and verified status for multiple public Telegram channels at once.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channels\",\"type\":\"string\",\"required\":true,\"description\":\"Comma-separated channel usernames, up to 20 per request.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, telegram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/telegram/web/batch-channel-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"channels\\\": \\\"telegram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"channels\\\": \\\"telegram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/telegram/web/batch-channel-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"channels\\\": \\\"telegram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/telegram/web/batch-channel-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"telegram/web/batch-channel-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"telegram/web/batch-channel-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"telegram/web/batch-channel-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"telegram/web/batch-channel-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"telegram/web/batch-channel-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"telegram/web/batch-channel-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Batch channel info" + modelName: "Telegram Batch Channel Info" modelId: "telegram/web/batch-channel-info" vendor: "Telegram" vendorSlug: "telegram" diff --git a/model-api-reference/platform-apis/telegram/web/channel-info.md b/model-api-reference/platform-apis/telegram/web/channel-info.md index 35ce2747..c4d1ce9b 100644 --- a/model-api-reference/platform-apis/telegram/web/channel-info.md +++ b/model-api-reference/platform-apis/telegram/web/channel-info.md @@ -1,13 +1,13 @@ --- -title: "Get channel info API Reference" -description: "SandBase API operation telegram/web/channel-info." +title: "Telegram Channel Info API Reference" +description: "Telegram Channel Info API reference for SandBase. Use model telegram/web/channel-info with /v1/api/telegram/web/channel-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/telegram/web/channel-info" -apiReferenceJson: "{\"title\":\"Get channel info\",\"operation\":\"Telegram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/telegram/web/channel-info\",\"description\":\"Get public Telegram channel metadata: title, description, avatar, subscriber count, verified badge and media counters. Data comes from the public t.me preview page, no login required.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel\",\"type\":\"string\",\"required\":true,\"description\":\"Channel username (accepts `durov` / `@durov` / `https://t.me/durov`, normalized automatically).\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, telegram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/telegram/web/channel-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"channel\\\": \\\"telegram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"channel\\\": \\\"telegram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/telegram/web/channel-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"channel\\\": \\\"telegram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/telegram/web/channel-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"telegram/web/channel-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"telegram/web/channel-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"telegram/web/channel-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"telegram/web/channel-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"telegram/web/channel-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"telegram/web/channel-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Telegram Channel Info\",\"operation\":\"Telegram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/telegram/web/channel-info\",\"description\":\"Returns public metadata for a Telegram channel, including title, description, verified status, and username, using the public web preview.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel\",\"type\":\"string\",\"required\":true,\"description\":\"Channel username (accepts `durov` / `@durov` / `https://t.me/durov`, normalized automatically).\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, telegram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/telegram/web/channel-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"channel\\\": \\\"telegram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"channel\\\": \\\"telegram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/telegram/web/channel-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"channel\\\": \\\"telegram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/telegram/web/channel-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"telegram/web/channel-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"telegram/web/channel-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"telegram/web/channel-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"telegram/web/channel-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"telegram/web/channel-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"telegram/web/channel-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get channel info" + modelName: "Telegram Channel Info" modelId: "telegram/web/channel-info" vendor: "Telegram" vendorSlug: "telegram" diff --git a/model-api-reference/platform-apis/telegram/web/channel-posts.md b/model-api-reference/platform-apis/telegram/web/channel-posts.md index 92c0a34f..5e89d546 100644 --- a/model-api-reference/platform-apis/telegram/web/channel-posts.md +++ b/model-api-reference/platform-apis/telegram/web/channel-posts.md @@ -1,13 +1,13 @@ --- -title: "Get channel posts (paginated) API Reference" -description: "SandBase API operation telegram/web/channel-posts." +title: "Telegram Channel Posts API Reference" +description: "Telegram Channel Posts API reference for SandBase. Use model telegram/web/channel-posts with /v1/api/telegram/web/channel-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/telegram/web/channel-posts" -apiReferenceJson: "{\"title\":\"Get channel posts (paginated)\",\"operation\":\"Telegram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/telegram/web/channel-posts\",\"description\":\"Fetch a public channel's recent posts (text, photos, videos, forwards, replies, link previews, reactions, views, time).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor — fetch newer posts, pass `data.pagination.after_cursor` from the previous page.\",\"default\":\"0\"},{\"name\":\"before\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor — fetch older posts, pass `data.pagination.before_cursor` from the previous page.\",\"default\":\"0\"},{\"name\":\"channel\",\"type\":\"string\",\"required\":true,\"description\":\"Channel username (required).\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of posts (1-100, default 20; when >20 the server automatically pages toward older posts).\",\"default\":\"20\",\"constraints\":\"Range: 1 to 100\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, telegram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/telegram/web/channel-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"channel\\\": \\\"telegram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"channel\\\": \\\"telegram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/telegram/web/channel-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"channel\\\": \\\"telegram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/telegram/web/channel-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"telegram/web/channel-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"telegram/web/channel-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"telegram/web/channel-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"telegram/web/channel-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"telegram/web/channel-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"telegram/web/channel-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Telegram Channel Posts\",\"operation\":\"Telegram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/telegram/web/channel-posts\",\"description\":\"Get a public Telegram channel's recent posts: text, media, forwards, replies, link previews, reactions, views and time, with cursor pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"after\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor — fetch newer posts, pass `data.pagination.after_cursor` from the previous page.\",\"default\":\"0\"},{\"name\":\"before\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor — fetch older posts, pass `data.pagination.before_cursor` from the previous page.\",\"default\":\"0\"},{\"name\":\"channel\",\"type\":\"string\",\"required\":true,\"description\":\"Channel username (required).\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of posts (1-100, default 20; when >20 the server automatically pages toward older posts).\",\"default\":\"20\",\"constraints\":\"Range: 1 to 100\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, telegram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/telegram/web/channel-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"channel\\\": \\\"telegram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"channel\\\": \\\"telegram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/telegram/web/channel-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"channel\\\": \\\"telegram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/telegram/web/channel-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"telegram/web/channel-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"telegram/web/channel-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"telegram/web/channel-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"telegram/web/channel-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"telegram/web/channel-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"telegram/web/channel-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get channel posts (paginated)" + modelName: "Telegram Channel Posts" modelId: "telegram/web/channel-posts" vendor: "Telegram" vendorSlug: "telegram" diff --git a/model-api-reference/platform-apis/telegram/web/channel-search.md b/model-api-reference/platform-apis/telegram/web/channel-search.md index 54beb80d..3f5cbab2 100644 --- a/model-api-reference/platform-apis/telegram/web/channel-search.md +++ b/model-api-reference/platform-apis/telegram/web/channel-search.md @@ -1,13 +1,13 @@ --- -title: "Search posts in a channel API Reference" -description: "SandBase API operation telegram/web/channel-search." +title: "Telegram Channel Post Search API Reference" +description: "SandBase API reference for model telegram/web/channel-search. Call /v1/api/telegram/web/channel-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/telegram/web/channel-search" -apiReferenceJson: "{\"title\":\"Search posts in a channel\",\"operation\":\"Telegram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/telegram/web/channel-search\",\"description\":\"Search posts in a channel by keyword (case-insensitive). Uses Telegram's server-side search over the full channel history when the MTProto backend is enabled (`data.backend = \\\"mtproto\\\"`); otherwise falls back to best-effort local filtering over recent history (`data.backend = \\\"web\\\"`).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel\",\"type\":\"string\",\"required\":true,\"description\":\"Channel username (required).\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of hits (1-100, default 20).\",\"default\":\"20\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword (required).\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, telegram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/telegram/web/channel-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"channel\\\": \\\"telegram\\\",\\n \\\"query\\\": \\\"privacy\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"channel\\\": \\\"telegram\\\",\\n \\\"query\\\": \\\"privacy\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/telegram/web/channel-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"channel\\\": \\\"telegram\\\",\\n \\\"query\\\": \\\"privacy\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/telegram/web/channel-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"telegram/web/channel-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"telegram/web/channel-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"telegram/web/channel-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"telegram/web/channel-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"telegram/web/channel-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"telegram/web/channel-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Telegram Channel Post Search\",\"operation\":\"Telegram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/telegram/web/channel-search\",\"description\":\"Returns messages matching a search keyword from a specific Telegram channel. Filter results using channel username, query term, and result limit.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel\",\"type\":\"string\",\"required\":true,\"description\":\"Channel username (required).\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of hits (1-100, default 20).\",\"default\":\"20\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword (required).\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, telegram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/telegram/web/channel-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"channel\\\": \\\"telegram\\\",\\n \\\"query\\\": \\\"privacy\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"channel\\\": \\\"telegram\\\",\\n \\\"query\\\": \\\"privacy\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/telegram/web/channel-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"channel\\\": \\\"telegram\\\",\\n \\\"query\\\": \\\"privacy\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/telegram/web/channel-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"telegram/web/channel-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"telegram/web/channel-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"telegram/web/channel-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"telegram/web/channel-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"telegram/web/channel-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"telegram/web/channel-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search posts in a channel" + modelName: "Telegram Channel Post Search" modelId: "telegram/web/channel-search" vendor: "Telegram" vendorSlug: "telegram" diff --git a/model-api-reference/platform-apis/telegram/web/post-comments.md b/model-api-reference/platform-apis/telegram/web/post-comments.md index 22c506ec..6659a08b 100644 --- a/model-api-reference/platform-apis/telegram/web/post-comments.md +++ b/model-api-reference/platform-apis/telegram/web/post-comments.md @@ -1,13 +1,13 @@ --- -title: "Post comments API Reference" -description: "SandBase API operation telegram/web/post-comments." +title: "Telegram Post Comments API Reference" +description: "Telegram Post Comments API reference for SandBase. Use model telegram/web/post-comments with /v1/api/telegram/web/post-comments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/telegram/web/post-comments" -apiReferenceJson: "{\"title\":\"Post comments\",\"operation\":\"Telegram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/telegram/web/post-comments\",\"description\":\"Fetch comments of a channel post from its linked discussion group.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel\",\"type\":\"string\",\"required\":true,\"description\":\"Channel username; post_id: Post ID; limit: number of comments (1-100).\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of comments\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"post_id\",\"type\":\"integer\",\"required\":true,\"description\":\"Post ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, telegram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/telegram/web/post-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"channel\\\": \\\"channel\\\",\\n \\\"post_id\\\": 1\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"channel\\\": \\\"channel\\\",\\n \\\"post_id\\\": 1\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/telegram/web/post-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"channel\\\": \\\"channel\\\",\\n \\\"post_id\\\": 1\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/telegram/web/post-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"telegram/web/post-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"telegram/web/post-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"telegram/web/post-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"telegram/web/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"telegram/web/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"telegram/web/post-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Telegram Post Comments\",\"operation\":\"Telegram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/telegram/web/post-comments\",\"description\":\"Returns comments from the linked discussion group of a specified Telegram channel post. Filters include the channel username, post ID, and an optional limit.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel\",\"type\":\"string\",\"required\":true,\"description\":\"Channel username; post_id: Post ID; limit: number of comments (1-100).\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of comments\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"post_id\",\"type\":\"integer\",\"required\":true,\"description\":\"Post ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, telegram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/telegram/web/post-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"channel\\\": \\\"telegram\\\",\\n \\\"post_id\\\": 450\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"channel\\\": \\\"telegram\\\",\\n \\\"post_id\\\": 450\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/telegram/web/post-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"channel\\\": \\\"telegram\\\",\\n \\\"post_id\\\": 450\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/telegram/web/post-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"telegram/web/post-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"telegram/web/post-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"telegram/web/post-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"telegram/web/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"telegram/web/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"telegram/web/post-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Post comments" + modelName: "Telegram Post Comments" modelId: "telegram/web/post-comments" vendor: "Telegram" vendorSlug: "telegram" diff --git a/model-api-reference/platform-apis/telegram/web/post-detail.md b/model-api-reference/platform-apis/telegram/web/post-detail.md index e49a1f1b..d94c50c2 100644 --- a/model-api-reference/platform-apis/telegram/web/post-detail.md +++ b/model-api-reference/platform-apis/telegram/web/post-detail.md @@ -1,13 +1,13 @@ --- -title: "Get single post API Reference" -description: "SandBase API operation telegram/web/post-detail." +title: "Telegram Channel Post Details API Reference" +description: "Telegram Channel Post Details API reference for SandBase. Use model telegram/web/post-detail with /v1/api/telegram/web/post-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/telegram/web/post-detail" -apiReferenceJson: "{\"title\":\"Get single post\",\"operation\":\"Telegram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/telegram/web/post-detail\",\"description\":\"Get a single public-channel post (parsed from the t.me embed view).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel\",\"type\":\"string\",\"required\":true,\"description\":\"Channel username (required).\"},{\"name\":\"post_id\",\"type\":\"integer\",\"required\":true,\"description\":\"Post ID (required, auto-incremented integer within the channel).\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, telegram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/telegram/web/post-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"channel\\\": \\\"durov\\\",\\n \\\"post_id\\\": 510\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"channel\\\": \\\"durov\\\",\\n \\\"post_id\\\": 510\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/telegram/web/post-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"channel\\\": \\\"durov\\\",\\n \\\"post_id\\\": 510\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/telegram/web/post-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"telegram/web/post-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"telegram/web/post-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"telegram/web/post-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"telegram/web/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"telegram/web/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"telegram/web/post-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Telegram Channel Post Details\",\"operation\":\"Telegram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/telegram/web/post-detail\",\"description\":\"Retrieves details for a single public Telegram channel post parsed from the web embed view. Provide the channel username and post ID to view reactions and post data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel\",\"type\":\"string\",\"required\":true,\"description\":\"Channel username (required).\"},{\"name\":\"post_id\",\"type\":\"integer\",\"required\":true,\"description\":\"Post ID (required, auto-incremented integer within the channel).\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, telegram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/telegram/web/post-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"channel\\\": \\\"durov\\\",\\n \\\"post_id\\\": 510\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"channel\\\": \\\"durov\\\",\\n \\\"post_id\\\": 510\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/telegram/web/post-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"channel\\\": \\\"durov\\\",\\n \\\"post_id\\\": 510\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/telegram/web/post-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"telegram/web/post-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"telegram/web/post-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"telegram/web/post-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"telegram/web/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"telegram/web/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"telegram/web/post-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single post" + modelName: "Telegram Channel Post Details" modelId: "telegram/web/post-detail" vendor: "Telegram" vendorSlug: "telegram" diff --git a/model-api-reference/platform-apis/telegram/web/similar-channels.md b/model-api-reference/platform-apis/telegram/web/similar-channels.md index af33484f..c8a022d7 100644 --- a/model-api-reference/platform-apis/telegram/web/similar-channels.md +++ b/model-api-reference/platform-apis/telegram/web/similar-channels.md @@ -1,13 +1,13 @@ --- -title: "Similar channels API Reference" -description: "SandBase API operation telegram/web/similar-channels." +title: "Telegram Similar Channels API Reference" +description: "SandBase API reference for model telegram/web/similar-channels. Call /v1/api/telegram/web/similar-channels; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/telegram/web/similar-channels" -apiReferenceJson: "{\"title\":\"Similar channels\",\"operation\":\"Telegram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/telegram/web/similar-channels\",\"description\":\"Get Telegram's official \\\"similar channels\\\" recommendations (for channel discovery).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel\",\"type\":\"string\",\"required\":true,\"description\":\"Channel username.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, telegram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/telegram/web/similar-channels \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"channel\\\": \\\"telegram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"channel\\\": \\\"telegram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/telegram/web/similar-channels\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"channel\\\": \\\"telegram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/telegram/web/similar-channels\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"telegram/web/similar-channels\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"telegram/web/similar-channels\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"telegram/web/similar-channels\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"telegram/web/similar-channels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"telegram/web/similar-channels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"telegram/web/similar-channels\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Telegram Similar Channels\",\"operation\":\"Telegram API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/telegram/web/similar-channels\",\"description\":\"Returns Telegram's official similar channel recommendations based on a specified channel username for channel discovery and audience research.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel\",\"type\":\"string\",\"required\":true,\"description\":\"Channel username.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, telegram\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/telegram/web/similar-channels \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"channel\\\": \\\"telegram\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"channel\\\": \\\"telegram\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/telegram/web/similar-channels\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"channel\\\": \\\"telegram\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/telegram/web/similar-channels\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"telegram/web/similar-channels\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"telegram/web/similar-channels\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"telegram/web/similar-channels\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"telegram/web/similar-channels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"telegram/web/similar-channels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"telegram/web/similar-channels\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Similar channels" + modelName: "Telegram Similar Channels" modelId: "telegram/web/similar-channels" vendor: "Telegram" vendorSlug: "telegram" diff --git a/model-api-reference/platform-apis/temp-mail/v1/email-by-id.md b/model-api-reference/platform-apis/temp-mail/v1/email-by-id.md deleted file mode 100644 index 4542881b..00000000 --- a/model-api-reference/platform-apis/temp-mail/v1/email-by-id.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get Email By Id API Reference" -description: "SandBase API operation temp-mail/v1/email-by-id." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/temp-mail/v1/email-by-id" -apiReferenceJson: "{\"title\":\"Get Email By Id\",\"operation\":\"Temp Mail API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/temp-mail/v1/email-by-id\",\"description\":\"Get Email By Id\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"message_id\",\"type\":\"string\",\"required\":true,\"description\":\"Message ID\"},{\"name\":\"token\",\"type\":\"string\",\"required\":true,\"description\":\"Bearer Token\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, temp-mail\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/temp-mail/v1/email-by-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"message_id\\\": \\\"message_id\\\",\\n \\\"token\\\": \\\"token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"message_id\\\": \\\"message_id\\\",\\n \\\"token\\\": \\\"token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/temp-mail/v1/email-by-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"message_id\\\": \\\"message_id\\\",\\n \\\"token\\\": \\\"token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/temp-mail/v1/email-by-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"temp-mail/v1/email-by-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"temp-mail/v1/email-by-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"temp-mail/v1/email-by-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"temp-mail/v1/email-by-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"temp-mail/v1/email-by-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"temp-mail/v1/email-by-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get Email By Id" - modelId: "temp-mail/v1/email-by-id" - vendor: "Temp Mail" - vendorSlug: "temp-mail" - modelSlug: "v1/email-by-id" - protocol: "API Reference" - endpoint: "/v1/api/temp-mail/v1/email-by-id" - publishedAt: "" - capabilities: ["api","temp-mail"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/temp-mail/v1/emails-inbox.md b/model-api-reference/platform-apis/temp-mail/v1/emails-inbox.md deleted file mode 100644 index 90661faa..00000000 --- a/model-api-reference/platform-apis/temp-mail/v1/emails-inbox.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get Emails API Reference" -description: "SandBase API operation temp-mail/v1/emails-inbox." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/temp-mail/v1/emails-inbox" -apiReferenceJson: "{\"title\":\"Get Emails\",\"operation\":\"Temp Mail API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/temp-mail/v1/emails-inbox\",\"description\":\"Get Emails\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"token\",\"type\":\"string\",\"required\":true,\"description\":\"Bearer Token\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, temp-mail\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/temp-mail/v1/emails-inbox \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"token\\\": \\\"token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"token\\\": \\\"token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/temp-mail/v1/emails-inbox\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"token\\\": \\\"token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/temp-mail/v1/emails-inbox\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"temp-mail/v1/emails-inbox\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"temp-mail/v1/emails-inbox\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"temp-mail/v1/emails-inbox\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"temp-mail/v1/emails-inbox\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"temp-mail/v1/emails-inbox\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"temp-mail/v1/emails-inbox\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get Emails" - modelId: "temp-mail/v1/emails-inbox" - vendor: "Temp Mail" - vendorSlug: "temp-mail" - modelSlug: "v1/emails-inbox" - protocol: "API Reference" - endpoint: "/v1/api/temp-mail/v1/emails-inbox" - publishedAt: "" - capabilities: ["api","temp-mail"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/temp-mail/v1/temp-email-address.md b/model-api-reference/platform-apis/temp-mail/v1/temp-email-address.md deleted file mode 100644 index 4ed72c1d..00000000 --- a/model-api-reference/platform-apis/temp-mail/v1/temp-email-address.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get Temp Email API Reference" -description: "SandBase API operation temp-mail/v1/temp-email-address." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/temp-mail/v1/temp-email-address" -apiReferenceJson: "{\"title\":\"Get Temp Email\",\"operation\":\"Temp Mail API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/temp-mail/v1/temp-email-address\",\"description\":\"Get Temp Email\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, temp-mail\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/temp-mail/v1/temp-email-address \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"temp-mail/v1/temp-email-address\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"temp-mail/v1/temp-email-address\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/temp-mail/v1/temp-email-address\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"temp-mail/v1/temp-email-address\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/temp-mail/v1/temp-email-address\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"temp-mail/v1/temp-email-address\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"temp-mail/v1/temp-email-address\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"temp-mail/v1/temp-email-address\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"temp-mail/v1/temp-email-address\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"temp-mail/v1/temp-email-address\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"temp-mail/v1/temp-email-address\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get Temp Email" - modelId: "temp-mail/v1/temp-email-address" - vendor: "Temp Mail" - vendorSlug: "temp-mail" - modelSlug: "v1/temp-email-address" - protocol: "API Reference" - endpoint: "/v1/api/temp-mail/v1/temp-email-address" - publishedAt: "" - capabilities: ["api","temp-mail"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/threads/web/post-comments.md b/model-api-reference/platform-apis/threads/web/post-comments.md deleted file mode 100644 index 6a223716..00000000 --- a/model-api-reference/platform-apis/threads/web/post-comments.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get post comments API Reference — Threads Web / Post Comments API" -description: "SandBase API operation threads/web/post-comments." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/threads/web/post-comments" -apiReferenceJson: "{\"title\":\"Get post comments\",\"operation\":\"Threads API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/threads/web/post-comments\",\"description\":\"Get Threads post comments list Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor (optional), used to get next page data\"},{\"name\":\"post_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID, for example: 3390920896561588969\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, threads\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/threads/web/post-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"post_id\\\": \\\"post_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"post_id\\\": \\\"post_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/threads/web/post-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"post_id\\\": \\\"post_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/threads/web/post-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"threads/web/post-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"threads/web/post-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"threads/web/post-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"threads/web/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"threads/web/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"threads/web/post-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get post comments" - modelId: "threads/web/post-comments" - vendor: "Threads" - vendorSlug: "threads" - modelSlug: "web/post-comments" - protocol: "API Reference" - endpoint: "/v1/api/threads/web/post-comments" - publishedAt: "" - capabilities: ["api","threads"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/threads/web/post-detail-v2.md b/model-api-reference/platform-apis/threads/web/post-detail-v2.md index c9b95843..a6f54286 100644 --- a/model-api-reference/platform-apis/threads/web/post-detail-v2.md +++ b/model-api-reference/platform-apis/threads/web/post-detail-v2.md @@ -1,13 +1,13 @@ --- -title: "Get post detail V2(supports URL) API Reference" -description: "SandBase API operation threads/web/post-detail-v2." +title: "Threads Post Detail (V2) API Reference" +description: "Threads Post Detail (V2) API reference for SandBase. Use model threads/web/post-detail-v2 with /v1/api/threads/web/post-detail-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/threads/web/post-detail-v2" -apiReferenceJson: "{\"title\":\"Get post detail V2(supports URL)\",\"operation\":\"Threads API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/threads/web/post-detail-v2\",\"description\":\"Get Threads post detail (supports short code and full URL) Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"post_id\",\"type\":\"string\",\"required\":false,\"description\":\"Post short code (optional), for example: DPVUglOjOUu, can be extracted from post URL, e.g., DPVUglOjOUu in https://www.threads.com/@taylorswift/post/DPVUglOjOUu\"},{\"name\":\"url\",\"type\":\"string\",\"required\":false,\"description\":\"Full post URL (optional), for example: https://www.threads.com/@taylorswift/post/DPVUglOjOUu\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, threads\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/threads/web/post-detail-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://www.threads.com/@taylorswift/post/DPVUglOjOUu\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://www.threads.com/@taylorswift/post/DPVUglOjOUu\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/threads/web/post-detail-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://www.threads.com/@taylorswift/post/DPVUglOjOUu\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/threads/web/post-detail-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"threads/web/post-detail-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"threads/web/post-detail-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"threads/web/post-detail-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"threads/web/post-detail-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"threads/web/post-detail-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"threads/web/post-detail-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Threads Post Detail (V2)\",\"operation\":\"Threads API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/threads/web/post-detail-v2\",\"description\":\"Returns detailed information for a specific Threads post. Queries can be performed using either a full post link or a post short code as input. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"post_id\",\"type\":\"string\",\"required\":false,\"description\":\"Post short code (optional), for example: DPVUglOjOUu, can be extracted from post URL, e.g., DPVUglOjOUu in https://www.threads.com/@taylorswift/post/DPVUglOjOUu\"},{\"name\":\"url\",\"type\":\"string\",\"required\":false,\"description\":\"Full post URL (optional), for example: https://www.threads.com/@taylorswift/post/DPVUglOjOUu\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, threads\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/threads/web/post-detail-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://www.threads.com/@taylorswift/post/DPVUglOjOUu\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://www.threads.com/@taylorswift/post/DPVUglOjOUu\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/threads/web/post-detail-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://www.threads.com/@taylorswift/post/DPVUglOjOUu\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/threads/web/post-detail-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"threads/web/post-detail-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"threads/web/post-detail-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"threads/web/post-detail-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"threads/web/post-detail-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"threads/web/post-detail-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"threads/web/post-detail-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get post detail V2(supports URL)" + modelName: "Threads Post Detail (V2)" modelId: "threads/web/post-detail-v2" vendor: "Threads" vendorSlug: "threads" diff --git a/model-api-reference/platform-apis/threads/web/post-detail.md b/model-api-reference/platform-apis/threads/web/post-detail.md index 0cf6a808..df780b15 100644 --- a/model-api-reference/platform-apis/threads/web/post-detail.md +++ b/model-api-reference/platform-apis/threads/web/post-detail.md @@ -1,13 +1,13 @@ --- -title: "Get post detail API Reference — Threads Web / Post Detail API" -description: "SandBase API operation threads/web/post-detail." +title: "Threads Post Detail API Reference" +description: "Threads Post Detail API reference for SandBase. Use model threads/web/post-detail with /v1/api/threads/web/post-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/threads/web/post-detail" -apiReferenceJson: "{\"title\":\"Get post detail\",\"operation\":\"Threads API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/threads/web/post-detail\",\"description\":\"Get Threads post detail Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"post_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID (numeric only), for example: 3349029093483693129, can be obtained from other APIs. If using URL to get, call /fetch_post_detail_v2 API.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, threads\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/threads/web/post-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"post_id\\\": \\\"3349029093483693129\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"post_id\\\": \\\"3349029093483693129\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/threads/web/post-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"post_id\\\": \\\"3349029093483693129\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/threads/web/post-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"threads/web/post-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"threads/web/post-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"threads/web/post-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"threads/web/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"threads/web/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"threads/web/post-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Threads Post Detail\",\"operation\":\"Threads API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/threads/web/post-detail\",\"description\":\"Returns detailed information for a specific Threads post using its numeric ID. Call this endpoint to inspect post content and metadata from the web interface. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"post_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID (numeric only), for example: 3349029093483693129, can be obtained from other APIs. If using URL to get, call /fetch_post_detail_v2 API.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, threads\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/threads/web/post-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"post_id\\\": \\\"3349029093483693129\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"post_id\\\": \\\"3349029093483693129\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/threads/web/post-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"post_id\\\": \\\"3349029093483693129\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/threads/web/post-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"threads/web/post-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"threads/web/post-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"threads/web/post-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"threads/web/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"threads/web/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"threads/web/post-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get post detail" + modelName: "Threads Post Detail" modelId: "threads/web/post-detail" vendor: "Threads" vendorSlug: "threads" diff --git a/model-api-reference/platform-apis/threads/web/search-profiles.md b/model-api-reference/platform-apis/threads/web/search-profiles.md index f25ebe25..0521a4a6 100644 --- a/model-api-reference/platform-apis/threads/web/search-profiles.md +++ b/model-api-reference/platform-apis/threads/web/search-profiles.md @@ -1,13 +1,13 @@ --- -title: "Search profiles API Reference" -description: "SandBase API operation threads/web/search-profiles." +title: "Threads Profile Search API Reference" +description: "Threads Profile Search API reference for SandBase. Use model threads/web/search-profiles with /v1/api/threads/web/search-profiles; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/threads/web/search-profiles" -apiReferenceJson: "{\"title\":\"Search profiles\",\"operation\":\"Threads API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/threads/web/search-profiles\",\"description\":\"Search Threads user profiles Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search query, for example: mark\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, threads\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/threads/web/search-profiles \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/threads/web/search-profiles\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/threads/web/search-profiles\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"threads/web/search-profiles\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"threads/web/search-profiles\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"threads/web/search-profiles\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"threads/web/search-profiles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"threads/web/search-profiles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"threads/web/search-profiles\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Threads Profile Search\",\"operation\":\"Threads API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/threads/web/search-profiles\",\"description\":\"Searches Threads user profiles based on a specified text query string. Returns matching user accounts and profile information from the platform. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search query, for example: mark\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, threads\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/threads/web/search-profiles \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/threads/web/search-profiles\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/threads/web/search-profiles\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"threads/web/search-profiles\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"threads/web/search-profiles\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"threads/web/search-profiles\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"threads/web/search-profiles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"threads/web/search-profiles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"threads/web/search-profiles\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search profiles" + modelName: "Threads Profile Search" modelId: "threads/web/search-profiles" vendor: "Threads" vendorSlug: "threads" diff --git a/model-api-reference/platform-apis/threads/web/search-recent.md b/model-api-reference/platform-apis/threads/web/search-recent.md index 54f3c57d..b03c29c0 100644 --- a/model-api-reference/platform-apis/threads/web/search-recent.md +++ b/model-api-reference/platform-apis/threads/web/search-recent.md @@ -1,13 +1,13 @@ --- -title: "Search recent content API Reference" -description: "SandBase API operation threads/web/search-recent." +title: "Threads Recent Content Search API Reference" +description: "Threads Recent Content Search API reference for SandBase. Use model threads/web/search-recent with /v1/api/threads/web/search-recent; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/threads/web/search-recent" -apiReferenceJson: "{\"title\":\"Search recent content\",\"operation\":\"Threads API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/threads/web/search-recent\",\"description\":\"Search Threads recent content Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor (optional), used to get next page data\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search query, for example: bitcoin\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, threads\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/threads/web/search-recent \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"query\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"query\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/threads/web/search-recent\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"query\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/threads/web/search-recent\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"threads/web/search-recent\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"threads/web/search-recent\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"threads/web/search-recent\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"threads/web/search-recent\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"threads/web/search-recent\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"threads/web/search-recent\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Threads Recent Content Search\",\"operation\":\"Threads API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/threads/web/search-recent\",\"description\":\"Searches recent Threads content matching a specified keyword query. Returns matching web posts with cursor-based pagination support. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor (optional), used to get next page data\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search query, for example: bitcoin\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, threads\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/threads/web/search-recent \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"query\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"query\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/threads/web/search-recent\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"query\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/threads/web/search-recent\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"threads/web/search-recent\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"threads/web/search-recent\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"threads/web/search-recent\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"threads/web/search-recent\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"threads/web/search-recent\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"threads/web/search-recent\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search recent content" + modelName: "Threads Recent Content Search" modelId: "threads/web/search-recent" vendor: "Threads" vendorSlug: "threads" diff --git a/model-api-reference/platform-apis/threads/web/search-top.md b/model-api-reference/platform-apis/threads/web/search-top.md deleted file mode 100644 index eb4ab4fc..00000000 --- a/model-api-reference/platform-apis/threads/web/search-top.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Search top content API Reference" -description: "SandBase API operation threads/web/search-top." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/threads/web/search-top" -apiReferenceJson: "{\"title\":\"Search top content\",\"operation\":\"Threads API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/threads/web/search-top\",\"description\":\"Search Threads top content Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor (optional), used to get next page data\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search query, for example: bitcoin\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, threads\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/threads/web/search-top \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"query\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"query\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/threads/web/search-top\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"query\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/threads/web/search-top\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"threads/web/search-top\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"threads/web/search-top\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"threads/web/search-top\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"threads/web/search-top\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"threads/web/search-top\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"threads/web/search-top\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Search top content" - modelId: "threads/web/search-top" - vendor: "Threads" - vendorSlug: "threads" - modelSlug: "web/search-top" - protocol: "API Reference" - endpoint: "/v1/api/threads/web/search-top" - publishedAt: "" - capabilities: ["api","threads"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/threads/web/user-info-by-id.md b/model-api-reference/platform-apis/threads/web/user-info-by-id.md index 06c1de1f..40d9f65f 100644 --- a/model-api-reference/platform-apis/threads/web/user-info-by-id.md +++ b/model-api-reference/platform-apis/threads/web/user-info-by-id.md @@ -1,13 +1,13 @@ --- -title: "Get user info by ID API Reference" -description: "SandBase API operation threads/web/user-info-by-id." +title: "Threads User Info by ID API Reference" +description: "Threads User Info by ID API reference for SandBase. Use model threads/web/user-info-by-id with /v1/api/threads/web/user-info-by-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/threads/web/user-info-by-id" -apiReferenceJson: "{\"title\":\"Get user info by ID\",\"operation\":\"Threads API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/threads/web/user-info-by-id\",\"description\":\"Get Threads user information by user ID Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID, for example: 67027868801, can be obtained from user profile API or post data\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, threads\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/threads/web/user-info-by-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/threads/web/user-info-by-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/threads/web/user-info-by-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"threads/web/user-info-by-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"threads/web/user-info-by-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"threads/web/user-info-by-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"threads/web/user-info-by-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"threads/web/user-info-by-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"threads/web/user-info-by-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Threads User Info by ID\",\"operation\":\"Threads API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/threads/web/user-info-by-id\",\"description\":\"Returns detailed Threads user profile information based on a specified user ID. Ideal for retrieving public account metadata directly through web identifiers. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID, for example: 67027868801, can be obtained from user profile API or post data\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, threads\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/threads/web/user-info-by-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/threads/web/user-info-by-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/threads/web/user-info-by-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"threads/web/user-info-by-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"threads/web/user-info-by-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"threads/web/user-info-by-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"threads/web/user-info-by-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"threads/web/user-info-by-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"threads/web/user-info-by-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user info by ID" + modelName: "Threads User Info by ID" modelId: "threads/web/user-info-by-id" vendor: "Threads" vendorSlug: "threads" diff --git a/model-api-reference/platform-apis/threads/web/user-info.md b/model-api-reference/platform-apis/threads/web/user-info.md index b32f0f16..d6eaf520 100644 --- a/model-api-reference/platform-apis/threads/web/user-info.md +++ b/model-api-reference/platform-apis/threads/web/user-info.md @@ -1,13 +1,13 @@ --- -title: "Get user info API Reference — Threads Web / User Info API" -description: "SandBase API operation threads/web/user-info." +title: "Threads User Profile API Reference" +description: "Threads User Profile API reference for SandBase. Use model threads/web/user-info with /v1/api/threads/web/user-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/threads/web/user-info" -apiReferenceJson: "{\"title\":\"Get user info\",\"operation\":\"Threads API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/threads/web/user-info\",\"description\":\"Get Threads user information Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Username, for example: lilbieber, can be obtained from the user's homepage link, for example: lilbieber in https://www.threads.net/@lilbieber\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, threads\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/threads/web/user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/threads/web/user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"username\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/threads/web/user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"threads/web/user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"threads/web/user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"threads/web/user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"threads/web/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"threads/web/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"threads/web/user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Threads User Profile\",\"operation\":\"Threads API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/threads/web/user-info\",\"description\":\"Get a Threads (Meta) user profile by username: name, bio, follower count and verification status. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Username, for example: lilbieber, can be obtained from the user's homepage link, for example: lilbieber in https://www.threads.net/@lilbieber\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, threads\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/threads/web/user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"nasa\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"nasa\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/threads/web/user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"nasa\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/threads/web/user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"threads/web/user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"threads/web/user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"threads/web/user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"threads/web/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"threads/web/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"threads/web/user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user info" + modelName: "Threads User Profile" modelId: "threads/web/user-info" vendor: "Threads" vendorSlug: "threads" diff --git a/model-api-reference/platform-apis/threads/web/user-posts.md b/model-api-reference/platform-apis/threads/web/user-posts.md index f9d186a3..94cc7c95 100644 --- a/model-api-reference/platform-apis/threads/web/user-posts.md +++ b/model-api-reference/platform-apis/threads/web/user-posts.md @@ -1,13 +1,13 @@ --- -title: "Get user posts API Reference — Threads Web / User Posts API" -description: "SandBase API operation threads/web/user-posts." +title: "Threads User Posts API Reference" +description: "Threads User Posts API reference for SandBase. Use model threads/web/user-posts with /v1/api/threads/web/user-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/threads/web/user-posts" -apiReferenceJson: "{\"title\":\"Get user posts\",\"operation\":\"Threads API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/threads/web/user-posts\",\"description\":\"Get Threads user's post list Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor (optional), used to get next page data\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID, for example: 63625256886, can be obtained from user profile API\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, threads\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/threads/web/user-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/threads/web/user-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/threads/web/user-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"threads/web/user-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"threads/web/user-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"threads/web/user-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"threads/web/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"threads/web/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"threads/web/user-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Threads User Posts\",\"operation\":\"Threads API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/threads/web/user-posts\",\"description\":\"Returns a list of posts from a specified Threads account. Accepts a user identifier and an optional pagination cursor to retrieve subsequent pages of data. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor (optional), used to get next page data\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID, for example: 63625256886, can be obtained from user profile API\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, threads\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/threads/web/user-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/threads/web/user-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/threads/web/user-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"threads/web/user-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"threads/web/user-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"threads/web/user-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"threads/web/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"threads/web/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"threads/web/user-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user posts" + modelName: "Threads User Posts" modelId: "threads/web/user-posts" vendor: "Threads" vendorSlug: "threads" diff --git a/model-api-reference/platform-apis/threads/web/user-replies.md b/model-api-reference/platform-apis/threads/web/user-replies.md index 58d26cc4..eebfbc31 100644 --- a/model-api-reference/platform-apis/threads/web/user-replies.md +++ b/model-api-reference/platform-apis/threads/web/user-replies.md @@ -1,13 +1,13 @@ --- -title: "Get user replies API Reference" -description: "SandBase API operation threads/web/user-replies." +title: "Threads User Replies API Reference" +description: "Threads User Replies API reference for SandBase. Use model threads/web/user-replies with /v1/api/threads/web/user-replies; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/threads/web/user-replies" -apiReferenceJson: "{\"title\":\"Get user replies\",\"operation\":\"Threads API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/threads/web/user-replies\",\"description\":\"Get Threads user's reply list Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor (optional), used to get next page data\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID, for example: 63625256886\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, threads\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/threads/web/user-replies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/threads/web/user-replies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/threads/web/user-replies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"threads/web/user-replies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"threads/web/user-replies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"threads/web/user-replies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"threads/web/user-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"threads/web/user-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"threads/web/user-replies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Threads User Replies\",\"operation\":\"Threads API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/threads/web/user-replies\",\"description\":\"Returns a list of replies posted by a specific Threads user. Query replies using a target user identifier and an optional pagination cursor. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor (optional), used to get next page data\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID, for example: 63625256886\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, threads\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/threads/web/user-replies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/threads/web/user-replies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/threads/web/user-replies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"threads/web/user-replies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"threads/web/user-replies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"threads/web/user-replies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"threads/web/user-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"threads/web/user-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"threads/web/user-replies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user replies" + modelName: "Threads User Replies" modelId: "threads/web/user-replies" vendor: "Threads" vendorSlug: "threads" diff --git a/model-api-reference/platform-apis/threads/web/user-reposts.md b/model-api-reference/platform-apis/threads/web/user-reposts.md index 905faaae..e40120a6 100644 --- a/model-api-reference/platform-apis/threads/web/user-reposts.md +++ b/model-api-reference/platform-apis/threads/web/user-reposts.md @@ -1,13 +1,13 @@ --- -title: "Get user reposts API Reference — Threads Web / User Reposts API" -description: "SandBase API operation threads/web/user-reposts." +title: "Threads User Reposts API Reference" +description: "Threads User Reposts API reference for SandBase. Use model threads/web/user-reposts with /v1/api/threads/web/user-reposts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/threads/web/user-reposts" -apiReferenceJson: "{\"title\":\"Get user reposts\",\"operation\":\"Threads API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/threads/web/user-reposts\",\"description\":\"Get Threads user's repost list Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor (optional), used to get next page data\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID, for example: 63625256886\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, threads\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/threads/web/user-reposts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/threads/web/user-reposts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/threads/web/user-reposts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"threads/web/user-reposts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"threads/web/user-reposts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"threads/web/user-reposts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"threads/web/user-reposts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"threads/web/user-reposts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"threads/web/user-reposts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Threads User Reposts\",\"operation\":\"Threads API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/threads/web/user-reposts\",\"description\":\"Returns a list of reposted threads for a specified Threads user account. Requires the user ID and supports pagination via an optional cursor. Price: 0.002$ / time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor (optional), used to get next page data\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID, for example: 63625256886\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, threads\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/threads/web/user-reposts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/threads/web/user-reposts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/threads/web/user-reposts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"threads/web/user-reposts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"threads/web/user-reposts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"threads/web/user-reposts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"threads/web/user-reposts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"threads/web/user-reposts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"threads/web/user-reposts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user reposts" + modelName: "Threads User Reposts" modelId: "threads/web/user-reposts" vendor: "Threads" vendorSlug: "threads" diff --git a/model-api-reference/platform-apis/tiktok/ads/ad-interactive-analysis.md b/model-api-reference/platform-apis/tiktok/ads/ad-interactive-analysis.md index 89da5f00..9e6bdcce 100644 --- a/model-api-reference/platform-apis/tiktok/ads/ad-interactive-analysis.md +++ b/model-api-reference/platform-apis/tiktok/ads/ad-interactive-analysis.md @@ -1,13 +1,13 @@ --- -title: "Get ad interactive analysis API Reference" -description: "SandBase API operation tiktok/ads/ad-interactive-analysis." +title: "TikTok Ad Interactive Analysis API Reference" +description: "SandBase API reference for model tiktok/ads/ad-interactive-analysis. Call /v1/api/tiktok/ads/ad-interactive-analysis; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/ads/ad-interactive-analysis" -apiReferenceJson: "{\"title\":\"Get ad interactive analysis\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/ads/ad-interactive-analysis\",\"description\":\"Get ad interactive time analysis to understand audience retention and engagement at different video time points Analyze ad video attractiveness curve to find optimal duration and key interaction points Optimize ad content structure to improve overall effectiveness\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"material_id\",\"type\":\"string\",\"required\":true,\"description\":\"Ad material ID, required parameter\"},{\"name\":\"metric_type\",\"type\":\"string\",\"required\":false,\"description\":\"Analysis type\"},{\"name\":\"period_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Time range, default 180 days\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/ads/ad-interactive-analysis \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"material_id\\\": \\\"material_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"material_id\\\": \\\"material_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/ad-interactive-analysis\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"material_id\\\": \\\"material_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/ad-interactive-analysis\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/ads/ad-interactive-analysis\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/ads/ad-interactive-analysis\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/ads/ad-interactive-analysis\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/ads/ad-interactive-analysis\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/ads/ad-interactive-analysis\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/ads/ad-interactive-analysis\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Ad Interactive Analysis\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/ads/ad-interactive-analysis\",\"description\":\"Returns audience retention and interaction analytics across video timestamps for a specified ad creative. Supports filtering by analysis metric and time period.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"material_id\",\"type\":\"string\",\"required\":true,\"description\":\"Ad material ID, required parameter\"},{\"name\":\"metric_type\",\"type\":\"string\",\"required\":false,\"description\":\"Analysis type\"},{\"name\":\"period_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Time range, default 180 days\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/ads/ad-interactive-analysis \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"material_id\\\": \\\"material_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"material_id\\\": \\\"material_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/ad-interactive-analysis\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"material_id\\\": \\\"material_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/ad-interactive-analysis\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/ads/ad-interactive-analysis\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/ads/ad-interactive-analysis\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/ads/ad-interactive-analysis\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/ads/ad-interactive-analysis\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/ads/ad-interactive-analysis\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/ads/ad-interactive-analysis\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get ad interactive analysis" + modelName: "TikTok Ad Interactive Analysis" modelId: "tiktok/ads/ad-interactive-analysis" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/ads/ad-keyframe-analysis.md b/model-api-reference/platform-apis/tiktok/ads/ad-keyframe-analysis.md index bbae3d9e..6cd14136 100644 --- a/model-api-reference/platform-apis/tiktok/ads/ad-keyframe-analysis.md +++ b/model-api-reference/platform-apis/tiktok/ads/ad-keyframe-analysis.md @@ -1,13 +1,13 @@ --- -title: "Get ad keyframe analysis API Reference" -description: "SandBase API operation tiktok/ads/ad-keyframe-analysis." +title: "TikTok Ad Keyframe Analysis API Reference" +description: "SandBase API reference for model tiktok/ads/ad-keyframe-analysis. Call /v1/api/tiktok/ads/ad-keyframe-analysis; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/ads/ad-keyframe-analysis" -apiReferenceJson: "{\"title\":\"Get ad keyframe analysis\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/ads/ad-keyframe-analysis\",\"description\":\"Get keyframe analysis of ad videos to understand audience retention at different time points Analyze which time points attract viewers most and where viewers drop off Help optimize ad video structure to improve completion rates\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"material_id\",\"type\":\"string\",\"required\":true,\"description\":\"Ad material ID, required parameter\"},{\"name\":\"metric\",\"type\":\"string\",\"required\":false,\"description\":\"Analysis metric, options:\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/ads/ad-keyframe-analysis \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"material_id\\\": \\\"material_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"material_id\\\": \\\"material_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/ad-keyframe-analysis\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"material_id\\\": \\\"material_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/ad-keyframe-analysis\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/ads/ad-keyframe-analysis\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/ads/ad-keyframe-analysis\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/ads/ad-keyframe-analysis\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/ads/ad-keyframe-analysis\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/ads/ad-keyframe-analysis\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/ads/ad-keyframe-analysis\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Ad Keyframe Analysis\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/ads/ad-keyframe-analysis\",\"description\":\"Returns keyframe performance metrics across video ad timestamps for a specified material ID, including retention and conversion figures.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"material_id\",\"type\":\"string\",\"required\":true,\"description\":\"Ad material ID, required parameter\"},{\"name\":\"metric\",\"type\":\"string\",\"required\":false,\"description\":\"Analysis metric (retain_ctr, retain_cvr, click_cnt, convert_cnt, play_retain_cnt)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/ads/ad-keyframe-analysis \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"material_id\\\": \\\"material_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"material_id\\\": \\\"material_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/ad-keyframe-analysis\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"material_id\\\": \\\"material_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/ad-keyframe-analysis\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/ads/ad-keyframe-analysis\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/ads/ad-keyframe-analysis\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/ads/ad-keyframe-analysis\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/ads/ad-keyframe-analysis\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/ads/ad-keyframe-analysis\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/ads/ad-keyframe-analysis\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get ad keyframe analysis" + modelName: "TikTok Ad Keyframe Analysis" modelId: "tiktok/ads/ad-keyframe-analysis" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/ads/ad-percentile.md b/model-api-reference/platform-apis/tiktok/ads/ad-percentile.md index ef18b441..58cc0a4f 100644 --- a/model-api-reference/platform-apis/tiktok/ads/ad-percentile.md +++ b/model-api-reference/platform-apis/tiktok/ads/ad-percentile.md @@ -1,13 +1,13 @@ --- -title: "Get ad percentile data API Reference" -description: "SandBase API operation tiktok/ads/ad-percentile." +title: "TikTok Ad Material Percentile Rankings API Reference" +description: "SandBase API reference for model tiktok/ads/ad-percentile. Call /v1/api/tiktok/ads/ad-percentile; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/ads/ad-percentile" -apiReferenceJson: "{\"title\":\"Get ad percentile data\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/ads/ad-percentile\",\"description\":\"Get ad percentile ranking data within the industry Understand ad performance levels relative to peers across various metrics Help evaluate ad effectiveness and develop optimization strategies\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"material_id\",\"type\":\"string\",\"required\":true,\"description\":\"Ad material ID, required parameter\"},{\"name\":\"metric\",\"type\":\"string\",\"required\":false,\"description\":\"Analysis metric, options:\"},{\"name\":\"period_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Time period in days, default 180\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/ads/ad-percentile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"material_id\\\": \\\"material_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"material_id\\\": \\\"material_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/ad-percentile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"material_id\\\": \\\"material_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/ad-percentile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/ads/ad-percentile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/ads/ad-percentile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/ads/ad-percentile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/ads/ad-percentile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/ads/ad-percentile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/ads/ad-percentile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Ad Material Percentile Rankings\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/ads/ad-percentile\",\"description\":\"Returns ad performance percentile rankings within the industry for a specific ad material. Supports filtering by metrics like CTR or conversion rate and time period.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"material_id\",\"type\":\"string\",\"required\":true,\"description\":\"Ad material ID, required parameter\"},{\"name\":\"metric\",\"type\":\"string\",\"required\":false,\"description\":\"Analysis metric (ctr_percentile, time_attr_conversion_rate_percentile, click_cnt_percentile, time_attr_convert_cnt_percentile, show_cnt_percentile)\"},{\"name\":\"period_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Time period in days, default 180\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/ads/ad-percentile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"material_id\\\": \\\"material_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"material_id\\\": \\\"material_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/ad-percentile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"material_id\\\": \\\"material_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/ad-percentile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/ads/ad-percentile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/ads/ad-percentile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/ads/ad-percentile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/ads/ad-percentile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/ads/ad-percentile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/ads/ad-percentile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get ad percentile data" + modelName: "TikTok Ad Material Percentile Rankings" modelId: "tiktok/ads/ad-percentile" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/ads/ads-detail.md b/model-api-reference/platform-apis/tiktok/ads/ads-detail.md index d87b41c5..5b54c537 100644 --- a/model-api-reference/platform-apis/tiktok/ads/ads-detail.md +++ b/model-api-reference/platform-apis/tiktok/ads/ads-detail.md @@ -1,13 +1,13 @@ --- -title: "Get single ad detail API Reference" -description: "SandBase API operation tiktok/ads/ads-detail." +title: "TikTok Ad Detail API Reference" +description: "TikTok Ad Detail API reference for SandBase. Use model tiktok/ads/ads-detail with /v1/api/tiktok/ads/ads-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/ads/ads-detail" -apiReferenceJson: "{\"title\":\"Get single ad detail\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/ads/ads-detail\",\"description\":\"Retrieve detailed information about a single TikTok ad, including creative content, creator info, and engagement data Analyze ad performance metrics such as views, likes, comments, and other core statistics Help advertisers and marketers gain deep insights into specific ad effectiveness and user feedback\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"ads_id\",\"type\":\"string\",\"required\":true,\"description\":\"Ad ID, required parameter, can be obtained from ad lists or TikTok Ads Creative Center\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/ads/ads-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"ads_id\\\": \\\"ads_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"ads_id\\\": \\\"ads_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/ads-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"ads_id\\\": \\\"ads_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/ads-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/ads/ads-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/ads/ads-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/ads/ads-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/ads/ads-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/ads/ads-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/ads/ads-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Ad Detail\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/ads/ads-detail\",\"description\":\"Returns detailed information about a single TikTok ad, including creative content, creator information, and engagement performance metrics using a specific ad identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"ads_id\",\"type\":\"string\",\"required\":true,\"description\":\"Ad ID, required parameter, can be obtained from ad lists or TikTok Ads Creative Center\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/ads/ads-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"ads_id\\\": \\\"ads_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"ads_id\\\": \\\"ads_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/ads-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"ads_id\\\": \\\"ads_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/ads-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/ads/ads-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/ads/ads-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/ads/ads-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/ads/ads-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/ads/ads-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/ads/ads-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single ad detail" + modelName: "TikTok Ad Detail" modelId: "tiktok/ads/ads-detail" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/ads/configure-safety.md b/model-api-reference/platform-apis/tiktok/ads/configure-safety.md index 480a924c..a20772b4 100644 --- a/model-api-reference/platform-apis/tiktok/ads/configure-safety.md +++ b/model-api-reference/platform-apis/tiktok/ads/configure-safety.md @@ -1,13 +1,13 @@ --- -title: "Get search modules config API Reference" -description: "SandBase API operation tiktok/ads/configure-safety." +title: "TikTok Search Module Safety Configuration API Reference" +description: "SandBase API reference for model tiktok/ads/configure-safety. Call /v1/api/tiktok/ads/configure-safety; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/ads/configure-safety" -apiReferenceJson: "{\"title\":\"Get search modules config\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/ads/configure-safety\",\"description\":\"Get the safety/availability config switches of TikTok Creative Center search modules Check whether top ads, keyword, hashtag, sound, creator searches are currently available\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/ads/configure-safety \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/ads/configure-safety\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/ads/configure-safety\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/configure-safety\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/ads/configure-safety\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/configure-safety\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/ads/configure-safety\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/ads/configure-safety\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/ads/configure-safety\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/ads/configure-safety\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/ads/configure-safety\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/ads/configure-safety\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Search Module Safety Configuration\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/ads/configure-safety\",\"description\":\"Returns the safety and availability configuration switches for TikTok Creative Center search modules. It indicates whether searches for top ads, keywords, hashtags, sounds, and creators are currently available.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/ads/configure-safety \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/configure-safety\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/configure-safety\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/ads/configure-safety\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/ads/configure-safety\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/ads/configure-safety\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/ads/configure-safety\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/ads/configure-safety\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/ads/configure-safety\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get search modules config" + modelName: "TikTok Search Module Safety Configuration" modelId: "tiktok/ads/configure-safety" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/ads/location-list.md b/model-api-reference/platform-apis/tiktok/ads/location-list.md index eb83041e..91d29865 100644 --- a/model-api-reference/platform-apis/tiktok/ads/location-list.md +++ b/model-api-reference/platform-apis/tiktok/ads/location-list.md @@ -1,13 +1,13 @@ --- -title: "Get supported location list API Reference" -description: "SandBase API operation tiktok/ads/location-list." +title: "TikTok Ads Location List API Reference" +description: "TikTok Ads Location List API reference for SandBase. Use model tiktok/ads/location-list with /v1/api/tiktok/ads/location-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/ads/location-list" -apiReferenceJson: "{\"title\":\"Get supported location list\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/ads/location-list\",\"description\":\"Get the list of countries/regions supported by TikTok Creative Center Useful as a reference for the country_code parameter of other endpoints\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/ads/location-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/ads/location-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/ads/location-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/location-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/ads/location-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/location-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/ads/location-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/ads/location-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/ads/location-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/ads/location-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/ads/location-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/ads/location-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Ads Location List\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/ads/location-list\",\"description\":\"Returns the list of supported locations available for advertising targeting on TikTok. Access standard geographical targets to configure ad campaigns.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/ads/location-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/location-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/location-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/ads/location-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/ads/location-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/ads/location-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/ads/location-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/ads/location-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/ads/location-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get supported location list" + modelName: "TikTok Ads Location List" modelId: "tiktok/ads/location-list" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/ads/query-suggestions.md b/model-api-reference/platform-apis/tiktok/ads/query-suggestions.md index 93a41148..5d18f8de 100644 --- a/model-api-reference/platform-apis/tiktok/ads/query-suggestions.md +++ b/model-api-reference/platform-apis/tiktok/ads/query-suggestions.md @@ -1,13 +1,13 @@ --- -title: "Get query suggestions API Reference" -description: "SandBase API operation tiktok/ads/query-suggestions." +title: "TikTok Ad Query Suggestions API Reference" +description: "SandBase API reference for model tiktok/ads/query-suggestions. Call /v1/api/tiktok/ads/query-suggestions; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/ads/query-suggestions" -apiReferenceJson: "{\"title\":\"Get query suggestions\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/ads/query-suggestions\",\"description\":\"Get popular query suggestions for ad search Understand current popular ad search keywords and trends Help discover new creative directions and hot topics\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of suggestions to return, default 50\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code, default US\"},{\"name\":\"query\",\"type\":\"string\",\"required\":false,\"description\":\"Input keyword (optional), returns suggestions based on input; popular ones if omitted\"},{\"name\":\"scenario\",\"type\":\"integer\",\"required\":false,\"description\":\"Scenario type, default 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/ads/query-suggestions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"query\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"query\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/query-suggestions\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"query\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/query-suggestions\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/ads/query-suggestions\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/ads/query-suggestions\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/ads/query-suggestions\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/ads/query-suggestions\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/ads/query-suggestions\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/ads/query-suggestions\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Ad Query Suggestions\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/ads/query-suggestions\",\"description\":\"Returns popular or keyword-based ad search suggestions across TikTok. Filter results by target country code, scenario type, and an optional query string.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of suggestions to return, default 50\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code, default US\"},{\"name\":\"query\",\"type\":\"string\",\"required\":false,\"description\":\"Input keyword (optional), returns suggestions based on input; popular ones if omitted\"},{\"name\":\"scenario\",\"type\":\"integer\",\"required\":false,\"description\":\"Scenario type, default 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/ads/query-suggestions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"query\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"query\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/query-suggestions\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"query\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/query-suggestions\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/ads/query-suggestions\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/ads/query-suggestions\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/ads/query-suggestions\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/ads/query-suggestions\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/ads/query-suggestions\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/ads/query-suggestions\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get query suggestions" + modelName: "TikTok Ad Query Suggestions" modelId: "tiktok/ads/query-suggestions" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/ads/recommended-ads.md b/model-api-reference/platform-apis/tiktok/ads/recommended-ads.md index b71bc266..33fb59ca 100644 --- a/model-api-reference/platform-apis/tiktok/ads/recommended-ads.md +++ b/model-api-reference/platform-apis/tiktok/ads/recommended-ads.md @@ -1,13 +1,13 @@ --- -title: "Get recommended ads API Reference" -description: "SandBase API operation tiktok/ads/recommended-ads." +title: "TikTok Recommended Ads API Reference" +description: "TikTok Recommended Ads API reference for SandBase. Use model tiktok/ads/recommended-ads with /v1/api/tiktok/ads/recommended-ads; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/ads/recommended-ads" -apiReferenceJson: "{\"title\":\"Get recommended ads\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/ads/recommended-ads\",\"description\":\"Get similar recommended ads based on a specified ad Discover excellent ad cases in the same industry or with similar styles Provide more references and inspiration for ad creativity\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code, e.g., US, UK, JP\"},{\"name\":\"industry\",\"type\":\"string\",\"required\":false,\"description\":\"Industry ID, e.g., Games: 25308000000\"},{\"name\":\"material_id\",\"type\":\"string\",\"required\":true,\"description\":\"Reference ad material ID, required parameter\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/ads/recommended-ads \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"material_id\\\": \\\"material_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"material_id\\\": \\\"material_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/recommended-ads\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"material_id\\\": \\\"material_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/recommended-ads\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/ads/recommended-ads\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/ads/recommended-ads\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/ads/recommended-ads\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/ads/recommended-ads\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/ads/recommended-ads\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/ads/recommended-ads\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Recommended Ads\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/ads/recommended-ads\",\"description\":\"Returns similar recommended TikTok ads based on a specified ad material ID. Supports optional filtering by industry ID and country code.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code, e.g., US, UK, JP\"},{\"name\":\"industry\",\"type\":\"string\",\"required\":false,\"description\":\"Industry ID, e.g., Games: 25308000000\"},{\"name\":\"material_id\",\"type\":\"string\",\"required\":true,\"description\":\"Reference ad material ID, required parameter\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/ads/recommended-ads \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"material_id\\\": \\\"material_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"material_id\\\": \\\"material_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/recommended-ads\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"material_id\\\": \\\"material_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/recommended-ads\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/ads/recommended-ads\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/ads/recommended-ads\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/ads/recommended-ads\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/ads/recommended-ads\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/ads/recommended-ads\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/ads/recommended-ads\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get recommended ads" + modelName: "TikTok Recommended Ads" modelId: "tiktok/ads/recommended-ads" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/ads/search-ads.md b/model-api-reference/platform-apis/tiktok/ads/search-ads.md index f562ab4d..4ff631be 100644 --- a/model-api-reference/platform-apis/tiktok/ads/search-ads.md +++ b/model-api-reference/platform-apis/tiktok/ads/search-ads.md @@ -1,13 +1,13 @@ --- -title: "Search ads API Reference" -description: "SandBase API operation tiktok/ads/search-ads." +title: "TikTok Creative Center Ad Search API Reference" +description: "TikTok Creative Center Ad Search API reference for SandBase. Use model tiktok/ads/search-ads with /v1/api/tiktok/ads/search-ads; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/ads/search-ads" -apiReferenceJson: "{\"title\":\"Search ads\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/ads/search-ads\",\"description\":\"Search ads in TikTok's Creative Center with multi-dimensional filtering and sorting Discover effective ad cases related to specific industries, keywords, or objectives Provide reference and inspiration for ad planning and creative production\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"ad_format\",\"type\":\"integer\",\"required\":false,\"description\":\"Ad format, 1=Video ads\"},{\"name\":\"ad_language\",\"type\":\"string\",\"required\":false,\"description\":\"Ad language code, e.g., en, zh\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code, e.g., US, UK, JP\"},{\"name\":\"industry\",\"type\":\"string\",\"required\":false,\"description\":\"Industry ID list, multiple IDs separated by commas. Full industry ID list: https://github.com/TikHub/TikTok-Ads-Industry-Code\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, optional, returns all ads if empty\"},{\"name\":\"like\",\"type\":\"integer\",\"required\":false,\"description\":\"Like count filter, 1=All\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Items per page, default 20, max 50\"},{\"name\":\"objective\",\"type\":\"integer\",\"required\":false,\"description\":\"Ad objective, 1=All\"},{\"name\":\"order_by\",\"type\":\"string\",\"required\":false,\"description\":\"Sort method, \\\"for_you\\\"=Recommended, \\\"likes\\\"=Sort by likes\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\"},{\"name\":\"period\",\"type\":\"integer\",\"required\":false,\"description\":\"Time period in days, e.g., 7, 30, 120, 180 days\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID (optional)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/ads/search-ads \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/search-ads\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/search-ads\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/ads/search-ads\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/ads/search-ads\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/ads/search-ads\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/ads/search-ads\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/ads/search-ads\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/ads/search-ads\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Creative Center Ad Search\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/ads/search-ads\",\"description\":\"Searches ad materials in the TikTok Creative Center using filters such as keyword, industry, country, and performance metrics. Returns ad titles, brand names, IDs, and video metadata.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"ad_format\",\"type\":\"integer\",\"required\":false,\"description\":\"Ad format, 1=Video ads\"},{\"name\":\"ad_language\",\"type\":\"string\",\"required\":false,\"description\":\"Ad language code, e.g., en, zh\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code, e.g., US, UK, JP\"},{\"name\":\"industry\",\"type\":\"string\",\"required\":false,\"description\":\"Industry ID list, multiple IDs separated by commas. Full industry ID list: https://github.com/TikHub/TikTok-Ads-Industry-Code\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword, optional, returns all ads if empty\"},{\"name\":\"like\",\"type\":\"integer\",\"required\":false,\"description\":\"Like count filter, 1=All\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Items per page, default 20, max 50\"},{\"name\":\"objective\",\"type\":\"integer\",\"required\":false,\"description\":\"Ad objective, 1=All\"},{\"name\":\"order_by\",\"type\":\"string\",\"required\":false,\"description\":\"Sort method, \\\"for_you\\\"=Recommended, \\\"likes\\\"=Sort by likes\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\"},{\"name\":\"period\",\"type\":\"integer\",\"required\":false,\"description\":\"Time period in days, e.g., 7, 30, 120, 180 days\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID (optional)\"},{\"name\":\"duration\",\"type\":\"integer | null\",\"required\":false,\"description\":\"视频时长筛选值(可选)/Video duration filter value (optional)\"},{\"name\":\"pattern_label\",\"type\":\"string | null\",\"required\":false,\"description\":\"创意趋势标签(可选)/Creative pattern label (optional)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/ads/search-ads \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"keyword\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"keyword\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/search-ads\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"keyword\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/search-ads\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/ads/search-ads\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/ads/search-ads\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/ads/search-ads\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/ads/search-ads\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/ads/search-ads\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/ads/search-ads\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search ads" + modelName: "TikTok Creative Center Ad Search" modelId: "tiktok/ads/search-ads" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/ads/top-ads-spotlight.md b/model-api-reference/platform-apis/tiktok/ads/top-ads-spotlight.md index 6ec59c9f..6398ad58 100644 --- a/model-api-reference/platform-apis/tiktok/ads/top-ads-spotlight.md +++ b/model-api-reference/platform-apis/tiktok/ads/top-ads-spotlight.md @@ -1,13 +1,13 @@ --- -title: "Get top ads spotlight API Reference" -description: "SandBase API operation tiktok/ads/top-ads-spotlight." +title: "TikTok Top Ads Spotlight API Reference" +description: "TikTok Top Ads Spotlight API reference for SandBase. Use model tiktok/ads/top-ads-spotlight with /v1/api/tiktok/ads/top-ads-spotlight; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/ads/top-ads-spotlight" -apiReferenceJson: "{\"title\":\"Get top ads spotlight\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/ads/top-ads-spotlight\",\"description\":\"Get top ads spotlight for specific industries, showcasing the most popular ad cases Analyze creative trends and excellent cases within the industry Provide inspiration and reference for ad creative production\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"industry\",\"type\":\"string\",\"required\":false,\"description\":\"Industry ID, optional, returns cross-industry list if omitted, e.g., Education: 25000000000\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Items per page, default 20\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/ads/top-ads-spotlight \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/ads/top-ads-spotlight\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/ads/top-ads-spotlight\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/top-ads-spotlight\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/ads/top-ads-spotlight\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/top-ads-spotlight\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/ads/top-ads-spotlight\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/ads/top-ads-spotlight\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/ads/top-ads-spotlight\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/ads/top-ads-spotlight\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/ads/top-ads-spotlight\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/ads/top-ads-spotlight\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Top Ads Spotlight\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/ads/top-ads-spotlight\",\"description\":\"Returns top spotlight ad cases, highlights, and performance metrics across industries or filtered by a specific industry ID. Supports pagination via page and limit parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"industry\",\"type\":\"string\",\"required\":false,\"description\":\"Industry ID, optional, returns cross-industry list if omitted, e.g., Education: 25000000000\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Items per page, default 20\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/ads/top-ads-spotlight \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/top-ads-spotlight\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/top-ads-spotlight\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/ads/top-ads-spotlight\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/ads/top-ads-spotlight\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/ads/top-ads-spotlight\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/ads/top-ads-spotlight\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/ads/top-ads-spotlight\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/ads/top-ads-spotlight\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get top ads spotlight" + modelName: "TikTok Top Ads Spotlight" modelId: "tiktok/ads/top-ads-spotlight" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/ads/trends-hashtag-detail.md b/model-api-reference/platform-apis/tiktok/ads/trends-hashtag-detail.md deleted file mode 100644 index 1e42da4f..00000000 --- a/model-api-reference/platform-apis/tiktok/ads/trends-hashtag-detail.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get trending hashtag detail API Reference" -description: "SandBase API operation tiktok/ads/trends-hashtag-detail." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/tiktok/ads/trends-hashtag-detail" -apiReferenceJson: "{\"title\":\"Get trending hashtag detail\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/ads/trends-hashtag-detail\",\"description\":\"Get detailed data of a single trending hashtag from the Trends section Includes popularity curve, related videos, audience age profile, representative countries\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code, default US\"},{\"name\":\"hashtag_id\",\"type\":\"string\",\"required\":true,\"description\":\"Hashtag ID, obtained from /get_trends_hashtag_list\"},{\"name\":\"time_range\",\"type\":\"integer\",\"required\":false,\"description\":\"Time range in days, one of 7 / 30 / 90, default 90 (must match the hashtag's ranking range or data will be empty)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/ads/trends-hashtag-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"hashtag_id\\\": \\\"hashtag_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"hashtag_id\\\": \\\"hashtag_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/trends-hashtag-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"hashtag_id\\\": \\\"hashtag_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/trends-hashtag-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/ads/trends-hashtag-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/ads/trends-hashtag-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/ads/trends-hashtag-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/ads/trends-hashtag-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/ads/trends-hashtag-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/ads/trends-hashtag-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get trending hashtag detail" - modelId: "tiktok/ads/trends-hashtag-detail" - vendor: "TikTok" - vendorSlug: "tiktok" - modelSlug: "ads/trends-hashtag-detail" - protocol: "API Reference" - endpoint: "/v1/api/tiktok/ads/trends-hashtag-detail" - publishedAt: "" - capabilities: ["api","tiktok"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/tiktok/ads/trends-hashtag-list.md b/model-api-reference/platform-apis/tiktok/ads/trends-hashtag-list.md index 0f253bb5..43c9c6a5 100644 --- a/model-api-reference/platform-apis/tiktok/ads/trends-hashtag-list.md +++ b/model-api-reference/platform-apis/tiktok/ads/trends-hashtag-list.md @@ -1,13 +1,13 @@ --- -title: "Get trending hashtag list API Reference" -description: "SandBase API operation tiktok/ads/trends-hashtag-list." +title: "TikTok Trending Hashtags API Reference" +description: "SandBase API reference for model tiktok/ads/trends-hashtag-list. Call /v1/api/tiktok/ads/trends-hashtag-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/ads/trends-hashtag-list" -apiReferenceJson: "{\"title\":\"Get trending hashtag list\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/ads/trends-hashtag-list\",\"description\":\"Get the trending hashtag ranking from the Trends section of TikTok Creative Center Switch by country/region to discover trending topics across markets\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code, default US (see /get_location_list for options)\"},{\"name\":\"industry_id\",\"type\":\"integer\",\"required\":false,\"description\":\"First-level industry ID (optional), filters hashtags by industry; omit for all industries. Options:\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Items per page, default 20\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\"},{\"name\":\"time_range\",\"type\":\"integer\",\"required\":false,\"description\":\"Time range in days, one of 7 / 30 / 90, default 7\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/ads/trends-hashtag-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/ads/trends-hashtag-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/ads/trends-hashtag-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/trends-hashtag-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/ads/trends-hashtag-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/trends-hashtag-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/ads/trends-hashtag-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/ads/trends-hashtag-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/ads/trends-hashtag-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/ads/trends-hashtag-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/ads/trends-hashtag-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/ads/trends-hashtag-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Trending Hashtags\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/ads/trends-hashtag-list\",\"description\":\"Get trending TikTok hashtags from TikTok Creative Center by country and industry: rank, posts, views and popularity curve over 7, 30 or 90 days.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code, default US (see /get_location_list for options)\"},{\"name\":\"industry_id\",\"type\":\"integer\",\"required\":false,\"description\":\"First-level industry ID (optional), filters hashtags by industry; omit for all industries. Options: 10000000000: Education; 11000000000: Vehicle & Transportation; 12000000000: Baby, Kids & Maternity; 13000000000: Financial Services; 14000000000: Beauty & Personal Care; 15000000000: Tech & Electronics; 16000000000: Appliances; 17000000000: Travel; 18000000000: Household Products; 19000000000: Pets; 20000000000: Apps; 21000000000: Home Improvement; 22000000000: Apparel & Accessories; 23000000000: News & Entertainment; 24000000000: Business Services; 25000000000: Games; 26000000000: Life Services; 27000000000: Food & Beverage; 28000000000: Sports & Outdoor; 29000000000: Health\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Items per page, default 20\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\"},{\"name\":\"time_range\",\"type\":\"integer\",\"required\":false,\"description\":\"Time range in days, one of 7 / 30 / 90, default 7\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/ads/trends-hashtag-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/trends-hashtag-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/ads/trends-hashtag-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/ads/trends-hashtag-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/ads/trends-hashtag-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/ads/trends-hashtag-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/ads/trends-hashtag-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/ads/trends-hashtag-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/ads/trends-hashtag-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get trending hashtag list" + modelName: "TikTok Trending Hashtags" modelId: "tiktok/ads/trends-hashtag-list" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/analytics/comment-keywords.md b/model-api-reference/platform-apis/tiktok/analytics/comment-keywords.md index 7be4969a..7efc4927 100644 --- a/model-api-reference/platform-apis/tiktok/analytics/comment-keywords.md +++ b/model-api-reference/platform-apis/tiktok/analytics/comment-keywords.md @@ -1,13 +1,13 @@ --- -title: "Get comment keywords analysis API Reference" -description: "SandBase API operation tiktok/analytics/comment-keywords." +title: "TikTok Video Comment Keywords API Reference" +description: "SandBase API reference for model tiktok/analytics/comment-keywords. Call /v1/api/tiktok/analytics/comment-keywords; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/analytics/comment-keywords" -apiReferenceJson: "{\"title\":\"Get comment keywords analysis\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/analytics/comment-keywords\",\"description\":\"Analyze popular keywords and topics in video comments to uncover user feedback Extract main content and opinions from audience comments to understand viewer focus points Support creators in optimizing content strategy and enhancing audience engagement and connection\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID, required parameter, can be obtained from video sharing links or TikTok Studio\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/analytics/comment-keywords \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/analytics/comment-keywords\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/analytics/comment-keywords\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/analytics/comment-keywords\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/analytics/comment-keywords\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/analytics/comment-keywords\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/analytics/comment-keywords\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/analytics/comment-keywords\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/analytics/comment-keywords\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Video Comment Keywords\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/analytics/comment-keywords\",\"description\":\"Returns extracted keywords and topics from user comments on a TikTok video. Queries are filtered by the unique video identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID, required parameter, can be obtained from video sharing links or TikTok Studio\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/analytics/comment-keywords \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"item_id\\\": \\\"7350810998023949599\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"item_id\\\": \\\"7350810998023949599\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/analytics/comment-keywords\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"item_id\\\": \\\"7350810998023949599\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/analytics/comment-keywords\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/analytics/comment-keywords\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/analytics/comment-keywords\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/analytics/comment-keywords\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/analytics/comment-keywords\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/analytics/comment-keywords\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/analytics/comment-keywords\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get comment keywords analysis" + modelName: "TikTok Video Comment Keywords" modelId: "tiktok/analytics/comment-keywords" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/analytics/creator-info-and-milestones.md b/model-api-reference/platform-apis/tiktok/analytics/creator-info-and-milestones.md index 567b205d..7b5d44ad 100644 --- a/model-api-reference/platform-apis/tiktok/analytics/creator-info-and-milestones.md +++ b/model-api-reference/platform-apis/tiktok/analytics/creator-info-and-milestones.md @@ -1,13 +1,13 @@ --- -title: "Get creator info and milestones API Reference" -description: "SandBase API operation tiktok/analytics/creator-info-and-milestones." +title: "TikTok Creator Info and Milestones API Reference" +description: "SandBase API reference: tiktok/analytics/creator-info-and-milestones via /v1/api/tiktok/analytics/creator-info-and-milestones. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/analytics/creator-info-and-milestones" -apiReferenceJson: "{\"title\":\"Get creator info and milestones\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/analytics/creator-info-and-milestones\",\"description\":\"Retrieve basic information and key metrics for TikTok creator accounts View creator growth journey and important achieved milestones Analyze creator account development trajectory, understand follower growth and content influence changes\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator user ID, required parameter, can be obtained from user profile URL or TikTok backend\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/analytics/creator-info-and-milestones \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/analytics/creator-info-and-milestones\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/analytics/creator-info-and-milestones\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/analytics/creator-info-and-milestones\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/analytics/creator-info-and-milestones\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/analytics/creator-info-and-milestones\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/analytics/creator-info-and-milestones\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/analytics/creator-info-and-milestones\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/analytics/creator-info-and-milestones\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Creator Info and Milestones\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/analytics/creator-info-and-milestones\",\"description\":\"Returns creator details and milestone history for a specified TikTok account. Looks up account growth events and metrics using the creator's user ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Creator user ID, required parameter, can be obtained from user profile URL or TikTok backend\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/analytics/creator-info-and-milestones \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"107955\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"107955\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/analytics/creator-info-and-milestones\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"107955\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/analytics/creator-info-and-milestones\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/analytics/creator-info-and-milestones\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/analytics/creator-info-and-milestones\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/analytics/creator-info-and-milestones\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/analytics/creator-info-and-milestones\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/analytics/creator-info-and-milestones\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/analytics/creator-info-and-milestones\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get creator info and milestones" + modelName: "TikTok Creator Info and Milestones" modelId: "tiktok/analytics/creator-info-and-milestones" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/analytics/detect-fake-views.md b/model-api-reference/platform-apis/tiktok/analytics/detect-fake-views.md index f8e4af2a..a103c7cb 100644 --- a/model-api-reference/platform-apis/tiktok/analytics/detect-fake-views.md +++ b/model-api-reference/platform-apis/tiktok/analytics/detect-fake-views.md @@ -1,11 +1,11 @@ --- title: "Detect fake views in video API Reference" -description: "SandBase API operation tiktok/analytics/detect-fake-views." +description: "SandBase API reference for model tiktok/analytics/detect-fake-views. Call /v1/api/tiktok/analytics/detect-fake-views; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/analytics/detect-fake-views" -apiReferenceJson: "{\"title\":\"Detect fake views in video\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/analytics/detect-fake-views\",\"description\":\"Analyze TikTok video traffic data using advanced algorithms to precisely detect potential fake views and unnatural engagement Evaluate content authenticity and traffic quality based on TikTok's Traffic Pool theory Provide comprehensive fraud risk analysis with in-depth assessment across 8 dimensions and 20+ metrics Deliver professional traffic quality reports and optimization recommendations for creators, MCN agencies, and content managers\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"content_category\",\"type\":\"string\",\"required\":false,\"description\":\"Content category, optional parameter, affects engagement rate benchmarks, options include:\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID, required parameter, can be extracted from video URL (e.g., 7460937381265411370 from https://www.tiktok.com/@tiktok/video/7460937381265411370)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/analytics/detect-fake-views \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/analytics/detect-fake-views\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/analytics/detect-fake-views\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/analytics/detect-fake-views\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/analytics/detect-fake-views\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/analytics/detect-fake-views\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/analytics/detect-fake-views\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/analytics/detect-fake-views\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/analytics/detect-fake-views\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Detect fake views in video\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/analytics/detect-fake-views\",\"description\":\"Check whether a TikTok video has fake views. Paste a video ID and get a fake-view score, the estimated share of inflated views, and a risk level, based on engagement ratios, follower growth, creator credibility and TikTok's traffic-pool tiers. Built for creators, MCN agencies and brands vetting influencers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"TikTok video ID: the number after /video/ in the video URL. For https://www.tiktok.com/@tiktok/video/7460937381265411370 the ID is 7460937381265411370.\"},{\"name\":\"content_category\",\"type\":\"string\",\"required\":false,\"description\":\"Content category used to pick engagement-rate benchmarks. Use verified_large for verified accounts with very large followings.\",\"default\":\"default\",\"constraints\":\"Allowed values: default, entertainment, education, product, verified_large\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/analytics/detect-fake-views \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"item_id\\\": \\\"7460937381265411370\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"item_id\\\": \\\"7460937381265411370\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/analytics/detect-fake-views\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"item_id\\\": \\\"7460937381265411370\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/analytics/detect-fake-views\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/analytics/detect-fake-views\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/analytics/detect-fake-views\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/analytics/detect-fake-views\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/analytics/detect-fake-views\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/analytics/detect-fake-views\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/analytics/detect-fake-views\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: modelName: "Detect fake views in video" modelId: "tiktok/analytics/detect-fake-views" diff --git a/model-api-reference/platform-apis/tiktok/analytics/video-metrics.md b/model-api-reference/platform-apis/tiktok/analytics/video-metrics.md index d6f66e87..cf58f953 100644 --- a/model-api-reference/platform-apis/tiktok/analytics/video-metrics.md +++ b/model-api-reference/platform-apis/tiktok/analytics/video-metrics.md @@ -1,13 +1,13 @@ --- -title: "Get video metrics API Reference" -description: "SandBase API operation tiktok/analytics/video-metrics." +title: "TikTok Video Metrics API Reference" +description: "TikTok Video Metrics API reference for SandBase. Use model tiktok/analytics/video-metrics with /v1/api/tiktok/analytics/video-metrics; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/analytics/video-metrics" -apiReferenceJson: "{\"title\":\"Get video metrics\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/analytics/video-metrics\",\"description\":\"Retrieve detailed analytics data for TikTok videos, including views, likes, comments, and favorites Provide total statistics and daily trends for 14 days since the release date, facilitating video performance analysis Help creators analyze content effectiveness, evaluate user engagement, and optimize content strategy\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID, required parameter, can be obtained from video sharing links or TikTok Studio\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/analytics/video-metrics \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/analytics/video-metrics\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/analytics/video-metrics\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/analytics/video-metrics\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/analytics/video-metrics\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/analytics/video-metrics\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/analytics/video-metrics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/analytics/video-metrics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/analytics/video-metrics\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Video Metrics\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/analytics/video-metrics\",\"description\":\"Retrieve detailed analytics for TikTok videos, including total views, likes, comments, favorites, and 14-day daily performance trends using a video identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID, required parameter, can be obtained from video sharing links or TikTok Studio\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/analytics/video-metrics \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"item_id\\\": \\\"7350810998023949599\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"item_id\\\": \\\"7350810998023949599\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/analytics/video-metrics\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"item_id\\\": \\\"7350810998023949599\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/analytics/video-metrics\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/analytics/video-metrics\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/analytics/video-metrics\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/analytics/video-metrics\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/analytics/video-metrics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/analytics/video-metrics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/analytics/video-metrics\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video metrics" + modelName: "TikTok Video Metrics" modelId: "tiktok/analytics/video-metrics" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/check-live-room-online-batch.md b/model-api-reference/platform-apis/tiktok/app-v3/check-live-room-online-batch.md index 72cf1ef1..e61e173a 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/check-live-room-online-batch.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/check-live-room-online-batch.md @@ -1,13 +1,13 @@ --- -title: "Batch check if live rooms are online API Reference" -description: "SandBase API operation tiktok/app-v3/check-live-room-online-batch." +title: "TikTok Room Online Status Batch API Reference" +description: "SandBase API reference for model tiktok/app-v3/check-live-room-online-batch. Call /v1/api/tiktok/app-v3/check-live-room-online-batch; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/check-live-room-online-batch" -apiReferenceJson: "{\"title\":\"Batch check if live rooms are online\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/check-live-room-online-batch\",\"description\":\"Batch check TikTok live rooms' online status, supports up to 50 room IDs Room IDs can be retrieved from `/api/v1/tiktok/web/get_live_room_id`\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"room_ids\",\"type\":\"array\",\"required\":false,\"description\":\"List of TikTok live room IDs\",\"default\":\"[\\\"7494491933781003054\\\",\\\"7494514925034113835\\\",\\\"7494520590523517739\\\"]\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/check-live-room-online-batch \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/app-v3/check-live-room-online-batch\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/app-v3/check-live-room-online-batch\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/check-live-room-online-batch\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/app-v3/check-live-room-online-batch\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/check-live-room-online-batch\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/check-live-room-online-batch\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/check-live-room-online-batch\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/check-live-room-online-batch\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/check-live-room-online-batch\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/check-live-room-online-batch\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/check-live-room-online-batch\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Room Online Status Batch\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/check-live-room-online-batch\",\"description\":\"Returns the online availability status for multiple TikTok broadcast rooms in a single request. Accepts a list of up to 50 room IDs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"room_ids\",\"type\":\"array\",\"required\":false,\"description\":\"List of TikTok live room IDs\",\"default\":\"[\\\"7494491933781003054\\\",\\\"7494514925034113835\\\",\\\"7494520590523517739\\\"]\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/check-live-room-online-batch \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/check-live-room-online-batch\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/check-live-room-online-batch\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/check-live-room-online-batch\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/check-live-room-online-batch\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/check-live-room-online-batch\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/check-live-room-online-batch\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/check-live-room-online-batch\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/check-live-room-online-batch\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Batch check if live rooms are online" + modelName: "TikTok Room Online Status Batch" modelId: "tiktok/app-v3/check-live-room-online-batch" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/check-live-room-online.md b/model-api-reference/platform-apis/tiktok/app-v3/check-live-room-online.md index bf92aa6b..f9f7c2d7 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/check-live-room-online.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/check-live-room-online.md @@ -1,13 +1,13 @@ --- -title: "Check if live room is online API Reference" -description: "SandBase API operation tiktok/app-v3/check-live-room-online." +title: "TikTok LIVE Status API Reference" +description: "SandBase API reference for model tiktok/app-v3/check-live-room-online. Call /v1/api/tiktok/app-v3/check-live-room-online; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/check-live-room-online" -apiReferenceJson: "{\"title\":\"Check if live room is online\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/check-live-room-online\",\"description\":\"Check if live room is online The Room ID of the live room can be obtained from the `/api/v1/tiktok/web/get_live_room_id` interface through the live room link\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Live room id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/check-live-room-online \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"room_id\\\": \\\"7358603858249009962\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"room_id\\\": \\\"7358603858249009962\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/check-live-room-online\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"room_id\\\": \\\"7358603858249009962\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/check-live-room-online\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/check-live-room-online\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/check-live-room-online\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/check-live-room-online\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/check-live-room-online\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/check-live-room-online\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/check-live-room-online\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok LIVE Status\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/check-live-room-online\",\"description\":\"Check whether a TikTok LIVE room is currently live by room ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Live room id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/check-live-room-online \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"room_id\\\": \\\"7358603858249009962\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"room_id\\\": \\\"7358603858249009962\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/check-live-room-online\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"room_id\\\": \\\"7358603858249009962\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/check-live-room-online\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/check-live-room-online\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/check-live-room-online\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/check-live-room-online\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/check-live-room-online\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/check-live-room-online\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/check-live-room-online\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Check if live room is online" + modelName: "TikTok LIVE Status" modelId: "tiktok/app-v3/check-live-room-online" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/content-translate.md b/model-api-reference/platform-apis/tiktok/app-v3/content-translate.md index 2dc8b5cc..f41576ec 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/content-translate.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/content-translate.md @@ -1,13 +1,13 @@ --- -title: "Get content translation data API Reference" -description: "SandBase API operation tiktok/app-v3/content-translate." +title: "TikTok Content Translation API Reference" +description: "SandBase API reference for model tiktok/app-v3/content-translate. Call /v1/api/tiktok/app-v3/content-translate; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/content-translate" -apiReferenceJson: "{\"title\":\"Get content translation data\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/content-translate\",\"description\":\"Get content translation data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"src_content\",\"type\":\"string\",\"required\":false,\"description\":\"Source content, that is, the content that needs to be translated, the length does not exceed 5000 characters, if it exceeds 5000 characters, only the first 5000 characters will be translated.\",\"default\":\"Hello, welcome to TikHub!\"},{\"name\":\"trg_lang\",\"type\":\"string\",\"required\":false,\"description\":\"Target language\",\"default\":\"zh-Hans\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/content-translate \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/app-v3/content-translate\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/app-v3/content-translate\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/content-translate\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/app-v3/content-translate\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/content-translate\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/content-translate\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/content-translate\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/content-translate\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/content-translate\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/content-translate\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/content-translate\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Content Translation\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/content-translate\",\"description\":\"Translates provided text content into a designated target language. Accepts source text up to 5000 characters and returns the corresponding translated text string.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"src_content\",\"type\":\"string\",\"required\":false,\"description\":\"Source content, that is, the content that needs to be translated, the length does not exceed 5000 characters, if it exceeds 5000 characters, only the first 5000 characters will be translated.\",\"default\":\"Hello, welcome to TikHub!\"},{\"name\":\"trg_lang\",\"type\":\"string\",\"required\":false,\"description\":\"Target language\",\"default\":\"zh-Hans\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/content-translate \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/content-translate\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/content-translate\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/content-translate\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/content-translate\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/content-translate\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/content-translate\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/content-translate\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/content-translate\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get content translation data" + modelName: "TikTok Content Translation" modelId: "tiktok/app-v3/content-translate" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/creator-search-insights-detail.md b/model-api-reference/platform-apis/tiktok/app-v3/creator-search-insights-detail.md index 58e346b9..b44cf5ed 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/creator-search-insights-detail.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/creator-search-insights-detail.md @@ -1,13 +1,13 @@ --- -title: "Creator Search Insights Detail API Reference" -description: "SandBase API operation tiktok/app-v3/creator-search-insights-detail." +title: "TikTok Creator Search Insights Detail API Reference" +description: "SandBase API reference: tiktok/app-v3/creator-search-insights-detail via /v1/api/tiktok/app-v3/creator-search-insights-detail. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/creator-search-insights-detail" -apiReferenceJson: "{\"title\":\"Creator Search Insights Detail\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/creator-search-insights-detail\",\"description\":\"Get creator search insights detail data, used to query search statistics for specific query\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"dimension_list\",\"type\":\"string\",\"required\":false,\"description\":\"Dimension list, separated by comma, options: gender, age, country\"},{\"name\":\"end_date\",\"type\":\"integer\",\"required\":false,\"description\":\"End timestamp (seconds), only for custom range\"},{\"name\":\"query_id_str\",\"type\":\"string\",\"required\":true,\"description\":\"Query ID, obtained from fetch_creator_search_insights response\"},{\"name\":\"start_date\",\"type\":\"integer\",\"required\":false,\"description\":\"Start timestamp (seconds), only for custom range\"},{\"name\":\"time_range\",\"type\":\"string\",\"required\":false,\"description\":\"Time range, options:\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/creator-search-insights-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query_id_str\\\": \\\"query_id_str\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query_id_str\\\": \\\"query_id_str\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/creator-search-insights-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query_id_str\\\": \\\"query_id_str\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/creator-search-insights-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/creator-search-insights-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Creator Search Insights Detail\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/creator-search-insights-detail\",\"description\":\"Get detailed statistics for a TikTok Creator Search Insights query: popularity over time and audience breakdown by age, gender and country.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"dimension_list\",\"type\":\"string\",\"required\":false,\"description\":\"Dimension list, separated by comma, options: gender, age, country\"},{\"name\":\"end_date\",\"type\":\"integer\",\"required\":false,\"description\":\"End timestamp (seconds), only for custom range\"},{\"name\":\"query_id_str\",\"type\":\"string\",\"required\":true,\"description\":\"Query ID, obtained from fetch_creator_search_insights response\"},{\"name\":\"start_date\",\"type\":\"integer\",\"required\":false,\"description\":\"Start timestamp (seconds), only for custom range\"},{\"name\":\"time_range\",\"type\":\"string\",\"required\":false,\"description\":\"Time range (past_7_days/past_30_days/past_60_days/past_6_months/custom)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/creator-search-insights-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query_id_str\\\": \\\"query_id_str\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query_id_str\\\": \\\"query_id_str\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/creator-search-insights-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query_id_str\\\": \\\"query_id_str\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/creator-search-insights-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/creator-search-insights-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Creator Search Insights Detail" + modelName: "TikTok Creator Search Insights Detail" modelId: "tiktok/app-v3/creator-search-insights-detail" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/creator-search-insights-trend.md b/model-api-reference/platform-apis/tiktok/app-v3/creator-search-insights-trend.md index ea0d1958..37a9fccf 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/creator-search-insights-trend.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/creator-search-insights-trend.md @@ -1,13 +1,13 @@ --- -title: "Creator Search Insights Trend API Reference" -description: "SandBase API operation tiktok/app-v3/creator-search-insights-trend." +title: "TikTok Creator Search Insights Trend API Reference" +description: "SandBase API reference for model tiktok/app-v3/creator-search-insights-trend. Call /v1/api/tiktok/app-v3/creator-search-insights-trend; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/creator-search-insights-trend" -apiReferenceJson: "{\"title\":\"Creator Search Insights Trend\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/creator-search-insights-trend\",\"description\":\"Get creator search insights trend data, including search popularity by region and time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"from_tab_path\",\"type\":\"string\",\"required\":false,\"description\":\"From tab path, default \\\"TRENDING,TOPICS\\\"\"},{\"name\":\"query_analysis_required\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether query analysis is required, default True\"},{\"name\":\"query_id_str\",\"type\":\"string\",\"required\":true,\"description\":\"Query ID, obtained from fetch_creator_search_insights response\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/creator-search-insights-trend \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query_id_str\\\": \\\"query_id_str\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query_id_str\\\": \\\"query_id_str\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/creator-search-insights-trend\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query_id_str\\\": \\\"query_id_str\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/creator-search-insights-trend\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-trend\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-trend\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-trend\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-trend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-trend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/creator-search-insights-trend\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Creator Search Insights Trend\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/creator-search-insights-trend\",\"description\":\"Returns creator search insights trend data, covering search popularity across regions and time periods for a specified query ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"from_tab_path\",\"type\":\"string\",\"required\":false,\"description\":\"From tab path, default \\\"TRENDING,TOPICS\\\"\"},{\"name\":\"query_analysis_required\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether query analysis is required, default True\"},{\"name\":\"query_id_str\",\"type\":\"string\",\"required\":true,\"description\":\"Query ID, obtained from fetch_creator_search_insights response\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/creator-search-insights-trend \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query_id_str\\\": \\\"query_id_str\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query_id_str\\\": \\\"query_id_str\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/creator-search-insights-trend\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query_id_str\\\": \\\"query_id_str\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/creator-search-insights-trend\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-trend\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-trend\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-trend\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-trend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-trend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/creator-search-insights-trend\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Creator Search Insights Trend" + modelName: "TikTok Creator Search Insights Trend" modelId: "tiktok/app-v3/creator-search-insights-trend" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/creator-search-insights-videos.md b/model-api-reference/platform-apis/tiktok/app-v3/creator-search-insights-videos.md index e1d95f95..62db2d3a 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/creator-search-insights-videos.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/creator-search-insights-videos.md @@ -1,13 +1,13 @@ --- -title: "Creator Search Insights Videos API Reference" -description: "SandBase API operation tiktok/app-v3/creator-search-insights-videos." +title: "TikTok Creator Search Insights Videos API Reference" +description: "SandBase API reference: tiktok/app-v3/creator-search-insights-videos via /v1/api/tiktok/app-v3/creator-search-insights-videos. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/creator-search-insights-videos" -apiReferenceJson: "{\"title\":\"Creator Search Insights Videos\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/creator-search-insights-videos\",\"description\":\"Get creator search insights related videos, query popular related videos for the search term\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page, default 20\",\"default\":\"20\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword, obtained from fetch_creator_search_insights or fetch_creator_search_insights_trend\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination offset, default 0\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/creator-search-insights-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/creator-search-insights-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/creator-search-insights-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/creator-search-insights-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Creator Search Insights Videos\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/creator-search-insights-videos\",\"description\":\"Returns popular videos related to a specific search term from creator search insights. Results support pagination using offset and count parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page, default 20\",\"default\":\"20\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword, obtained from fetch_creator_search_insights or fetch_creator_search_insights_trend\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination offset, default 0\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/creator-search-insights-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/creator-search-insights-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/creator-search-insights-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/creator-search-insights-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Creator Search Insights Videos" + modelName: "TikTok Creator Search Insights Videos" modelId: "tiktok/app-v3/creator-search-insights-videos" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/creator-search-insights.md b/model-api-reference/platform-apis/tiktok/app-v3/creator-search-insights.md index 5c57a5da..797c6a59 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/creator-search-insights.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/creator-search-insights.md @@ -1,13 +1,13 @@ --- -title: "Creator Search Insights API Reference" -description: "SandBase API operation tiktok/app-v3/creator-search-insights." +title: "TikTok Creator Search Insights API Reference" +description: "SandBase API reference for model tiktok/app-v3/creator-search-insights. Call /v1/api/tiktok/app-v3/creator-search-insights; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/creator-search-insights" -apiReferenceJson: "{\"title\":\"Creator Search Insights\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/creator-search-insights\",\"description\":\"Get creator search insights data, used to understand trending search topics and creative inspiration\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"category_filters\",\"type\":\"string\",\"required\":false,\"description\":\"Category filters, separated by comma, options: Gaming, Fashion, Tourism, Science, Food, Sports\",\"default\":\"\\\"\\\"\"},{\"name\":\"creator_source\",\"type\":\"string\",\"required\":false,\"description\":\"Creator source, default \\\"general_search\\\"\",\"default\":\"general_search\"},{\"name\":\"force_refresh\",\"type\":\"boolean\",\"required\":false,\"description\":\"Force refresh, default False\",\"default\":\"false\"},{\"name\":\"language_filters\",\"type\":\"string\",\"required\":false,\"description\":\"Language filters, separated by comma, options: id, de, en, es, fr, pt, vi, tr, ar, th, ja, ko\",\"default\":\"en\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page, default 20\",\"default\":\"20\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination offset, default 0\",\"default\":\"0\"},{\"name\":\"tab\",\"type\":\"string\",\"required\":false,\"description\":\"Tab type, options:\",\"default\":\"all\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/creator-search-insights \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/app-v3/creator-search-insights\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/app-v3/creator-search-insights\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/creator-search-insights\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/app-v3/creator-search-insights\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/creator-search-insights\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/creator-search-insights\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Creator Search Insights\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/creator-search-insights\",\"description\":\"Get TikTok Creator Search Insights: trending search queries with popularity scores, trend history and video counts, including content-gap topics, by category and language.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"category_filters\",\"type\":\"string\",\"required\":false,\"description\":\"Category filters, separated by comma, options: Gaming, Fashion, Tourism, Science, Food, Sports\",\"default\":\"\\\"\\\"\"},{\"name\":\"creator_source\",\"type\":\"string\",\"required\":false,\"description\":\"Creator source, default \\\"general_search\\\"\",\"default\":\"general_search\"},{\"name\":\"force_refresh\",\"type\":\"boolean\",\"required\":false,\"description\":\"Force refresh, default False\",\"default\":\"false\"},{\"name\":\"language_filters\",\"type\":\"string\",\"required\":false,\"description\":\"Language filters, separated by comma, options: id, de, en, es, fr, pt, vi, tr, ar, th, ja, ko\",\"default\":\"en\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page, default 20\",\"default\":\"20\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination offset, default 0\",\"default\":\"0\"},{\"name\":\"tab\",\"type\":\"string\",\"required\":false,\"description\":\"Tab type (all/content_gap/follower_searched/life_style/topics/challenges/sounds/hashtags)\",\"default\":\"all\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/creator-search-insights \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/creator-search-insights\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/creator-search-insights\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/creator-search-insights\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/creator-search-insights\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Creator Search Insights" + modelName: "TikTok Creator Search Insights" modelId: "tiktok/app-v3/creator-search-insights" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/general-search-result.md b/model-api-reference/platform-apis/tiktok/app-v3/general-search-result.md index a47ed84a..a85cabe9 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/general-search-result.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/general-search-result.md @@ -1,13 +1,13 @@ --- -title: "Get comprehensive search results of specified API Ref" -description: "SandBase API operation tiktok/app-v3/general-search-result." +title: "TikTok Search API Reference" +description: "SandBase API reference for model tiktok/app-v3/general-search-result. Call /v1/api/tiktok/app-v3/general-search-result; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/general-search-result" -apiReferenceJson: "{\"title\":\"Get comprehensive search results of specified keywords\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/general-search-result\",\"description\":\"Get comprehensive search results of specified keywords\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\",\"default\":\"20\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"},{\"name\":\"publish_time\",\"type\":\"integer\",\"required\":false,\"description\":\"0-Unlimited, 1-Last day, 7-Last week, 30-Last month, 90-Last three months, 180-Last half year\",\"default\":\"0\"},{\"name\":\"sort_type\",\"type\":\"integer\",\"required\":false,\"description\":\"0-Relatedness, 1-Most likes\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/general-search-result \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/general-search-result\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/general-search-result\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/general-search-result\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/general-search-result\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/general-search-result\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/general-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/general-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/general-search-result\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Search\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/general-search-result\",\"description\":\"Search TikTok by keyword across videos and users (Top tab). Returns videos with descriptions, authors and play, like, comment and share counts, with sort and publish-time filters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\",\"default\":\"20\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"},{\"name\":\"publish_time\",\"type\":\"integer\",\"required\":false,\"description\":\"0-Unlimited, 1-Last day, 7-Last week, 30-Last month, 90-Last three months, 180-Last half year\",\"default\":\"0\"},{\"name\":\"sort_type\",\"type\":\"integer\",\"required\":false,\"description\":\"0-Relatedness, 1-Most likes\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/general-search-result \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/general-search-result\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/general-search-result\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/general-search-result\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/general-search-result\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/general-search-result\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/general-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/general-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/general-search-result\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get comprehensive search results of specified keywords" + modelName: "TikTok Search" modelId: "tiktok/app-v3/general-search-result" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/hashtag-detail.md b/model-api-reference/platform-apis/tiktok/app-v3/hashtag-detail.md index c4487cd2..fe4af7e0 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/hashtag-detail.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/hashtag-detail.md @@ -1,13 +1,13 @@ --- -title: "Get details of specified hashtag API Reference — TikTok Detail" -description: "SandBase API operation tiktok/app-v3/hashtag-detail." +title: "TikTok Hashtag Detail API Reference" +description: "TikTok Hashtag Detail API reference for SandBase. Use model tiktok/app-v3/hashtag-detail with /v1/api/tiktok/app-v3/hashtag-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/hashtag-detail" -apiReferenceJson: "{\"title\":\"Get details of specified hashtag\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/hashtag-detail\",\"description\":\"Get details of specified hashtag\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"ch_id\",\"type\":\"string\",\"required\":true,\"description\":\"Hashtag id\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region, supports US, GB, FR, JP, VN, SG, default US\",\"default\":\"US\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/hashtag-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"ch_id\\\": \\\"7551\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"ch_id\\\": \\\"7551\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/hashtag-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"ch_id\\\": \\\"7551\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/hashtag-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/hashtag-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Hashtag Detail\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/hashtag-detail\",\"description\":\"Returns detailed information for a specified TikTok hashtag. Queries require a hashtag identifier and accept an optional country region code.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"ch_id\",\"type\":\"string\",\"required\":true,\"description\":\"Hashtag id\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region, supports US, GB, FR, JP, VN, SG, default US\",\"default\":\"US\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/hashtag-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"ch_id\\\": \\\"7551\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"ch_id\\\": \\\"7551\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/hashtag-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"ch_id\\\": \\\"7551\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/hashtag-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/hashtag-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get details of specified hashtag" + modelName: "TikTok Hashtag Detail" modelId: "tiktok/app-v3/hashtag-detail" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/hashtag-search-result.md b/model-api-reference/platform-apis/tiktok/app-v3/hashtag-search-result.md index 51d380e8..76b8d0be 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/hashtag-search-result.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/hashtag-search-result.md @@ -1,13 +1,13 @@ --- -title: "Get hashtag search results of specified keywords API Reference" -description: "SandBase API operation tiktok/app-v3/hashtag-search-result." +title: "TikTok Hashtag Search Results API Reference" +description: "SandBase API reference for model tiktok/app-v3/hashtag-search-result. Call /v1/api/tiktok/app-v3/hashtag-search-result; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/hashtag-search-result" -apiReferenceJson: "{\"title\":\"Get hashtag search results of specified keywords\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/hashtag-search-result\",\"description\":\"Get hashtag search results of specified keywords\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\",\"default\":\"20\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/hashtag-search-result \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/hashtag-search-result\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/hashtag-search-result\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-search-result\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-search-result\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-search-result\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/hashtag-search-result\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Hashtag Search Results\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/hashtag-search-result\",\"description\":\"Returns TikTok hashtag search results matching a specified search keyword. Includes challenge details such as hashtag name, use count, and user count.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\",\"default\":\"20\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/hashtag-search-result \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/hashtag-search-result\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/hashtag-search-result\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-search-result\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-search-result\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-search-result\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/hashtag-search-result\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get hashtag search results of specified keywords" + modelName: "TikTok Hashtag Search Results" modelId: "tiktok/app-v3/hashtag-search-result" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/hashtag-video-list.md b/model-api-reference/platform-apis/tiktok/app-v3/hashtag-video-list.md index 17f8b421..3d2fc752 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/hashtag-video-list.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/hashtag-video-list.md @@ -1,13 +1,13 @@ --- -title: "Get video list of specified hashtag API Reference — TikTok List" -description: "SandBase API operation tiktok/app-v3/hashtag-video-list." +title: "TikTok Hashtag Video List API Reference" +description: "SandBase API reference for model tiktok/app-v3/hashtag-video-list. Call /v1/api/tiktok/app-v3/hashtag-video-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/hashtag-video-list" -apiReferenceJson: "{\"title\":\"Get video list of specified hashtag\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/hashtag-video-list\",\"description\":\"Get video list of specified hashtag\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"ch_id\",\"type\":\"string\",\"required\":true,\"description\":\"Hashtag id\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\",\"default\":\"10\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor, used for paging, the first page is 0, the second page is the cursor value in the first response.\",\"default\":\"0\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region, supports US, GB, FR, JP, VN, SG, default US\",\"default\":\"US\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/hashtag-video-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"ch_id\\\": \\\"7551\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"ch_id\\\": \\\"7551\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/hashtag-video-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"ch_id\\\": \\\"7551\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/hashtag-video-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-video-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-video-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-video-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/hashtag-video-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Hashtag Video List\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/hashtag-video-list\",\"description\":\"Returns a list of videos associated with a specific hashtag on TikTok. Filter results by region and paginate through records using cursor controls.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"ch_id\",\"type\":\"string\",\"required\":true,\"description\":\"Hashtag id\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\",\"default\":\"10\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor, used for paging, the first page is 0, the second page is the cursor value in the first response.\",\"default\":\"0\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region, supports US, GB, FR, JP, VN, SG, default US\",\"default\":\"US\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/hashtag-video-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"ch_id\\\": \\\"7551\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"ch_id\\\": \\\"7551\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/hashtag-video-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"ch_id\\\": \\\"7551\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/hashtag-video-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-video-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-video-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-video-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/hashtag-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/hashtag-video-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video list of specified hashtag" + modelName: "TikTok Hashtag Video List" modelId: "tiktok/app-v3/hashtag-video-list" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/home-feed.md b/model-api-reference/platform-apis/tiktok/app-v3/home-feed.md deleted file mode 100644 index 7d01a6bb..00000000 --- a/model-api-reference/platform-apis/tiktok/app-v3/home-feed.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get home feed(recommend) video data API Reference" -description: "SandBase API operation tiktok/app-v3/home-feed." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/tiktok/app-v3/home-feed" -apiReferenceJson: "{\"title\":\"Get home feed(recommend) video data\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/home-feed\",\"description\":\"Get home feed(recommend) video data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User's own cookie, optional parameter, used for personalized recommendation of interface returned data.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/home-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/app-v3/home-feed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/app-v3/home-feed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/home-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/app-v3/home-feed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/home-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/home-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/home-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/home-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/home-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/home-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/home-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get home feed(recommend) video data" - modelId: "tiktok/app-v3/home-feed" - vendor: "TikTok" - vendorSlug: "tiktok" - modelSlug: "app-v3/home-feed" - protocol: "API Reference" - endpoint: "/v1/api/tiktok/app-v3/home-feed" - publishedAt: "" - capabilities: ["api","tiktok"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/tiktok/app-v3/live-daily-rank.md b/model-api-reference/platform-apis/tiktok/app-v3/live-daily-rank.md index ea23aec5..5cce4a6c 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/live-daily-rank.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/live-daily-rank.md @@ -1,13 +1,13 @@ --- -title: "Get live daily rank data API Reference" -description: "SandBase API operation tiktok/app-v3/live-daily-rank." +title: "TikTok LIVE Ranking API Reference" +description: "TikTok LIVE Ranking API reference for SandBase. Use model tiktok/app-v3/live-daily-rank with /v1/api/tiktok/app-v3/live-daily-rank; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/live-daily-rank" -apiReferenceJson: "{\"title\":\"Get live daily rank data\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/live-daily-rank\",\"description\":\"Get live daily rank data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"anchor_id\",\"type\":\"string\",\"required\":false,\"description\":\"Anchor id, which can be obtained from the live room information interface, use the default value, this parameter will affect the returned data, you can try different anchor ids of different live rooms.\"},{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User's own cookie, optional parameter, used when the interface is not available.\"},{\"name\":\"gap_interval\",\"type\":\"integer\",\"required\":false,\"description\":\"Time interval, use the default value to represent the current day, use -1 to represent the ranking record.\"},{\"name\":\"rank_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Rank type, parameter values are as follows:\"},{\"name\":\"region_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Region type, use the default value, the specific meaning is unknown.\"},{\"name\":\"room_id\",\"type\":\"string\",\"required\":false,\"description\":\"Live room id, which can be obtained from the live room information interface, use the default value, this parameter will affect the returned data, you can try different room ids of different live rooms.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/live-daily-rank \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/app-v3/live-daily-rank\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/app-v3/live-daily-rank\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/live-daily-rank\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/app-v3/live-daily-rank\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/live-daily-rank\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/live-daily-rank\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/live-daily-rank\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/live-daily-rank\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/live-daily-rank\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/live-daily-rank\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/live-daily-rank\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok LIVE Ranking\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/live-daily-rank\",\"description\":\"Get TikTok LIVE rankings: hourly, weekly, rookie and other leaderboards with rank, score and creator.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"anchor_id\",\"type\":\"string\",\"required\":false,\"description\":\"Anchor id, which can be obtained from the live room information interface, use the default value, this parameter will affect the returned data, you can try different anchor ids of different live rooms.\"},{\"name\":\"gap_interval\",\"type\":\"integer\",\"required\":false,\"description\":\"Time interval, use the default value to represent the current day, use -1 to represent the ranking record.\"},{\"name\":\"rank_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Rank type: 0: hourly_rank (Hourly Rank); 1: weekly_rank (Weekly Rank); 5: rookie_star_rank (Rookie Star Rank); 6: sale_rank (Sale Rank); 8: daily_rank (Daily Rank); 10: weekly_game_rank (Weekly Game Rank); 11: daily_game_rank (Daily Game Rank); 12: hall_of_fame_rank (Hall of Fame Rank); 13: champion_tournament (Champion Tournament (includes phase_one/two/three)); 14: daily_rookie_star_rank (Daily Rookie Star Rank); 15: fans_team_rank (Fans Team Rank); 16: ranking_league (Ranking League (App display: D5 Level Rank)); 20: pubg (PUBG Rank); 21: mlbb (MLBB Rank (Mobile Legends: Bang Bang)); 22: free_fire (Free Fire Rank); 23: sub_weekly_game_rank1 (Sub Weekly Game Rank 1); 24: sub_weekly_game_rank2 (Sub Weekly Game Rank 2); 25: sub_weekly_game_rank3 (Sub Weekly Game Rank 3); 26: collectibles (Collectibles Rank); 27: beauty (Beauty Rank); 28: women_wear (Women Wear Rank); 29: sale_rank_daily (Daily Sale Rank); 1001: league_campaign_rank (League Campaign Rank)\"},{\"name\":\"region_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Region type, use the default value, the specific meaning is unknown.\"},{\"name\":\"room_id\",\"type\":\"string\",\"required\":false,\"description\":\"Live room id, which can be obtained from the live room information interface, use the default value, this parameter will affect the returned data, you can try different room ids of different live rooms.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/live-daily-rank \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/live-daily-rank\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/live-daily-rank\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/live-daily-rank\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/live-daily-rank\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/live-daily-rank\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/live-daily-rank\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/live-daily-rank\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/live-daily-rank\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get live daily rank data" + modelName: "TikTok LIVE Ranking" modelId: "tiktok/app-v3/live-daily-rank" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/live-ranking-list.md b/model-api-reference/platform-apis/tiktok/app-v3/live-ranking-list.md index 3b169163..46d17f60 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/live-ranking-list.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/live-ranking-list.md @@ -1,13 +1,13 @@ --- -title: "Get live room ranking list API Reference" -description: "SandBase API operation tiktok/app-v3/live-ranking-list." +title: "TikTok Stream Audience Ranking List API Reference" +description: "SandBase API reference for model tiktok/app-v3/live-ranking-list. Call /v1/api/tiktok/app-v3/live-ranking-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/live-ranking-list" -apiReferenceJson: "{\"title\":\"Get live room ranking list\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/live-ranking-list\",\"description\":\"Get ranking list of audience in live room\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"anchor_id\",\"type\":\"string\",\"required\":true,\"description\":\"Anchor id\"},{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Live room id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/live-ranking-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"anchor_id\\\": \\\"7222941468722758702\\\",\\n \\\"room_id\\\": \\\"7358603858249009962\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"anchor_id\\\": \\\"7222941468722758702\\\",\\n \\\"room_id\\\": \\\"7358603858249009962\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/live-ranking-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"anchor_id\\\": \\\"7222941468722758702\\\",\\n \\\"room_id\\\": \\\"7358603858249009962\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/live-ranking-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/live-ranking-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/live-ranking-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/live-ranking-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/live-ranking-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/live-ranking-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/live-ranking-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Stream Audience Ranking List\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/live-ranking-list\",\"description\":\"Returns the audience ranking list for a stream room based on the specified room identifier and anchor identifier. Helps inspect top viewer participation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"anchor_id\",\"type\":\"string\",\"required\":true,\"description\":\"Anchor id\"},{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Live room id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/live-ranking-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"anchor_id\\\": \\\"7222941468722758702\\\",\\n \\\"room_id\\\": \\\"7358603858249009962\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"anchor_id\\\": \\\"7222941468722758702\\\",\\n \\\"room_id\\\": \\\"7358603858249009962\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/live-ranking-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"anchor_id\\\": \\\"7222941468722758702\\\",\\n \\\"room_id\\\": \\\"7358603858249009962\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/live-ranking-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/live-ranking-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/live-ranking-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/live-ranking-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/live-ranking-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/live-ranking-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/live-ranking-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get live room ranking list" + modelName: "TikTok Stream Audience Ranking List" modelId: "tiktok/app-v3/live-ranking-list" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/live-room-info.md b/model-api-reference/platform-apis/tiktok/app-v3/live-room-info.md index 15f3bca2..0e39fa13 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/live-room-info.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/live-room-info.md @@ -1,13 +1,13 @@ --- -title: "Get data of specified live room API Reference" -description: "SandBase API operation tiktok/app-v3/live-room-info." +title: "TikTok Broadcast Room Information API Reference" +description: "SandBase API reference for model tiktok/app-v3/live-room-info. Call /v1/api/tiktok/app-v3/live-room-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/live-room-info" -apiReferenceJson: "{\"title\":\"Get data of specified live room\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/live-room-info\",\"description\":\"Get data of specified live room\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Live room id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/live-room-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"room_id\\\": \\\"7385461256746060575\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"room_id\\\": \\\"7385461256746060575\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/live-room-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"room_id\\\": \\\"7385461256746060575\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/live-room-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/live-room-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/live-room-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/live-room-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/live-room-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/live-room-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/live-room-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Broadcast Room Information\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/live-room-info\",\"description\":\"Returns data and details for a specified broadcast stream room on TikTok. Requires the unique target stream identifier to retrieve room status and metrics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Live room id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/live-room-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"room_id\\\": \\\"7385461256746060575\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"room_id\\\": \\\"7385461256746060575\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/live-room-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"room_id\\\": \\\"7385461256746060575\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/live-room-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/live-room-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/live-room-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/live-room-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/live-room-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/live-room-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/live-room-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get data of specified live room" + modelName: "TikTok Broadcast Room Information" modelId: "tiktok/app-v3/live-room-info" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/live-room-product-list-v2.md b/model-api-reference/platform-apis/tiktok/app-v3/live-room-product-list-v2.md deleted file mode 100644 index cb8b1b93..00000000 --- a/model-api-reference/platform-apis/tiktok/app-v3/live-room-product-list-v2.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get live room product list data V2 API Reference" -description: "SandBase API operation tiktok/app-v3/live-room-product-list-v2." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/tiktok/app-v3/live-room-product-list-v2" -apiReferenceJson: "{\"title\":\"Get live room product list data V2\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/live-room-product-list-v2\",\"description\":\"Get live room product list data V2\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Anchor id, required parameter.\"},{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User's own cookie, optional parameter, used to crawl data from regions other than `US`.\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Page turning cursor, optional parameter, default is 0, increasing by 15 each time.\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page, optional parameter, default is 15.\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region, optional parameter, default is `US`, if you use other regions, such as: `VN`, please bring your own Cookie, otherwise you will not be able to get data.\"},{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Live room id, required parameter.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/live-room-product-list-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"author_id\\\": \\\"author_id\\\",\\n \\\"room_id\\\": \\\"room_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"author_id\\\": \\\"author_id\\\",\\n \\\"room_id\\\": \\\"room_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/live-room-product-list-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"author_id\\\": \\\"author_id\\\",\\n \\\"room_id\\\": \\\"room_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/live-room-product-list-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/live-room-product-list-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/live-room-product-list-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/live-room-product-list-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/live-room-product-list-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/live-room-product-list-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/live-room-product-list-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get live room product list data V2" - modelId: "tiktok/app-v3/live-room-product-list-v2" - vendor: "TikTok" - vendorSlug: "tiktok" - modelSlug: "app-v3/live-room-product-list-v2" - protocol: "API Reference" - endpoint: "/v1/api/tiktok/app-v3/live-room-product-list-v2" - publishedAt: "" - capabilities: ["api","tiktok"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/tiktok/app-v3/live-room-product-list.md b/model-api-reference/platform-apis/tiktok/app-v3/live-room-product-list.md index e7610950..06a06515 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/live-room-product-list.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/live-room-product-list.md @@ -1,13 +1,13 @@ --- -title: "Get live room product list data API Reference" -description: "SandBase API operation tiktok/app-v3/live-room-product-list." +title: "TikTok Livestream Room Product List API Reference" +description: "SandBase API reference for model tiktok/app-v3/live-room-product-list. Call /v1/api/tiktok/app-v3/live-room-product-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/live-room-product-list" -apiReferenceJson: "{\"title\":\"Get live room product list data\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/live-room-product-list\",\"description\":\"Get live room product list data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Anchor id, required parameter.\"},{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User's own cookie, optional parameter, used to crawl data from regions other than `US`.\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Page turning cursor, optional parameter, default is 0, increasing by 15 each time.\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page, optional parameter, default is 15.\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region, optional parameter, default is `US`, if you use other regions, such as: `VN`, please bring your own Cookie, otherwise you will not be able to get data.\"},{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Live room id, required parameter.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/live-room-product-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"author_id\\\": \\\"author_id\\\",\\n \\\"room_id\\\": \\\"room_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"author_id\\\": \\\"author_id\\\",\\n \\\"room_id\\\": \\\"room_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/live-room-product-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"author_id\\\": \\\"author_id\\\",\\n \\\"room_id\\\": \\\"room_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/live-room-product-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/live-room-product-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/live-room-product-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/live-room-product-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/live-room-product-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/live-room-product-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/live-room-product-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Livestream Room Product List\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/live-room-product-list\",\"description\":\"Returns the list of showcase products featured in a broadcast session based on the specified room and author identifiers, with support for region filtering and pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"author_id\",\"type\":\"string\",\"required\":true,\"description\":\"Anchor id, required parameter.\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Page turning cursor, optional parameter, default is 0, increasing by 15 each time.\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page, optional parameter, default is 15.\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region, optional parameter, default is `US`. Other regions (for example `VN`) may return no data.\"},{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Live room id, required parameter.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/live-room-product-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"author_id\\\": \\\"author_id\\\",\\n \\\"room_id\\\": \\\"room_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"author_id\\\": \\\"author_id\\\",\\n \\\"room_id\\\": \\\"room_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/live-room-product-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"author_id\\\": \\\"author_id\\\",\\n \\\"room_id\\\": \\\"room_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/live-room-product-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/live-room-product-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/live-room-product-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/live-room-product-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/live-room-product-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/live-room-product-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/live-room-product-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get live room product list data" + modelName: "TikTok Livestream Room Product List" modelId: "tiktok/app-v3/live-room-product-list" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/live-search-result.md b/model-api-reference/platform-apis/tiktok/app-v3/live-search-result.md index 83bee0a2..cf49397a 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/live-search-result.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/live-search-result.md @@ -1,13 +1,13 @@ --- -title: "Get live search results of specified keywords API Reference" -description: "SandBase API operation tiktok/app-v3/live-search-result." +title: "TikTok Stream Search Results API Reference" +description: "SandBase API reference for model tiktok/app-v3/live-search-result. Call /v1/api/tiktok/app-v3/live-search-result; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/live-search-result" -apiReferenceJson: "{\"title\":\"Get live search results of specified keywords\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/live-search-result\",\"description\":\"Get live search results of specified keywords\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number, do not exceed 20\",\"default\":\"20\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset, starting from 0, the second page gets the cursor value from the response as the offset to continue the request.\",\"default\":\"0\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region, default is US-America, for optional values please refer to TikTok region codes or ISO 3166-1 alpha-2 country codes.\",\"default\":\"US\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/live-search-result \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/live-search-result\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/live-search-result\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/live-search-result\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/live-search-result\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/live-search-result\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/live-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/live-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/live-search-result\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Stream Search Results\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/live-search-result\",\"description\":\"Returns search results for active broadcasts matching a specified keyword. Supports filtering by country code and paginating via offset and count limits.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number, do not exceed 20\",\"default\":\"20\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset, starting from 0, the second page gets the cursor value from the response as the offset to continue the request.\",\"default\":\"0\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region, default is US-America, for optional values please refer to TikTok region codes or ISO 3166-1 alpha-2 country codes.\",\"default\":\"US\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/live-search-result \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/live-search-result\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/live-search-result\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/live-search-result\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/live-search-result\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/live-search-result\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/live-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/live-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/live-search-result\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get live search results of specified keywords" + modelName: "TikTok Stream Search Results" modelId: "tiktok/app-v3/live-search-result" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/location-search.md b/model-api-reference/platform-apis/tiktok/app-v3/location-search.md index 83183718..cb595f6c 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/location-search.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/location-search.md @@ -1,13 +1,13 @@ --- -title: "Get location search results API Reference" -description: "SandBase API operation tiktok/app-v3/location-search." +title: "TikTok Location Search API Reference" +description: "TikTok Location Search API reference for SandBase. Use model tiktok/app-v3/location-search with /v1/api/tiktok/app-v3/location-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/location-search" -apiReferenceJson: "{\"title\":\"Get location search results\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/location-search\",\"description\":\"Get location search results\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\",\"default\":\"20\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/location-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/location-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/location-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/location-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/location-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/location-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/location-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/location-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/location-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Location Search\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/location-search\",\"description\":\"Searches for locations on TikTok using a text query. Returns matching place results with pagination support via offset and count parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\",\"default\":\"20\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/location-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/location-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/location-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/location-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/location-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/location-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/location-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/location-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/location-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get location search results" + modelName: "TikTok Location Search" modelId: "tiktok/app-v3/location-search" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/multi-video-v2.md b/model-api-reference/platform-apis/tiktok/app-v3/multi-video-v2.md index 08367dd7..643c51bd 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/multi-video-v2.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/multi-video-v2.md @@ -1,13 +1,13 @@ --- -title: "Batch Get Video Information V2 API Reference — TikTok Video V2" -description: "SandBase API operation tiktok/app-v3/multi-video-v2." +title: "TikTok Batch Video Info (App V3, V2) API Reference" +description: "SandBase API reference for model tiktok/app-v3/multi-video-v2. Call /v1/api/tiktok/app-v3/multi-video-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/multi-video-v2" -apiReferenceJson: "{\"title\":\"Batch Get Video Information V2\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/multi-video-v2\",\"description\":\"Batch Get Video Information, support photo, video, etc., up to 25 videos at a time, this interface charges a fixed price of 0.001$ * 25 = 0.025$ each time. Note: This interface is the V2 version, which supports more features and more efficient data retrieval, can retrieve 25 video data per second. If this interface reports an error, please use the fetch_multi_video_v3 interface.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"Video id list\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/multi-video-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/multi-video-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/multi-video-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/multi-video-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/multi-video-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/multi-video-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/multi-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/multi-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/multi-video-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Batch Video Info (App V3, V2)\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/multi-video-v2\",\"description\":\"Returns metadata and details for multiple TikTok videos in a single request using an array of video identifiers. This interface charges a fixed price of 0.001$ * 25 = 0.025$ each time.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"Video id list\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/multi-video-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/multi-video-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/multi-video-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/multi-video-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/multi-video-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/multi-video-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/multi-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/multi-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/multi-video-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Batch Get Video Information V2" + modelName: "TikTok Batch Video Info (App V3, V2)" modelId: "tiktok/app-v3/multi-video-v2" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/multi-video.md b/model-api-reference/platform-apis/tiktok/app-v3/multi-video.md index 6cb9939f..2ac4a8ac 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/multi-video.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/multi-video.md @@ -1,13 +1,13 @@ --- -title: "Batch Get Video Information API Reference — TikTok / Multi Video" -description: "SandBase API operation tiktok/app-v3/multi-video." +title: "TikTok Batch Video Info (App V3) API Reference" +description: "SandBase API reference for model tiktok/app-v3/multi-video. Call /v1/api/tiktok/app-v3/multi-video; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/multi-video" -apiReferenceJson: "{\"title\":\"Batch Get Video Information\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/multi-video\",\"description\":\"Batch Get Video Information, support photo, video, etc., up to 10 videos at a time, this interface charges a fixed price of 0.001$ * 10 = 0.01$ each time. If this interface reports an error, please use the fetch_multi_video_v3 interface.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"Video id list\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/multi-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/multi-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/multi-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/multi-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/multi-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/multi-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/multi-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/multi-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/multi-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Batch Video Info (App V3)\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/multi-video\",\"description\":\"Returns metadata and post details for multiple TikTok videos simultaneously. Takes an array of video IDs in the request `body` to retrieve batch information. This interface charges a fixed price of 0.001$ * 10 = 0.01$ each time.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"Video id list\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/multi-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/multi-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/multi-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/multi-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/multi-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/multi-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/multi-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/multi-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/multi-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Batch Get Video Information" + modelName: "TikTok Batch Video Info (App V3)" modelId: "tiktok/app-v3/multi-video" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/music-chart-list.md b/model-api-reference/platform-apis/tiktok/app-v3/music-chart-list.md index b7a06cad..9420fbe4 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/music-chart-list.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/music-chart-list.md @@ -1,13 +1,13 @@ --- -title: "Music Chart List API Reference" -description: "SandBase API operation tiktok/app-v3/music-chart-list." +title: "TikTok Music Chart List API Reference" +description: "SandBase API reference for model tiktok/app-v3/music-chart-list. Call /v1/api/tiktok/app-v3/music-chart-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/music-chart-list" -apiReferenceJson: "{\"title\":\"Music Chart List\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/music-chart-list\",\"description\":\"Get TikTok music chart list data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page, default 50, max 50\",\"default\":\"50\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor, default 0\",\"default\":\"0\"},{\"name\":\"scene\",\"type\":\"integer\",\"required\":false,\"description\":\"Chart type\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/music-chart-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/app-v3/music-chart-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/app-v3/music-chart-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/music-chart-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/app-v3/music-chart-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/music-chart-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/music-chart-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/music-chart-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/music-chart-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/music-chart-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/music-chart-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/music-chart-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Music Chart List\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/music-chart-list\",\"description\":\"Returns TikTok music chart rankings and track details. Supports filtering by chart type scene alongside cursor-based pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page, default 50, max 50\",\"default\":\"50\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination cursor, default 0\",\"default\":\"0\"},{\"name\":\"scene\",\"type\":\"integer\",\"required\":false,\"description\":\"Chart type\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/music-chart-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/music-chart-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/music-chart-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/music-chart-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/music-chart-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/music-chart-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/music-chart-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/music-chart-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/music-chart-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Music Chart List" + modelName: "TikTok Music Chart List" modelId: "tiktok/app-v3/music-chart-list" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/music-detail.md b/model-api-reference/platform-apis/tiktok/app-v3/music-detail.md index b595c632..6b460da8 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/music-detail.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/music-detail.md @@ -1,13 +1,13 @@ --- -title: "Get details of specified music API Reference — TikTok Detail" -description: "SandBase API operation tiktok/app-v3/music-detail." +title: "TikTok Music Details API Reference" +description: "TikTok Music Details API reference for SandBase. Use model tiktok/app-v3/music-detail with /v1/api/tiktok/app-v3/music-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/music-detail" -apiReferenceJson: "{\"title\":\"Get details of specified music\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/music-detail\",\"description\":\"Get details of specified music\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"music_id\",\"type\":\"string\",\"required\":true,\"description\":\"Music id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/music-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"music_id\\\": \\\"6943027371519772674\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"music_id\\\": \\\"6943027371519772674\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/music-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"music_id\\\": \\\"6943027371519772674\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/music-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/music-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/music-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/music-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/music-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/music-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/music-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Music Details\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/music-detail\",\"description\":\"Returns detailed track information for a specific audio track on TikTok using its identifier, including connected DSP song mappings.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"music_id\",\"type\":\"string\",\"required\":true,\"description\":\"Music id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/music-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"music_id\\\": \\\"6943027371519772674\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"music_id\\\": \\\"6943027371519772674\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/music-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"music_id\\\": \\\"6943027371519772674\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/music-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/music-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/music-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/music-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/music-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/music-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/music-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get details of specified music" + modelName: "TikTok Music Details" modelId: "tiktok/app-v3/music-detail" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/music-search-result.md b/model-api-reference/platform-apis/tiktok/app-v3/music-search-result.md index a565288f..5427813c 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/music-search-result.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/music-search-result.md @@ -1,13 +1,13 @@ --- -title: "Get music search results of specified keywords API Reference" -description: "SandBase API operation tiktok/app-v3/music-search-result." +title: "TikTok Music Search API Reference" +description: "SandBase API reference for model tiktok/app-v3/music-search-result. Call /v1/api/tiktok/app-v3/music-search-result; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/music-search-result" -apiReferenceJson: "{\"title\":\"Get music search results of specified keywords\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/music-search-result\",\"description\":\"Get music search results of specified keywords\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number, do not exceed 20\",\"default\":\"20\"},{\"name\":\"filter_by\",\"type\":\"integer\",\"required\":false,\"description\":\"Filter type, 0-All, 1-Title, 2-Author, default is 0-All\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset, starting from 0, the second page gets the cursor value from the response as the offset to continue the request.\",\"default\":\"0\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region, default is US-America, for optional values please refer to TikTok region codes or ISO 3166-1 alpha-2 country codes.\",\"default\":\"US\"},{\"name\":\"sort_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort type, 0-Relatedness, 1-Most used, 2-Latest, 3-Shortest duration, 4-Longest duration, default is 0-Relatedness\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/music-search-result \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/music-search-result\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/music-search-result\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/music-search-result\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/music-search-result\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/music-search-result\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/music-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/music-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/music-search-result\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Music Search\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/music-search-result\",\"description\":\"Returns TikTok music search results matching specified keywords, with options to filter by title or author and sort by usage or duration.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number, do not exceed 20\",\"default\":\"20\"},{\"name\":\"filter_by\",\"type\":\"integer\",\"required\":false,\"description\":\"Filter type, 0-All, 1-Title, 2-Author, default is 0-All\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset, starting from 0, the second page gets the cursor value from the response as the offset to continue the request.\",\"default\":\"0\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region, default is US-America, for optional values please refer to TikTok region codes or ISO 3166-1 alpha-2 country codes.\",\"default\":\"US\"},{\"name\":\"sort_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort type, 0-Relatedness, 1-Most used, 2-Latest, 3-Shortest duration, 4-Longest duration, default is 0-Relatedness\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/music-search-result \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/music-search-result\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/music-search-result\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/music-search-result\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/music-search-result\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/music-search-result\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/music-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/music-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/music-search-result\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get music search results of specified keywords" + modelName: "TikTok Music Search" modelId: "tiktok/app-v3/music-search-result" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/music-video-list.md b/model-api-reference/platform-apis/tiktok/app-v3/music-video-list.md index b8bd5882..9cfc426e 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/music-video-list.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/music-video-list.md @@ -1,13 +1,13 @@ --- -title: "Get video list of specified music API Reference — TikTok List" -description: "SandBase API operation tiktok/app-v3/music-video-list." +title: "TikTok Music Video List API Reference" +description: "SandBase API reference for model tiktok/app-v3/music-video-list. Call /v1/api/tiktok/app-v3/music-video-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/music-video-list" -apiReferenceJson: "{\"title\":\"Get video list of specified music\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/music-video-list\",\"description\":\"Get video list of specified music\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\",\"default\":\"10\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor, used for paging, the first page is 0, the second page is the cursor value in the first response.\",\"default\":\"0\"},{\"name\":\"music_id\",\"type\":\"string\",\"required\":true,\"description\":\"Music id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/music-video-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"music_id\\\": \\\"6943027371519772674\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"music_id\\\": \\\"6943027371519772674\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/music-video-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"music_id\\\": \\\"6943027371519772674\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/music-video-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/music-video-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/music-video-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/music-video-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/music-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/music-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/music-video-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Music Video List\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/music-video-list\",\"description\":\"Retrieves a paginated list of videos associated with a specific TikTok audio track. Filter results by music ID and control pagination using cursor values.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\",\"default\":\"10\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor, used for paging, the first page is 0, the second page is the cursor value in the first response.\",\"default\":\"0\"},{\"name\":\"music_id\",\"type\":\"string\",\"required\":true,\"description\":\"Music id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/music-video-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"music_id\\\": \\\"6943027371519772674\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"music_id\\\": \\\"6943027371519772674\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/music-video-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"music_id\\\": \\\"6943027371519772674\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/music-video-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/music-video-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/music-video-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/music-video-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/music-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/music-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/music-video-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video list of specified music" + modelName: "TikTok Music Video List" modelId: "tiktok/app-v3/music-video-list" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/one-video-by-share-url-v2.md b/model-api-reference/platform-apis/tiktok/app-v3/one-video-by-share-url-v2.md deleted file mode 100644 index 5e6ba315..00000000 --- a/model-api-reference/platform-apis/tiktok/app-v3/one-video-by-share-url-v2.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get single video data by sharing link API Reference — TikTok V2" -description: "SandBase API operation tiktok/app-v3/one-video-by-share-url-v2." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/tiktok/app-v3/one-video-by-share-url-v2" -apiReferenceJson: "{\"title\":\"Get single video data by sharing link\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/one-video-by-share-url-v2\",\"description\":\"Get single video data by sharing link V2, the data structure will be a bit different, and the region field will be returned.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_url\",\"type\":\"string\",\"required\":true,\"description\":\"Share link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/one-video-by-share-url-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"share_url\\\": \\\"https://www.tiktok.com/t/ZTFNEj8Hk/\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"share_url\\\": \\\"https://www.tiktok.com/t/ZTFNEj8Hk/\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/one-video-by-share-url-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"share_url\\\": \\\"https://www.tiktok.com/t/ZTFNEj8Hk/\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/one-video-by-share-url-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-by-share-url-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-by-share-url-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-by-share-url-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-by-share-url-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-by-share-url-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/one-video-by-share-url-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get single video data by sharing link" - modelId: "tiktok/app-v3/one-video-by-share-url-v2" - vendor: "TikTok" - vendorSlug: "tiktok" - modelSlug: "app-v3/one-video-by-share-url-v2" - protocol: "API Reference" - endpoint: "/v1/api/tiktok/app-v3/one-video-by-share-url-v2" - publishedAt: "" - capabilities: ["api","tiktok"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/tiktok/app-v3/one-video-by-share-url.md b/model-api-reference/platform-apis/tiktok/app-v3/one-video-by-share-url.md deleted file mode 100644 index e5d00c85..00000000 --- a/model-api-reference/platform-apis/tiktok/app-v3/one-video-by-share-url.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get single video data by sharing link API Reference — TikTok URL" -description: "SandBase API operation tiktok/app-v3/one-video-by-share-url." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/tiktok/app-v3/one-video-by-share-url" -apiReferenceJson: "{\"title\":\"Get single video data by sharing link\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/one-video-by-share-url\",\"description\":\"Get single video data by sharing link\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_url\",\"type\":\"string\",\"required\":true,\"description\":\"Share link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/one-video-by-share-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"share_url\\\": \\\"https://www.tiktok.com/t/ZTFNEj8Hk/\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"share_url\\\": \\\"https://www.tiktok.com/t/ZTFNEj8Hk/\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/one-video-by-share-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"share_url\\\": \\\"https://www.tiktok.com/t/ZTFNEj8Hk/\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/one-video-by-share-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-by-share-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-by-share-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-by-share-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-by-share-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-by-share-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/one-video-by-share-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get single video data by sharing link" - modelId: "tiktok/app-v3/one-video-by-share-url" - vendor: "TikTok" - vendorSlug: "tiktok" - modelSlug: "app-v3/one-video-by-share-url" - protocol: "API Reference" - endpoint: "/v1/api/tiktok/app-v3/one-video-by-share-url" - publishedAt: "" - capabilities: ["api","tiktok"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/tiktok/app-v3/one-video-v2.md b/model-api-reference/platform-apis/tiktok/app-v3/one-video-v2.md index 9effbe8a..a9c20c59 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/one-video-v2.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/one-video-v2.md @@ -1,13 +1,13 @@ --- -title: "Get single video data V2 API Reference — TikTok V3 / One Video V2" -description: "SandBase API operation tiktok/app-v3/one-video-v2." +title: "TikTok Single Video Details (V2) API Reference" +description: "SandBase API reference for model tiktok/app-v3/one-video-v2. Call /v1/api/tiktok/app-v3/one-video-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/one-video-v2" -apiReferenceJson: "{\"title\":\"Get single video data V2\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/one-video-v2\",\"description\":\"Get single video data V2\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/one-video-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/one-video-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/one-video-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/one-video-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Single Video Details (V2)\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/one-video-v2\",\"description\":\"Returns detailed post information and comment configuration for a specific TikTok video using its unique post identifier. Provide the video ID to retrieve item metadata.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/one-video-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/one-video-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/one-video-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/one-video-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video data V2" + modelName: "TikTok Single Video Details (V2)" modelId: "tiktok/app-v3/one-video-v2" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/one-video-v3.md b/model-api-reference/platform-apis/tiktok/app-v3/one-video-v3.md index 1aaec9ae..6f91c315 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/one-video-v3.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/one-video-v3.md @@ -1,13 +1,13 @@ --- -title: "Get single video data V3 (support country API Ref" -description: "SandBase API operation tiktok/app-v3/one-video-v3." +title: "TikTok Video Details (V3) API Reference" +description: "TikTok Video Details (V3) API reference for SandBase. Use model tiktok/app-v3/one-video-v3 with /v1/api/tiktok/app-v3/one-video-v3; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/one-video-v3" -apiReferenceJson: "{\"title\":\"Get single video data V3 (support country parameter)\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/one-video-v3\",\"description\":\"Get single video data V3\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Country code, default is US, supports ISO 3166-1 alpha-2 country codes, such as: US, GB, FR, DE, IN, JP, etc.\",\"default\":\"US\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/one-video-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/one-video-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/one-video-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/one-video-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Video Details (V3)\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/one-video-v3\",\"description\":\"Returns comprehensive details for a single TikTok video based on its video ID and optional country code.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Country code, default is US, supports ISO 3166-1 alpha-2 country codes, such as: US, GB, FR, DE, IN, JP, etc.\",\"default\":\"US\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/one-video-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/one-video-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/one-video-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/one-video-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video data V3 (support country parameter)" + modelName: "TikTok Video Details (V3)" modelId: "tiktok/app-v3/one-video-v3" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/one-video.md b/model-api-reference/platform-apis/tiktok/app-v3/one-video.md index bb86ba32..7df8b2b1 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/one-video.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/one-video.md @@ -1,13 +1,13 @@ --- -title: "Get single video data API Reference — TikTok App V3 / One Video" -description: "SandBase API operation tiktok/app-v3/one-video." +title: "TikTok Video Details API Reference" +description: "TikTok Video Details API reference for SandBase. Use model tiktok/app-v3/one-video with /v1/api/tiktok/app-v3/one-video; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/one-video" -apiReferenceJson: "{\"title\":\"Get single video data\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/one-video\",\"description\":\"Get single video data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/one-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/one-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/one-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/one-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Video Details\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/one-video\",\"description\":\"Returns detailed metadata for a single TikTok video using its unique video identifier. Query by specifying the target video ID to inspect video configuration and comment settings.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/one-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/one-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/one-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/one-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video data" + modelName: "TikTok Video Details" modelId: "tiktok/app-v3/one-video" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/open-app-to-keyword-search.md b/model-api-reference/platform-apis/tiktok/app-v3/open-app-to-keyword-search.md index 947dc4cd..1e8564f1 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/open-app-to-keyword-search.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/open-app-to-keyword-search.md @@ -1,13 +1,13 @@ --- -title: "Generate TikTok share link, call TikTok APP, and jum — x3o6ww API" -description: "SandBase API operation tiktok/app-v3/open-app-to-keyword-search." +title: "TikTok Keyword Search Deep Link API Reference" +description: "SandBase API reference for model tiktok/app-v3/open-app-to-keyword-search. Call /v1/api/tiktok/app-v3/open-app-to-keyword-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/open-app-to-keyword-search" -apiReferenceJson: "{\"title\":\"Generate TikTok share link, call TikTok APP, and jump to the specified keyword search result\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/open-app-to-keyword-search\",\"description\":\"Generate TikTok share link, call TikTok APP, and jump to the specified keyword search result\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/open-app-to-keyword-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/open-app-to-keyword-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/open-app-to-keyword-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-keyword-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-keyword-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-keyword-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-keyword-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-keyword-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/open-app-to-keyword-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Keyword Search Deep Link\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/open-app-to-keyword-search\",\"description\":\"Returns a TikTok share link that directs users to search results for a specified keyword inside the TikTok mobile application.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/open-app-to-keyword-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/open-app-to-keyword-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/open-app-to-keyword-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-keyword-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-keyword-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-keyword-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-keyword-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-keyword-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/open-app-to-keyword-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate TikTok share link, call TikTok APP, and jump to the specified keyword search result" + modelName: "TikTok Keyword Search Deep Link" modelId: "tiktok/app-v3/open-app-to-keyword-search" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/open-app-to-send-private-message.md b/model-api-reference/platform-apis/tiktok/app-v3/open-app-to-send-private-message.md index 68064984..0b90685a 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/open-app-to-send-private-message.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/open-app-to-send-private-message.md @@ -1,13 +1,13 @@ --- -title: "Generate TikTok share link, call TikTok APP, and send API Ref" -description: "SandBase API operation tiktok/app-v3/open-app-to-send-private-message." +title: "TikTok Direct Message Share Link API Reference" +description: "SandBase API reference: tiktok/app-v3/open-app-to-send-private-message via /v1/api/tiktok/app-v3/open-app-to-send-private-message. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/open-app-to-send-private-message" -apiReferenceJson: "{\"title\":\"Generate TikTok share link, call TikTok APP, and send private messages to specified users\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/open-app-to-send-private-message\",\"description\":\"Generate TikTok share link, call TikTok APP, and send private messages to specified users\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User id, obtained from the user profile interface.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/open-app-to-send-private-message \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/open-app-to-send-private-message\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/open-app-to-send-private-message\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-send-private-message\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-send-private-message\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-send-private-message\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-send-private-message\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-send-private-message\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/open-app-to-send-private-message\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Direct Message Share Link\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/open-app-to-send-private-message\",\"description\":\"Returns a TikTok share short URL to launch the TikTok application and open a direct message conversation with a designated user ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User id, obtained from the user profile interface.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/open-app-to-send-private-message \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/open-app-to-send-private-message\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/open-app-to-send-private-message\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-send-private-message\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-send-private-message\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-send-private-message\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-send-private-message\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-send-private-message\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/open-app-to-send-private-message\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate TikTok share link, call TikTok APP, and send private messages to specified users" + modelName: "TikTok Direct Message Share Link" modelId: "tiktok/app-v3/open-app-to-send-private-message" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/open-app-to-user-profile.md b/model-api-reference/platform-apis/tiktok/app-v3/open-app-to-user-profile.md index 2f655486..c4ce2a74 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/open-app-to-user-profile.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/open-app-to-user-profile.md @@ -1,13 +1,13 @@ --- -title: "Generate TikTok share link, call TikTok APP, and jum — z3yi5h API" -description: "SandBase API operation tiktok/app-v3/open-app-to-user-profile." +title: "TikTok User Profile Share Link API Reference" +description: "SandBase API reference for model tiktok/app-v3/open-app-to-user-profile. Call /v1/api/tiktok/app-v3/open-app-to-user-profile; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/open-app-to-user-profile" -apiReferenceJson: "{\"title\":\"Generate TikTok share link, call TikTok APP, and jump to the specified user profile\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/open-app-to-user-profile\",\"description\":\"Generate TikTok share link, call TikTok APP, and jump to the specified user profile\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User id, obtained from the user profile interface.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/open-app-to-user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"107955\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"107955\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/open-app-to-user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"107955\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/open-app-to-user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/open-app-to-user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok User Profile Share Link\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/open-app-to-user-profile\",\"description\":\"Returns a TikTok deep link that launches the TikTok app directly to a specified creator profile page using their user ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User id, obtained from the user profile interface.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/open-app-to-user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"107955\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"107955\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/open-app-to-user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"107955\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/open-app-to-user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/open-app-to-user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate TikTok share link, call TikTok APP, and jump to the specified user profile" + modelName: "TikTok User Profile Share Link" modelId: "tiktok/app-v3/open-app-to-user-profile" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/open-app-to-video-detail.md b/model-api-reference/platform-apis/tiktok/app-v3/open-app-to-video-detail.md index bb6c1d62..f734db9d 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/open-app-to-video-detail.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/open-app-to-video-detail.md @@ -1,13 +1,13 @@ --- -title: "Generate TikTok share link, call TikTok APP, and jum — 5i6n6f API" -description: "SandBase API operation tiktok/app-v3/open-app-to-video-detail." +title: "TikTok Video App Share Link API Reference" +description: "SandBase API reference for model tiktok/app-v3/open-app-to-video-detail. Call /v1/api/tiktok/app-v3/open-app-to-video-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/open-app-to-video-detail" -apiReferenceJson: "{\"title\":\"Generate TikTok share link, call TikTok APP, and jump to the specified video details page\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/open-app-to-video-detail\",\"description\":\"Generate TikTok share link, call TikTok APP, and jump to the specified video\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/open-app-to-video-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"aweme_id\\\": \\\"7440436579409153311\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"aweme_id\\\": \\\"7440436579409153311\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/open-app-to-video-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"aweme_id\\\": \\\"7440436579409153311\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/open-app-to-video-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-video-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-video-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-video-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-video-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-video-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/open-app-to-video-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Video App Share Link\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/open-app-to-video-detail\",\"description\":\"Returns a shareable short URL that opens a specific video directly in the TikTok mobile application. Requires the target video identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/open-app-to-video-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"aweme_id\\\": \\\"7440436579409153311\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"aweme_id\\\": \\\"7440436579409153311\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/open-app-to-video-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"aweme_id\\\": \\\"7440436579409153311\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/open-app-to-video-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-video-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-video-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-video-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-video-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/open-app-to-video-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/open-app-to-video-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate TikTok share link, call TikTok APP, and jump to the specified video details page" + modelName: "TikTok Video App Share Link" modelId: "tiktok/app-v3/open-app-to-video-detail" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/search-follower-list.md b/model-api-reference/platform-apis/tiktok/app-v3/search-follower-list.md index 229cdc92..8771bd18 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/search-follower-list.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/search-follower-list.md @@ -1,13 +1,13 @@ --- -title: "Search follower list API Reference" -description: "SandBase API operation tiktok/app-v3/search-follower-list." +title: "TikTok User Follower Search API Reference" +description: "SandBase API reference for model tiktok/app-v3/search-follower-list. Call /v1/api/tiktok/app-v3/search-follower-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/search-follower-list" -apiReferenceJson: "{\"title\":\"Search follower list\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/search-follower-list\",\"description\":\"Search follower list of specified user, can be used to find whether there is a user with a specific nickname in the followers of a certain user.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword, the user's nickname contains the keyword to match.\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID, this is a pure numeric version of the user ID, which can be obtained through the get user info API.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/search-follower-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/search-follower-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/search-follower-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/search-follower-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/search-follower-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/search-follower-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/search-follower-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/search-follower-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/search-follower-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok User Follower Search\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/search-follower-list\",\"description\":\"Searches a specific TikTok user's follower list for accounts matching a nickname keyword. Returns matching follower results and a count based on the provided user ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword, the user's nickname contains the keyword to match.\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID, this is a pure numeric version of the user ID, which can be obtained through the get user info API.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/search-follower-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"openai\\\",\\n \\\"user_id\\\": \\\"107955\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"openai\\\",\\n \\\"user_id\\\": \\\"107955\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/search-follower-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"openai\\\",\\n \\\"user_id\\\": \\\"107955\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/search-follower-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/search-follower-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/search-follower-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/search-follower-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/search-follower-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/search-follower-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/search-follower-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search follower list" + modelName: "TikTok User Follower Search" modelId: "tiktok/app-v3/search-follower-list" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/search-following-list.md b/model-api-reference/platform-apis/tiktok/app-v3/search-following-list.md index 5c3ffe94..31170f51 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/search-following-list.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/search-following-list.md @@ -1,13 +1,13 @@ --- -title: "Search following list API Reference" -description: "SandBase API operation tiktok/app-v3/search-following-list." +title: "TikTok Following List Search API Reference" +description: "SandBase API reference for model tiktok/app-v3/search-following-list. Call /v1/api/tiktok/app-v3/search-following-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/search-following-list" -apiReferenceJson: "{\"title\":\"Search following list\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/search-following-list\",\"description\":\"Search following list of specified user, can be used to find whether there is a user with a specific nickname in the following of a certain user.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword, the user's nickname contains the keyword to match.\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID, this is a pure numeric version of the user ID, which can be obtained through the get user info API.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/search-following-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/search-following-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/search-following-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/search-following-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/search-following-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/search-following-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/search-following-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/search-following-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/search-following-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Following List Search\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/search-following-list\",\"description\":\"Searches the following list of a specified TikTok account by nickname keyword. Returns matching accounts along with the match count for the query.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword, the user's nickname contains the keyword to match.\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID, this is a pure numeric version of the user ID, which can be obtained through the get user info API.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/search-following-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"openai\\\",\\n \\\"user_id\\\": \\\"107955\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"openai\\\",\\n \\\"user_id\\\": \\\"107955\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/search-following-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"openai\\\",\\n \\\"user_id\\\": \\\"107955\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/search-following-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/search-following-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/search-following-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/search-following-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/search-following-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/search-following-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/search-following-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search following list" + modelName: "TikTok Following List Search" modelId: "tiktok/app-v3/search-following-list" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/share-qr-code.md b/model-api-reference/platform-apis/tiktok/app-v3/share-qr-code.md index c1d40693..027a8584 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/share-qr-code.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/share-qr-code.md @@ -1,13 +1,13 @@ --- -title: "Get share QR code API Reference" -description: "SandBase API operation tiktok/app-v3/share-qr-code." +title: "TikTok Share QR Code API Reference" +description: "TikTok Share QR Code API reference for SandBase. Use model tiktok/app-v3/share-qr-code with /v1/api/tiktok/app-v3/share-qr-code; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/share-qr-code" -apiReferenceJson: "{\"title\":\"Get share QR code\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/share-qr-code\",\"description\":\"Get share QR code\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"object_id\",\"type\":\"string\",\"required\":true,\"description\":\"Object id, currently supports the uid in the response of the personal homepage interface as a parameter.\"},{\"name\":\"schema_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Schema type\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/share-qr-code \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"object_id\\\": \\\"object_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"object_id\\\": \\\"object_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/share-qr-code\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"object_id\\\": \\\"object_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/share-qr-code\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/share-qr-code\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/share-qr-code\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/share-qr-code\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/share-qr-code\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/share-qr-code\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/share-qr-code\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Share QR Code\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/share-qr-code\",\"description\":\"Returns a shareable QR code for a target TikTok profile. Requests require an object identifier and accept an optional schema type configuration.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"object_id\",\"type\":\"string\",\"required\":true,\"description\":\"Object id, currently supports the uid in the response of the personal homepage interface as a parameter.\"},{\"name\":\"schema_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Schema type\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/share-qr-code \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"object_id\\\": \\\"object_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"object_id\\\": \\\"object_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/share-qr-code\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"object_id\\\": \\\"object_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/share-qr-code\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/share-qr-code\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/share-qr-code\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/share-qr-code\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/share-qr-code\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/share-qr-code\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/share-qr-code\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get share QR code" + modelName: "TikTok Share QR Code" modelId: "tiktok/app-v3/share-qr-code" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/share-short-link.md b/model-api-reference/platform-apis/tiktok/app-v3/share-short-link.md index 979016dd..dbf6d835 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/share-short-link.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/share-short-link.md @@ -1,13 +1,13 @@ --- -title: "Get share short link API Reference" -description: "SandBase API operation tiktok/app-v3/share-short-link." +title: "TikTok Share Short Link API Reference" +description: "SandBase API reference for model tiktok/app-v3/share-short-link. Call /v1/api/tiktok/app-v3/share-short-link; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/share-short-link" -apiReferenceJson: "{\"title\":\"Get share short link\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/share-short-link\",\"description\":\"Get share short link\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Long link or link to convert\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/share-short-link \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://www.tiktok.com/passport/web/logout/\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://www.tiktok.com/passport/web/logout/\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/share-short-link\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://www.tiktok.com/passport/web/logout/\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/share-short-link\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/share-short-link\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/share-short-link\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/share-short-link\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/share-short-link\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/share-short-link\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/share-short-link\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Share Short Link\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/share-short-link\",\"description\":\"Converts standard TikTok long links into shortened shareable URLs. Supply the full target web address to return the compressed redirect URL.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Long link or link to convert\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/share-short-link \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://www.tiktok.com/passport/web/logout/\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://www.tiktok.com/passport/web/logout/\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/share-short-link\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://www.tiktok.com/passport/web/logout/\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/share-short-link\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/share-short-link\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/share-short-link\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/share-short-link\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/share-short-link\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/share-short-link\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/share-short-link\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get share short link" + modelName: "TikTok Share Short Link" modelId: "tiktok/app-v3/share-short-link" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/shop-home-page-list.md b/model-api-reference/platform-apis/tiktok/app-v3/shop-home-page-list.md deleted file mode 100644 index 22b01ba5..00000000 --- a/model-api-reference/platform-apis/tiktok/app-v3/shop-home-page-list.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get shop home page list data API Reference" -description: "SandBase API operation tiktok/app-v3/shop-home-page-list." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/tiktok/app-v3/shop-home-page-list" -apiReferenceJson: "{\"title\":\"Get shop home page list data\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/shop-home-page-list\",\"description\":\"Get shop home page list data, used for shop home page display, and crawling shop home page product data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"seller_id\",\"type\":\"string\",\"required\":true,\"description\":\"Seller id, shop id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/shop-home-page-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"seller_id\\\": \\\"seller_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"seller_id\\\": \\\"seller_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/shop-home-page-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"seller_id\\\": \\\"seller_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/shop-home-page-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/shop-home-page-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/shop-home-page-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/shop-home-page-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/shop-home-page-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/shop-home-page-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/shop-home-page-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get shop home page list data" - modelId: "tiktok/app-v3/shop-home-page-list" - vendor: "TikTok" - vendorSlug: "tiktok" - modelSlug: "app-v3/shop-home-page-list" - protocol: "API Reference" - endpoint: "/v1/api/tiktok/app-v3/shop-home-page-list" - publishedAt: "" - capabilities: ["api","tiktok"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/tiktok/app-v3/shop-home.md b/model-api-reference/platform-apis/tiktok/app-v3/shop-home.md deleted file mode 100644 index e6dfba55..00000000 --- a/model-api-reference/platform-apis/tiktok/app-v3/shop-home.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get shop home page data API Reference" -description: "SandBase API operation tiktok/app-v3/shop-home." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/tiktok/app-v3/shop-home" -apiReferenceJson: "{\"title\":\"Get shop home page data\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/shop-home\",\"description\":\"Get product data of the shop home page\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page_id\",\"type\":\"string\",\"required\":true,\"description\":\"Page id of the crawled shop home page, which can be obtained from the interface `fetch_shop_home_page_list`\"},{\"name\":\"seller_id\",\"type\":\"string\",\"required\":true,\"description\":\"Seller id, shop id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/shop-home \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"page_id\\\": \\\"page_id\\\",\\n \\\"seller_id\\\": \\\"seller_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"page_id\\\": \\\"page_id\\\",\\n \\\"seller_id\\\": \\\"seller_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/shop-home\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"page_id\\\": \\\"page_id\\\",\\n \\\"seller_id\\\": \\\"seller_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/shop-home\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/shop-home\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/shop-home\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/shop-home\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/shop-home\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/shop-home\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/shop-home\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get shop home page data" - modelId: "tiktok/app-v3/shop-home" - vendor: "TikTok" - vendorSlug: "tiktok" - modelSlug: "app-v3/shop-home" - protocol: "API Reference" - endpoint: "/v1/api/tiktok/app-v3/shop-home" - publishedAt: "" - capabilities: ["api","tiktok"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/tiktok/app-v3/shop-id-by-share-link.md b/model-api-reference/platform-apis/tiktok/app-v3/shop-id-by-share-link.md deleted file mode 100644 index 2b0039d9..00000000 --- a/model-api-reference/platform-apis/tiktok/app-v3/shop-id-by-share-link.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get Shop ID by Share Link API Reference — TikTok Id By Share Link" -description: "SandBase API operation tiktok/app-v3/shop-id-by-share-link." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/tiktok/app-v3/shop-id-by-share-link" -apiReferenceJson: "{\"title\":\"Get Shop ID by Share Link\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/shop-id-by-share-link\",\"description\":\"Get Shop ID by Share Link\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_link\",\"type\":\"string\",\"required\":true,\"description\":\"Share link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/shop-id-by-share-link \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"share_link\\\": \\\"share_link\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"share_link\\\": \\\"share_link\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/shop-id-by-share-link\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"share_link\\\": \\\"share_link\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/shop-id-by-share-link\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/shop-id-by-share-link\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/shop-id-by-share-link\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/shop-id-by-share-link\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/shop-id-by-share-link\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/shop-id-by-share-link\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/shop-id-by-share-link\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get Shop ID by Share Link" - modelId: "tiktok/app-v3/shop-id-by-share-link" - vendor: "TikTok" - vendorSlug: "tiktok" - modelSlug: "app-v3/shop-id-by-share-link" - protocol: "API Reference" - endpoint: "/v1/api/tiktok/app-v3/shop-id-by-share-link" - publishedAt: "" - capabilities: ["api","tiktok"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/tiktok/app-v3/shop-info.md b/model-api-reference/platform-apis/tiktok/app-v3/shop-info.md deleted file mode 100644 index 3197f446..00000000 --- a/model-api-reference/platform-apis/tiktok/app-v3/shop-info.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get shop information data API Reference" -description: "SandBase API operation tiktok/app-v3/shop-info." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/tiktok/app-v3/shop-info" -apiReferenceJson: "{\"title\":\"Get shop information data\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/shop-info\",\"description\":\"Get shop information data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"shop_id\",\"type\":\"string\",\"required\":true,\"description\":\"Seller id, shop id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/shop-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"shop_id\\\": \\\"shop_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"shop_id\\\": \\\"shop_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/shop-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"shop_id\\\": \\\"shop_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/shop-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/shop-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/shop-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/shop-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/shop-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/shop-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/shop-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get shop information data" - modelId: "tiktok/app-v3/shop-info" - vendor: "TikTok" - vendorSlug: "tiktok" - modelSlug: "app-v3/shop-info" - protocol: "API Reference" - endpoint: "/v1/api/tiktok/app-v3/shop-info" - publishedAt: "" - capabilities: ["api","tiktok"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/tiktok/app-v3/similar-user-recommendations.md b/model-api-reference/platform-apis/tiktok/app-v3/similar-user-recommendations.md index 8edbaef9..eaf8a951 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/similar-user-recommendations.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/similar-user-recommendations.md @@ -1,13 +1,13 @@ --- -title: "Similar User Recommendations API Reference" -description: "SandBase API operation tiktok/app-v3/similar-user-recommendations." +title: "TikTok Similar User Recommendations API Reference" +description: "SandBase API reference for model tiktok/app-v3/similar-user-recommendations. Call /v1/api/tiktok/app-v3/similar-user-recommendations; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/similar-user-recommendations" -apiReferenceJson: "{\"title\":\"Similar User Recommendations\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/similar-user-recommendations\",\"description\":\"Similar User Recommendations\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page_token\",\"type\":\"string\",\"required\":false,\"description\":\"Page token, not required for the first request, for subsequent requests, pass the next_page_token value from the previous response.\"},{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_uid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/similar-user-recommendations \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/similar-user-recommendations\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sec_uid\\\": \\\"sec_uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/similar-user-recommendations\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/similar-user-recommendations\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/similar-user-recommendations\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/similar-user-recommendations\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/similar-user-recommendations\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/similar-user-recommendations\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/similar-user-recommendations\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Similar User Recommendations\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/similar-user-recommendations\",\"description\":\"Returns recommended similar user profiles for a target TikTok account based on its secure user identifier, with support for cursor-based pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page_token\",\"type\":\"string\",\"required\":false,\"description\":\"Page token, not required for the first request, for subsequent requests, pass the next_page_token value from the previous response.\"},{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_uid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/similar-user-recommendations \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/similar-user-recommendations\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/similar-user-recommendations\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/similar-user-recommendations\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/similar-user-recommendations\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/similar-user-recommendations\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/similar-user-recommendations\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/similar-user-recommendations\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/similar-user-recommendations\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Similar User Recommendations" + modelName: "TikTok Similar User Recommendations" modelId: "tiktok/app-v3/similar-user-recommendations" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/user-country-by-username.md b/model-api-reference/platform-apis/tiktok/app-v3/user-country-by-username.md index a9dfd326..749d70f6 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/user-country-by-username.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/user-country-by-username.md @@ -1,13 +1,13 @@ --- -title: "Get user account country by username API Reference" -description: "SandBase API operation tiktok/app-v3/user-country-by-username." +title: "TikTok User Country by Username API Reference" +description: "SandBase API reference for model tiktok/app-v3/user-country-by-username. Call /v1/api/tiktok/app-v3/user-country-by-username; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/user-country-by-username" -apiReferenceJson: "{\"title\":\"Get user account country by username\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/user-country-by-username\",\"description\":\"Get user account country by username\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Username, which can be obtained from the user's homepage link, for example: https://www.tiktok.com/@tiktok, the username is tiktok.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/user-country-by-username \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"tiktok\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"tiktok\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-country-by-username\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"tiktok\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-country-by-username\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/user-country-by-username\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/user-country-by-username\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-country-by-username\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-country-by-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/user-country-by-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/user-country-by-username\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok User Country by Username\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/user-country-by-username\",\"description\":\"Returns the registered country code, user IDs, and username modification timestamp for a specified TikTok profile using their username.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Username, which can be obtained from the user's homepage link, for example: https://www.tiktok.com/@tiktok, the username is tiktok.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/user-country-by-username \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"tiktok\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"tiktok\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-country-by-username\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"tiktok\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-country-by-username\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/user-country-by-username\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/user-country-by-username\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-country-by-username\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-country-by-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/user-country-by-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/user-country-by-username\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user account country by username" + modelName: "TikTok User Country by Username" modelId: "tiktok/app-v3/user-country-by-username" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/user-follower-list.md b/model-api-reference/platform-apis/tiktok/app-v3/user-follower-list.md index 21003096..ada15b41 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/user-follower-list.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/user-follower-list.md @@ -1,13 +1,13 @@ --- -title: "Get follower list of specified user API Reference" -description: "SandBase API operation tiktok/app-v3/user-follower-list." +title: "TikTok User Follower List API Reference" +description: "SandBase API reference for model tiktok/app-v3/user-follower-list. Call /v1/api/tiktok/app-v3/user-follower-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/user-follower-list" -apiReferenceJson: "{\"title\":\"Get follower list of specified user\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/user-follower-list\",\"description\":\"Get follower list of specified user\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number, do not exceed 20, keep it fixed.\"},{\"name\":\"min_time\",\"type\":\"integer\",\"required\":false,\"description\":\"Minimum time for paging, use default value 0 for the first request, and use the min_time value returned by the last request for subsequent requests.\"},{\"name\":\"page_token\",\"type\":\"string\",\"required\":false,\"description\":\"Page token, use default value \\\"\\\" for the first request, and use the page_token value returned by the last request for subsequent requests.\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User sec_user_id, this is a mixed letter and number version ID (one of user_id and sec_user_id)\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID, this is a pure numeric version of the user ID (one of user_id and sec_user_id)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/user-follower-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/app-v3/user-follower-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/app-v3/user-follower-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-follower-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/app-v3/user-follower-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-follower-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/user-follower-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/user-follower-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-follower-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-follower-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/user-follower-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/user-follower-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok User Follower List\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/user-follower-list\",\"description\":\"Returns the follower list for a specified TikTok profile. Supports paging with timestamp and token parameters, requiring either a numeric user ID or secure user ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number, do not exceed 20, keep it fixed.\"},{\"name\":\"min_time\",\"type\":\"integer\",\"required\":false,\"description\":\"Minimum time for paging, use default value 0 for the first request, and use the min_time value returned by the last request for subsequent requests.\"},{\"name\":\"page_token\",\"type\":\"string\",\"required\":false,\"description\":\"Page token, use default value \\\"\\\" for the first request, and use the page_token value returned by the last request for subsequent requests.\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User sec_user_id, this is a mixed letter and number version ID (one of user_id and sec_user_id)\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID, this is a pure numeric version of the user ID (one of user_id and sec_user_id)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/user-follower-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-follower-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-follower-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/user-follower-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/user-follower-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-follower-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-follower-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/user-follower-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/user-follower-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get follower list of specified user" + modelName: "TikTok User Follower List" modelId: "tiktok/app-v3/user-follower-list" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/user-following-list.md b/model-api-reference/platform-apis/tiktok/app-v3/user-following-list.md index 0291c3c7..419680be 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/user-following-list.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/user-following-list.md @@ -1,13 +1,13 @@ --- -title: "Get following list of specified user API Reference — TikTok List" -description: "SandBase API operation tiktok/app-v3/user-following-list." +title: "TikTok User Following List API Reference" +description: "SandBase API reference for model tiktok/app-v3/user-following-list. Call /v1/api/tiktok/app-v3/user-following-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/user-following-list" -apiReferenceJson: "{\"title\":\"Get following list of specified user\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/user-following-list\",\"description\":\"Get following list of specified user\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number, do not exceed 20, keep it fixed.\"},{\"name\":\"min_time\",\"type\":\"integer\",\"required\":false,\"description\":\"Minimum time for paging, use default value 0 for the first request, and use the min_time value returned by the last request for subsequent requests.\"},{\"name\":\"page_token\",\"type\":\"string\",\"required\":false,\"description\":\"Page token, use default value \\\"\\\" for the first request, and use the page_token value returned by the last request for subsequent requests.\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User sec_user_id, this is a mixed letter and number version ID (one of user_id and sec_user_id)\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID, this is a pure numeric version of the user ID (one of user_id and sec_user_id)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/user-following-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/app-v3/user-following-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/app-v3/user-following-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-following-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/app-v3/user-following-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-following-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/user-following-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/user-following-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-following-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-following-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/user-following-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/user-following-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok User Following List\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/user-following-list\",\"description\":\"Returns a list of accounts followed by a target TikTok user. Query using either a numeric user ID or a sec_user_id with support for token and timestamp pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number, do not exceed 20, keep it fixed.\"},{\"name\":\"min_time\",\"type\":\"integer\",\"required\":false,\"description\":\"Minimum time for paging, use default value 0 for the first request, and use the min_time value returned by the last request for subsequent requests.\"},{\"name\":\"page_token\",\"type\":\"string\",\"required\":false,\"description\":\"Page token, use default value \\\"\\\" for the first request, and use the page_token value returned by the last request for subsequent requests.\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User sec_user_id, this is a mixed letter and number version ID (one of user_id and sec_user_id)\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID, this is a pure numeric version of the user ID (one of user_id and sec_user_id)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/user-following-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-following-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-following-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/user-following-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/user-following-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-following-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-following-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/user-following-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/user-following-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get following list of specified user" + modelName: "TikTok User Following List" modelId: "tiktok/app-v3/user-following-list" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/user-id-and-sec-user-id-by-username.md b/model-api-reference/platform-apis/tiktok/app-v3/user-id-and-sec-user-id-by-username.md index 77d40487..d6c48b9a 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/user-id-and-sec-user-id-by-username.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/user-id-and-sec-user-id-by-username.md @@ -1,13 +1,13 @@ --- -title: "Get user_id and sec_user_id by Username API Reference" -description: "SandBase API operation tiktok/app-v3/user-id-and-sec-user-id-by-username." +title: "TikTok User ID by Username API Reference" +description: "SandBase API reference for tiktok/app-v3/user-id-and-sec-user-id-by-username. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/user-id-and-sec-user-id-by-username" -apiReferenceJson: "{\"title\":\"Get user_id and sec_user_id by Username\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/user-id-and-sec-user-id-by-username\",\"description\":\"Get user_id and sec_user_id by Username\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Username\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/user-id-and-sec-user-id-by-username \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"tiktok\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"tiktok\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-id-and-sec-user-id-by-username\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"tiktok\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-id-and-sec-user-id-by-username\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/user-id-and-sec-user-id-by-username\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/user-id-and-sec-user-id-by-username\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-id-and-sec-user-id-by-username\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-id-and-sec-user-id-by-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/user-id-and-sec-user-id-by-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/user-id-and-sec-user-id-by-username\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok User ID by Username\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/user-id-and-sec-user-id-by-username\",\"description\":\"Returns the user_id and sec_user_id associated with a specific TikTok username. Provide a profile username to resolve account identifiers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Username\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/user-id-and-sec-user-id-by-username \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"tiktok\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"tiktok\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-id-and-sec-user-id-by-username\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"tiktok\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-id-and-sec-user-id-by-username\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/user-id-and-sec-user-id-by-username\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/user-id-and-sec-user-id-by-username\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-id-and-sec-user-id-by-username\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-id-and-sec-user-id-by-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/user-id-and-sec-user-id-by-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/user-id-and-sec-user-id-by-username\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user_id and sec_user_id by Username" + modelName: "TikTok User ID by Username" modelId: "tiktok/app-v3/user-id-and-sec-user-id-by-username" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/user-like-videos.md b/model-api-reference/platform-apis/tiktok/app-v3/user-like-videos.md index 772f30ed..8a1eedc9 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/user-like-videos.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/user-like-videos.md @@ -1,13 +1,13 @@ --- -title: "Get user like video data API Reference — TikTok User Like Videos" -description: "SandBase API operation tiktok/app-v3/user-like-videos." +title: "TikTok User Liked Videos API Reference" +description: "SandBase API reference for model tiktok/app-v3/user-like-videos. Call /v1/api/tiktok/app-v3/user-like-videos; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/user-like-videos" -apiReferenceJson: "{\"title\":\"Get user like video data\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/user-like-videos\",\"description\":\"Get user like video data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"counts\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\"},{\"name\":\"max_cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum cursor, used for paging, the first page is 0, the second page is the max_cursor value in the first response.\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_user_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/user-like-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-like-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sec_user_id\\\": \\\"sec_user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-like-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/user-like-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/user-like-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-like-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-like-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/user-like-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/user-like-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok User Liked Videos\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/user-like-videos\",\"description\":\"Returns liked videos for a specific user using their secure user ID. Supports cursor-based pagination and page size configuration.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"counts\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\"},{\"name\":\"max_cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum cursor, used for paging, the first page is 0, the second page is the max_cursor value in the first response.\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_user_id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/user-like-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sec_user_id\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sec_user_id\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-like-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sec_user_id\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-like-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/user-like-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/user-like-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-like-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-like-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/user-like-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/user-like-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user like video data" + modelName: "TikTok User Liked Videos" modelId: "tiktok/app-v3/user-like-videos" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/user-music-list.md b/model-api-reference/platform-apis/tiktok/app-v3/user-music-list.md index 8e67f324..0868bc52 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/user-music-list.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/user-music-list.md @@ -1,13 +1,13 @@ --- -title: "Get user music list data API Reference" -description: "SandBase API operation tiktok/app-v3/user-music-list." +title: "TikTok User Music List API Reference" +description: "TikTok User Music List API reference for SandBase. Use model tiktok/app-v3/user-music-list with /v1/api/tiktok/app-v3/user-music-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/user-music-list" -apiReferenceJson: "{\"title\":\"Get user music list data\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/user-music-list\",\"description\":\"Get user music list data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\",\"default\":\"10\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor, used for paging, the first page is 0, the second page is the cursor value in the first response.\",\"default\":\"0\"},{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_uid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/user-music-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-music-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-music-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/user-music-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/user-music-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-music-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-music-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/user-music-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/user-music-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok User Music List\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/user-music-list\",\"description\":\"Returns a list of audio tracks associated with a specific TikTok user. Queries require the user's `sec_uid` with optional cursor-based pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\",\"default\":\"10\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor, used for paging, the first page is 0, the second page is the cursor value in the first response.\",\"default\":\"0\"},{\"name\":\"sec_uid\",\"type\":\"string\",\"required\":true,\"description\":\"User sec_uid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/user-music-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-music-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sec_uid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-music-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/user-music-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/user-music-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-music-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-music-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/user-music-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/user-music-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user music list data" + modelName: "TikTok User Music List" modelId: "tiktok/app-v3/user-music-list" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/user-post-videos-v2.md b/model-api-reference/platform-apis/tiktok/app-v3/user-post-videos-v2.md index 53b0ae2f..0e707b36 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/user-post-videos-v2.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/user-post-videos-v2.md @@ -1,13 +1,13 @@ --- -title: "Get user homepage video data V2 API Reference" -description: "SandBase API operation tiktok/app-v3/user-post-videos-v2." +title: "TikTok User Videos (App V3, V2) API Reference" +description: "SandBase API reference for model tiktok/app-v3/user-post-videos-v2. Call /v1/api/tiktok/app-v3/user-post-videos-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/user-post-videos-v2" -apiReferenceJson: "{\"title\":\"Get user homepage video data V2\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/user-post-videos-v2\",\"description\":\"Get user homepage video data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum count number\",\"default\":\"20\"},{\"name\":\"max_cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum cursor, used for paging, the first page is 0, the second page is the max_cursor value in the first response.\",\"default\":\"0\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User sec_user_id, use sec_user_id to get user video data first, if sec_user_id is empty, use unique_id to get user video data.\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort type, 0-Latest, 1-Hot\",\"default\":\"0\"},{\"name\":\"unique_id\",\"type\":\"string\",\"required\":false,\"description\":\"User unique_id, optional parameter, if sec_user_id is empty, use unique_id to get user video data, unique_id is also the user's username.\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/user-post-videos-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/app-v3/user-post-videos-v2\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/app-v3/user-post-videos-v2\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-post-videos-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/app-v3/user-post-videos-v2\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-post-videos-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/user-post-videos-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok User Videos (App V3, V2)\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/user-post-videos-v2\",\"description\":\"Returns video data from a TikTok user homepage based on their profile identifier or username, with options for sorting and pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum count number\",\"default\":\"20\"},{\"name\":\"max_cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum cursor, used for paging, the first page is 0, the second page is the max_cursor value in the first response.\",\"default\":\"0\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User sec_user_id, use sec_user_id to get user video data first, if sec_user_id is empty, use unique_id to get user video data.\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort type, 0-Latest, 1-Hot\",\"default\":\"0\"},{\"name\":\"unique_id\",\"type\":\"string\",\"required\":false,\"description\":\"User unique_id, optional parameter, if sec_user_id is empty, use unique_id to get user video data, unique_id is also the user's username.\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/user-post-videos-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-post-videos-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-post-videos-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/user-post-videos-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user homepage video data V2" + modelName: "TikTok User Videos (App V3, V2)" modelId: "tiktok/app-v3/user-post-videos-v2" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/user-post-videos-v3.md b/model-api-reference/platform-apis/tiktok/app-v3/user-post-videos-v3.md index f4dd9101..2a968fc4 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/user-post-videos-v3.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/user-post-videos-v3.md @@ -1,13 +1,13 @@ --- -title: "Get user homepage video data V3 (simplified data - API Ref" -description: "SandBase API operation tiktok/app-v3/user-post-videos-v3." +title: "TikTok User Homepage Videos (V3) API Reference" +description: "SandBase API reference for model tiktok/app-v3/user-post-videos-v3. Call /v1/api/tiktok/app-v3/user-post-videos-v3; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/user-post-videos-v3" -apiReferenceJson: "{\"title\":\"Get user homepage video data V3 (simplified data - faster)\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/user-post-videos-v3\",\"description\":\"Get user homepage video data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum count number\",\"default\":\"20\"},{\"name\":\"max_cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum cursor, used for paging, the first page is 0, the second page is the max_cursor value in the first response.\",\"default\":\"0\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User sec_user_id, use sec_user_id to get user video data first, if sec_user_id is empty, use unique_id to get user video data.\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort type, 0-Latest, 1-Hot\",\"default\":\"0\"},{\"name\":\"unique_id\",\"type\":\"string\",\"required\":false,\"description\":\"User unique_id, optional parameter, if sec_user_id is empty, use unique_id to get user video data, unique_id is also the user's username.\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/user-post-videos-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/app-v3/user-post-videos-v3\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/app-v3/user-post-videos-v3\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-post-videos-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/app-v3/user-post-videos-v3\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-post-videos-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/user-post-videos-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok User Homepage Videos (V3)\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/user-post-videos-v3\",\"description\":\"Returns simplified video data from a TikTok user homepage feed. Supports sorting by available or hot posts and filtering by username or user ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum count number\",\"default\":\"20\"},{\"name\":\"max_cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum cursor, used for paging, the first page is 0, the second page is the max_cursor value in the first response.\",\"default\":\"0\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User sec_user_id, use sec_user_id to get user video data first, if sec_user_id is empty, use unique_id to get user video data.\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort type, 0-Latest, 1-Hot\",\"default\":\"0\"},{\"name\":\"unique_id\",\"type\":\"string\",\"required\":false,\"description\":\"User unique_id, optional parameter, if sec_user_id is empty, use unique_id to get user video data, unique_id is also the user's username.\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/user-post-videos-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-post-videos-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-post-videos-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/user-post-videos-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user homepage video data V3 (simplified data - faster)" + modelName: "TikTok User Homepage Videos (V3)" modelId: "tiktok/app-v3/user-post-videos-v3" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/user-post-videos.md b/model-api-reference/platform-apis/tiktok/app-v3/user-post-videos.md index 9de5bb4c..156ad493 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/user-post-videos.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/user-post-videos.md @@ -1,13 +1,13 @@ --- -title: "Get user homepage video data V1 API Reference" -description: "SandBase API operation tiktok/app-v3/user-post-videos." +title: "TikTok User Videos (App V3) API Reference" +description: "SandBase API reference for model tiktok/app-v3/user-post-videos. Call /v1/api/tiktok/app-v3/user-post-videos; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/user-post-videos" -apiReferenceJson: "{\"title\":\"Get user homepage video data V1\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/user-post-videos\",\"description\":\"Get user homepage video data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum count number\",\"default\":\"20\"},{\"name\":\"max_cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum cursor, used for paging, the first page is 0, the second page is the max_cursor value in the first response.\",\"default\":\"0\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region, optional parameter, if not passed, the US region data will be used by default. After passing, the data of the corresponding country and region will be preferred, for example: US, GB, FR, JP, SG, VN, etc.\",\"default\":\"\\\"\\\"\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User sec_user_id, use sec_user_id to get user video data first, if sec_user_id is empty, use unique_id to get user video data.\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort type, 0-Latest, 1-Hot\",\"default\":\"0\"},{\"name\":\"unique_id\",\"type\":\"string\",\"required\":false,\"description\":\"User unique_id, optional parameter, if sec_user_id is empty, use unique_id to get user video data, unique_id is also the user's username.\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/user-post-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/app-v3/user-post-videos\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/app-v3/user-post-videos\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-post-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/app-v3/user-post-videos\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-post-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/user-post-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok User Videos (App V3)\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/user-post-videos\",\"description\":\"Returns videos posted on a TikTok user profile. Filter by account identifier, specify sorting order by available or popular items, and paginate through results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum count number\",\"default\":\"20\"},{\"name\":\"max_cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum cursor, used for paging, the first page is 0, the second page is the max_cursor value in the first response.\",\"default\":\"0\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region, optional parameter, if not passed, the US region data will be used by default. After passing, the data of the corresponding country and region will be preferred, for example: US, GB, FR, JP, SG, VN, etc.\",\"default\":\"\\\"\\\"\"},{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User sec_user_id, use sec_user_id to get user video data first, if sec_user_id is empty, use unique_id to get user video data.\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort type, 0-Latest, 1-Hot\",\"default\":\"0\"},{\"name\":\"unique_id\",\"type\":\"string\",\"required\":false,\"description\":\"User unique_id, optional parameter, if sec_user_id is empty, use unique_id to get user video data, unique_id is also the user's username.\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/user-post-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-post-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-post-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/user-post-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/user-post-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user homepage video data V1" + modelName: "TikTok User Videos (App V3)" modelId: "tiktok/app-v3/user-post-videos" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/user-profile.md b/model-api-reference/platform-apis/tiktok/app-v3/user-profile.md index b2b68269..4a21832b 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/user-profile.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/user-profile.md @@ -1,13 +1,13 @@ --- -title: "Get information of specified user API Reference — TikTok Profile" -description: "SandBase API operation tiktok/app-v3/user-profile." +title: "TikTok User Profile Details API Reference" +description: "TikTok User Profile Details API reference for SandBase. Use model tiktok/app-v3/user-profile with /v1/api/tiktok/app-v3/user-profile; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/user-profile" -apiReferenceJson: "{\"title\":\"Get information of specified user\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/user-profile\",\"description\":\"Get information of specified user\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User sec_user_id\",\"default\":\"\\\"\\\"\"},{\"name\":\"unique_id\",\"type\":\"string\",\"required\":false,\"description\":\"User unique_id, optional parameter, if sec_user_id is empty, use unique_id to get user information, unique_id is also the user's username, if used, please keep sec_user_id and user_id empty.\",\"default\":\"\\\"\\\"\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User uid, optional parameter, pure number, if used, please keep sec_user_id and unique_id empty.\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/app-v3/user-profile\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/app-v3/user-profile\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/app-v3/user-profile\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok User Profile Details\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/user-profile\",\"description\":\"Returns profile information for a specified TikTok user. Lookups can be performed using a numeric user ID, username, or sec_user_id.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User sec_user_id\",\"default\":\"\\\"\\\"\"},{\"name\":\"unique_id\",\"type\":\"string\",\"required\":false,\"description\":\"User unique_id, optional parameter, if sec_user_id is empty, use unique_id to get user information, unique_id is also the user's username, if used, please keep sec_user_id and user_id empty.\",\"default\":\"\\\"\\\"\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User uid, optional parameter, pure number, if used, please keep sec_user_id and unique_id empty.\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get information of specified user" + modelName: "TikTok User Profile Details" modelId: "tiktok/app-v3/user-profile" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/user-repost-videos.md b/model-api-reference/platform-apis/tiktok/app-v3/user-repost-videos.md index 02e4b6aa..0df50657 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/user-repost-videos.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/user-repost-videos.md @@ -1,13 +1,13 @@ --- -title: "Get user repost video data API Reference" -description: "SandBase API operation tiktok/app-v3/user-repost-videos." +title: "TikTok User Repost Videos API Reference" +description: "SandBase API reference for model tiktok/app-v3/user-repost-videos. Call /v1/api/tiktok/app-v3/user-repost-videos; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/user-repost-videos" -apiReferenceJson: "{\"title\":\"Get user repost video data\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/user-repost-videos\",\"description\":\"Get user repost video data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\",\"default\":\"21\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"},{\"name\":\"user_id\",\"type\":\"integer\",\"required\":true,\"description\":\"User id, which can be obtained through the handler_user_profile endpoint, with the keyword uid in the response.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/user-repost-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": 107955\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": 107955\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-repost-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": 107955\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-repost-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/user-repost-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/user-repost-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-repost-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-repost-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/user-repost-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/user-repost-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok User Repost Videos\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/user-repost-videos\",\"description\":\"Returns a list of videos reposted by a specific TikTok user based on their user ID. Supports result pagination through count and offset parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\",\"default\":\"21\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"},{\"name\":\"user_id\",\"type\":\"integer\",\"required\":true,\"description\":\"User id, which can be obtained through the handler_user_profile endpoint, with the keyword uid in the response.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/user-repost-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": 107955\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": 107955\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-repost-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": 107955\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-repost-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/user-repost-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/user-repost-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-repost-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-repost-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/user-repost-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/user-repost-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user repost video data" + modelName: "TikTok User Repost Videos" modelId: "tiktok/app-v3/user-repost-videos" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/user-search-result.md b/model-api-reference/platform-apis/tiktok/app-v3/user-search-result.md index fb0ca07a..f5a53b52 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/user-search-result.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/user-search-result.md @@ -1,13 +1,13 @@ --- -title: "Get user search results of specified keywords API Reference" -description: "SandBase API operation tiktok/app-v3/user-search-result." +title: "TikTok User Search Results API Reference" +description: "SandBase API reference for model tiktok/app-v3/user-search-result. Call /v1/api/tiktok/app-v3/user-search-result; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/user-search-result" -apiReferenceJson: "{\"title\":\"Get user search results of specified keywords\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/user-search-result\",\"description\":\"Get user search results of specified keywords\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\",\"default\":\"20\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"},{\"name\":\"user_search_follower_count\",\"type\":\"string\",\"required\":false,\"description\":\"Sort by number of followers\",\"default\":\"\\\"\\\"\"},{\"name\":\"user_search_other_pref\",\"type\":\"string\",\"required\":false,\"description\":\"Sort by other preferences\",\"default\":\"\\\"\\\"\"},{\"name\":\"user_search_profile_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sort by account type\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/user-search-result \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-search-result\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-search-result\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/user-search-result\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/user-search-result\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-search-result\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/user-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/user-search-result\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok User Search Results\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/user-search-result\",\"description\":\"Returns a list of user profiles matching specified keywords, with options to filter by account type, follower count, and preferences.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\",\"default\":\"20\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"},{\"name\":\"user_search_follower_count\",\"type\":\"string\",\"required\":false,\"description\":\"Sort by number of followers\",\"default\":\"\\\"\\\"\"},{\"name\":\"user_search_other_pref\",\"type\":\"string\",\"required\":false,\"description\":\"Sort by other preferences\",\"default\":\"\\\"\\\"\"},{\"name\":\"user_search_profile_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sort by account type\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/user-search-result \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-search-result\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/user-search-result\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/user-search-result\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/user-search-result\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-search-result\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/user-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/user-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/user-search-result\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user search results of specified keywords" + modelName: "TikTok User Search Results" modelId: "tiktok/app-v3/user-search-result" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/video-comment-replies.md b/model-api-reference/platform-apis/tiktok/app-v3/video-comment-replies.md index 74262560..a822a0b3 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/video-comment-replies.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/video-comment-replies.md @@ -1,13 +1,13 @@ --- -title: "Get comment replies data of specified video — c5cbpz API" -description: "SandBase API operation tiktok/app-v3/video-comment-replies." +title: "TikTok Video Comment Replies API Reference" +description: "SandBase API reference for model tiktok/app-v3/video-comment-replies. Call /v1/api/tiktok/app-v3/video-comment-replies; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/video-comment-replies" -apiReferenceJson: "{\"title\":\"Get comment replies data of specified video\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/video-comment-replies\",\"description\":\"Get comment replies data of specified video\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"comment_id\",\"type\":\"string\",\"required\":true,\"description\":\"Comment id\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor, used for paging, the first page is 0, the second page is the cursor value in the first response.\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/video-comment-replies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/video-comment-replies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/video-comment-replies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/video-comment-replies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/video-comment-replies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/video-comment-replies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/video-comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/video-comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/video-comment-replies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Video Comment Replies\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/video-comment-replies\",\"description\":\"Returns reply threads for a specific comment on a TikTok video. Queries rely on the video identifier and comment identifier, with support for cursor-based pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"comment_id\",\"type\":\"string\",\"required\":true,\"description\":\"Comment id\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor, used for paging, the first page is 0, the second page is the cursor value in the first response.\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/video-comment-replies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/video-comment-replies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/video-comment-replies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/video-comment-replies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/video-comment-replies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/video-comment-replies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/video-comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/video-comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/video-comment-replies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get comment replies data of specified video" + modelName: "TikTok Video Comment Replies" modelId: "tiktok/app-v3/video-comment-replies" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/video-comments.md b/model-api-reference/platform-apis/tiktok/app-v3/video-comments.md index f8209213..ee9474a0 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/video-comments.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/video-comments.md @@ -1,13 +1,13 @@ --- -title: "Get single video comments data API Reference — TikTok Comments" -description: "SandBase API operation tiktok/app-v3/video-comments." +title: "TikTok Video Comments (App V3) API Reference" +description: "SandBase API reference for model tiktok/app-v3/video-comments. Call /v1/api/tiktok/app-v3/video-comments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/video-comments" -apiReferenceJson: "{\"title\":\"Get single video comments data\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/video-comments\",\"description\":\"Get single video comments data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\",\"default\":\"20\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor, used for paging, the first page is 0, the second page is the cursor value in the first response.\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/video-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/video-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/video-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/video-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/video-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/video-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/video-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Video Comments (App V3)\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/video-comments\",\"description\":\"Returns comments for a specific TikTok video using its video ID. Includes comment engagement metrics, timestamps, author details, and supports pagination controls.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\",\"default\":\"20\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Cursor, used for paging, the first page is 0, the second page is the cursor value in the first response.\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/video-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/video-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/video-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/video-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/video-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/video-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/video-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video comments data" + modelName: "TikTok Video Comments (App V3)" modelId: "tiktok/app-v3/video-comments" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/video-search-result.md b/model-api-reference/platform-apis/tiktok/app-v3/video-search-result.md index a674edf2..9ffbf8f3 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/video-search-result.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/video-search-result.md @@ -1,13 +1,13 @@ --- -title: "Get video search results of specified keywords API Reference" -description: "SandBase API operation tiktok/app-v3/video-search-result." +title: "TikTok Video Keyword Search API Reference" +description: "SandBase API reference for model tiktok/app-v3/video-search-result. Call /v1/api/tiktok/app-v3/video-search-result; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/video-search-result" -apiReferenceJson: "{\"title\":\"Get video search results of specified keywords\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/video-search-result\",\"description\":\"Get video search results of specified keywords\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\",\"default\":\"20\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"},{\"name\":\"publish_time\",\"type\":\"integer\",\"required\":false,\"description\":\"0-Unlimited, 1-Last day, 7-Last week, 30-Last month, 90-Last three months, 180-Last half year\",\"default\":\"0\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region, default is US-America, for optional values please refer to TikTok region codes or ISO 3166-1 alpha-2 country codes.\",\"default\":\"US\"},{\"name\":\"sort_type\",\"type\":\"integer\",\"required\":false,\"description\":\"0-Relatedness, 1-Most likes\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/video-search-result \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/video-search-result\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/video-search-result\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/video-search-result\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/video-search-result\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/video-search-result\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/video-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/video-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/video-search-result\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Video Keyword Search\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/video-search-result\",\"description\":\"Returns a list of TikTok videos matching a search query. Supports filtering by target region, time range, and relevance or like count sorting.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number\",\"default\":\"20\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"},{\"name\":\"publish_time\",\"type\":\"integer\",\"required\":false,\"description\":\"0-Unlimited, 1-Last day, 7-Last week, 30-Last month, 90-Last three months, 180-Last half year\",\"default\":\"0\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region, default is US-America, for optional values please refer to TikTok region codes or ISO 3166-1 alpha-2 country codes.\",\"default\":\"US\"},{\"name\":\"sort_type\",\"type\":\"integer\",\"required\":false,\"description\":\"0-Relatedness, 1-Most likes\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/video-search-result \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/video-search-result\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/video-search-result\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/video-search-result\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/video-search-result\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/video-search-result\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/video-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/video-search-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/video-search-result\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video search results of specified keywords" + modelName: "TikTok Video Keyword Search" modelId: "tiktok/app-v3/video-search-result" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/app-v3/webcast-user-info.md b/model-api-reference/platform-apis/tiktok/app-v3/webcast-user-info.md index 98e2ba1f..780ba9ae 100644 --- a/model-api-reference/platform-apis/tiktok/app-v3/webcast-user-info.md +++ b/model-api-reference/platform-apis/tiktok/app-v3/webcast-user-info.md @@ -1,13 +1,13 @@ --- -title: "Get information of specified Webcast user API Reference" -description: "SandBase API operation tiktok/app-v3/webcast-user-info." +title: "TikTok Webcast User Information API Reference" +description: "SandBase API reference for model tiktok/app-v3/webcast-user-info. Call /v1/api/tiktok/app-v3/webcast-user-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/app-v3/webcast-user-info" -apiReferenceJson: "{\"title\":\"Get information of specified Webcast user\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/webcast-user-info\",\"description\":\"Get information of specified user\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User sec_user_id\",\"default\":\"\\\"\\\"\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User uid, optional parameter, pure number, if used, please keep sec_user_id and unique_id empty.\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/webcast-user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/app-v3/webcast-user-info\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/app-v3/webcast-user-info\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/webcast-user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/app-v3/webcast-user-info\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/webcast-user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/webcast-user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/webcast-user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/webcast-user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/webcast-user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/webcast-user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/webcast-user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Webcast User Information\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/app-v3/webcast-user-info\",\"description\":\"Retrieves profile information for a specified TikTok Webcast user. Queries data using either a numeric user ID or a secure user ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sec_user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User sec_user_id\",\"default\":\"\\\"\\\"\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User uid, optional parameter, pure number, if used, please keep sec_user_id and unique_id empty.\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/app-v3/webcast-user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/webcast-user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/app-v3/webcast-user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/app-v3/webcast-user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/app-v3/webcast-user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/app-v3/webcast-user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/app-v3/webcast-user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/app-v3/webcast-user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/app-v3/webcast-user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get information of specified Webcast user" + modelName: "TikTok Webcast User Information" modelId: "tiktok/app-v3/webcast-user-info" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/creator/account-health-status.md b/model-api-reference/platform-apis/tiktok/creator/account-health-status.md index e330baac..ed157969 100644 --- a/model-api-reference/platform-apis/tiktok/creator/account-health-status.md +++ b/model-api-reference/platform-apis/tiktok/creator/account-health-status.md @@ -1,13 +1,13 @@ --- -title: "Get Creator Account Health Status API Reference" -description: "SandBase API operation tiktok/creator/account-health-status." +title: "TikTok Creator Account Health Status API Reference" +description: "SandBase API reference for model tiktok/creator/account-health-status. Call /v1/api/tiktok/creator/account-health-status; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/creator/account-health-status" -apiReferenceJson: "{\"title\":\"Get Creator Account Health Status\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/account-health-status\",\"description\":\"Retrieve the health status of a TikTok Shop creator account, including the health score over the past 90 days and the current number of accumulated violation points. About violation points: Violation points are key metrics used by TikTok to measure the health of a creator account. Higher violation points indicate worse account health, and may lead to restrictions such as reduced exposure, suspension, or account bans. Violation points directly impact the account’s visibility and recommendation on the platform.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User Cookie string for authentication\"},{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP proxy address, can be omitted if not needed\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/account-health-status \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/creator/account-health-status\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/creator/account-health-status\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/account-health-status\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/creator/account-health-status\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/account-health-status\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/account-health-status\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/account-health-status\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/account-health-status\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/account-health-status\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/account-health-status\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/account-health-status\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Creator Account Health Status\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/account-health-status\",\"description\":\"Returns the health status of a TikTok Shop creator account. Provides the 90-day health score and accumulated violation points to evaluate account standing.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP proxy address, can be omitted if not needed\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/account-health-status \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/account-health-status\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/account-health-status\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/account-health-status\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/account-health-status\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/account-health-status\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/account-health-status\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/account-health-status\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/account-health-status\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Creator Account Health Status" + modelName: "TikTok Creator Account Health Status" modelId: "tiktok/creator/account-health-status" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/creator/account-insights-overview.md b/model-api-reference/platform-apis/tiktok/creator/account-insights-overview.md index d2869145..7e92e9ce 100644 --- a/model-api-reference/platform-apis/tiktok/creator/account-insights-overview.md +++ b/model-api-reference/platform-apis/tiktok/creator/account-insights-overview.md @@ -1,13 +1,13 @@ --- -title: "Get Creator Account Overview API Reference" -description: "SandBase API operation tiktok/creator/account-insights-overview." +title: "TikTok Creator Account Insights Overview API Reference" +description: "SandBase API reference for model tiktok/creator/account-insights-overview. Call /v1/api/tiktok/creator/account-insights-overview; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/creator/account-insights-overview" -apiReferenceJson: "{\"title\":\"Get Creator Account Overview\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/account-insights-overview\",\"description\":\"Retrieve performance overview of a TikTok Shop creator account within a specified date range, including metrics like revenue, exposure, clicks, and orders. By default, it aggregates data from the month of `start_date` (e.g., if `start_date` is 2025-04-01, it retrieves data for the entire month of April).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User cookie string for authentication\"},{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP proxy address. Leave empty if not needed.\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":false,\"description\":\"Query start date in 'MM-DD-YYYY' format, e.g. '04-01-2025'\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/account-insights-overview \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/creator/account-insights-overview\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/creator/account-insights-overview\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/account-insights-overview\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/creator/account-insights-overview\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/account-insights-overview\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/account-insights-overview\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/account-insights-overview\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/account-insights-overview\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/account-insights-overview\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/account-insights-overview\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/account-insights-overview\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Creator Account Insights Overview\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/account-insights-overview\",\"description\":\"Retrieves performance metrics for a TikTok Shop creator account, including revenue, exposure, clicks, and orders for the specified month.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP proxy address. Leave empty if not needed.\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":false,\"description\":\"Query start date in 'MM-DD-YYYY' format, e.g. '04-01-2025'\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/account-insights-overview \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/account-insights-overview\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/account-insights-overview\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/account-insights-overview\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/account-insights-overview\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/account-insights-overview\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/account-insights-overview\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/account-insights-overview\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/account-insights-overview\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Creator Account Overview" + modelName: "TikTok Creator Account Insights Overview" modelId: "tiktok/creator/account-insights-overview" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/creator/account-violation-list.md b/model-api-reference/platform-apis/tiktok/creator/account-violation-list.md index 849f8907..ffe729e3 100644 --- a/model-api-reference/platform-apis/tiktok/creator/account-violation-list.md +++ b/model-api-reference/platform-apis/tiktok/creator/account-violation-list.md @@ -1,13 +1,13 @@ --- -title: "Get Creator Account Violation Record List API Reference" -description: "SandBase API operation tiktok/creator/account-violation-list." +title: "TikTok Creator Account Violations API Reference" +description: "SandBase API reference for model tiktok/creator/account-violation-list. Call /v1/api/tiktok/creator/account-violation-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/creator/account-violation-list" -apiReferenceJson: "{\"title\":\"Get Creator Account Violation Record List\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/account-violation-list\",\"description\":\"Retrieve the violation history of a TikTok Shop creator account, providing details about past violations and corresponding enforcement actions. The returned violation records include violation type, violation time, violation reasons, enforcement actions, appeal status, and eligibility for appeal. Pagination is supported to retrieve multiple records in chronological order. Suitable for creator account risk management, health monitoring, and compliance auditing.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User's Cookie string for authentication\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Integer, page number (default is `1`)\"},{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP proxy address, can be omitted if not needed\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/account-violation-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/creator/account-violation-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/creator/account-violation-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/account-violation-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/creator/account-violation-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/account-violation-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/account-violation-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/account-violation-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/account-violation-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/account-violation-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/account-violation-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/account-violation-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Creator Account Violations\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/account-violation-list\",\"description\":\"Returns the violation history and enforcement actions for a TikTok Shop creator account. Supports chronological pagination across historical violation records.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Integer, page number (default is `1`)\"},{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP proxy address, can be omitted if not needed\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/account-violation-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/account-violation-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/account-violation-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/account-violation-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/account-violation-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/account-violation-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/account-violation-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/account-violation-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/account-violation-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Creator Account Violation Record List" + modelName: "TikTok Creator Account Violations" modelId: "tiktok/creator/account-violation-list" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/creator/creator-account-info.md b/model-api-reference/platform-apis/tiktok/creator/creator-account-info.md index d05bc774..376aba02 100644 --- a/model-api-reference/platform-apis/tiktok/creator/creator-account-info.md +++ b/model-api-reference/platform-apis/tiktok/creator/creator-account-info.md @@ -1,13 +1,13 @@ --- -title: "Get Creator Account Info API Reference" -description: "SandBase API operation tiktok/creator/creator-account-info." +title: "TikTok Creator Account Info API Reference" +description: "SandBase API reference for model tiktok/creator/creator-account-info. Call /v1/api/tiktok/creator/creator-account-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/creator/creator-account-info" -apiReferenceJson: "{\"title\":\"Get Creator Account Info\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/creator-account-info\",\"description\":\"Retrieve basic information of a TikTok Shop creator account, including username, avatar URLs, account ID, register region, partner binding info, and permission list. Useful for verifying account status, displaying user profile data, checking partner binding status, and determining access permissions for business processes.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User Cookie string for authentication\"},{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP proxy address, can be omitted if not used\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/creator-account-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/creator/creator-account-info\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/creator/creator-account-info\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/creator-account-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/creator/creator-account-info\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/creator-account-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/creator-account-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/creator-account-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/creator-account-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/creator-account-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/creator-account-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/creator-account-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Creator Account Info\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/creator-account-info\",\"description\":\"Returns basic profile details for a TikTok Shop creator account, including username, avatar URLs, account ID, region, partner bindings, and permissions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP proxy address, can be omitted if not used\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/creator-account-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/creator-account-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/creator-account-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/creator-account-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/creator-account-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/creator-account-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/creator-account-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/creator-account-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/creator-account-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Creator Account Info" + modelName: "TikTok Creator Account Info" modelId: "tiktok/creator/creator-account-info" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/creator/live-analytics-summary.md b/model-api-reference/platform-apis/tiktok/creator/live-analytics-summary.md index de9d780b..b3cea3b8 100644 --- a/model-api-reference/platform-apis/tiktok/creator/live-analytics-summary.md +++ b/model-api-reference/platform-apis/tiktok/creator/live-analytics-summary.md @@ -1,13 +1,13 @@ --- -title: "Get Creator Live Overview API Reference" -description: "SandBase API operation tiktok/creator/live-analytics-summary." +title: "TikTok Stream Analytics Summary API Reference" +description: "SandBase API reference for model tiktok/creator/live-analytics-summary. Call /v1/api/tiktok/creator/live-analytics-summary; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/creator/live-analytics-summary" -apiReferenceJson: "{\"title\":\"Get Creator Live Overview\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/live-analytics-summary\",\"description\":\"Retrieve a summary of live streaming performance for a TikTok Shop creator account within a specified time range. By default, it covers one full calendar month starting from the provided `start_date` (e.g., input `04-01-2025` will fetch data for the entire April 2025).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User Cookie string for authentication\"},{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP proxy address, can be omitted if not used\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":false,\"description\":\"Query start date in the format `MM-DD-YYYY`, e.g., `04-01-2025`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/live-analytics-summary \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/creator/live-analytics-summary\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/creator/live-analytics-summary\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/live-analytics-summary\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/creator/live-analytics-summary\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/live-analytics-summary\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/live-analytics-summary\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/live-analytics-summary\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/live-analytics-summary\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/live-analytics-summary\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/live-analytics-summary\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/live-analytics-summary\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Stream Analytics Summary\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/live-analytics-summary\",\"description\":\"Returns streaming performance metrics for a TikTok Shop account over a monthly period. Accepts an optional `start_date` to review broadcast analytics for a calendar month.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP proxy address, can be omitted if not used\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":false,\"description\":\"Query start date in the format `MM-DD-YYYY`, e.g., `04-01-2025`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/live-analytics-summary \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/live-analytics-summary\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/live-analytics-summary\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/live-analytics-summary\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/live-analytics-summary\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/live-analytics-summary\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/live-analytics-summary\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/live-analytics-summary\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/live-analytics-summary\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Creator Live Overview" + modelName: "TikTok Stream Analytics Summary" modelId: "tiktok/creator/live-analytics-summary" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/creator/product-analytics-list.md b/model-api-reference/platform-apis/tiktok/creator/product-analytics-list.md index 3ac9235e..ffac40c1 100644 --- a/model-api-reference/platform-apis/tiktok/creator/product-analytics-list.md +++ b/model-api-reference/platform-apis/tiktok/creator/product-analytics-list.md @@ -1,13 +1,13 @@ --- -title: "Get Creator Product List Analytics API Reference" -description: "SandBase API operation tiktok/creator/product-analytics-list." +title: "TikTok Creator Product Analytics List API Reference" +description: "SandBase API reference for model tiktok/creator/product-analytics-list. Call /v1/api/tiktok/creator/product-analytics-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/creator/product-analytics-list" -apiReferenceJson: "{\"title\":\"Get Creator Product List Analytics\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/product-analytics-list\",\"description\":\"Retrieve the list of products promoted by a TikTok Shop creator account within a specified time range, along with their sales analytics. Supports sorting by revenue or product publish time and allows pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User Cookie string for authentication\"},{\"name\":\"end_date\",\"type\":\"string\",\"required\":false,\"description\":\"End date, formatted as 'YYYY-MM-DD', e.g., '2025-05-01'\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default is the first page `0`\"},{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP proxy address, can be omitted if not used\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":false,\"description\":\"Start date, formatted as 'YYYY-MM-DD', e.g., '2025-04-01'\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/product-analytics-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/creator/product-analytics-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/creator/product-analytics-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/product-analytics-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/creator/product-analytics-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/product-analytics-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/product-analytics-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/product-analytics-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/product-analytics-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/product-analytics-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/product-analytics-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/product-analytics-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Creator Product Analytics List\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/product-analytics-list\",\"description\":\"Returns products promoted by a TikTok Shop creator along with sales analytics for a designated date range. Results can be filtered by dates and navigated through page numbers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"end_date\",\"type\":\"string\",\"required\":false,\"description\":\"End date, formatted as 'YYYY-MM-DD', e.g., '2025-05-01'\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default is the first page `0`\"},{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP proxy address, can be omitted if not used\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":false,\"description\":\"Start date, formatted as 'YYYY-MM-DD', e.g., '2025-04-01'\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/product-analytics-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/product-analytics-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/product-analytics-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/product-analytics-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/product-analytics-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/product-analytics-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/product-analytics-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/product-analytics-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/product-analytics-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Creator Product List Analytics" + modelName: "TikTok Creator Product Analytics List" modelId: "tiktok/creator/product-analytics-list" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/creator/product-related-videos.md b/model-api-reference/platform-apis/tiktok/creator/product-related-videos.md index 6293df04..f6580b3c 100644 --- a/model-api-reference/platform-apis/tiktok/creator/product-related-videos.md +++ b/model-api-reference/platform-apis/tiktok/creator/product-related-videos.md @@ -1,13 +1,13 @@ --- -title: "Get Product Related Videos API Reference" -description: "SandBase API operation tiktok/creator/product-related-videos." +title: "TikTok Product Related Videos API Reference" +description: "SandBase API reference for model tiktok/creator/product-related-videos. Call /v1/api/tiktok/creator/product-related-videos; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/creator/product-related-videos" -apiReferenceJson: "{\"title\":\"Get Product Related Videos\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/product-related-videos\",\"description\":\"Retrieve the list of all videos associated with a specified product along with their interaction metrics (such as like count, comment count, share count). Useful for analyzing the promotional effectiveness and differences of the same product across different creators' videos. Supports time-based filtering, defaulting to the calendar month of the specified start_date.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User Cookie String\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID\"},{\"name\":\"product_id\",\"type\":\"string\",\"required\":true,\"description\":\"Product ID\"},{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP Proxy Address\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":false,\"description\":\"Query Start Date, e.g. '04-01-2025'\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/product-related-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"item_id\\\": \\\"item_id\\\",\\n \\\"product_id\\\": \\\"product_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"item_id\\\": \\\"item_id\\\",\\n \\\"product_id\\\": \\\"product_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/product-related-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"item_id\\\": \\\"item_id\\\",\\n \\\"product_id\\\": \\\"product_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/product-related-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/product-related-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/product-related-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/product-related-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/product-related-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/product-related-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/product-related-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Product Related Videos\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/product-related-videos\",\"description\":\"Returns videos linked to a specified product alongside interaction metrics like counts for likes, comments, and shares. Supports date-based filtering using product and video identifiers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID\"},{\"name\":\"product_id\",\"type\":\"string\",\"required\":true,\"description\":\"Product ID\"},{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP Proxy Address\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":false,\"description\":\"Query Start Date, e.g. '04-01-2025'\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/product-related-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"item_id\\\": \\\"7350810998023949599\\\",\\n \\\"product_id\\\": \\\"1732108663255959373\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"item_id\\\": \\\"7350810998023949599\\\",\\n \\\"product_id\\\": \\\"1732108663255959373\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/product-related-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"item_id\\\": \\\"7350810998023949599\\\",\\n \\\"product_id\\\": \\\"1732108663255959373\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/product-related-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/product-related-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/product-related-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/product-related-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/product-related-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/product-related-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/product-related-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Product Related Videos" + modelName: "TikTok Product Related Videos" modelId: "tiktok/creator/product-related-videos" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/creator/showcase-product-list.md b/model-api-reference/platform-apis/tiktok/creator/showcase-product-list.md index 8c208573..69186cbf 100644 --- a/model-api-reference/platform-apis/tiktok/creator/showcase-product-list.md +++ b/model-api-reference/platform-apis/tiktok/creator/showcase-product-list.md @@ -1,13 +1,13 @@ --- -title: "Get Showcase Product List API Reference" -description: "SandBase API operation tiktok/creator/showcase-product-list." +title: "TikTok Creator Showcase Product List API Reference" +description: "SandBase API reference for model tiktok/creator/showcase-product-list. Call /v1/api/tiktok/creator/showcase-product-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/creator/showcase-product-list" -apiReferenceJson: "{\"title\":\"Get Showcase Product List\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/showcase-product-list\",\"description\":\"Retrieve the list of products currently displayed in a TikTok Shop creator's showcase. Useful for product management, analytics, and monitoring promoted items.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User Cookie string for authentication\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of products per page (default 20)\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination offset (default 0)\"},{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP proxy address\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/showcase-product-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/creator/showcase-product-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/creator/showcase-product-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/showcase-product-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/creator/showcase-product-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/showcase-product-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/showcase-product-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/showcase-product-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/showcase-product-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/showcase-product-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/showcase-product-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/showcase-product-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Creator Showcase Product List\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/showcase-product-list\",\"description\":\"Returns the list of products displayed in a TikTok Shop creator showcase. Supports pagination controls via offset and item count.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of products per page (default 20)\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination offset (default 0)\"},{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP proxy address\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/showcase-product-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/showcase-product-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/showcase-product-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/showcase-product-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/showcase-product-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/showcase-product-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/showcase-product-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/showcase-product-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/showcase-product-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Showcase Product List" + modelName: "TikTok Creator Showcase Product List" modelId: "tiktok/creator/showcase-product-list" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/creator/video-analytics-summary.md b/model-api-reference/platform-apis/tiktok/creator/video-analytics-summary.md index 0eb1f411..72e09ee1 100644 --- a/model-api-reference/platform-apis/tiktok/creator/video-analytics-summary.md +++ b/model-api-reference/platform-apis/tiktok/creator/video-analytics-summary.md @@ -1,13 +1,13 @@ --- -title: "Get Creator Video Overview API Reference" -description: "SandBase API operation tiktok/creator/video-analytics-summary." +title: "TikTok Creator Video Analytics Summary API Reference" +description: "SandBase API reference for model tiktok/creator/video-analytics-summary. Call /v1/api/tiktok/creator/video-analytics-summary; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/creator/video-analytics-summary" -apiReferenceJson: "{\"title\":\"Get Creator Video Overview\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/video-analytics-summary\",\"description\":\"Retrieve a video performance overview for a TikTok Shop creator account over a specified time range. By default, the API fetches data for the past 30 days (or full calendar month based on the platform settings). Useful for analyzing metrics like video count, views, new followers, and generated GMV.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User Cookie string for authentication\"},{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP proxy address, can be omitted if not used\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/video-analytics-summary \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/creator/video-analytics-summary\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/creator/video-analytics-summary\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/video-analytics-summary\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/creator/video-analytics-summary\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/video-analytics-summary\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/video-analytics-summary\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/video-analytics-summary\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/video-analytics-summary\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/video-analytics-summary\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/video-analytics-summary\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/video-analytics-summary\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Creator Video Analytics Summary\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/video-analytics-summary\",\"description\":\"Returns a video performance overview for a TikTok Shop creator account over a time range. Provides metrics including video count, views, new followers, and generated GMV.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP proxy address, can be omitted if not used\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/video-analytics-summary \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/video-analytics-summary\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/video-analytics-summary\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/video-analytics-summary\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/video-analytics-summary\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/video-analytics-summary\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/video-analytics-summary\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/video-analytics-summary\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/video-analytics-summary\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Creator Video Overview" + modelName: "TikTok Creator Video Analytics Summary" modelId: "tiktok/creator/video-analytics-summary" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/creator/video-associated-product-list.md b/model-api-reference/platform-apis/tiktok/creator/video-associated-product-list.md index c30fc39e..ef925b04 100644 --- a/model-api-reference/platform-apis/tiktok/creator/video-associated-product-list.md +++ b/model-api-reference/platform-apis/tiktok/creator/video-associated-product-list.md @@ -1,13 +1,13 @@ --- -title: "Get Video Associated Product List API Reference" -description: "SandBase API operation tiktok/creator/video-associated-product-list." +title: "TikTok Video Associated Product List API Reference" +description: "SandBase API reference: tiktok/creator/video-associated-product-list via /v1/api/tiktok/creator/video-associated-product-list. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/creator/video-associated-product-list" -apiReferenceJson: "{\"title\":\"Get Video Associated Product List\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/video-associated-product-list\",\"description\":\"Retrieve the list of products associated with specified videos on TikTok Shop, along with their promotional performance data. Useful for analyzing the number of products linked to each video, the product price range, product detail page links, and sales performance metrics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User Cookie String\"},{\"name\":\"item_ids\",\"type\":\"array\",\"required\":true,\"description\":\"Video ID List\"},{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP Proxy Address\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":false,\"description\":\"Query Start Date, e.g. '04-01-2025'\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/video-associated-product-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"item_ids\\\": [\\n \\\"item_ids_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"item_ids\\\": [\\n \\\"item_ids_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/video-associated-product-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"item_ids\\\": [\\n \\\"item_ids_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/video-associated-product-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/video-associated-product-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/video-associated-product-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/video-associated-product-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/video-associated-product-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/video-associated-product-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/video-associated-product-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Video Associated Product List\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/video-associated-product-list\",\"description\":\"Returns products tied to specified TikTok Shop videos along with promotional performance metrics. Filter results by video IDs and an optional query start date.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"item_ids\",\"type\":\"array\",\"required\":true,\"description\":\"Video ID List\"},{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP Proxy Address\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":false,\"description\":\"Query Start Date, e.g. '04-01-2025'\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/video-associated-product-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"item_ids\\\": [\\n \\\"item_ids_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"item_ids\\\": [\\n \\\"item_ids_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/video-associated-product-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"item_ids\\\": [\\n \\\"item_ids_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/video-associated-product-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/video-associated-product-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/video-associated-product-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/video-associated-product-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/video-associated-product-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/video-associated-product-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/video-associated-product-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Video Associated Product List" + modelName: "TikTok Video Associated Product List" modelId: "tiktok/creator/video-associated-product-list" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/creator/video-audience-stats.md b/model-api-reference/platform-apis/tiktok/creator/video-audience-stats.md index 087ac374..d9a5b67e 100644 --- a/model-api-reference/platform-apis/tiktok/creator/video-audience-stats.md +++ b/model-api-reference/platform-apis/tiktok/creator/video-audience-stats.md @@ -1,13 +1,13 @@ --- -title: "Get Video Audience Analysis Data API Reference" -description: "SandBase API operation tiktok/creator/video-audience-stats." +title: "TikTok Video Audience Stats API Reference" +description: "SandBase API reference for model tiktok/creator/video-audience-stats. Call /v1/api/tiktok/creator/video-audience-stats; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/creator/video-audience-stats" -apiReferenceJson: "{\"title\":\"Get Video Audience Analysis Data\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/video-audience-stats\",\"description\":\"Retrieve audience profile statistics for a specified TikTok video, including gender distribution, age distribution, and regional distribution. Useful for accurately understanding the characteristics of the video audience to guide content creation, product selection, and marketing strategy optimization. Supports trend analysis across different time intervals (daily/weekly/monthly).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User Cookie String\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID\"},{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP Proxy Address\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":false,\"description\":\"Query Start Date, e.g. '04-01-2025'\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/video-audience-stats \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/video-audience-stats\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/video-audience-stats\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/video-audience-stats\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/video-audience-stats\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/video-audience-stats\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/video-audience-stats\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/video-audience-stats\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/video-audience-stats\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Video Audience Stats\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/video-audience-stats\",\"description\":\"Returns audience profile statistics for a TikTok video by ID, covering gender, age, and regional breakdowns. Supports filtering starting from an optional date.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID\"},{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP Proxy Address\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":false,\"description\":\"Query Start Date, e.g. '04-01-2025'\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/video-audience-stats \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"item_id\\\": \\\"7350810998023949599\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"item_id\\\": \\\"7350810998023949599\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/video-audience-stats\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"item_id\\\": \\\"7350810998023949599\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/video-audience-stats\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/video-audience-stats\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/video-audience-stats\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/video-audience-stats\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/video-audience-stats\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/video-audience-stats\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/video-audience-stats\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Video Audience Analysis Data" + modelName: "TikTok Video Audience Stats" modelId: "tiktok/creator/video-audience-stats" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/creator/video-detailed-stats.md b/model-api-reference/platform-apis/tiktok/creator/video-detailed-stats.md index 35df4e44..7b75093a 100644 --- a/model-api-reference/platform-apis/tiktok/creator/video-detailed-stats.md +++ b/model-api-reference/platform-apis/tiktok/creator/video-detailed-stats.md @@ -1,13 +1,13 @@ --- -title: "Get Video Detailed Statistics API Reference" -description: "SandBase API operation tiktok/creator/video-detailed-stats." +title: "TikTok Video Detailed Statistics API Reference" +description: "SandBase API reference for model tiktok/creator/video-detailed-stats. Call /v1/api/tiktok/creator/video-detailed-stats; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/creator/video-detailed-stats" -apiReferenceJson: "{\"title\":\"Get Video Detailed Statistics\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/video-detailed-stats\",\"description\":\"Retrieve detailed segmented statistics for a specified TikTok video within a given calendar month. Supports analyzing new followers, likes, comments, shares, product views, and video completion rates across different time segments (daily/weekly/monthly). Useful for deeply analyzing the performance changes of a single video over time, optimizing content strategies and promotional outcomes.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User Cookie String\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID\"},{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP Proxy Address\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":false,\"description\":\"Query Start Date, e.g. '04-01-2025'\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/video-detailed-stats \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/video-detailed-stats\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/video-detailed-stats\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/video-detailed-stats\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/video-detailed-stats\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/video-detailed-stats\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/video-detailed-stats\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/video-detailed-stats\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/video-detailed-stats\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Video Detailed Statistics\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/video-detailed-stats\",\"description\":\"Returns segmented performance statistics for a TikTok video, including follower growth, completion rates, and engagement metrics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID\"},{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP Proxy Address\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":false,\"description\":\"Query Start Date, e.g. '04-01-2025'\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/video-detailed-stats \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"item_id\\\": \\\"7350810998023949599\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"item_id\\\": \\\"7350810998023949599\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/video-detailed-stats\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"item_id\\\": \\\"7350810998023949599\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/video-detailed-stats\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/video-detailed-stats\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/video-detailed-stats\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/video-detailed-stats\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/video-detailed-stats\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/video-detailed-stats\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/video-detailed-stats\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Video Detailed Statistics" + modelName: "TikTok Video Detailed Statistics" modelId: "tiktok/creator/video-detailed-stats" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/creator/video-list-analytics.md b/model-api-reference/platform-apis/tiktok/creator/video-list-analytics.md index 1ce0cfbf..051d1239 100644 --- a/model-api-reference/platform-apis/tiktok/creator/video-list-analytics.md +++ b/model-api-reference/platform-apis/tiktok/creator/video-list-analytics.md @@ -1,13 +1,13 @@ --- -title: "Get Creator Video List Analytics API Reference" -description: "SandBase API operation tiktok/creator/video-list-analytics." +title: "TikTok Creator Video List Analytics API Reference" +description: "SandBase API reference for model tiktok/creator/video-list-analytics. Call /v1/api/tiktok/creator/video-list-analytics; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/creator/video-list-analytics" -apiReferenceJson: "{\"title\":\"Get Creator Video List Analytics\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/video-list-analytics\",\"description\":\"Retrieve a list of videos published by a TikTok Shop creator account within a specified time range, along with detailed performance metrics. Supports pagination to fetch multiple pages of video records within the given time range.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User Cookie string for authentication\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default is the first page `0`\"},{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP proxy address, can be omitted if not used\"},{\"name\":\"rules\",\"type\":\"string\",\"required\":false,\"description\":\"List sorting rules, default is by publish time. Available options:\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":false,\"description\":\"Query start date, formatted as 'MM-DD-YYYY', e.g., '04-01-2025'\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/video-list-analytics \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/creator/video-list-analytics\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/creator/video-list-analytics\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/video-list-analytics\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/creator/video-list-analytics\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/video-list-analytics\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/video-list-analytics\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/video-list-analytics\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/video-list-analytics\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/video-list-analytics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/video-list-analytics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/video-list-analytics\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Creator Video List Analytics\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/video-list-analytics\",\"description\":\"Returns video records and performance metrics for a TikTok Shop creator within a specific date range. Supports pagination and custom sorting rules.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default is the first page `0`\"},{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP proxy address, can be omitted if not used\"},{\"name\":\"rules\",\"type\":\"string\",\"required\":false,\"description\":\"List sorting rule. Default VIDEO_LIST_PUBLISH_TIME (sorted by publish time)\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":false,\"description\":\"Query start date, formatted as 'MM-DD-YYYY', e.g., '04-01-2025'\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/video-list-analytics \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/video-list-analytics\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/video-list-analytics\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/video-list-analytics\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/video-list-analytics\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/video-list-analytics\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/video-list-analytics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/video-list-analytics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/video-list-analytics\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Creator Video List Analytics" + modelName: "TikTok Creator Video List Analytics" modelId: "tiktok/creator/video-list-analytics" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/creator/video-to-product-stats.md b/model-api-reference/platform-apis/tiktok/creator/video-to-product-stats.md index 4ad8ec76..de43ded9 100644 --- a/model-api-reference/platform-apis/tiktok/creator/video-to-product-stats.md +++ b/model-api-reference/platform-apis/tiktok/creator/video-to-product-stats.md @@ -1,13 +1,13 @@ --- -title: "Get Video-Product Association Statistics API Reference" -description: "SandBase API operation tiktok/creator/video-to-product-stats." +title: "TikTok Video Product Association Statistics API Reference" +description: "SandBase API reference for model tiktok/creator/video-to-product-stats. Call /v1/api/tiktok/creator/video-to-product-stats; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/creator/video-to-product-stats" -apiReferenceJson: "{\"title\":\"Get Video-Product Association Statistics\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/video-to-product-stats\",\"description\":\"Retrieve detailed promotional statistics between a specific TikTok video and a specific product. Supports analyzing metrics such as product views, clicks, sales, order counts, product revenue, and direct revenue. The data is segmented by time intervals (daily/weekly/monthly) to observe trends over time.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User Cookie String\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID\"},{\"name\":\"product_id\",\"type\":\"string\",\"required\":true,\"description\":\"Product ID\"},{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP Proxy Address\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":false,\"description\":\"Query Start Date, e.g. '04-01-2025'\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/video-to-product-stats \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"item_id\\\": \\\"item_id\\\",\\n \\\"product_id\\\": \\\"product_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"item_id\\\": \\\"item_id\\\",\\n \\\"product_id\\\": \\\"product_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/video-to-product-stats\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"item_id\\\": \\\"item_id\\\",\\n \\\"product_id\\\": \\\"product_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/video-to-product-stats\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/video-to-product-stats\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/video-to-product-stats\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/video-to-product-stats\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/video-to-product-stats\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/video-to-product-stats\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/video-to-product-stats\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Video Product Association Statistics\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/creator/video-to-product-stats\",\"description\":\"Returns promotional metrics linking a TikTok video to a specific product, including views, clicks, orders, and revenue trends over time based on video and product identifiers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID\"},{\"name\":\"product_id\",\"type\":\"string\",\"required\":true,\"description\":\"Product ID\"},{\"name\":\"proxy\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional HTTP Proxy Address\"},{\"name\":\"start_date\",\"type\":\"string\",\"required\":false,\"description\":\"Query Start Date, e.g. '04-01-2025'\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/creator/video-to-product-stats \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"item_id\\\": \\\"7350810998023949599\\\",\\n \\\"product_id\\\": \\\"1732108663255959373\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"item_id\\\": \\\"7350810998023949599\\\",\\n \\\"product_id\\\": \\\"1732108663255959373\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/video-to-product-stats\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"item_id\\\": \\\"7350810998023949599\\\",\\n \\\"product_id\\\": \\\"1732108663255959373\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/creator/video-to-product-stats\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/creator/video-to-product-stats\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/creator/video-to-product-stats\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/creator/video-to-product-stats\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/creator/video-to-product-stats\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/creator/video-to-product-stats\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/creator/video-to-product-stats\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Video-Product Association Statistics" + modelName: "TikTok Video Product Association Statistics" modelId: "tiktok/creator/video-to-product-stats" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/shop-web/hot-selling-products-list.md b/model-api-reference/platform-apis/tiktok/shop-web/hot-selling-products-list.md deleted file mode 100644 index 37ce53cf..00000000 --- a/model-api-reference/platform-apis/tiktok/shop-web/hot-selling-products-list.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get hot selling products list API Reference" -description: "SandBase API operation tiktok/shop-web/hot-selling-products-list." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/tiktok/shop-web/hot-selling-products-list" -apiReferenceJson: "{\"title\":\"Get hot selling products list\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/hot-selling-products-list\",\"description\":\"Get TikTok Shop hot selling products list Returns currently most popular products\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of products to return, default 100 (optional)\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code (US/GB/SG/MY/PH/TH/VN/ID)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/hot-selling-products-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/shop-web/hot-selling-products-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/shop-web/hot-selling-products-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/hot-selling-products-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/shop-web/hot-selling-products-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/hot-selling-products-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/hot-selling-products-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/hot-selling-products-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/hot-selling-products-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/hot-selling-products-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/hot-selling-products-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/hot-selling-products-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get hot selling products list" - modelId: "tiktok/shop-web/hot-selling-products-list" - vendor: "TikTok" - vendorSlug: "tiktok" - modelSlug: "shop-web/hot-selling-products-list" - protocol: "API Reference" - endpoint: "/v1/api/tiktok/shop-web/hot-selling-products-list" - publishedAt: "" - capabilities: ["api","tiktok"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/tiktok/shop-web/product-detail-v2.md b/model-api-reference/platform-apis/tiktok/shop-web/product-detail-v2.md index 8b2dd8e8..3ea1abc9 100644 --- a/model-api-reference/platform-apis/tiktok/shop-web/product-detail-v2.md +++ b/model-api-reference/platform-apis/tiktok/shop-web/product-detail-v2.md @@ -1,13 +1,13 @@ --- -title: "Get product detail V2 (Less Data) API Reference" -description: "SandBase API operation tiktok/shop-web/product-detail-v2." +title: "TikTok Shop Product Details (V2) API Reference" +description: "SandBase API reference for model tiktok/shop-web/product-detail-v2. Call /v1/api/tiktok/shop-web/product-detail-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/shop-web/product-detail-v2" -apiReferenceJson: "{\"title\":\"Get product detail V2 (Less Data)\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/product-detail-v2\",\"description\":\"Get TikTok Shop product details (Mobile API) More streamlined data structure with faster response This API returns less data; for more complete data, use `fetch_product_detail` or `fetch_product_detail_v3`\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"product_id\",\"type\":\"string\",\"required\":true,\"description\":\"Product ID (required)\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code (US/GB/SG/MY/PH/TH/VN/ID)\"},{\"name\":\"seller_id\",\"type\":\"string\",\"required\":false,\"description\":\"Seller ID (can be empty string)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/product-detail-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"product_id\\\": \\\"product_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"product_id\\\": \\\"product_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/product-detail-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"product_id\\\": \\\"product_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/product-detail-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/product-detail-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Shop Product Details (V2)\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/product-detail-v2\",\"description\":\"Returns basic product details from TikTok Shop for a specified item. Query by product identifier with optional region and seller filters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"product_id\",\"type\":\"string\",\"required\":true,\"description\":\"Product ID (required)\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code (US/GB/SG/MY/PH/TH/VN/ID)\"},{\"name\":\"seller_id\",\"type\":\"string\",\"required\":false,\"description\":\"Seller ID (can be empty string)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/product-detail-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"product_id\\\": \\\"product_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"product_id\\\": \\\"product_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/product-detail-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"product_id\\\": \\\"product_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/product-detail-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/product-detail-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get product detail V2 (Less Data)" + modelName: "TikTok Shop Product Details (V2)" modelId: "tiktok/shop-web/product-detail-v2" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/shop-web/product-detail-v3.md b/model-api-reference/platform-apis/tiktok/shop-web/product-detail-v3.md index 74b85cba..2b8d2b9c 100644 --- a/model-api-reference/platform-apis/tiktok/shop-web/product-detail-v3.md +++ b/model-api-reference/platform-apis/tiktok/shop-web/product-detail-v3.md @@ -1,13 +1,13 @@ --- -title: "Get product detail V3 (Full Data) API Reference" -description: "SandBase API operation tiktok/shop-web/product-detail-v3." +title: "TikTok Shop Product Detail (V3) API Reference" +description: "SandBase API reference for model tiktok/shop-web/product-detail-v3. Call /v1/api/tiktok/shop-web/product-detail-v3; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/shop-web/product-detail-v3" -apiReferenceJson: "{\"title\":\"Get product detail V3 (Full Data)\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/product-detail-v3\",\"description\":\"Get TikTok Shop product details Provides the most complete product information including recommendations, videos, shop info, etc. Suitable for products from all regions\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"product_id\",\"type\":\"string\",\"required\":true,\"description\":\"Product ID (required)\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code (US/GB/SG/MY/PH/TH/VN/ID)\",\"default\":\"SG\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/product-detail-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"product_id\\\": \\\"1732108663255959373\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"product_id\\\": \\\"1732108663255959373\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/product-detail-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"product_id\\\": \\\"1732108663255959373\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/product-detail-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/product-detail-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Shop Product Detail (V3)\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/product-detail-v3\",\"description\":\"Returns comprehensive TikTok Shop product data including shop information, videos, and recommendations for a given product ID across supported regions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"product_id\",\"type\":\"string\",\"required\":true,\"description\":\"Product ID (required)\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code (US/GB/SG/MY/PH/TH/VN/ID)\",\"default\":\"SG\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/product-detail-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"product_id\\\": \\\"1732108663255959373\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"product_id\\\": \\\"1732108663255959373\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/product-detail-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"product_id\\\": \\\"1732108663255959373\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/product-detail-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/product-detail-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get product detail V3 (Full Data)" + modelName: "TikTok Shop Product Detail (V3)" modelId: "tiktok/shop-web/product-detail-v3" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/shop-web/product-detail.md b/model-api-reference/platform-apis/tiktok/shop-web/product-detail.md index b66fabc7..e033ae08 100644 --- a/model-api-reference/platform-apis/tiktok/shop-web/product-detail.md +++ b/model-api-reference/platform-apis/tiktok/shop-web/product-detail.md @@ -1,13 +1,13 @@ --- -title: "Get product detail V1(Full data) API Reference" -description: "SandBase API operation tiktok/shop-web/product-detail." +title: "TikTok Shop Product Details API Reference" +description: "SandBase API reference for model tiktok/shop-web/product-detail. Call /v1/api/tiktok/shop-web/product-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/shop-web/product-detail" -apiReferenceJson: "{\"title\":\"Get product detail V1(Full data)\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/product-detail\",\"description\":\"Get detailed information of TikTok Shop products Contains complete data including basic info, price, stock, reviews, recommendations Some products from specific regions may not be accessible (e.g., Thailand); if so, try using `fetch_product_detail_v3`\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"product_id\",\"type\":\"string\",\"required\":true,\"description\":\"Product ID (required)\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code (US/GB/SG/MY/PH/TH/VN/ID)\",\"default\":\"MY\"},{\"name\":\"seller_id\",\"type\":\"string\",\"required\":false,\"description\":\"Seller ID (can be empty string)\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/product-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"product_id\\\": \\\"1732108663255959373\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"product_id\\\": \\\"1732108663255959373\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/product-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"product_id\\\": \\\"1732108663255959373\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/product-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/product-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Shop Product Details\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/product-detail\",\"description\":\"Retrieves full product details and page component information from TikTok Shop by product ID. Supports regional filtering across markets such as the US, UK, and Southeast Asia.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"product_id\",\"type\":\"string\",\"required\":true,\"description\":\"Product ID (required)\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code (US/GB/SG/MY/PH/TH/VN/ID)\",\"default\":\"MY\"},{\"name\":\"seller_id\",\"type\":\"string\",\"required\":false,\"description\":\"Seller ID (can be empty string)\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/product-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"product_id\\\": \\\"1732108663255959373\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"product_id\\\": \\\"1732108663255959373\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/product-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"product_id\\\": \\\"1732108663255959373\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/product-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/product-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/product-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get product detail V1(Full data)" + modelName: "TikTok Shop Product Details" modelId: "tiktok/shop-web/product-detail" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/shop-web/product-id-by-share-link.md b/model-api-reference/platform-apis/tiktok/shop-web/product-id-by-share-link.md index ad6a2b06..6297767e 100644 --- a/model-api-reference/platform-apis/tiktok/shop-web/product-id-by-share-link.md +++ b/model-api-reference/platform-apis/tiktok/shop-web/product-id-by-share-link.md @@ -1,13 +1,13 @@ --- -title: "Get Product ID by Share Link API Reference" -description: "SandBase API operation tiktok/shop-web/product-id-by-share-link." +title: "TikTok Shop Product ID by Share Link API Reference" +description: "SandBase API reference for model tiktok/shop-web/product-id-by-share-link. Call /v1/api/tiktok/shop-web/product-id-by-share-link; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/shop-web/product-id-by-share-link" -apiReferenceJson: "{\"title\":\"Get Product ID by Share Link\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/product-id-by-share-link\",\"description\":\"Get Product ID by Share Link\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_link\",\"type\":\"string\",\"required\":true,\"description\":\"Share link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/product-id-by-share-link \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"share_link\\\": \\\"share_link\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"share_link\\\": \\\"share_link\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/product-id-by-share-link\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"share_link\\\": \\\"share_link\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/product-id-by-share-link\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/product-id-by-share-link\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/product-id-by-share-link\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/product-id-by-share-link\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/product-id-by-share-link\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/product-id-by-share-link\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/product-id-by-share-link\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Shop Product ID by Share Link\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/product-id-by-share-link\",\"description\":\"Returns the TikTok Shop product identifier extracted from a provided product share link. Takes a required share URL to resolve the associated product ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_link\",\"type\":\"string\",\"required\":true,\"description\":\"Share link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/product-id-by-share-link \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"share_link\\\": \\\"share_link\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"share_link\\\": \\\"share_link\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/product-id-by-share-link\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"share_link\\\": \\\"share_link\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/product-id-by-share-link\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/product-id-by-share-link\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/product-id-by-share-link\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/product-id-by-share-link\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/product-id-by-share-link\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/product-id-by-share-link\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/product-id-by-share-link\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Product ID by Share Link" + modelName: "TikTok Shop Product ID by Share Link" modelId: "tiktok/shop-web/product-id-by-share-link" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/shop-web/product-reviews-v2.md b/model-api-reference/platform-apis/tiktok/shop-web/product-reviews-v2.md index c2d159bc..7e2a2aa0 100644 --- a/model-api-reference/platform-apis/tiktok/shop-web/product-reviews-v2.md +++ b/model-api-reference/platform-apis/tiktok/shop-web/product-reviews-v2.md @@ -1,13 +1,13 @@ --- -title: "Get product reviews V2 API Reference" -description: "SandBase API operation tiktok/shop-web/product-reviews-v2." +title: "TikTok Shop Product Reviews API Reference" +description: "SandBase API reference for model tiktok/shop-web/product-reviews-v2. Call /v1/api/tiktok/shop-web/product-reviews-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/shop-web/product-reviews-v2" -apiReferenceJson: "{\"title\":\"Get product reviews V2\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/product-reviews-v2\",\"description\":\"Get TikTok Shop product reviews Support multiple filtering and sorting options More complete data structure with detailed review information\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"filter_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Filter type\",\"default\":\"1\"},{\"name\":\"filter_value\",\"type\":\"integer\",\"required\":false,\"description\":\"Star filter\",\"default\":\"6\"},{\"name\":\"page_start\",\"type\":\"integer\",\"required\":false,\"description\":\"Starting page number, default 1\",\"default\":\"1\"},{\"name\":\"product_id\",\"type\":\"string\",\"required\":true,\"description\":\"Product ID (required)\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code, available regions are as follows:\",\"default\":\"US\"},{\"name\":\"sort_rule\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort rule, default 2\",\"default\":\"2\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/product-reviews-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"product_id\\\": \\\"1729408816995078528\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"product_id\\\": \\\"1729408816995078528\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/product-reviews-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"product_id\\\": \\\"1729408816995078528\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/product-reviews-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/product-reviews-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/product-reviews-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/product-reviews-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/product-reviews-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/product-reviews-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/product-reviews-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Shop Product Reviews\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/product-reviews-v2\",\"description\":\"Get TikTok Shop product reviews by product ID: rating, review text, SKU, reviewer country and time, with star filters, sorting and pagination across regions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"filter_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Filter type\",\"default\":\"1\"},{\"name\":\"filter_value\",\"type\":\"integer\",\"required\":false,\"description\":\"Star filter\",\"default\":\"6\"},{\"name\":\"page_start\",\"type\":\"integer\",\"required\":false,\"description\":\"Starting page number, default 1\",\"default\":\"1\"},{\"name\":\"product_id\",\"type\":\"string\",\"required\":true,\"description\":\"Product ID (required)\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code, available regions are as follows: US: United States; SG: Singapore; MY: Malaysia; PH: Philippines; TH: Thailand; VN: Vietnam; ID: Indonesia; JP: Japan; MX: Mexico\",\"default\":\"US\"},{\"name\":\"sort_rule\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort rule, default 2\",\"default\":\"2\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/product-reviews-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"product_id\\\": \\\"1729408816995078528\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"product_id\\\": \\\"1729408816995078528\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/product-reviews-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"product_id\\\": \\\"1729408816995078528\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/product-reviews-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/product-reviews-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/product-reviews-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/product-reviews-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/product-reviews-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/product-reviews-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/product-reviews-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get product reviews V2" + modelName: "TikTok Shop Product Reviews" modelId: "tiktok/shop-web/product-reviews-v2" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/shop-web/product-reviews.md b/model-api-reference/platform-apis/tiktok/shop-web/product-reviews.md deleted file mode 100644 index a7bf8050..00000000 --- a/model-api-reference/platform-apis/tiktok/shop-web/product-reviews.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get product reviews V1 API Reference" -description: "SandBase API operation tiktok/shop-web/product-reviews." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/tiktok/shop-web/product-reviews" -apiReferenceJson: "{\"title\":\"Get product reviews V1\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/product-reviews\",\"description\":\"Get TikTok Shop product reviews Support custom page size, multiple filtering and sorting options\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"filter_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Filter type\"},{\"name\":\"filter_value\",\"type\":\"integer\",\"required\":false,\"description\":\"Star filter\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Reviews per page, default 10\"},{\"name\":\"page_start\",\"type\":\"integer\",\"required\":false,\"description\":\"Starting page number, default 1\"},{\"name\":\"product_id\",\"type\":\"string\",\"required\":true,\"description\":\"Product ID (required)\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code, available regions are as follows:\"},{\"name\":\"sort_rule\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort rule, default 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/product-reviews \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"product_id\\\": \\\"product_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"product_id\\\": \\\"product_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/product-reviews\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"product_id\\\": \\\"product_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/product-reviews\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/product-reviews\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/product-reviews\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/product-reviews\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/product-reviews\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/product-reviews\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/product-reviews\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get product reviews V1" - modelId: "tiktok/shop-web/product-reviews" - vendor: "TikTok" - vendorSlug: "tiktok" - modelSlug: "shop-web/product-reviews" - protocol: "API Reference" - endpoint: "/v1/api/tiktok/shop-web/product-reviews" - publishedAt: "" - capabilities: ["api","tiktok"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/tiktok/shop-web/products-by-category-id.md b/model-api-reference/platform-apis/tiktok/shop-web/products-by-category-id.md deleted file mode 100644 index 8b5394a6..00000000 --- a/model-api-reference/platform-apis/tiktok/shop-web/products-by-category-id.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get products by category ID API Reference" -description: "SandBase API operation tiktok/shop-web/products-by-category-id." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/tiktok/shop-web/products-by-category-id" -apiReferenceJson: "{\"title\":\"Get products by category ID\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/products-by-category-id\",\"description\":\"Get product list by category ID Can be used to build category browsing feature\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"category_id\",\"type\":\"integer\",\"required\":true,\"description\":\"Category ID (required, from fetch_products_category_list API)\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset for pagination (default 0)\",\"default\":\"0\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code (US/GB/SG/MY/PH/TH/VN/ID)\",\"default\":\"US\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/products-by-category-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"category_id\\\": 963976\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"category_id\\\": 963976\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/products-by-category-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"category_id\\\": 963976\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/products-by-category-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/products-by-category-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/products-by-category-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/products-by-category-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/products-by-category-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/products-by-category-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/products-by-category-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get products by category ID" - modelId: "tiktok/shop-web/products-by-category-id" - vendor: "TikTok" - vendorSlug: "tiktok" - modelSlug: "shop-web/products-by-category-id" - protocol: "API Reference" - endpoint: "/v1/api/tiktok/shop-web/products-by-category-id" - publishedAt: "" - capabilities: ["api","tiktok"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/tiktok/shop-web/products-category-list.md b/model-api-reference/platform-apis/tiktok/shop-web/products-category-list.md index 2f6d6fe1..c3a03802 100644 --- a/model-api-reference/platform-apis/tiktok/shop-web/products-category-list.md +++ b/model-api-reference/platform-apis/tiktok/shop-web/products-category-list.md @@ -1,13 +1,13 @@ --- -title: "Get product category list API Reference" -description: "SandBase API operation tiktok/shop-web/products-category-list." +title: "TikTok Shop Product Category List API Reference" +description: "SandBase API reference for model tiktok/shop-web/products-category-list. Call /v1/api/tiktok/shop-web/products-category-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/shop-web/products-category-list" -apiReferenceJson: "{\"title\":\"Get product category list\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/products-category-list\",\"description\":\"Get TikTok Shop product category directory Returns complete category tree structure\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code (US/GB/SG/MY/PH/TH/VN/ID)\",\"default\":\"US\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/products-category-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/shop-web/products-category-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/shop-web/products-category-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/products-category-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/shop-web/products-category-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/products-category-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/products-category-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/products-category-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/products-category-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/products-category-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/products-category-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/products-category-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Shop Product Category List\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/products-category-list\",\"description\":\"Returns the available product categories for TikTok Shop across supported regional marketplaces. Allows filtering the taxonomy by the specified region code.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code (US/GB/SG/MY/PH/TH/VN/ID)\",\"default\":\"US\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/products-category-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/products-category-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/products-category-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/products-category-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/products-category-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/products-category-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/products-category-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/products-category-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/products-category-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get product category list" + modelName: "TikTok Shop Product Category List" modelId: "tiktok/shop-web/products-category-list" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/shop-web/search-products-list-v2.md b/model-api-reference/platform-apis/tiktok/shop-web/search-products-list-v2.md index 835627a1..90455457 100644 --- a/model-api-reference/platform-apis/tiktok/shop-web/search-products-list-v2.md +++ b/model-api-reference/platform-apis/tiktok/shop-web/search-products-list-v2.md @@ -1,13 +1,13 @@ --- -title: "Search products list V2 (Mobile) API Reference" -description: "SandBase API operation tiktok/shop-web/search-products-list-v2." +title: "TikTok Shop Product Search (V2) API Reference" +description: "SandBase API reference for model tiktok/shop-web/search-products-list-v2. Call /v1/api/tiktok/shop-web/search-products-list-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/shop-web/search-products-list-v2" -apiReferenceJson: "{\"title\":\"Search products list V2 (Mobile)\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/search-products-list-v2\",\"description\":\"Search products (Mobile API) More streamlined data, faster response\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset (default 0)\",\"default\":\"0\"},{\"name\":\"page_token\",\"type\":\"string\",\"required\":false,\"description\":\"Page token\",\"default\":\"\\\"\\\"\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code (US/GB/SG/MY/PH/TH/VN/ID)\",\"default\":\"US\"},{\"name\":\"search_word\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/search-products-list-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"search_word\\\": \\\"coffee\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"search_word\\\": \\\"coffee\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/search-products-list-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"search_word\\\": \\\"coffee\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/search-products-list-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/search-products-list-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/search-products-list-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/search-products-list-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/search-products-list-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/search-products-list-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/search-products-list-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Shop Product Search (V2)\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/search-products-list-v2\",\"description\":\"Returns search results for items listed on TikTok Shop by keyword, including ratings, seller details, and sales volume across supported regions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset (default 0)\",\"default\":\"0\"},{\"name\":\"page_token\",\"type\":\"string\",\"required\":false,\"description\":\"Page token\",\"default\":\"\\\"\\\"\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code (US/GB/SG/MY/PH/TH/VN/ID)\",\"default\":\"US\"},{\"name\":\"search_word\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/search-products-list-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"search_word\\\": \\\"coffee\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"search_word\\\": \\\"coffee\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/search-products-list-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"search_word\\\": \\\"coffee\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/search-products-list-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/search-products-list-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/search-products-list-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/search-products-list-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/search-products-list-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/search-products-list-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/search-products-list-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search products list V2 (Mobile)" + modelName: "TikTok Shop Product Search (V2)" modelId: "tiktok/shop-web/search-products-list-v2" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/shop-web/search-products-list.md b/model-api-reference/platform-apis/tiktok/shop-web/search-products-list.md index 0afb6e56..39478031 100644 --- a/model-api-reference/platform-apis/tiktok/shop-web/search-products-list.md +++ b/model-api-reference/platform-apis/tiktok/shop-web/search-products-list.md @@ -1,13 +1,13 @@ --- -title: "Search products list V1 API Reference" -description: "SandBase API operation tiktok/shop-web/search-products-list." +title: "TikTok Shop Product Search API Reference" +description: "SandBase API reference for model tiktok/shop-web/search-products-list. Call /v1/api/tiktok/shop-web/search-products-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/shop-web/search-products-list" -apiReferenceJson: "{\"title\":\"Search products list V1\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/search-products-list\",\"description\":\"Search products by keyword Support pagination to load more results\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset for pagination (default 0)\",\"default\":\"0\"},{\"name\":\"page_token\",\"type\":\"string\",\"required\":false,\"description\":\"Page token for next page\",\"default\":\"\\\"\\\"\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code (US/GB/SG/MY/PH/TH/VN/ID)\",\"default\":\"US\"},{\"name\":\"search_word\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/search-products-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"search_word\\\": \\\"coffee\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"search_word\\\": \\\"coffee\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/search-products-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"search_word\\\": \\\"coffee\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/search-products-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/search-products-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/search-products-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/search-products-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/search-products-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/search-products-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/search-products-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Shop Product Search\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/search-products-list\",\"description\":\"Searches TikTok Shop listings matching a keyword query and returns product details, seller profiles, ratings, and sales figures. Supports region filtering and pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset for pagination (default 0)\",\"default\":\"0\"},{\"name\":\"page_token\",\"type\":\"string\",\"required\":false,\"description\":\"Page token for next page\",\"default\":\"\\\"\\\"\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code (US/GB/SG/MY/PH/TH/VN/ID)\",\"default\":\"US\"},{\"name\":\"search_word\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/search-products-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"search_word\\\": \\\"coffee\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"search_word\\\": \\\"coffee\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/search-products-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"search_word\\\": \\\"coffee\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/search-products-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/search-products-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/search-products-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/search-products-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/search-products-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/search-products-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/search-products-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search products list V1" + modelName: "TikTok Shop Product Search" modelId: "tiktok/shop-web/search-products-list" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/shop-web/search-word-suggestion-v2.md b/model-api-reference/platform-apis/tiktok/shop-web/search-word-suggestion-v2.md index 02605c3b..66309982 100644 --- a/model-api-reference/platform-apis/tiktok/shop-web/search-word-suggestion-v2.md +++ b/model-api-reference/platform-apis/tiktok/shop-web/search-word-suggestion-v2.md @@ -1,13 +1,13 @@ --- -title: "Get search keyword suggestions V2 (Mobile) API Reference" -description: "SandBase API operation tiktok/shop-web/search-word-suggestion-v2." +title: "TikTok Shop Search Keyword Suggestions (V2) API Reference" +description: "SandBase API reference for model tiktok/shop-web/search-word-suggestion-v2. Call /v1/api/tiktok/shop-web/search-word-suggestion-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/shop-web/search-word-suggestion-v2" -apiReferenceJson: "{\"title\":\"Get search keyword suggestions V2 (Mobile)\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/search-word-suggestion-v2\",\"description\":\"Get search keyword suggestions (Mobile API) Optimized for e-commerce search results\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"lang\",\"type\":\"string\",\"required\":false,\"description\":\"Language code (en-US/zh-CN etc.)\",\"default\":\"en-US\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code (US/GB/SG/MY/PH/TH/VN/ID)\",\"default\":\"US\"},{\"name\":\"search_word\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/search-word-suggestion-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"search_word\\\": \\\"coffee\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"search_word\\\": \\\"coffee\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/search-word-suggestion-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"search_word\\\": \\\"coffee\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/search-word-suggestion-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/search-word-suggestion-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/search-word-suggestion-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/search-word-suggestion-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/search-word-suggestion-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/search-word-suggestion-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/search-word-suggestion-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Shop Search Keyword Suggestions (V2)\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/search-word-suggestion-v2\",\"description\":\"Returns e-commerce search keyword suggestions based on an input query. Supports filtering by target region and language code.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"lang\",\"type\":\"string\",\"required\":false,\"description\":\"Language code (en-US/zh-CN etc.)\",\"default\":\"en-US\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code (US/GB/SG/MY/PH/TH/VN/ID)\",\"default\":\"US\"},{\"name\":\"search_word\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/search-word-suggestion-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"search_word\\\": \\\"coffee\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"search_word\\\": \\\"coffee\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/search-word-suggestion-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"search_word\\\": \\\"coffee\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/search-word-suggestion-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/search-word-suggestion-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/search-word-suggestion-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/search-word-suggestion-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/search-word-suggestion-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/search-word-suggestion-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/search-word-suggestion-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get search keyword suggestions V2 (Mobile)" + modelName: "TikTok Shop Search Keyword Suggestions (V2)" modelId: "tiktok/shop-web/search-word-suggestion-v2" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/shop-web/seller-products-list-v2.md b/model-api-reference/platform-apis/tiktok/shop-web/seller-products-list-v2.md index fd558907..47f48a15 100644 --- a/model-api-reference/platform-apis/tiktok/shop-web/seller-products-list-v2.md +++ b/model-api-reference/platform-apis/tiktok/shop-web/seller-products-list-v2.md @@ -1,13 +1,13 @@ --- -title: "Get seller products list V2 (Mobile) API Reference" -description: "SandBase API operation tiktok/shop-web/seller-products-list-v2." +title: "TikTok Shop Seller Products (V2) API Reference" +description: "SandBase API reference for model tiktok/shop-web/seller-products-list-v2. Call /v1/api/tiktok/shop-web/seller-products-list-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/shop-web/seller-products-list-v2" -apiReferenceJson: "{\"title\":\"Get seller products list V2 (Mobile)\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/seller-products-list-v2\",\"description\":\"Get seller product list (Mobile API) More streamlined data structure\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code (US/GB/SG/MY/PH/TH/VN/ID)\",\"default\":\"US\"},{\"name\":\"searchParams\",\"type\":\"string\",\"required\":false,\"description\":\"Search parameters (optional)\",\"default\":\"\\\"\\\"\"},{\"name\":\"seller_id\",\"type\":\"string\",\"required\":true,\"description\":\"Seller ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/seller-products-list-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"seller_id\\\": \\\"7495150558072178725\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"seller_id\\\": \\\"7495150558072178725\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/seller-products-list-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"seller_id\\\": \\\"7495150558072178725\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/seller-products-list-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/seller-products-list-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/seller-products-list-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/seller-products-list-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/seller-products-list-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/seller-products-list-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/seller-products-list-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Shop Seller Products (V2)\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/seller-products-list-v2\",\"description\":\"Returns a streamlined product list with SKU details and catalog information from TikTok Shop. Filter listings by seller identifier, region, and search terms.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code (US/GB/SG/MY/PH/TH/VN/ID)\",\"default\":\"US\"},{\"name\":\"searchParams\",\"type\":\"string\",\"required\":false,\"description\":\"Search parameters (optional)\",\"default\":\"\\\"\\\"\"},{\"name\":\"seller_id\",\"type\":\"string\",\"required\":true,\"description\":\"Seller ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/seller-products-list-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"seller_id\\\": \\\"7495150558072178725\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"seller_id\\\": \\\"7495150558072178725\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/seller-products-list-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"seller_id\\\": \\\"7495150558072178725\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/seller-products-list-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/seller-products-list-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/seller-products-list-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/seller-products-list-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/seller-products-list-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/seller-products-list-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/seller-products-list-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get seller products list V2 (Mobile)" + modelName: "TikTok Shop Seller Products (V2)" modelId: "tiktok/shop-web/seller-products-list-v2" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/shop-web/seller-products-list.md b/model-api-reference/platform-apis/tiktok/shop-web/seller-products-list.md index f352acd4..c7b5784a 100644 --- a/model-api-reference/platform-apis/tiktok/shop-web/seller-products-list.md +++ b/model-api-reference/platform-apis/tiktok/shop-web/seller-products-list.md @@ -1,13 +1,13 @@ --- -title: "Get seller products list V1 API Reference" -description: "SandBase API operation tiktok/shop-web/seller-products-list." +title: "TikTok Seller Products List API Reference" +description: "SandBase API reference for model tiktok/shop-web/seller-products-list. Call /v1/api/tiktok/shop-web/seller-products-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/shop-web/seller-products-list" -apiReferenceJson: "{\"title\":\"Get seller products list V1\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/seller-products-list\",\"description\":\"Get product list from specified seller Support pagination to load more products\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code (US/GB/SG/MY/PH/TH/VN/ID)\",\"default\":\"US\"},{\"name\":\"search_params\",\"type\":\"string\",\"required\":false,\"description\":\"Search parameters for pagination (optional)\",\"default\":\"\\\"\\\"\"},{\"name\":\"seller_id\",\"type\":\"string\",\"required\":true,\"description\":\"Seller ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/seller-products-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"seller_id\\\": \\\"7495150558072178725\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"seller_id\\\": \\\"7495150558072178725\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/seller-products-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"seller_id\\\": \\\"7495150558072178725\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/seller-products-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/seller-products-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/seller-products-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/seller-products-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/seller-products-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/seller-products-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/seller-products-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Seller Products List\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/seller-products-list\",\"description\":\"Returns product listings and SKU details for a designated TikTok Shop merchant. Filter items by seller ID, target region, and pagination parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code (US/GB/SG/MY/PH/TH/VN/ID)\",\"default\":\"US\"},{\"name\":\"search_params\",\"type\":\"string\",\"required\":false,\"description\":\"Search parameters for pagination (optional)\",\"default\":\"\\\"\\\"\"},{\"name\":\"seller_id\",\"type\":\"string\",\"required\":true,\"description\":\"Seller ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/seller-products-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"seller_id\\\": \\\"7495150558072178725\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"seller_id\\\": \\\"7495150558072178725\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/seller-products-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"seller_id\\\": \\\"7495150558072178725\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/seller-products-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/seller-products-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/seller-products-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/seller-products-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/seller-products-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/seller-products-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/seller-products-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get seller products list V1" + modelName: "TikTok Seller Products List" modelId: "tiktok/shop-web/seller-products-list" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/shop-web/shop-id-by-share-link.md b/model-api-reference/platform-apis/tiktok/shop-web/shop-id-by-share-link.md index a5ade944..ffd6c017 100644 --- a/model-api-reference/platform-apis/tiktok/shop-web/shop-id-by-share-link.md +++ b/model-api-reference/platform-apis/tiktok/shop-web/shop-id-by-share-link.md @@ -1,13 +1,13 @@ --- -title: "Get Shop ID by Share Link — sw4xq2 API" -description: "SandBase API operation tiktok/shop-web/shop-id-by-share-link." +title: "TikTok Shop ID by Share Link API Reference" +description: "SandBase API reference for model tiktok/shop-web/shop-id-by-share-link. Call /v1/api/tiktok/shop-web/shop-id-by-share-link; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/shop-web/shop-id-by-share-link" -apiReferenceJson: "{\"title\":\"Get Shop ID by Share Link\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/shop-id-by-share-link\",\"description\":\"Get Shop ID by Share Link\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_link\",\"type\":\"string\",\"required\":true,\"description\":\"Share link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/shop-id-by-share-link \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"share_link\\\": \\\"https://vt.tiktok.com/ZT2AHoGsE/\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"share_link\\\": \\\"https://vt.tiktok.com/ZT2AHoGsE/\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/shop-id-by-share-link\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"share_link\\\": \\\"https://vt.tiktok.com/ZT2AHoGsE/\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/shop-id-by-share-link\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/shop-id-by-share-link\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/shop-id-by-share-link\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/shop-id-by-share-link\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/shop-id-by-share-link\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/shop-id-by-share-link\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/shop-id-by-share-link\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Shop ID by Share Link\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/shop-web/shop-id-by-share-link\",\"description\":\"Resolves a TikTok Shop share URL into its corresponding store identifiers. Returns the numeric shop ID and internal store app link using a valid share link.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_link\",\"type\":\"string\",\"required\":true,\"description\":\"Share link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/shop-web/shop-id-by-share-link \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"share_link\\\": \\\"https://vt.tiktok.com/ZT2AHoGsE/\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"share_link\\\": \\\"https://vt.tiktok.com/ZT2AHoGsE/\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/shop-id-by-share-link\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"share_link\\\": \\\"https://vt.tiktok.com/ZT2AHoGsE/\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/shop-web/shop-id-by-share-link\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/shop-web/shop-id-by-share-link\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/shop-web/shop-id-by-share-link\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/shop-web/shop-id-by-share-link\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/shop-web/shop-id-by-share-link\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/shop-web/shop-id-by-share-link\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/shop-web/shop-id-by-share-link\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Shop ID by Share Link" + modelName: "TikTok Shop ID by Share Link" modelId: "tiktok/shop-web/shop-id-by-share-link" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/all-aweme-id.md b/model-api-reference/platform-apis/tiktok/web/all-aweme-id.md index e3bdb3b6..ea693b04 100644 --- a/model-api-reference/platform-apis/tiktok/web/all-aweme-id.md +++ b/model-api-reference/platform-apis/tiktok/web/all-aweme-id.md @@ -1,13 +1,13 @@ --- -title: "Extract list video id API Reference — TikTok Web / All Aweme Id" -description: "SandBase API operation tiktok/web/all-aweme-id." +title: "TikTok Video IDs from URLs (Batch) API Reference" +description: "TikTok Video IDs from URLs (Batch) API reference for SandBase. Use model tiktok/web/all-aweme-id with /v1/api/tiktok/web/all-aweme-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/all-aweme-id" -apiReferenceJson: "{\"title\":\"Extract list video id\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/all-aweme-id\",\"description\":\"Extract list video id\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"Video link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/all-aweme-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"body\\\": [\\n \\\"https://www.tiktok.com/@owlcitymusic/video/7218694761253735723\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"body\\\": [\\n \\\"https://www.tiktok.com/@owlcitymusic/video/7218694761253735723\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/all-aweme-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"body\\\": [\\n \\\"https://www.tiktok.com/@owlcitymusic/video/7218694761253735723\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/all-aweme-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/all-aweme-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/all-aweme-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/all-aweme-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/all-aweme-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/all-aweme-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/all-aweme-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Video IDs from URLs (Batch)\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/all-aweme-id\",\"description\":\"Resolves and extracts TikTok video IDs from a list of video URLs. Takes a list of video links to return corresponding item identifiers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"Video link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/all-aweme-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"body\\\": [\\n \\\"https://www.tiktok.com/@owlcitymusic/video/7218694761253735723\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"body\\\": [\\n \\\"https://www.tiktok.com/@owlcitymusic/video/7218694761253735723\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/all-aweme-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"body\\\": [\\n \\\"https://www.tiktok.com/@owlcitymusic/video/7218694761253735723\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/all-aweme-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/all-aweme-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/all-aweme-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/all-aweme-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/all-aweme-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/all-aweme-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/all-aweme-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Extract list video id" + modelName: "TikTok Video IDs from URLs (Batch)" modelId: "tiktok/web/all-aweme-id" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/all-sec-user-id.md b/model-api-reference/platform-apis/tiktok/web/all-sec-user-id.md index ce28a743..24e29393 100644 --- a/model-api-reference/platform-apis/tiktok/web/all-sec-user-id.md +++ b/model-api-reference/platform-apis/tiktok/web/all-sec-user-id.md @@ -1,13 +1,13 @@ --- -title: "Extract list user sec_user_id API Reference" -description: "SandBase API operation tiktok/web/all-sec-user-id." +title: "TikTok User Sec User ID Extractor API Reference" +description: "SandBase API reference for model tiktok/web/all-sec-user-id. Call /v1/api/tiktok/web/all-sec-user-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/all-sec-user-id" -apiReferenceJson: "{\"title\":\"Extract list user sec_user_id\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/all-sec-user-id\",\"description\":\"Extract list user id\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"User homepage link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/all-sec-user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"body\\\": [\\n \\\"https://www.tiktok.com/@tiktok\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"body\\\": [\\n \\\"https://www.tiktok.com/@tiktok\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/all-sec-user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"body\\\": [\\n \\\"https://www.tiktok.com/@tiktok\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/all-sec-user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/all-sec-user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/all-sec-user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/all-sec-user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/all-sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/all-sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/all-sec-user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok User Sec User ID Extractor\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/all-sec-user-id\",\"description\":\"Returns a list of sec_user_id identifiers corresponding to TikTok user profile URLs. Provide an array of user homepage links in the request body to retrieve their unique security IDs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"User homepage link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/all-sec-user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"body\\\": [\\n \\\"https://www.tiktok.com/@tiktok\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"body\\\": [\\n \\\"https://www.tiktok.com/@tiktok\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/all-sec-user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"body\\\": [\\n \\\"https://www.tiktok.com/@tiktok\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/all-sec-user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/all-sec-user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/all-sec-user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/all-sec-user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/all-sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/all-sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/all-sec-user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Extract list user sec_user_id" + modelName: "TikTok User Sec User ID Extractor" modelId: "tiktok/web/all-sec-user-id" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/all-unique-id.md b/model-api-reference/platform-apis/tiktok/web/all-unique-id.md index 7dcb86a1..0fa13ceb 100644 --- a/model-api-reference/platform-apis/tiktok/web/all-unique-id.md +++ b/model-api-reference/platform-apis/tiktok/web/all-unique-id.md @@ -1,13 +1,13 @@ --- -title: "Get list unique_id API Reference" -description: "SandBase API operation tiktok/web/all-unique-id." +title: "TikTok Profile Unique IDs API Reference" +description: "TikTok Profile Unique IDs API reference for SandBase. Use model tiktok/web/all-unique-id with /v1/api/tiktok/web/all-unique-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/all-unique-id" -apiReferenceJson: "{\"title\":\"Get list unique_id\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/all-unique-id\",\"description\":\"Get list unique_id\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"User homepage link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/all-unique-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/all-unique-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/all-unique-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/all-unique-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/all-unique-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/all-unique-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/all-unique-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/all-unique-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/all-unique-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Profile Unique IDs\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/all-unique-id\",\"description\":\"Resolves a batch of TikTok user homepage links to retrieve their corresponding unique identifiers. Accepts a list of profile URLs in the request payload.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"array\",\"required\":true,\"description\":\"User homepage link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/all-unique-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/all-unique-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"body\\\": [\\n \\\"body_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/all-unique-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/all-unique-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/all-unique-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/all-unique-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/all-unique-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/all-unique-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/all-unique-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get list unique_id" + modelName: "TikTok Profile Unique IDs" modelId: "tiktok/web/all-unique-id" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/aweme-id.md b/model-api-reference/platform-apis/tiktok/web/aweme-id.md index 09f3a0b0..1b2957b2 100644 --- a/model-api-reference/platform-apis/tiktok/web/aweme-id.md +++ b/model-api-reference/platform-apis/tiktok/web/aweme-id.md @@ -1,13 +1,13 @@ --- -title: "Extract single video id API Reference — TikTok Web / Aweme Id API" -description: "SandBase API operation tiktok/web/aweme-id." +title: "TikTok Video ID from URL API Reference" +description: "TikTok Video ID from URL API reference for SandBase. Use model tiktok/web/aweme-id with /v1/api/tiktok/web/aweme-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/aweme-id" -apiReferenceJson: "{\"title\":\"Extract single video id\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/aweme-id\",\"description\":\"Extract single video id\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Video link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/aweme-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://www.tiktok.com/@owlcitymusic/video/7218694761253735723\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://www.tiktok.com/@owlcitymusic/video/7218694761253735723\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/aweme-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://www.tiktok.com/@owlcitymusic/video/7218694761253735723\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/aweme-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/aweme-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/aweme-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/aweme-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/aweme-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/aweme-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/aweme-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Video ID from URL\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/aweme-id\",\"description\":\"Extracts and returns the unique single video ID from a provided TikTok video link. Enables quick identification of video assets for downstream lookups.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Video link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/aweme-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://www.tiktok.com/@owlcitymusic/video/7218694761253735723\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://www.tiktok.com/@owlcitymusic/video/7218694761253735723\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/aweme-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://www.tiktok.com/@owlcitymusic/video/7218694761253735723\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/aweme-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/aweme-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/aweme-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/aweme-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/aweme-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/aweme-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/aweme-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Extract single video id" + modelName: "TikTok Video ID from URL" modelId: "tiktok/web/aweme-id" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/batch-check-live-alive.md b/model-api-reference/platform-apis/tiktok/web/batch-check-live-alive.md index 986b44e5..ecdc3d84 100644 --- a/model-api-reference/platform-apis/tiktok/web/batch-check-live-alive.md +++ b/model-api-reference/platform-apis/tiktok/web/batch-check-live-alive.md @@ -1,13 +1,13 @@ --- -title: "Batch live room start status check API Reference" -description: "SandBase API operation tiktok/web/batch-check-live-alive." +title: "TikTok Room Active Status Batch Check API Reference" +description: "SandBase API reference for model tiktok/web/batch-check-live-alive. Call /v1/api/tiktok/web/batch-check-live-alive; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/batch-check-live-alive" -apiReferenceJson: "{\"title\":\"Batch live room start status check\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/batch-check-live-alive\",\"description\":\"Batch live room start status check Support up to 50 live rooms query at once If a live room does not exist or has ended, the corresponding position will return empty or null.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"room_ids\",\"type\":\"string\",\"required\":true,\"description\":\"Live room ID list separated by commas, e.g.: 7530611486784277278,7530633767468288782\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/batch-check-live-alive \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"room_ids\\\": \\\"room_ids\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"room_ids\\\": \\\"room_ids\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/batch-check-live-alive\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"room_ids\\\": \\\"room_ids\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/batch-check-live-alive\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/batch-check-live-alive\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/batch-check-live-alive\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/batch-check-live-alive\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/batch-check-live-alive\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/batch-check-live-alive\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/batch-check-live-alive\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Room Active Status Batch Check\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/batch-check-live-alive\",\"description\":\"Checks whether multiple TikTok broadcast rooms are currently active. Accepts a comma-separated list of room identifiers to return current status details.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"room_ids\",\"type\":\"string\",\"required\":true,\"description\":\"Live room ID list separated by commas, e.g.: 7530611486784277278,7530633767468288782\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/batch-check-live-alive \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"room_ids\\\": \\\"room_ids\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"room_ids\\\": \\\"room_ids\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/batch-check-live-alive\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"room_ids\\\": \\\"room_ids\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/batch-check-live-alive\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/batch-check-live-alive\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/batch-check-live-alive\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/batch-check-live-alive\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/batch-check-live-alive\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/batch-check-live-alive\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/batch-check-live-alive\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Batch live room start status check" + modelName: "TikTok Room Active Status Batch Check" modelId: "tiktok/web/batch-check-live-alive" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/check-live-alive.md b/model-api-reference/platform-apis/tiktok/web/check-live-alive.md index a390f816..864779b9 100644 --- a/model-api-reference/platform-apis/tiktok/web/check-live-alive.md +++ b/model-api-reference/platform-apis/tiktok/web/check-live-alive.md @@ -1,13 +1,13 @@ --- -title: "Live room start status check API Reference" -description: "SandBase API operation tiktok/web/check-live-alive." +title: "TikTok Stream Status Check API Reference" +description: "TikTok Stream Status Check API reference for SandBase. Use model tiktok/web/check-live-alive with /v1/api/tiktok/web/check-live-alive; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/check-live-alive" -apiReferenceJson: "{\"title\":\"Live room start status check\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/check-live-alive\",\"description\":\"Live room start status check If the current live room does not exist or has ended, it will return empty.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Live room ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/check-live-alive \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"room_id\\\": \\\"7381444193462078214\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"room_id\\\": \\\"7381444193462078214\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/check-live-alive\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"room_id\\\": \\\"7381444193462078214\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/check-live-alive\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/check-live-alive\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/check-live-alive\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/check-live-alive\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/check-live-alive\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/check-live-alive\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/check-live-alive\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Stream Status Check\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/check-live-alive\",\"description\":\"Checks the active broadcast state of a specified TikTok room. Returns room identifier data and a boolean flag indicating whether the stream is active.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Live room ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/check-live-alive \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"room_id\\\": \\\"7381444193462078214\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"room_id\\\": \\\"7381444193462078214\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/check-live-alive\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"room_id\\\": \\\"7381444193462078214\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/check-live-alive\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/check-live-alive\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/check-live-alive\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/check-live-alive\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/check-live-alive\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/check-live-alive\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/check-live-alive\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Live room start status check" + modelName: "TikTok Stream Status Check" modelId: "tiktok/web/check-live-alive" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/decrypt-str-data.md b/model-api-reference/platform-apis/tiktok/web/decrypt-str-data.md index f499ff39..e89b8b37 100644 --- a/model-api-reference/platform-apis/tiktok/web/decrypt-str-data.md +++ b/model-api-reference/platform-apis/tiktok/web/decrypt-str-data.md @@ -1,13 +1,13 @@ --- -title: "Decrypt strData API Reference" -description: "SandBase API operation tiktok/web/decrypt-str-data." +title: "TikTok Web String Data Decryption API Reference" +description: "SandBase API reference for model tiktok/web/decrypt-str-data. Call /v1/api/tiktok/web/decrypt-str-data; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/decrypt-str-data" -apiReferenceJson: "{\"title\":\"Decrypt strData\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/decrypt-str-data\",\"description\":\"Decrypt strData fingerprint data to analyze fingerprint info in msToken request\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"encrypted_data\",\"type\":\"string\",\"required\":true,\"description\":\"Encrypted strData string, obtained from browser packet capture\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/decrypt-str-data \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"encrypted_data\\\": \\\"encrypted_data\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"encrypted_data\\\": \\\"encrypted_data\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/decrypt-str-data\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"encrypted_data\\\": \\\"encrypted_data\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/decrypt-str-data\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/decrypt-str-data\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/decrypt-str-data\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/decrypt-str-data\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/decrypt-str-data\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/decrypt-str-data\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/decrypt-str-data\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Web String Data Decryption\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/decrypt-str-data\",\"description\":\"Decrypts encrypted strData captured from TikTok web network traffic. Pass the captured string to reveal the underlying plaintext response payload.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"encrypted_data\",\"type\":\"string\",\"required\":true,\"description\":\"Encrypted strData string, obtained from browser packet capture\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/decrypt-str-data \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"encrypted_data\\\": \\\"encrypted_data\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"encrypted_data\\\": \\\"encrypted_data\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/decrypt-str-data\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"encrypted_data\\\": \\\"encrypted_data\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/decrypt-str-data\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/decrypt-str-data\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/decrypt-str-data\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/decrypt-str-data\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/decrypt-str-data\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/decrypt-str-data\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/decrypt-str-data\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Decrypt strData" + modelName: "TikTok Web String Data Decryption" modelId: "tiktok/web/decrypt-str-data" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/device-register.md b/model-api-reference/platform-apis/tiktok/web/device-register.md index 54f2ea5e..08e68b82 100644 --- a/model-api-reference/platform-apis/tiktok/web/device-register.md +++ b/model-api-reference/platform-apis/tiktok/web/device-register.md @@ -1,13 +1,13 @@ --- -title: "Register device for TikTok Web API Reference" -description: "SandBase API operation tiktok/web/device-register." +title: "TikTok Web Device Registration API Reference" +description: "SandBase API reference for model tiktok/web/device-register. Call /v1/api/tiktok/web/device-register; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/device-register" -apiReferenceJson: "{\"title\":\"Register device for TikTok Web\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/device-register\",\"description\":\"Register device to generate device ID and guest Cookie for TikTok Web\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/device-register \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/web/device-register\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/web/device-register\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/device-register\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/web/device-register\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/device-register\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/device-register\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/device-register\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/device-register\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/device-register\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/device-register\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/device-register\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Web Device Registration\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/device-register\",\"description\":\"Registers a virtual client session to generate a device ID and guest cookie for TikTok Web requests. Returns device tokens and session parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/device-register \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/device-register\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/device-register\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/device-register\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/device-register\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/device-register\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/device-register\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/device-register\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/device-register\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Register device for TikTok Web" + modelName: "TikTok Web Device Registration" modelId: "tiktok/web/device-register" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/encrypt-str-data.md b/model-api-reference/platform-apis/tiktok/web/encrypt-str-data.md index 316dfc44..64ac7284 100644 --- a/model-api-reference/platform-apis/tiktok/web/encrypt-str-data.md +++ b/model-api-reference/platform-apis/tiktok/web/encrypt-str-data.md @@ -1,13 +1,13 @@ --- -title: "Encrypt strData API Reference" -description: "SandBase API operation tiktok/web/encrypt-str-data." +title: "TikTok Web StrData Encryption API Reference" +description: "SandBase API reference for model tiktok/web/encrypt-str-data. Call /v1/api/tiktok/web/encrypt-str-data; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/encrypt-str-data" -apiReferenceJson: "{\"title\":\"Encrypt strData\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/encrypt-str-data\",\"description\":\"Encrypt strData fingerprint data for msToken request\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"data\",\"type\":\"string\",\"required\":true,\"description\":\"Raw fingerprint data string (please convert JSON format to string before requesting)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/encrypt-str-data \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"data\\\": \\\"data\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"data\\\": \\\"data\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/encrypt-str-data\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"data\\\": \\\"data\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/encrypt-str-data\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/encrypt-str-data\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/encrypt-str-data\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/encrypt-str-data\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/encrypt-str-data\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/encrypt-str-data\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/encrypt-str-data\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Web StrData Encryption\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/encrypt-str-data\",\"description\":\"Encrypts raw fingerprint string data for TikTok web requests. Takes a stringified JSON fingerprint payload via the data parameter and returns the encrypted string.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"data\",\"type\":\"string\",\"required\":true,\"description\":\"Raw fingerprint data string (please convert JSON format to string before requesting)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/encrypt-str-data \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"data\\\": \\\"data\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"data\\\": \\\"data\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/encrypt-str-data\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"data\\\": \\\"data\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/encrypt-str-data\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/encrypt-str-data\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/encrypt-str-data\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/encrypt-str-data\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/encrypt-str-data\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/encrypt-str-data\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/encrypt-str-data\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Encrypt strData" + modelName: "TikTok Web StrData Encryption" modelId: "tiktok/web/encrypt-str-data" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/explore-post.md b/model-api-reference/platform-apis/tiktok/web/explore-post.md index 3d22cd0e..8578f344 100644 --- a/model-api-reference/platform-apis/tiktok/web/explore-post.md +++ b/model-api-reference/platform-apis/tiktok/web/explore-post.md @@ -1,13 +1,13 @@ --- -title: "Get explore video data API Reference" -description: "SandBase API operation tiktok/web/explore-post." +title: "TikTok Web Explore Posts API Reference" +description: "TikTok Web Explore Posts API reference for SandBase. Use model tiktok/web/explore-post with /v1/api/tiktok/web/explore-post; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/explore-post" -apiReferenceJson: "{\"title\":\"Get explore video data\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/explore-post\",\"description\":\"Get explore video data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"categoryType\",\"type\":\"string\",\"required\":false,\"description\":\"Video category\",\"default\":\"120\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\",\"default\":\"16\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/explore-post \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/web/explore-post\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/web/explore-post\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/explore-post\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/web/explore-post\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/explore-post\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/explore-post\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/explore-post\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/explore-post\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/explore-post\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/explore-post\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/explore-post\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Web Explore Posts\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/explore-post\",\"description\":\"Returns explore feed posts from TikTok Web, filtered by video category and page count, along with author metrics and audio details.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"categoryType\",\"type\":\"string\",\"required\":false,\"description\":\"Video category\",\"default\":\"120\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\",\"default\":\"16\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/explore-post \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/explore-post\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/explore-post\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/explore-post\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/explore-post\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/explore-post\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/explore-post\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/explore-post\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/explore-post\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get explore video data" + modelName: "TikTok Web Explore Posts" modelId: "tiktok/web/explore-post" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/general-search.md b/model-api-reference/platform-apis/tiktok/web/general-search.md index a9c2264e..cf97930f 100644 --- a/model-api-reference/platform-apis/tiktok/web/general-search.md +++ b/model-api-reference/platform-apis/tiktok/web/general-search.md @@ -1,13 +1,13 @@ --- -title: "Get general search list API Reference" -description: "SandBase API operation tiktok/web/general-search." +title: "TikTok Web General Search API Reference" +description: "TikTok Web General Search API reference for SandBase. Use model tiktok/web/general-search with /v1/api/tiktok/web/general-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/general-search" -apiReferenceJson: "{\"title\":\"Get general search list\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/general-search\",\"description\":\"Get general search list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User cookie (If you need to search with your own account, or encounter an interface error, you can provide the cookie yourself, default is not required)\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Page cursor, 0 for the first request, need to provide for the second paging, generally the keyword of this value is offset or cursor.\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search id, empty for the first request, need to provide for the second paging, need to get it from the return response of the last request.\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/general-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/general-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/general-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/general-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/general-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/general-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/general-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/general-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/general-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Web General Search\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/general-search\",\"description\":\"Returns general TikTok search results matching a specified keyword. Supports pagination through offset and search ID parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Page cursor, 0 for the first request, need to provide for the second paging, generally the keyword of this value is offset or cursor.\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search id, empty for the first request, need to provide for the second paging, need to get it from the return response of the last request.\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/general-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/general-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/general-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/general-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/general-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/general-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/general-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/general-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/general-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get general search list" + modelName: "TikTok Web General Search" modelId: "tiktok/web/general-search" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/generate-fingerprint.md b/model-api-reference/platform-apis/tiktok/web/generate-fingerprint.md index 086cdc45..d6c5c150 100644 --- a/model-api-reference/platform-apis/tiktok/web/generate-fingerprint.md +++ b/model-api-reference/platform-apis/tiktok/web/generate-fingerprint.md @@ -1,13 +1,13 @@ --- -title: "Generate browser fingerprint API Reference" -description: "SandBase API operation tiktok/web/generate-fingerprint." +title: "TikTok Web Browser Fingerprint API Reference" +description: "SandBase API reference for model tiktok/web/generate-fingerprint. Call /v1/api/tiktok/web/generate-fingerprint; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/generate-fingerprint" -apiReferenceJson: "{\"title\":\"Generate browser fingerprint\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/generate-fingerprint\",\"description\":\"Generate random browser fingerprint data for custom msToken request\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"browser_type\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/generate-fingerprint \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/web/generate-fingerprint\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/web/generate-fingerprint\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-fingerprint\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/web/generate-fingerprint\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-fingerprint\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/generate-fingerprint\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/generate-fingerprint\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/generate-fingerprint\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/generate-fingerprint\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/generate-fingerprint\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/generate-fingerprint\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Web Browser Fingerprint\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/generate-fingerprint\",\"description\":\"Returns browser fingerprint configurations for web requests. Allows tailoring the profile based on an optional browser type parameter.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"browser_type\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/generate-fingerprint \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-fingerprint\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-fingerprint\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/generate-fingerprint\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/generate-fingerprint\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/generate-fingerprint\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/generate-fingerprint\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/generate-fingerprint\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/generate-fingerprint\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate browser fingerprint" + modelName: "TikTok Web Browser Fingerprint" modelId: "tiktok/web/generate-fingerprint" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/generate-hashed-id.md b/model-api-reference/platform-apis/tiktok/web/generate-hashed-id.md index 46f6e452..9a69bad8 100644 --- a/model-api-reference/platform-apis/tiktok/web/generate-hashed-id.md +++ b/model-api-reference/platform-apis/tiktok/web/generate-hashed-id.md @@ -1,13 +1,13 @@ --- -title: "Generate hashed ID API Reference" -description: "SandBase API operation tiktok/web/generate-hashed-id." +title: "TikTok Web Hashed ID API Reference" +description: "TikTok Web Hashed ID API reference for SandBase. Use model tiktok/web/generate-hashed-id with /v1/api/tiktok/web/generate-hashed-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/generate-hashed-id" -apiReferenceJson: "{\"title\":\"Generate hashed ID\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/generate-hashed-id\",\"description\":\"Generate hashed ID for TikTok Web\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"email\",\"type\":\"string\",\"required\":true,\"description\":\"Email address\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/generate-hashed-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"email\\\": \\\"email\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"email\\\": \\\"email\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-hashed-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"email\\\": \\\"email\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-hashed-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/generate-hashed-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/generate-hashed-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/generate-hashed-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/generate-hashed-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/generate-hashed-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/generate-hashed-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Web Hashed ID\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/generate-hashed-id\",\"description\":\"Calculates a hashed identifier for TikTok Web based on a provided email address. This endpoint takes an email input and returns the corresponding hashed ID value.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"email\",\"type\":\"string\",\"required\":true,\"description\":\"Email address\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/generate-hashed-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"email\\\": \\\"email\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"email\\\": \\\"email\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-hashed-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"email\\\": \\\"email\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-hashed-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/generate-hashed-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/generate-hashed-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/generate-hashed-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/generate-hashed-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/generate-hashed-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/generate-hashed-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate hashed ID" + modelName: "TikTok Web Hashed ID" modelId: "tiktok/web/generate-hashed-id" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/generate-real-ms-token.md b/model-api-reference/platform-apis/tiktok/web/generate-real-ms-token.md index bc255c4d..5a84d18d 100644 --- a/model-api-reference/platform-apis/tiktok/web/generate-real-ms-token.md +++ b/model-api-reference/platform-apis/tiktok/web/generate-real-ms-token.md @@ -1,13 +1,13 @@ --- -title: "Generate real msToken API Reference — TikTok Real Ms Token" -description: "SandBase API operation tiktok/web/generate-real-ms-token." +title: "TikTok Real msToken API Reference" +description: "SandBase API reference for model tiktok/web/generate-real-ms-token. Call /v1/api/tiktok/web/generate-real-ms-token; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/generate-real-ms-token" -apiReferenceJson: "{\"title\":\"Generate real msToken\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/generate-real-ms-token\",\"description\":\"Generate real msToken\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"browser_type\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"random_strData\",\"type\":\"boolean\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/generate-real-ms-token \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/web/generate-real-ms-token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/web/generate-real-ms-token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-real-ms-token\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/web/generate-real-ms-token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-real-ms-token\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/generate-real-ms-token\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/generate-real-ms-token\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/generate-real-ms-token\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/generate-real-ms-token\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/generate-real-ms-token\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/generate-real-ms-token\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Real msToken\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/generate-real-ms-token\",\"description\":\"Produces a real msToken for TikTok web requests. Accepts optional configuration parameters including browser type and randomized string data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"browser_type\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"random_strData\",\"type\":\"boolean\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/generate-real-ms-token \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-real-ms-token\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-real-ms-token\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/generate-real-ms-token\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/generate-real-ms-token\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/generate-real-ms-token\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/generate-real-ms-token\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/generate-real-ms-token\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/generate-real-ms-token\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate real msToken" + modelName: "TikTok Real msToken" modelId: "tiktok/web/generate-real-ms-token" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/generate-ttwid.md b/model-api-reference/platform-apis/tiktok/web/generate-ttwid.md index 0745676e..eafa14f9 100644 --- a/model-api-reference/platform-apis/tiktok/web/generate-ttwid.md +++ b/model-api-reference/platform-apis/tiktok/web/generate-ttwid.md @@ -1,13 +1,13 @@ --- -title: "Generate ttwid API Reference — TikTok Web / Generate Ttwid API" -description: "SandBase API operation tiktok/web/generate-ttwid." +title: "TikTok Web TTWID Identifier API Reference" +description: "TikTok Web TTWID Identifier API reference for SandBase. Use model tiktok/web/generate-ttwid with /v1/api/tiktok/web/generate-ttwid; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/generate-ttwid" -apiReferenceJson: "{\"title\":\"Generate ttwid\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/generate-ttwid\",\"description\":\"Generate ttwid\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_agent\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/generate-ttwid \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/web/generate-ttwid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/web/generate-ttwid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-ttwid\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/web/generate-ttwid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-ttwid\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/generate-ttwid\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/generate-ttwid\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/generate-ttwid\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/generate-ttwid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/generate-ttwid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/generate-ttwid\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Web TTWID Identifier\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/generate-ttwid\",\"description\":\"Returns a valid TikTok ttwid cookie value for web session handling. Accepts an optional user_agent string to match specific browser environments.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_agent\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/generate-ttwid \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-ttwid\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-ttwid\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/generate-ttwid\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/generate-ttwid\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/generate-ttwid\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/generate-ttwid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/generate-ttwid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/generate-ttwid\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate ttwid" + modelName: "TikTok Web TTWID Identifier" modelId: "tiktok/web/generate-ttwid" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/generate-webid.md b/model-api-reference/platform-apis/tiktok/web/generate-webid.md index dc1858db..a8b7b9ff 100644 --- a/model-api-reference/platform-apis/tiktok/web/generate-webid.md +++ b/model-api-reference/platform-apis/tiktok/web/generate-webid.md @@ -1,13 +1,13 @@ --- -title: "Generate web_id API Reference" -description: "SandBase API operation tiktok/web/generate-webid." +title: "TikTok Web ID API Reference" +description: "TikTok Web ID API reference for SandBase. Use model tiktok/web/generate-webid with /v1/api/tiktok/web/generate-webid; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/generate-webid" -apiReferenceJson: "{\"title\":\"Generate web_id\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/generate-webid\",\"description\":\"Generate TikTok web_id (device_id in Web API request parameters)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_id\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"referer\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"url\",\"type\":\"string\",\"required\":false,\"description\":\"Download URL for a generated output asset.\"},{\"name\":\"user_agent\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"user_unique_id\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/generate-webid \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-webid\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-webid\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/generate-webid\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/generate-webid\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/generate-webid\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/generate-webid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/generate-webid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/generate-webid\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Web ID\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/generate-webid\",\"description\":\"Returns a TikTok web_id value for web session handling. Accepts optional parameters including url, app_id, referer, user_agent, and user_unique_id.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"app_id\",\"type\":\"integer\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"referer\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"url\",\"type\":\"string\",\"required\":false,\"description\":\"Download URL for a generated output asset.\"},{\"name\":\"user_agent\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"},{\"name\":\"user_unique_id\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/generate-webid \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-webid\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-webid\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/generate-webid\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/generate-webid\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/generate-webid\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/generate-webid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/generate-webid\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/generate-webid\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate web_id" + modelName: "TikTok Web ID" modelId: "tiktok/web/generate-webid" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/generate-wss-xb-signature.md b/model-api-reference/platform-apis/tiktok/web/generate-wss-xb-signature.md index 2675cf46..81d16d51 100644 --- a/model-api-reference/platform-apis/tiktok/web/generate-wss-xb-signature.md +++ b/model-api-reference/platform-apis/tiktok/web/generate-wss-xb-signature.md @@ -1,13 +1,13 @@ --- -title: "Generate TikTok WSS X-Bogus signature API Reference" -description: "SandBase API operation tiktok/web/generate-wss-xb-signature." +title: "TikTok WSS X-Bogus Signature API Reference" +description: "SandBase API reference for model tiktok/web/generate-wss-xb-signature. Call /v1/api/tiktok/web/generate-wss-xb-signature; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/generate-wss-xb-signature" -apiReferenceJson: "{\"title\":\"Generate TikTok WSS X-Bogus signature\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/generate-wss-xb-signature\",\"description\":\"Generate X-Bogus signature required for TikTok Live WSS connection\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_agent\",\"type\":\"string\",\"required\":false,\"description\":\"User browser agent (optional, uses default UA if not provided)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/generate-wss-xb-signature \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/web/generate-wss-xb-signature\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/web/generate-wss-xb-signature\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-wss-xb-signature\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/web/generate-wss-xb-signature\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-wss-xb-signature\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/generate-wss-xb-signature\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/generate-wss-xb-signature\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/generate-wss-xb-signature\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/generate-wss-xb-signature\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/generate-wss-xb-signature\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/generate-wss-xb-signature\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok WSS X-Bogus Signature\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/generate-wss-xb-signature\",\"description\":\"Generates the X-Bogus signature required for TikTok WebSocket connections. Accepts an optional custom browser user-agent string.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_agent\",\"type\":\"string\",\"required\":false,\"description\":\"User browser agent (optional, uses default UA if not provided)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/generate-wss-xb-signature \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-wss-xb-signature\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-wss-xb-signature\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/generate-wss-xb-signature\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/generate-wss-xb-signature\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/generate-wss-xb-signature\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/generate-wss-xb-signature\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/generate-wss-xb-signature\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/generate-wss-xb-signature\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate TikTok WSS X-Bogus signature" + modelName: "TikTok WSS X-Bogus Signature" modelId: "tiktok/web/generate-wss-xb-signature" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/generate-x-mssdk-info.md b/model-api-reference/platform-apis/tiktok/web/generate-x-mssdk-info.md index e40ca7f2..7427c551 100644 --- a/model-api-reference/platform-apis/tiktok/web/generate-x-mssdk-info.md +++ b/model-api-reference/platform-apis/tiktok/web/generate-x-mssdk-info.md @@ -1,13 +1,13 @@ --- -title: "Generate X-Mssdk-Info API Reference" -description: "SandBase API operation tiktok/web/generate-x-mssdk-info." +title: "TikTok Web X-Mssdk-Info Tokens API Reference" +description: "SandBase API reference for model tiktok/web/generate-x-mssdk-info. Call /v1/api/tiktok/web/generate-x-mssdk-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/generate-x-mssdk-info" -apiReferenceJson: "{\"title\":\"Generate X-Mssdk-Info\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/generate-x-mssdk-info\",\"description\":\"Generate X-Mssdk-Info and X-Mssdk-RC, used for TikTok Web device registration, login, and other scenarios\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_agent\",\"type\":\"string | null\",\"required\":false,\"description\":\"The User-Agent string used\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/generate-x-mssdk-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/web/generate-x-mssdk-info\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/web/generate-x-mssdk-info\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-x-mssdk-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/web/generate-x-mssdk-info\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-x-mssdk-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/generate-x-mssdk-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/generate-x-mssdk-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/generate-x-mssdk-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/generate-x-mssdk-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/generate-x-mssdk-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/generate-x-mssdk-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Web X-Mssdk-Info Tokens\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/generate-x-mssdk-info\",\"description\":\"Generates X-Mssdk-Info and X-Mssdk-RC values for TikTok Web authentication scenarios, accepting an optional user agent string.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_agent\",\"type\":\"string | null\",\"required\":false,\"description\":\"The User-Agent string used\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/generate-x-mssdk-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-x-mssdk-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-x-mssdk-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/generate-x-mssdk-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/generate-x-mssdk-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/generate-x-mssdk-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/generate-x-mssdk-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/generate-x-mssdk-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/generate-x-mssdk-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate X-Mssdk-Info" + modelName: "TikTok Web X-Mssdk-Info Tokens" modelId: "tiktok/web/generate-x-mssdk-info" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/generate-xbogus.md b/model-api-reference/platform-apis/tiktok/web/generate-xbogus.md index 09cb166f..f40b8bb4 100644 --- a/model-api-reference/platform-apis/tiktok/web/generate-xbogus.md +++ b/model-api-reference/platform-apis/tiktok/web/generate-xbogus.md @@ -1,13 +1,13 @@ --- -title: "Generate XBogus API Reference" -description: "SandBase API operation tiktok/web/generate-xbogus." +title: "TikTok Web X-Bogus Signature API Reference" +description: "TikTok Web X-Bogus Signature API reference for SandBase. Use model tiktok/web/generate-xbogus with /v1/api/tiktok/web/generate-xbogus; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/generate-xbogus" -apiReferenceJson: "{\"title\":\"Generate XBogus\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/generate-xbogus\",\"description\":\"Generate xbogus\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Unsigned API URL\"},{\"name\":\"user_agent\",\"type\":\"string\",\"required\":true,\"description\":\"User browser User-Agent\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/generate-xbogus \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\",\\n \\\"user_agent\\\": \\\"user_agent\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\",\\n \\\"user_agent\\\": \\\"user_agent\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-xbogus\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\",\\n \\\"user_agent\\\": \\\"user_agent\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-xbogus\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/generate-xbogus\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/generate-xbogus\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/generate-xbogus\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/generate-xbogus\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/generate-xbogus\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/generate-xbogus\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Web X-Bogus Signature\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/generate-xbogus\",\"description\":\"Returns a signed TikTok Web request URL containing the required X-Bogus token. The endpoint takes an unsigned target API URL and a browser User-Agent string.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"Unsigned API URL\"},{\"name\":\"user_agent\",\"type\":\"string\",\"required\":true,\"description\":\"User browser User-Agent\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/generate-xbogus \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://www.tiktok.com/tag/cat?_r=1&name=cat&u_code=f02lm2f78d1elh&_d=f02ll161mcjihj&share_challenge_id=7551&sharer_language=en&source=h5_m\\\",\\n \\\"user_agent\\\": \\\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:145.0) Gecko/20100101 Firefox/145.0\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://www.tiktok.com/tag/cat?_r=1&name=cat&u_code=f02lm2f78d1elh&_d=f02ll161mcjihj&share_challenge_id=7551&sharer_language=en&source=h5_m\\\",\\n \\\"user_agent\\\": \\\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:145.0) Gecko/20100101 Firefox/145.0\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-xbogus\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://www.tiktok.com/tag/cat?_r=1&name=cat&u_code=f02lm2f78d1elh&_d=f02ll161mcjihj&share_challenge_id=7551&sharer_language=en&source=h5_m\\\",\\n \\\"user_agent\\\": \\\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:145.0) Gecko/20100101 Firefox/145.0\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-xbogus\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/generate-xbogus\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/generate-xbogus\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/generate-xbogus\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/generate-xbogus\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/generate-xbogus\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/generate-xbogus\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate XBogus" + modelName: "TikTok Web X-Bogus Signature" modelId: "tiktok/web/generate-xbogus" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/generate-xgnarly-and-xbogus.md b/model-api-reference/platform-apis/tiktok/web/generate-xgnarly-and-xbogus.md index 51e652f5..889657fb 100644 --- a/model-api-reference/platform-apis/tiktok/web/generate-xgnarly-and-xbogus.md +++ b/model-api-reference/platform-apis/tiktok/web/generate-xgnarly-and-xbogus.md @@ -1,13 +1,13 @@ --- -title: "Generate XGnarly and XBogus API Reference" -description: "SandBase API operation tiktok/web/generate-xgnarly-and-xbogus." +title: "TikTok Web X-Gnarly and X-Bogus Signatures API Reference" +description: "SandBase API reference for model tiktok/web/generate-xgnarly-and-xbogus. Call /v1/api/tiktok/web/generate-xgnarly-and-xbogus; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/generate-xgnarly-and-xbogus" -apiReferenceJson: "{\"title\":\"Generate XGnarly and XBogus\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/generate-xgnarly-and-xbogus\",\"description\":\"Generate XGnarly and XBogus encryption, used for TikTok Web API requests This interface can generate the available version of encryption parameters X-Bogus and X-Gnarly, User-Agent cannot be customized, a common browser User-Agent will be automatically generated This interface perfectly restores the algorithm, ignores all risk controls except for verification codes, and can be used to crawl products, price: $0.005/time The X-Bogus and X-Gnarly generated by this interface are the available versions (V5.2.0, as of March 2026)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"string | null\",\"required\":false,\"description\":\"The API parameters of the request, applicable for POST requests\"},{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"The requested API URL, no need to URL encode\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/generate-xgnarly-and-xbogus \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-xgnarly-and-xbogus\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-xgnarly-and-xbogus\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/generate-xgnarly-and-xbogus\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/generate-xgnarly-and-xbogus\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/generate-xgnarly-and-xbogus\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/generate-xgnarly-and-xbogus\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/generate-xgnarly-and-xbogus\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/generate-xgnarly-and-xbogus\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Web X-Gnarly and X-Bogus Signatures\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/generate-xgnarly-and-xbogus\",\"description\":\"Generates X-Gnarly and X-Bogus signature tokens for TikTok web requests using a target endpoint URL and optional request body parameters. Price: $0.005/time.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"string | null\",\"required\":false,\"description\":\"The API parameters of the request, applicable for POST requests\"},{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"The requested API URL, no need to URL encode\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/generate-xgnarly-and-xbogus \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://www.tiktok.com/tag/cat?_r=1&name=cat&u_code=f02lm2f78d1elh&_d=f02ll161mcjihj&share_challenge_id=7551&sharer_language=en&source=h5_m\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://www.tiktok.com/tag/cat?_r=1&name=cat&u_code=f02lm2f78d1elh&_d=f02ll161mcjihj&share_challenge_id=7551&sharer_language=en&source=h5_m\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-xgnarly-and-xbogus\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://www.tiktok.com/tag/cat?_r=1&name=cat&u_code=f02lm2f78d1elh&_d=f02ll161mcjihj&share_challenge_id=7551&sharer_language=en&source=h5_m\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-xgnarly-and-xbogus\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/generate-xgnarly-and-xbogus\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/generate-xgnarly-and-xbogus\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/generate-xgnarly-and-xbogus\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/generate-xgnarly-and-xbogus\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/generate-xgnarly-and-xbogus\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/generate-xgnarly-and-xbogus\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate XGnarly and XBogus" + modelName: "TikTok Web X-Gnarly and X-Bogus Signatures" modelId: "tiktok/web/generate-xgnarly-and-xbogus" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/generate-xgnarly.md b/model-api-reference/platform-apis/tiktok/web/generate-xgnarly.md index 94a3ec28..dd89c698 100644 --- a/model-api-reference/platform-apis/tiktok/web/generate-xgnarly.md +++ b/model-api-reference/platform-apis/tiktok/web/generate-xgnarly.md @@ -1,13 +1,13 @@ --- -title: "Generate XGnarly API Reference" -description: "SandBase API operation tiktok/web/generate-xgnarly." +title: "TikTok Web X-Gnarly Signature API Reference" +description: "SandBase API reference for model tiktok/web/generate-xgnarly. Call /v1/api/tiktok/web/generate-xgnarly; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/generate-xgnarly" -apiReferenceJson: "{\"title\":\"Generate XGnarly\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/generate-xgnarly\",\"description\":\"Generate XGnarly encryption, used for TikTok Web API requests This interface uses the available version (V5.2.0, as of March 2026) signing service, User-Agent cannot be customized, a common browser User-Agent will be automatically generated This interface perfectly restores the algorithm, ignores all risk controls except for verification codes\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"string | null\",\"required\":false,\"description\":\"The API parameters of the request, applicable for POST requests\"},{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"The requested API URL, no need to URL encode\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/generate-xgnarly \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-xgnarly\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-xgnarly\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/generate-xgnarly\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/generate-xgnarly\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/generate-xgnarly\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/generate-xgnarly\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/generate-xgnarly\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/generate-xgnarly\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Web X-Gnarly Signature\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/generate-xgnarly\",\"description\":\"Returns generated X-Gnarly signature values for TikTok web requests based on a target endpoint URL and optional request body data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"body\",\"type\":\"string | null\",\"required\":false,\"description\":\"The API parameters of the request, applicable for POST requests\"},{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"The requested API URL, no need to URL encode\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/generate-xgnarly \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://www.tiktok.com/tag/cat?_r=1&name=cat&u_code=f02lm2f78d1elh&_d=f02ll161mcjihj&share_challenge_id=7551&sharer_language=en&source=h5_m\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://www.tiktok.com/tag/cat?_r=1&name=cat&u_code=f02lm2f78d1elh&_d=f02ll161mcjihj&share_challenge_id=7551&sharer_language=en&source=h5_m\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-xgnarly\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://www.tiktok.com/tag/cat?_r=1&name=cat&u_code=f02lm2f78d1elh&_d=f02ll161mcjihj&share_challenge_id=7551&sharer_language=en&source=h5_m\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/generate-xgnarly\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/generate-xgnarly\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/generate-xgnarly\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/generate-xgnarly\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/generate-xgnarly\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/generate-xgnarly\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/generate-xgnarly\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate XGnarly" + modelName: "TikTok Web X-Gnarly Signature" modelId: "tiktok/web/generate-xgnarly" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/gift-name-by-id.md b/model-api-reference/platform-apis/tiktok/web/gift-name-by-id.md index 723b02cc..5e7b02cb 100644 --- a/model-api-reference/platform-apis/tiktok/web/gift-name-by-id.md +++ b/model-api-reference/platform-apis/tiktok/web/gift-name-by-id.md @@ -1,13 +1,13 @@ --- -title: "Get gift name by gift ID API Reference" -description: "SandBase API operation tiktok/web/gift-name-by-id." +title: "TikTok Gift Name by ID API Reference" +description: "TikTok Gift Name by ID API reference for SandBase. Use model tiktok/web/gift-name-by-id with /v1/api/tiktok/web/gift-name-by-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/gift-name-by-id" -apiReferenceJson: "{\"title\":\"Get gift name by gift ID\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/gift-name-by-id\",\"description\":\"Get gift name by TikTok gift ID\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"gift_id\",\"type\":\"string\",\"required\":true,\"description\":\"Gift ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/gift-name-by-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"gift_id\\\": \\\"10001\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"gift_id\\\": \\\"10001\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/gift-name-by-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"gift_id\\\": \\\"10001\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/gift-name-by-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/gift-name-by-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/gift-name-by-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/gift-name-by-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/gift-name-by-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/gift-name-by-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/gift-name-by-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Gift Name by ID\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/gift-name-by-id\",\"description\":\"Returns the gift name associated with a specific TikTok gift identifier. Look up gift metadata using the required gift ID parameter.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"gift_id\",\"type\":\"string\",\"required\":true,\"description\":\"Gift ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/gift-name-by-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"gift_id\\\": \\\"10001\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"gift_id\\\": \\\"10001\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/gift-name-by-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"gift_id\\\": \\\"10001\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/gift-name-by-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/gift-name-by-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/gift-name-by-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/gift-name-by-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/gift-name-by-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/gift-name-by-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/gift-name-by-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get gift name by gift ID" + modelName: "TikTok Gift Name by ID" modelId: "tiktok/web/gift-name-by-id" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/gift-names-by-ids.md b/model-api-reference/platform-apis/tiktok/web/gift-names-by-ids.md index de2c410f..7108d4d1 100644 --- a/model-api-reference/platform-apis/tiktok/web/gift-names-by-ids.md +++ b/model-api-reference/platform-apis/tiktok/web/gift-names-by-ids.md @@ -1,13 +1,13 @@ --- -title: "Batch get gift names by gift IDs ($0.025/call, suggest API Ref" -description: "SandBase API operation tiktok/web/gift-names-by-ids." +title: "TikTok Gift Names by IDs API Reference" +description: "TikTok Gift Names by IDs API reference for SandBase. Use model tiktok/web/gift-names-by-ids with /v1/api/tiktok/web/gift-names-by-ids; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/gift-names-by-ids" -apiReferenceJson: "{\"title\":\"Batch get gift names by gift IDs ($0.025/call, suggest 50)\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/gift-names-by-ids\",\"description\":\"Batch get gift names by multiple TikTok gift IDs. Pricing: $0.025 per call. Recommend querying 50 IDs at once for best value, auto-process first 50 IDs if more than 50\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"gift_ids\",\"type\":\"array\",\"required\":true,\"description\":\"Gift ID list, recommend 50/call for best value ($0.025), auto-process first 50 if more than 50\",\"constraints\":\"Items: 1 to 1000\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/gift-names-by-ids \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"gift_ids\\\": [\\n \\\"gift_ids_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"gift_ids\\\": [\\n \\\"gift_ids_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/gift-names-by-ids\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"gift_ids\\\": [\\n \\\"gift_ids_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/gift-names-by-ids\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/gift-names-by-ids\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/gift-names-by-ids\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/gift-names-by-ids\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/gift-names-by-ids\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/gift-names-by-ids\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/gift-names-by-ids\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Gift Names by IDs\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/gift-names-by-ids\",\"description\":\"Returns gift names for a batch of TikTok gift identifiers. Provide a list of gift IDs to look up their corresponding gift labels.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"gift_ids\",\"type\":\"array\",\"required\":true,\"description\":\"Gift ID list, recommend 50/call for best value ($0.025), auto-process first 50 if more than 50\",\"constraints\":\"Items: 1 to 1000\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/gift-names-by-ids \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"gift_ids\\\": [\\n \\\"gift_ids_0_\\\"\\n ]\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"gift_ids\\\": [\\n \\\"gift_ids_0_\\\"\\n ]\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/gift-names-by-ids\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"gift_ids\\\": [\\n \\\"gift_ids_0_\\\"\\n ]\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/gift-names-by-ids\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/gift-names-by-ids\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/gift-names-by-ids\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/gift-names-by-ids\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/gift-names-by-ids\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/gift-names-by-ids\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/gift-names-by-ids\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Batch get gift names by gift IDs ($0.025/call, suggest 50)" + modelName: "TikTok Gift Names by IDs" modelId: "tiktok/web/gift-names-by-ids" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/home-feed.md b/model-api-reference/platform-apis/tiktok/web/home-feed.md index 73807fd6..c82d7142 100644 --- a/model-api-reference/platform-apis/tiktok/web/home-feed.md +++ b/model-api-reference/platform-apis/tiktok/web/home-feed.md @@ -1,13 +1,13 @@ --- -title: "Home Feed API Reference" -description: "SandBase API operation tiktok/web/home-feed." +title: "TikTok Web Home Feed API Reference" +description: "TikTok Web Home Feed API reference for SandBase. Use model tiktok/web/home-feed with /v1/api/tiktok/web/home-feed; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/home-feed" -apiReferenceJson: "{\"title\":\"Home Feed\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/home-feed\",\"description\":\"Home Feed\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User's own cookie, optional parameter, used for personalized recommendations of interface return data.\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\",\"default\":\"15\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code, optional parameter, affects the region of recommended content, e.g. US/GB/JP/KR/SG, default US.\",\"default\":\"US\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/home-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/web/home-feed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/web/home-feed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/home-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/web/home-feed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/home-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/home-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/home-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/home-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/home-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/home-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/home-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Web Home Feed\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/home-feed\",\"description\":\"Returns recommended video items and metadata from the TikTok web home feed. Supports filtering by target region code and page item count.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\",\"default\":\"15\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code, optional parameter, affects the region of recommended content, e.g. US/GB/JP/KR/SG, default US.\",\"default\":\"US\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/home-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/home-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/home-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/home-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/home-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/home-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/home-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/home-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/home-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Home Feed" + modelName: "TikTok Web Home Feed" modelId: "tiktok/web/home-feed" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/live-data.md b/model-api-reference/platform-apis/tiktok/web/live-data.md index 69174edf..a9feabf1 100644 --- a/model-api-reference/platform-apis/tiktok/web/live-data.md +++ b/model-api-reference/platform-apis/tiktok/web/live-data.md @@ -1,13 +1,13 @@ --- -title: "Get live room information via live link API Reference" -description: "SandBase API operation tiktok/web/live-data." +title: "TikTok Stream Room Information API Reference" +description: "TikTok Stream Room Information API reference for SandBase. Use model tiktok/web/live-data with /v1/api/tiktok/web/live-data; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/live-data" -apiReferenceJson: "{\"title\":\"Get live room information via live link\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/live-data\",\"description\":\"Get live room information via live link This interface can get offline live room information\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"live_room_url\",\"type\":\"string\",\"required\":true,\"description\":\"Live room link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/live-data \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"live_room_url\\\": \\\"https://www.tiktok.com/@.caseoh_daily/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"live_room_url\\\": \\\"https://www.tiktok.com/@.caseoh_daily/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-data\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"live_room_url\\\": \\\"https://www.tiktok.com/@.caseoh_daily/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-data\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/live-data\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/live-data\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/live-data\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/live-data\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/live-data\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/live-data\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Stream Room Information\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/live-data\",\"description\":\"Returns information about a TikTok stream room using a broadcast link. Supports retrieving details for offline stream rooms via the provided URL.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"live_room_url\",\"type\":\"string\",\"required\":true,\"description\":\"Live room link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/live-data \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"live_room_url\\\": \\\"https://www.tiktok.com/@.caseoh_daily/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"live_room_url\\\": \\\"https://www.tiktok.com/@.caseoh_daily/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-data\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"live_room_url\\\": \\\"https://www.tiktok.com/@.caseoh_daily/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-data\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/live-data\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/live-data\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/live-data\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/live-data\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/live-data\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/live-data\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get live room information via live link" + modelName: "TikTok Stream Room Information" modelId: "tiktok/web/live-data" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/live-gift-list.md b/model-api-reference/platform-apis/tiktok/web/live-gift-list.md index e696d4d4..f707fb4a 100644 --- a/model-api-reference/platform-apis/tiktok/web/live-gift-list.md +++ b/model-api-reference/platform-apis/tiktok/web/live-gift-list.md @@ -1,13 +1,13 @@ --- -title: "Get live room gift list API Reference" -description: "SandBase API operation tiktok/web/live-gift-list." +title: "TikTok Room Gift List API Reference" +description: "TikTok Room Gift List API reference for SandBase. Use model tiktok/web/live-gift-list with /v1/api/tiktok/web/live-gift-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/live-gift-list" -apiReferenceJson: "{\"title\":\"Get live room gift list\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/live-gift-list\",\"description\":\"Get live room gift list room_id is optional parameter, if not provided, will get general gift list (as of August 15, 2025, there are 256 types of gifts)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"room_id\",\"type\":\"string\",\"required\":false,\"description\":\"Live room ID (optional)\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/live-gift-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/web/live-gift-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/web/live-gift-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-gift-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/web/live-gift-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-gift-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/live-gift-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/live-gift-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/live-gift-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/live-gift-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/live-gift-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/live-gift-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Room Gift List\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/live-gift-list\",\"description\":\"Returns the catalog of gifts available in a TikTok broadcast, including gift identifiers, names, and diamond values. Accepts an optional room identifier to retrieve room-specific options.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"room_id\",\"type\":\"string\",\"required\":false,\"description\":\"Live room ID (optional)\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/live-gift-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-gift-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-gift-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/live-gift-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/live-gift-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/live-gift-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/live-gift-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/live-gift-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/live-gift-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get live room gift list" + modelName: "TikTok Room Gift List" modelId: "tiktok/web/live-gift-list" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/live-im-fetch.md b/model-api-reference/platform-apis/tiktok/web/live-im-fetch.md index 54e84bd3..21eaec75 100644 --- a/model-api-reference/platform-apis/tiktok/web/live-im-fetch.md +++ b/model-api-reference/platform-apis/tiktok/web/live-im-fetch.md @@ -1,13 +1,13 @@ --- -title: "tiktok live room danmaku parameters API Reference" -description: "SandBase API operation tiktok/web/live-im-fetch." +title: "TikTok Room Danmaku Messages API Reference" +description: "TikTok Room Danmaku Messages API reference for SandBase. Use model tiktok/web/live-im-fetch with /v1/api/tiktok/web/live-im-fetch; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/live-im-fetch" -apiReferenceJson: "{\"title\":\"tiktok live room danmaku parameters\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/live-im-fetch\",\"description\":\"TikTok live room danmaku parameters\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"resp_content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Response format, protobuf (default) or json\"},{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Live room id\"},{\"name\":\"user_unique_id\",\"type\":\"string\",\"required\":false,\"description\":\"User unique ID (optional)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/live-im-fetch \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"room_id\\\": \\\"room_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"room_id\\\": \\\"room_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-im-fetch\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"room_id\\\": \\\"room_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-im-fetch\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/live-im-fetch\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/live-im-fetch\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/live-im-fetch\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/live-im-fetch\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/live-im-fetch\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/live-im-fetch\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Room Danmaku Messages\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/live-im-fetch\",\"description\":\"Retrieves real-time danmaku and chat messages from a TikTok broadcast room. Requires a room ID and supports both protobuf and JSON output formats.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"resp_content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Response format, protobuf (default) or json\"},{\"name\":\"room_id\",\"type\":\"string\",\"required\":true,\"description\":\"Live room id\"},{\"name\":\"user_unique_id\",\"type\":\"string\",\"required\":false,\"description\":\"User unique ID (optional)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/live-im-fetch \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"room_id\\\": \\\"7693529622901705485\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"room_id\\\": \\\"7693529622901705485\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-im-fetch\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"room_id\\\": \\\"7693529622901705485\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-im-fetch\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/live-im-fetch\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/live-im-fetch\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/live-im-fetch\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/live-im-fetch\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/live-im-fetch\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/live-im-fetch\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "tiktok live room danmaku parameters" + modelName: "TikTok Room Danmaku Messages" modelId: "tiktok/web/live-im-fetch" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/live-recommend-tabs.md b/model-api-reference/platform-apis/tiktok/web/live-recommend-tabs.md index a8f85528..1de19334 100644 --- a/model-api-reference/platform-apis/tiktok/web/live-recommend-tabs.md +++ b/model-api-reference/platform-apis/tiktok/web/live-recommend-tabs.md @@ -1,13 +1,13 @@ --- -title: "Get available tags for live room homepage API Ref" -description: "SandBase API operation tiktok/web/live-recommend-tabs." +title: "TikTok Stream Recommendation Tabs API Reference" +description: "SandBase API reference for model tiktok/web/live-recommend-tabs. Call /v1/api/tiktok/web/live-recommend-tabs; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/live-recommend-tabs" -apiReferenceJson: "{\"title\":\"Get available tags for live room homepage recommendation\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/live-recommend-tabs\",\"description\":\"Get the available tag (live category tab) list for live room homepage recommendation Works together with `/fetch_live_recommend` to discover the available values of its `related_live_tag` parameter\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"logid\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor. Leave empty for the first page; to load the next page, pass the `logid` value returned by the previous response\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/live-recommend-tabs \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/web/live-recommend-tabs\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/web/live-recommend-tabs\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-recommend-tabs\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/web/live-recommend-tabs\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-recommend-tabs\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/live-recommend-tabs\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/live-recommend-tabs\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/live-recommend-tabs\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/live-recommend-tabs\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/live-recommend-tabs\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/live-recommend-tabs\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Stream Recommendation Tabs\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/live-recommend-tabs\",\"description\":\"Returns available recommendation tabs and category tags for TikTok broadcast homepages. Supports pagination via a log identifier cursor.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"logid\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor. Leave empty for the first page; to load the next page, pass the `logid` value returned by the previous response\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/live-recommend-tabs \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-recommend-tabs\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-recommend-tabs\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/live-recommend-tabs\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/live-recommend-tabs\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/live-recommend-tabs\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/live-recommend-tabs\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/live-recommend-tabs\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/live-recommend-tabs\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get available tags for live room homepage recommendation" + modelName: "TikTok Stream Recommendation Tabs" modelId: "tiktok/web/live-recommend-tabs" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/live-recommend.md b/model-api-reference/platform-apis/tiktok/web/live-recommend.md index 811cf1d6..3c3e1e07 100644 --- a/model-api-reference/platform-apis/tiktok/web/live-recommend.md +++ b/model-api-reference/platform-apis/tiktok/web/live-recommend.md @@ -1,13 +1,13 @@ --- -title: "Get live room homepage recommendation list API Reference" -description: "SandBase API operation tiktok/web/live-recommend." +title: "TikTok Livestream Homepage Recommendations API Reference" +description: "SandBase API reference for model tiktok/web/live-recommend. Call /v1/api/tiktok/web/live-recommend; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/live-recommend" -apiReferenceJson: "{\"title\":\"Get live room homepage recommendation list\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/live-recommend\",\"description\":\"Get live room homepage recommendation list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"related_live_tag\",\"type\":\"string\",\"required\":true,\"description\":\"Related live tag (live category). The available values are not fixed; call `/fetch_live_recommend_tabs` first to get the currently available tag list, then pick one to pass in.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/live-recommend \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"related_live_tag\\\": \\\"related_live_tag\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"related_live_tag\\\": \\\"related_live_tag\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-recommend\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"related_live_tag\\\": \\\"related_live_tag\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-recommend\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/live-recommend\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/live-recommend\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/live-recommend\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/live-recommend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/live-recommend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/live-recommend\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Livestream Homepage Recommendations\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/live-recommend\",\"description\":\"Returns recommended livestreams from the TikTok homepage for a specified category tag. Requires selecting a category tag to retrieve relevant active broadcast recommendations.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"related_live_tag\",\"type\":\"string\",\"required\":true,\"description\":\"Related live tag (live category). The available values are not fixed; call `/fetch_live_recommend_tabs` first to get the currently available tag list, then pick one to pass in.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/live-recommend \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"related_live_tag\\\": \\\"related_live_tag\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"related_live_tag\\\": \\\"related_live_tag\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-recommend\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"related_live_tag\\\": \\\"related_live_tag\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-recommend\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/live-recommend\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/live-recommend\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/live-recommend\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/live-recommend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/live-recommend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/live-recommend\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get live room homepage recommendation list" + modelName: "TikTok Livestream Homepage Recommendations" modelId: "tiktok/web/live-recommend" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/live-room-id.md b/model-api-reference/platform-apis/tiktok/web/live-room-id.md index fe92ca6f..447bdced 100644 --- a/model-api-reference/platform-apis/tiktok/web/live-room-id.md +++ b/model-api-reference/platform-apis/tiktok/web/live-room-id.md @@ -1,13 +1,13 @@ --- -title: "Extract live room ID from live room link API Reference" -description: "SandBase API operation tiktok/web/live-room-id." +title: "TikTok Room ID Resolver API Reference" +description: "TikTok Room ID Resolver API reference for SandBase. Use model tiktok/web/live-room-id with /v1/api/tiktok/web/live-room-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/live-room-id" -apiReferenceJson: "{\"title\":\"Extract live room ID from live room link\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/live-room-id\",\"description\":\"Extract live room Room ID from live room link Support short links, such as: https://vt.tiktok.com/ZSjuyJnWQ/ Support long links, such as: https://www.tiktok.com/@maksukaracun/live\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"live_room_url\",\"type\":\"string\",\"required\":true,\"description\":\"Live room link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/live-room-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"live_room_url\\\": \\\"https://www.tiktok.com/@maksukaracun/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"live_room_url\\\": \\\"https://www.tiktok.com/@maksukaracun/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-room-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"live_room_url\\\": \\\"https://www.tiktok.com/@maksukaracun/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-room-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/live-room-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/live-room-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/live-room-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/live-room-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/live-room-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/live-room-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Room ID Resolver\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/live-room-id\",\"description\":\"Resolves a TikTok stream room ID from a given room URL. Supports both standard profile stream URLs and shortened links to obtain the unique room identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"live_room_url\",\"type\":\"string\",\"required\":true,\"description\":\"Live room link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/live-room-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"live_room_url\\\": \\\"https://www.tiktok.com/@maksukaracun/live\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"live_room_url\\\": \\\"https://www.tiktok.com/@maksukaracun/live\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-room-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"live_room_url\\\": \\\"https://www.tiktok.com/@maksukaracun/live\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-room-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/live-room-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/live-room-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/live-room-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/live-room-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/live-room-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/live-room-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Extract live room ID from live room link" + modelName: "TikTok Room ID Resolver" modelId: "tiktok/web/live-room-id" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/live-room.md b/model-api-reference/platform-apis/tiktok/web/live-room.md new file mode 100644 index 00000000..cbe46434 --- /dev/null +++ b/model-api-reference/platform-apis/tiktok/web/live-room.md @@ -0,0 +1,22 @@ +--- +title: "TikTok Broadcast Danmaku API Reference" +description: "TikTok Broadcast Danmaku API reference for SandBase. Use model tiktok/web/live-room with /v1/api/tiktok/web/live-room; see request and response examples." +aside: false +outline: false +generatedBy: "sandbase-platform-api-reference" +apiReferenceKey: "api/tiktok/web/live-room" +apiReferenceJson: "{\"title\":\"TikTok Broadcast Danmaku\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/live-room\",\"description\":\"Returns danmaku and chat messages from a TikTok livestream room based on the provided room URL and message type.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"danmaku_type\",\"type\":\"string\",\"required\":true,\"description\":\"Message type\"},{\"name\":\"live_room_url\",\"type\":\"string\",\"required\":true,\"description\":\"Live room link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/live-room \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"danmaku_type\\\": \\\"danmaku_type\\\",\\n \\\"live_room_url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"danmaku_type\\\": \\\"danmaku_type\\\",\\n \\\"live_room_url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-room\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"danmaku_type\\\": \\\"danmaku_type\\\",\\n \\\"live_room_url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/live-room\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/live-room\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/live-room\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/live-room\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/live-room\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/live-room\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/live-room\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +seo: + modelName: "TikTok Broadcast Danmaku" + modelId: "tiktok/web/live-room" + vendor: "TikTok" + vendorSlug: "tiktok" + modelSlug: "web/live-room" + protocol: "API Reference" + endpoint: "/v1/api/tiktok/web/live-room" + publishedAt: "" + capabilities: ["api","tiktok"] + category: "APIs" +--- + + diff --git a/model-api-reference/platform-apis/tiktok/web/post-comment-reply.md b/model-api-reference/platform-apis/tiktok/web/post-comment-reply.md deleted file mode 100644 index c3157318..00000000 --- a/model-api-reference/platform-apis/tiktok/web/post-comment-reply.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get video comment replies API Reference" -description: "SandBase API operation tiktok/web/post-comment-reply." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/tiktok/web/post-comment-reply" -apiReferenceJson: "{\"title\":\"Get video comment replies\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/post-comment-reply\",\"description\":\"Get video comment replies\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"comment_id\",\"type\":\"string\",\"required\":true,\"description\":\"Comment id\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\"},{\"name\":\"current_region\",\"type\":\"string\",\"required\":false,\"description\":\"Current region, default is empty.\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Page cursor\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/post-comment-reply \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/post-comment-reply\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\",\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/post-comment-reply\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/post-comment-reply\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/post-comment-reply\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/post-comment-reply\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/post-comment-reply\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/post-comment-reply\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/post-comment-reply\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get video comment replies" - modelId: "tiktok/web/post-comment-reply" - vendor: "TikTok" - vendorSlug: "tiktok" - modelSlug: "web/post-comment-reply" - protocol: "API Reference" - endpoint: "/v1/api/tiktok/web/post-comment-reply" - publishedAt: "" - capabilities: ["api","tiktok"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/tiktok/web/post-comment.md b/model-api-reference/platform-apis/tiktok/web/post-comment.md index cd76e1eb..44a1e372 100644 --- a/model-api-reference/platform-apis/tiktok/web/post-comment.md +++ b/model-api-reference/platform-apis/tiktok/web/post-comment.md @@ -1,13 +1,13 @@ --- -title: "Get video comments API Reference — TikTok Web / Post Comment API" -description: "SandBase API operation tiktok/web/post-comment." +title: "TikTok Video Comments (Web) API Reference" +description: "TikTok Video Comments (Web) API reference for SandBase. Use model tiktok/web/post-comment with /v1/api/tiktok/web/post-comment; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/post-comment" -apiReferenceJson: "{\"title\":\"Get video comments\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/post-comment\",\"description\":\"Get video comments\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\"},{\"name\":\"current_region\",\"type\":\"string\",\"required\":false,\"description\":\"Current region, default is empty.\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Page cursor\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/post-comment \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"aweme_id\\\": \\\"aweme_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"aweme_id\\\": \\\"aweme_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/post-comment\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"aweme_id\\\": \\\"aweme_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/post-comment\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/post-comment\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/post-comment\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/post-comment\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/post-comment\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/post-comment\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/post-comment\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Video Comments (Web)\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/post-comment\",\"description\":\"Returns user comments for a specific TikTok video using its video ID. Supports cursor-based pagination and optional region filtering.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\"},{\"name\":\"current_region\",\"type\":\"string\",\"required\":false,\"description\":\"Current region, default is empty.\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Page cursor\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/post-comment \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/post-comment\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"aweme_id\\\": \\\"7350810998023949599\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/post-comment\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/post-comment\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/post-comment\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/post-comment\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/post-comment\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/post-comment\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/post-comment\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video comments" + modelName: "TikTok Video Comments (Web)" modelId: "tiktok/web/post-comment" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/post-detail-v2.md b/model-api-reference/platform-apis/tiktok/web/post-detail-v2.md index 661e26a3..4eb2d312 100644 --- a/model-api-reference/platform-apis/tiktok/web/post-detail-v2.md +++ b/model-api-reference/platform-apis/tiktok/web/post-detail-v2.md @@ -1,13 +1,13 @@ --- -title: "Get single video data V2 API Reference — TikTok / Post Detail V2" -description: "SandBase API operation tiktok/web/post-detail-v2." +title: "TikTok Post Details (V2) API Reference" +description: "TikTok Post Details (V2) API reference for SandBase. Use model tiktok/web/post-detail-v2 with /v1/api/tiktok/web/post-detail-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/post-detail-v2" -apiReferenceJson: "{\"title\":\"Get single video data V2\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/post-detail-v2\",\"description\":\"Get single video data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"itemId\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code, optional; affects content region, e.g. US/GB/JP/ID, default US.\",\"default\":\"US\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/post-detail-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"itemId\\\": \\\"7650908353513737479\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"itemId\\\": \\\"7650908353513737479\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/post-detail-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"itemId\\\": \\\"7650908353513737479\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/post-detail-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/post-detail-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/post-detail-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/post-detail-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/post-detail-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/post-detail-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/post-detail-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Post Details (V2)\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/post-detail-v2\",\"description\":\"Returns detailed data for a specific TikTok video by ID. Supports filtering content by region code such as US, GB, JP, or ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"itemId\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code, optional; affects content region, e.g. US/GB/JP/ID, default US.\",\"default\":\"US\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/post-detail-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"itemId\\\": \\\"7650908353513737479\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"itemId\\\": \\\"7650908353513737479\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/post-detail-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"itemId\\\": \\\"7650908353513737479\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/post-detail-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/post-detail-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/post-detail-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/post-detail-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/post-detail-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/post-detail-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/post-detail-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video data V2" + modelName: "TikTok Post Details (V2)" modelId: "tiktok/web/post-detail-v2" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/post-detail.md b/model-api-reference/platform-apis/tiktok/web/post-detail.md index aaea46b2..321a1900 100644 --- a/model-api-reference/platform-apis/tiktok/web/post-detail.md +++ b/model-api-reference/platform-apis/tiktok/web/post-detail.md @@ -1,13 +1,13 @@ --- -title: "Get single video data API Reference — TikTok Web / Post Detail" -description: "SandBase API operation tiktok/web/post-detail." +title: "TikTok Video Detail API Reference" +description: "TikTok Video Detail API reference for SandBase. Use model tiktok/web/post-detail with /v1/api/tiktok/web/post-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/post-detail" -apiReferenceJson: "{\"title\":\"Get single video data\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/post-detail\",\"description\":\"Get single video data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"itemId\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code, optional; affects content region, e.g. US/GB/JP/ID, default US.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/post-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"itemId\\\": \\\"itemId\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"itemId\\\": \\\"itemId\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/post-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"itemId\\\": \\\"itemId\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/post-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/post-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/post-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/post-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/post-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Video Detail\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/post-detail\",\"description\":\"Returns detailed data for a single TikTok video using its item ID. Supports filtering by region code to view localized post content.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"itemId\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code, optional; affects content region, e.g. US/GB/JP/ID, default US.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/post-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"itemId\\\": \\\"itemId\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"itemId\\\": \\\"itemId\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/post-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"itemId\\\": \\\"itemId\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/post-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/post-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/post-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/post-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/post-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video data" + modelName: "TikTok Video Detail" modelId: "tiktok/web/post-detail" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/search-keyword-suggest.md b/model-api-reference/platform-apis/tiktok/web/search-keyword-suggest.md index ae7244e8..925cf70f 100644 --- a/model-api-reference/platform-apis/tiktok/web/search-keyword-suggest.md +++ b/model-api-reference/platform-apis/tiktok/web/search-keyword-suggest.md @@ -1,13 +1,13 @@ --- -title: "Search keyword suggest API Reference" -description: "SandBase API operation tiktok/web/search-keyword-suggest." +title: "TikTok Search Keyword Suggestions API Reference" +description: "SandBase API reference for model tiktok/web/search-keyword-suggest. Call /v1/api/tiktok/web/search-keyword-suggest; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/search-keyword-suggest" -apiReferenceJson: "{\"title\":\"Search keyword suggest\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/search-keyword-suggest\",\"description\":\"Search keyword suggest\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/search-keyword-suggest \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/search-keyword-suggest\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/search-keyword-suggest\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/search-keyword-suggest\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/search-keyword-suggest\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/search-keyword-suggest\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/search-keyword-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/search-keyword-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/search-keyword-suggest\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Search Keyword Suggestions\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/search-keyword-suggest\",\"description\":\"Returns autocomplete and related search suggestions for a given query term on TikTok Web. Use this to discover trending search variations based on input keywords.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/search-keyword-suggest \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/search-keyword-suggest\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/search-keyword-suggest\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/search-keyword-suggest\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/search-keyword-suggest\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/search-keyword-suggest\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/search-keyword-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/search-keyword-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/search-keyword-suggest\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search keyword suggest" + modelName: "TikTok Search Keyword Suggestions" modelId: "tiktok/web/search-keyword-suggest" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/search-live.md b/model-api-reference/platform-apis/tiktok/web/search-live.md index dc31e7dc..c9427317 100644 --- a/model-api-reference/platform-apis/tiktok/web/search-live.md +++ b/model-api-reference/platform-apis/tiktok/web/search-live.md @@ -1,13 +1,13 @@ --- -title: "Search live API Reference — TikTok Web / Search Live API" -description: "SandBase API operation tiktok/web/search-live." +title: "TikTok Web Stream Search API Reference" +description: "TikTok Web Stream Search API reference for SandBase. Use model tiktok/web/search-live with /v1/api/tiktok/web/search-live; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/search-live" -apiReferenceJson: "{\"title\":\"Search live\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/search-live\",\"description\":\"Search live\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User cookie (If you need to search with your own account, or encounter an interface error, you can provide the cookie yourself, default is not required)\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\",\"default\":\"20\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Page offset, 0 for the first request, need to provide for the second paging.\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search id, empty for the first request, need to provide for the second paging, need to get it from the return response of the last request.\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/search-live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/search-live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/search-live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/search-live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/search-live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/search-live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/search-live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/search-live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/search-live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Web Stream Search\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/search-live\",\"description\":\"Searches active TikTok web broadcasts matching a specified keyword. Returns stream details with pagination controls via count and offset parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\",\"default\":\"20\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Page offset, 0 for the first request, need to provide for the second paging.\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search id, empty for the first request, need to provide for the second paging, need to get it from the return response of the last request.\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/search-live \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/search-live\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/search-live\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/search-live\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/search-live\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/search-live\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/search-live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/search-live\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/search-live\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search live" + modelName: "TikTok Web Stream Search" modelId: "tiktok/web/search-live" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/search-photo.md b/model-api-reference/platform-apis/tiktok/web/search-photo.md index 5fc2cf5a..54b8dc6b 100644 --- a/model-api-reference/platform-apis/tiktok/web/search-photo.md +++ b/model-api-reference/platform-apis/tiktok/web/search-photo.md @@ -1,13 +1,13 @@ --- -title: "Search photo API Reference" -description: "SandBase API operation tiktok/web/search-photo." +title: "TikTok Photo Search API Reference" +description: "TikTok Photo Search API reference for SandBase. Use model tiktok/web/search-photo with /v1/api/tiktok/web/search-photo; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/search-photo" -apiReferenceJson: "{\"title\":\"Search photo\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/search-photo\",\"description\":\"Search photo\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User cookie (If you need to search with your own account, or encounter an interface error, you can provide the cookie yourself, default is not required)\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page, it is recommended to keep the default value 20.\",\"default\":\"20\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Page cursor, 0 for the first request, need to provide for the second paging, generally the keyword of this value is offset or cursor.\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search id, empty for the first request, need to provide for the second paging, need to get it from the return response of the last request.\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/search-photo \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/search-photo\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/search-photo\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/search-photo\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/search-photo\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/search-photo\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/search-photo\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/search-photo\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/search-photo\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Photo Search\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/search-photo\",\"description\":\"Searches TikTok photo posts matching a query keyword. Returns post details, author statistics, music metadata, and engagement metrics with cursor pagination support.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page, it is recommended to keep the default value 20.\",\"default\":\"20\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Page cursor, 0 for the first request, need to provide for the second paging, generally the keyword of this value is offset or cursor.\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search id, empty for the first request, need to provide for the second paging, need to get it from the return response of the last request.\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/search-photo \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/search-photo\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/search-photo\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/search-photo\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/search-photo\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/search-photo\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/search-photo\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/search-photo\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/search-photo\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search photo" + modelName: "TikTok Photo Search" modelId: "tiktok/web/search-photo" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/search-user.md b/model-api-reference/platform-apis/tiktok/web/search-user.md deleted file mode 100644 index 04483797..00000000 --- a/model-api-reference/platform-apis/tiktok/web/search-user.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Search user API Reference" -description: "SandBase API operation tiktok/web/search-user." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/tiktok/web/search-user" -apiReferenceJson: "{\"title\":\"Search user\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/search-user\",\"description\":\"Search user\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User cookie (If you need to search with your own account, or encounter an interface error, you can provide the cookie yourself, default is not required)\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Page cursor, 0 for the first request, need to provide for the second paging, generally the keyword of this value is offset or cursor.\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search id, empty for the first request, need to provide for the second paging, need to get it from the return response of the last request.\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/search-user \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/search-user\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/search-user\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/search-user\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/search-user\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/search-user\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/search-user\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/search-user\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/search-user\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Search user" - modelId: "tiktok/web/search-user" - vendor: "TikTok" - vendorSlug: "tiktok" - modelSlug: "web/search-user" - protocol: "API Reference" - endpoint: "/v1/api/tiktok/web/search-user" - publishedAt: "" - capabilities: ["api","tiktok"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/tiktok/web/search-video.md b/model-api-reference/platform-apis/tiktok/web/search-video.md deleted file mode 100644 index cb6e44a7..00000000 --- a/model-api-reference/platform-apis/tiktok/web/search-video.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Search video API Reference — TikTok Web / Search Video API" -description: "SandBase API operation tiktok/web/search-video." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/tiktok/web/search-video" -apiReferenceJson: "{\"title\":\"Search video\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/search-video\",\"description\":\"Search video\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":false,\"description\":\"User cookie (If you need to search with your own account, or encounter an interface error, you can provide the cookie yourself, default is not required)\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page, it is recommended to keep the default value 20.\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Page offset, 0 for the first request, need to provide for the second paging.\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search id, empty for the first request, need to provide for the second paging, need to get it from the return response of the last request.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/search-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/search-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/search-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/search-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/search-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/search-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/search-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/search-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/search-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Search video" - modelId: "tiktok/web/search-video" - vendor: "TikTok" - vendorSlug: "tiktok" - modelSlug: "web/search-video" - protocol: "API Reference" - endpoint: "/v1/api/tiktok/web/search-video" - publishedAt: "" - capabilities: ["api","tiktok"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/tiktok/web/sec-user-id.md b/model-api-reference/platform-apis/tiktok/web/sec-user-id.md index e959c02f..9771a76c 100644 --- a/model-api-reference/platform-apis/tiktok/web/sec-user-id.md +++ b/model-api-reference/platform-apis/tiktok/web/sec-user-id.md @@ -1,13 +1,13 @@ --- -title: "Extract user sec_user_id API Reference" -description: "SandBase API operation tiktok/web/sec-user-id." +title: "TikTok Profile Sec User ID API Reference" +description: "TikTok Profile Sec User ID API reference for SandBase. Use model tiktok/web/sec-user-id with /v1/api/tiktok/web/sec-user-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/sec-user-id" -apiReferenceJson: "{\"title\":\"Extract user sec_user_id\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/sec-user-id\",\"description\":\"Extract list user id\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"User homepage link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/sec-user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://www.tiktok.com/@tiktok\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://www.tiktok.com/@tiktok\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/sec-user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://www.tiktok.com/@tiktok\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/sec-user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/sec-user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/sec-user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/sec-user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/sec-user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Profile Sec User ID\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/sec-user-id\",\"description\":\"Returns the internal TikTok sec_user_id string for a specified user homepage URL. This identifier serves as a key parameter for downstream TikTok web endpoints.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"User homepage link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/sec-user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://www.tiktok.com/@tiktok\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://www.tiktok.com/@tiktok\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/sec-user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://www.tiktok.com/@tiktok\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/sec-user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/sec-user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/sec-user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/sec-user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/sec-user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/sec-user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Extract user sec_user_id" + modelName: "TikTok Profile Sec User ID" modelId: "tiktok/web/sec-user-id" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/tag-detail.md b/model-api-reference/platform-apis/tiktok/web/tag-detail.md index b7f88169..54bbd95a 100644 --- a/model-api-reference/platform-apis/tiktok/web/tag-detail.md +++ b/model-api-reference/platform-apis/tiktok/web/tag-detail.md @@ -1,13 +1,13 @@ --- -title: "Tag Detail API Reference" -description: "SandBase API operation tiktok/web/tag-detail." +title: "TikTok Tag Detail API Reference" +description: "TikTok Tag Detail API reference for SandBase. Use model tiktok/web/tag-detail with /v1/api/tiktok/web/tag-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/tag-detail" -apiReferenceJson: "{\"title\":\"Tag Detail\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/tag-detail\",\"description\":\"Tag Detail\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"tag_name\",\"type\":\"string\",\"required\":true,\"description\":\"Tag name\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/tag-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"tag_name\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"tag_name\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/tag-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"tag_name\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/tag-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/tag-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/tag-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/tag-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/tag-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/tag-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/tag-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Tag Detail\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/tag-detail\",\"description\":\"Retrieves detail information for a specified TikTok hashtag via the web platform based on the provided tag name parameter.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"tag_name\",\"type\":\"string\",\"required\":true,\"description\":\"Tag name\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/tag-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"tag_name\\\": \\\"openai\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"tag_name\\\": \\\"openai\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/tag-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"tag_name\\\": \\\"openai\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/tag-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/tag-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/tag-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/tag-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/tag-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/tag-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/tag-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Tag Detail" + modelName: "TikTok Tag Detail" modelId: "tiktok/web/tag-detail" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/tag-post.md b/model-api-reference/platform-apis/tiktok/web/tag-post.md index 65419b57..c756e460 100644 --- a/model-api-reference/platform-apis/tiktok/web/tag-post.md +++ b/model-api-reference/platform-apis/tiktok/web/tag-post.md @@ -1,13 +1,13 @@ --- -title: "Tag Post API Reference" -description: "SandBase API operation tiktok/web/tag-post." +title: "TikTok Tag Posts API Reference" +description: "TikTok Tag Posts API reference for SandBase. Use model tiktok/web/tag-post with /v1/api/tiktok/web/tag-post; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/tag-post" -apiReferenceJson: "{\"title\":\"Tag Post\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/tag-post\",\"description\":\"Tag Post\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"challengeID\",\"type\":\"string\",\"required\":true,\"description\":\"Tag ID\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\",\"default\":\"30\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Page cursor\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/tag-post \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"challengeID\\\": \\\"7551\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"challengeID\\\": \\\"7551\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/tag-post\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"challengeID\\\": \\\"7551\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/tag-post\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/tag-post\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/tag-post\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/tag-post\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/tag-post\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/tag-post\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/tag-post\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Tag Posts\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/tag-post\",\"description\":\"Returns a list of TikTok videos associated with a specific tag or challenge ID. Supports pagination using cursor and count parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"challengeID\",\"type\":\"string\",\"required\":true,\"description\":\"Tag ID\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\",\"default\":\"30\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Page cursor\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/tag-post \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"challengeID\\\": \\\"7551\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"challengeID\\\": \\\"7551\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/tag-post\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"challengeID\\\": \\\"7551\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/tag-post\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/tag-post\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/tag-post\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/tag-post\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/tag-post\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/tag-post\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/tag-post\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Tag Post" + modelName: "TikTok Tag Posts" modelId: "tiktok/web/tag-post" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/trending-searchwords.md b/model-api-reference/platform-apis/tiktok/web/trending-searchwords.md index 4c0f9972..08a24dd1 100644 --- a/model-api-reference/platform-apis/tiktok/web/trending-searchwords.md +++ b/model-api-reference/platform-apis/tiktok/web/trending-searchwords.md @@ -1,13 +1,13 @@ --- -title: "Get daily trending search words API Reference" -description: "SandBase API operation tiktok/web/trending-searchwords." +title: "TikTok Daily Trending Search Words API Reference" +description: "SandBase API reference for model tiktok/web/trending-searchwords. Call /v1/api/tiktok/web/trending-searchwords; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/trending-searchwords" -apiReferenceJson: "{\"title\":\"Get daily trending search words\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/trending-searchwords\",\"description\":\"Get daily trending search words\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/trending-searchwords \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/web/trending-searchwords\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/web/trending-searchwords\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/trending-searchwords\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/web/trending-searchwords\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/trending-searchwords\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/trending-searchwords\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/trending-searchwords\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/trending-searchwords\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/trending-searchwords\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/trending-searchwords\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/trending-searchwords\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Daily Trending Search Words\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/trending-searchwords\",\"description\":\"Returns daily trending search terms and keywords from TikTok Web. Use this endpoint to monitor popular search queries and emerging platform topics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/trending-searchwords \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/trending-searchwords\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/trending-searchwords\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/trending-searchwords\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/trending-searchwords\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/trending-searchwords\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/trending-searchwords\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/trending-searchwords\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/trending-searchwords\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get daily trending search words" + modelName: "TikTok Daily Trending Search Words" modelId: "tiktok/web/trending-searchwords" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/unique-id.md b/model-api-reference/platform-apis/tiktok/web/unique-id.md index ce58b64b..65f97e51 100644 --- a/model-api-reference/platform-apis/tiktok/web/unique-id.md +++ b/model-api-reference/platform-apis/tiktok/web/unique-id.md @@ -1,13 +1,13 @@ --- -title: "Get user unique_id API Reference" -description: "SandBase API operation tiktok/web/unique-id." +title: "TikTok User Unique ID API Reference" +description: "TikTok User Unique ID API reference for SandBase. Use model tiktok/web/unique-id with /v1/api/tiktok/web/unique-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/unique-id" -apiReferenceJson: "{\"title\":\"Get user unique_id\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/unique-id\",\"description\":\"Get user unique_id\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"User homepage link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/unique-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://www.tiktok.com/@tiktok\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://www.tiktok.com/@tiktok\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/unique-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://www.tiktok.com/@tiktok\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/unique-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/unique-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/unique-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/unique-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/unique-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/unique-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/unique-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok User Unique ID\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/unique-id\",\"description\":\"Returns the unique ID for a TikTok account from a provided profile link. Useful for converting public user URLs into canonical account identifiers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"User homepage link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/unique-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://www.tiktok.com/@tiktok\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://www.tiktok.com/@tiktok\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/unique-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://www.tiktok.com/@tiktok\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/unique-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/unique-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/unique-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/unique-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/unique-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/unique-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/unique-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user unique_id" + modelName: "TikTok User Unique ID" modelId: "tiktok/web/unique-id" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/user-collect.md b/model-api-reference/platform-apis/tiktok/web/user-collect.md deleted file mode 100644 index a2a986d1..00000000 --- a/model-api-reference/platform-apis/tiktok/web/user-collect.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get user favorites API Reference" -description: "SandBase API operation tiktok/web/user-collect." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/tiktok/web/user-collect" -apiReferenceJson: "{\"title\":\"Get user favorites\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/user-collect\",\"description\":\"Get user favorites Note: This interface can currently only get your own favorites list, you need to provide your account cookie.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cookie\",\"type\":\"string\",\"required\":true,\"description\":\"User cookie\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\"},{\"name\":\"coverFormat\",\"type\":\"integer\",\"required\":false,\"description\":\"Cover format\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Page cursor\"},{\"name\":\"secUid\",\"type\":\"string\",\"required\":true,\"description\":\"User secUid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/user-collect \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"secUid\\\": \\\"secUid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"secUid\\\": \\\"secUid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-collect\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cookie\\\": \\\"cookie\\\",\\n \\\"secUid\\\": \\\"secUid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-collect\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/user-collect\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/user-collect\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/user-collect\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/user-collect\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/user-collect\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/user-collect\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get user favorites" - modelId: "tiktok/web/user-collect" - vendor: "TikTok" - vendorSlug: "tiktok" - modelSlug: "web/user-collect" - protocol: "API Reference" - endpoint: "/v1/api/tiktok/web/user-collect" - publishedAt: "" - capabilities: ["api","tiktok"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/tiktok/web/user-fans.md b/model-api-reference/platform-apis/tiktok/web/user-fans.md index ff474c46..dd31a2d6 100644 --- a/model-api-reference/platform-apis/tiktok/web/user-fans.md +++ b/model-api-reference/platform-apis/tiktok/web/user-fans.md @@ -1,13 +1,13 @@ --- -title: "Get user followers API Reference — TikTok Web / User Fans API" -description: "SandBase API operation tiktok/web/user-fans." +title: "TikTok User Followers API Reference" +description: "TikTok User Followers API reference for SandBase. Use model tiktok/web/user-fans with /v1/api/tiktok/web/user-fans; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/user-fans" -apiReferenceJson: "{\"title\":\"Get user followers\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/user-fans\",\"description\":\"Get user followers\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\"},{\"name\":\"maxCursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Max cursor\"},{\"name\":\"minCursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Min cursor\"},{\"name\":\"secUid\",\"type\":\"string\",\"required\":true,\"description\":\"User secUid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/user-fans \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"secUid\\\": \\\"secUid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"secUid\\\": \\\"secUid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-fans\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"secUid\\\": \\\"secUid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-fans\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/user-fans\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/user-fans\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/user-fans\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/user-fans\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/user-fans\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/user-fans\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok User Followers\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/user-fans\",\"description\":\"Returns a list of followers for a specified TikTok profile along with follower account stats. Supports pagination through cursor and count parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\"},{\"name\":\"maxCursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Max cursor\"},{\"name\":\"minCursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Min cursor\"},{\"name\":\"secUid\",\"type\":\"string\",\"required\":true,\"description\":\"User secUid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/user-fans \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"secUid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"secUid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-fans\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"secUid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-fans\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/user-fans\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/user-fans\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/user-fans\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/user-fans\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/user-fans\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/user-fans\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user followers" + modelName: "TikTok User Followers" modelId: "tiktok/web/user-fans" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/user-follow.md b/model-api-reference/platform-apis/tiktok/web/user-follow.md deleted file mode 100644 index eb77394b..00000000 --- a/model-api-reference/platform-apis/tiktok/web/user-follow.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get user followings API Reference" -description: "SandBase API operation tiktok/web/user-follow." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/tiktok/web/user-follow" -apiReferenceJson: "{\"title\":\"Get user followings\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/user-follow\",\"description\":\"Get user followings\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\"},{\"name\":\"maxCursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Max cursor\"},{\"name\":\"minCursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Min cursor\"},{\"name\":\"secUid\",\"type\":\"string\",\"required\":true,\"description\":\"User secUid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/user-follow \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"secUid\\\": \\\"secUid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"secUid\\\": \\\"secUid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-follow\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"secUid\\\": \\\"secUid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-follow\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/user-follow\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/user-follow\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/user-follow\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/user-follow\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/user-follow\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/user-follow\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get user followings" - modelId: "tiktok/web/user-follow" - vendor: "TikTok" - vendorSlug: "tiktok" - modelSlug: "web/user-follow" - protocol: "API Reference" - endpoint: "/v1/api/tiktok/web/user-follow" - publishedAt: "" - capabilities: ["api","tiktok"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/tiktok/web/user-id.md b/model-api-reference/platform-apis/tiktok/web/user-id.md index c4c9bafb..95b2e316 100644 --- a/model-api-reference/platform-apis/tiktok/web/user-id.md +++ b/model-api-reference/platform-apis/tiktok/web/user-id.md @@ -1,13 +1,13 @@ --- -title: "Extract user user_id API Reference" -description: "SandBase API operation tiktok/web/user-id." +title: "TikTok User ID from Profile Link API Reference" +description: "TikTok User ID from Profile Link API reference for SandBase. Use model tiktok/web/user-id with /v1/api/tiktok/web/user-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/user-id" -apiReferenceJson: "{\"title\":\"Extract user user_id\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/user-id\",\"description\":\"Extract list user id\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"User homepage link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://www.tiktok.com/@tiktok\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://www.tiktok.com/@tiktok\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://www.tiktok.com/@tiktok\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok User ID from Profile Link\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/user-id\",\"description\":\"Resolves a TikTok profile URL to extract and return the corresponding user ID. Input the profile homepage link to retrieve account identifiers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"User homepage link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://www.tiktok.com/@tiktok\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://www.tiktok.com/@tiktok\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://www.tiktok.com/@tiktok\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Extract user user_id" + modelName: "TikTok User ID from Profile Link" modelId: "tiktok/web/user-id" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/user-like.md b/model-api-reference/platform-apis/tiktok/web/user-like.md index 470e103b..87ccdb16 100644 --- a/model-api-reference/platform-apis/tiktok/web/user-like.md +++ b/model-api-reference/platform-apis/tiktok/web/user-like.md @@ -1,13 +1,13 @@ --- -title: "Get user likes API Reference" -description: "SandBase API operation tiktok/web/user-like." +title: "TikTok User Likes API Reference" +description: "TikTok User Likes API reference for SandBase. Use model tiktok/web/user-like with /v1/api/tiktok/web/user-like; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/user-like" -apiReferenceJson: "{\"title\":\"Get user likes\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/user-like\",\"description\":\"Get user likes Note: This interface requires that the user's like list be public\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page, default is 20, cannot be changed.\"},{\"name\":\"coverFormat\",\"type\":\"integer\",\"required\":false,\"description\":\"Cover format\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Page cursor\"},{\"name\":\"post_item_list_request_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort type\"},{\"name\":\"secUid\",\"type\":\"string\",\"required\":true,\"description\":\"User secUid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/user-like \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"secUid\\\": \\\"secUid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"secUid\\\": \\\"secUid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-like\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"secUid\\\": \\\"secUid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-like\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/user-like\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/user-like\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/user-like\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/user-like\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/user-like\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/user-like\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok User Likes\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/user-like\",\"description\":\"Returns a list of videos liked by a specific TikTok profile based on their secUid. Supports pagination via cursor tokens and optional sort type settings.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page, default is 20, cannot be changed.\"},{\"name\":\"coverFormat\",\"type\":\"integer\",\"required\":false,\"description\":\"Cover format\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Page cursor\"},{\"name\":\"post_item_list_request_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort type\"},{\"name\":\"secUid\",\"type\":\"string\",\"required\":true,\"description\":\"User secUid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/user-like \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"secUid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"secUid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-like\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"secUid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-like\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/user-like\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/user-like\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/user-like\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/user-like\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/user-like\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/user-like\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user likes" + modelName: "TikTok User Likes" modelId: "tiktok/web/user-like" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/user-live-detail.md b/model-api-reference/platform-apis/tiktok/web/user-live-detail.md index 8ccd7a37..9e4c8faf 100644 --- a/model-api-reference/platform-apis/tiktok/web/user-live-detail.md +++ b/model-api-reference/platform-apis/tiktok/web/user-live-detail.md @@ -1,13 +1,13 @@ --- -title: "Get user live details API Reference" -description: "SandBase API operation tiktok/web/user-live-detail." +title: "TikTok User Stream Detail API Reference" +description: "TikTok User Stream Detail API reference for SandBase. Use model tiktok/web/user-live-detail with /v1/api/tiktok/web/user-live-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/user-live-detail" -apiReferenceJson: "{\"title\":\"Get user live details\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/user-live-detail\",\"description\":\"Get user live details\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uniqueId\",\"type\":\"string\",\"required\":true,\"description\":\"User uniqueId\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/user-live-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uniqueId\\\": \\\"uniqueId\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uniqueId\\\": \\\"uniqueId\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-live-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uniqueId\\\": \\\"uniqueId\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-live-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/user-live-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/user-live-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/user-live-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/user-live-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/user-live-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/user-live-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok User Stream Detail\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/user-live-detail\",\"description\":\"Returns current broadcast information for a TikTok user based on their unique handle. Provides stream quality options and room playback data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uniqueId\",\"type\":\"string\",\"required\":true,\"description\":\"User uniqueId\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/user-live-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uniqueId\\\": \\\"tiktok\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uniqueId\\\": \\\"tiktok\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-live-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uniqueId\\\": \\\"tiktok\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-live-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/user-live-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/user-live-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/user-live-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/user-live-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/user-live-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/user-live-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user live details" + modelName: "TikTok User Stream Detail" modelId: "tiktok/web/user-live-detail" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/user-mix.md b/model-api-reference/platform-apis/tiktok/web/user-mix.md index df5bb059..e641028d 100644 --- a/model-api-reference/platform-apis/tiktok/web/user-mix.md +++ b/model-api-reference/platform-apis/tiktok/web/user-mix.md @@ -1,13 +1,13 @@ --- -title: "Get user mix list API Reference" -description: "SandBase API operation tiktok/web/user-mix." +title: "TikTok User Mix Video List API Reference" +description: "TikTok User Mix Video List API reference for SandBase. Use model tiktok/web/user-mix with /v1/api/tiktok/web/user-mix; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/user-mix" -apiReferenceJson: "{\"title\":\"Get user mix list\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/user-mix\",\"description\":\"Get user mix list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\",\"default\":\"30\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Page cursor\",\"default\":\"0\"},{\"name\":\"mixId\",\"type\":\"string\",\"required\":true,\"description\":\"Mix id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/user-mix \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"mixId\\\": \\\"7101538765474106158\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"mixId\\\": \\\"7101538765474106158\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-mix\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"mixId\\\": \\\"7101538765474106158\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-mix\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/user-mix\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/user-mix\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/user-mix\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/user-mix\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/user-mix\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/user-mix\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok User Mix Video List\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/user-mix\",\"description\":\"Returns videos compiled inside a specific TikTok user mix or playlist. Supports pagination through cursor and count parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\",\"default\":\"30\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Page cursor\",\"default\":\"0\"},{\"name\":\"mixId\",\"type\":\"string\",\"required\":true,\"description\":\"Mix id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/user-mix \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"mixId\\\": \\\"7101538765474106158\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"mixId\\\": \\\"7101538765474106158\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-mix\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"mixId\\\": \\\"7101538765474106158\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-mix\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/user-mix\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/user-mix\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/user-mix\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/user-mix\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/user-mix\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/user-mix\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user mix list" + modelName: "TikTok User Mix Video List" modelId: "tiktok/web/user-mix" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/user-play-list.md b/model-api-reference/platform-apis/tiktok/web/user-play-list.md index 27289c7e..3115c86d 100644 --- a/model-api-reference/platform-apis/tiktok/web/user-play-list.md +++ b/model-api-reference/platform-apis/tiktok/web/user-play-list.md @@ -1,13 +1,13 @@ --- -title: "Get user play list API Reference" -description: "SandBase API operation tiktok/web/user-play-list." +title: "TikTok User Playlists API Reference" +description: "TikTok User Playlists API reference for SandBase. Use model tiktok/web/user-play-list with /v1/api/tiktok/web/user-play-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/user-play-list" -apiReferenceJson: "{\"title\":\"Get user play list\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/user-play-list\",\"description\":\"Get user play list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\",\"default\":\"30\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Page cursor\",\"default\":\"0\"},{\"name\":\"secUid\",\"type\":\"string\",\"required\":true,\"description\":\"User secUid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/user-play-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"secUid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"secUid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-play-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"secUid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-play-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/user-play-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/user-play-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/user-play-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/user-play-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/user-play-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/user-play-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok User Playlists\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/user-play-list\",\"description\":\"Returns the public playlists or mixes associated with a TikTok user using their secure user ID. Includes playlist metadata, video counts, and creator details.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page\",\"default\":\"30\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Page cursor\",\"default\":\"0\"},{\"name\":\"secUid\",\"type\":\"string\",\"required\":true,\"description\":\"User secUid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/user-play-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"secUid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"secUid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-play-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"secUid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-play-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/user-play-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/user-play-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/user-play-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/user-play-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/user-play-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/user-play-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user play list" + modelName: "TikTok User Playlists" modelId: "tiktok/web/user-play-list" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/user-post.md b/model-api-reference/platform-apis/tiktok/web/user-post.md index a52a5fb4..fcec226a 100644 --- a/model-api-reference/platform-apis/tiktok/web/user-post.md +++ b/model-api-reference/platform-apis/tiktok/web/user-post.md @@ -1,13 +1,13 @@ --- -title: "Get user posts API Reference — TikTok Web / User Post API" -description: "SandBase API operation tiktok/web/user-post." +title: "TikTok User Posts API Reference" +description: "TikTok User Posts API reference for SandBase. Use model tiktok/web/user-post with /v1/api/tiktok/web/user-post; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/user-post" -apiReferenceJson: "{\"title\":\"Get user posts\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/user-post\",\"description\":\"Get user posts\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page, default is 20, cannot be changed.\",\"default\":\"20\"},{\"name\":\"coverFormat\",\"type\":\"integer\",\"required\":false,\"description\":\"Cover format, default is 2, optional values are 1 or 2.\",\"default\":\"2\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Page cursor\",\"default\":\"0\"},{\"name\":\"post_item_list_request_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort type\",\"default\":\"0\"},{\"name\":\"secUid\",\"type\":\"string\",\"required\":true,\"description\":\"User secUid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/user-post \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"secUid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"secUid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-post\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"secUid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-post\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/user-post\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/user-post\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/user-post\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/user-post\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/user-post\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/user-post\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok User Posts\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/user-post\",\"description\":\"Returns a list of posts from a specific TikTok user using their `secUid`, including video details, author metrics, and interaction statistics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page, default is 20, cannot be changed.\",\"default\":\"20\"},{\"name\":\"coverFormat\",\"type\":\"integer\",\"required\":false,\"description\":\"Cover format, default is 2, optional values are 1 or 2.\",\"default\":\"2\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Page cursor\",\"default\":\"0\"},{\"name\":\"post_item_list_request_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort type\",\"default\":\"0\"},{\"name\":\"secUid\",\"type\":\"string\",\"required\":true,\"description\":\"User secUid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/user-post \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"secUid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"secUid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-post\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"secUid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-post\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/user-post\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/user-post\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/user-post\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/user-post\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/user-post\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/user-post\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user posts" + modelName: "TikTok User Posts" modelId: "tiktok/web/user-post" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/user-profile.md b/model-api-reference/platform-apis/tiktok/web/user-profile.md index 2c4e1a40..9234bdb1 100644 --- a/model-api-reference/platform-apis/tiktok/web/user-profile.md +++ b/model-api-reference/platform-apis/tiktok/web/user-profile.md @@ -1,13 +1,13 @@ --- -title: "Get user profile API Reference — TikTok Web / User Profile API" -description: "SandBase API operation tiktok/web/user-profile." +title: "TikTok User Profile API Reference" +description: "TikTok User Profile API reference for SandBase. Use model tiktok/web/user-profile with /v1/api/tiktok/web/user-profile; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/user-profile" -apiReferenceJson: "{\"title\":\"Get user profile\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/user-profile\",\"description\":\"Get user profile\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"secUid\",\"type\":\"string\",\"required\":false,\"description\":\"User secUid\",\"default\":\"\\\"\\\"\"},{\"name\":\"uniqueId\",\"type\":\"string\",\"required\":false,\"description\":\"User uniqueId\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tiktok/web/user-profile\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"tiktok/web/user-profile\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"tiktok/web/user-profile\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok User Profile\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/user-profile\",\"description\":\"Returns public profile information for a specified TikTok user. Look up accounts by providing either the unique handle or secure user ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"secUid\",\"type\":\"string\",\"required\":false,\"description\":\"User secUid\",\"default\":\"\\\"\\\"\"},{\"name\":\"uniqueId\",\"type\":\"string\",\"required\":false,\"description\":\"User uniqueId\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user profile" + modelName: "TikTok User Profile" modelId: "tiktok/web/user-profile" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/user-repost.md b/model-api-reference/platform-apis/tiktok/web/user-repost.md index d87e4d54..bde917a0 100644 --- a/model-api-reference/platform-apis/tiktok/web/user-repost.md +++ b/model-api-reference/platform-apis/tiktok/web/user-repost.md @@ -1,13 +1,13 @@ --- -title: "Get user reposts API Reference — TikTok Web / User Repost API" -description: "SandBase API operation tiktok/web/user-repost." +title: "TikTok User Reposts API Reference" +description: "TikTok User Reposts API reference for SandBase. Use model tiktok/web/user-repost with /v1/api/tiktok/web/user-repost; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/user-repost" -apiReferenceJson: "{\"title\":\"Get user reposts\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/user-repost\",\"description\":\"Get user reposts\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page, default is 20, cannot be changed.\"},{\"name\":\"coverFormat\",\"type\":\"integer\",\"required\":false,\"description\":\"Cover format, default is 2, optional values are 1 or 2.\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Page cursor\"},{\"name\":\"secUid\",\"type\":\"string\",\"required\":true,\"description\":\"User secUid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/user-repost \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"secUid\\\": \\\"secUid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"secUid\\\": \\\"secUid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-repost\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"secUid\\\": \\\"secUid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-repost\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/user-repost\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/user-repost\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/user-repost\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/user-repost\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/user-repost\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/user-repost\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok User Reposts\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/user-repost\",\"description\":\"Returns a list of reposted videos for a specified TikTok profile. Results include video metadata, author statistics, and engagement metrics via user secUid.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number per page, default is 20, cannot be changed.\"},{\"name\":\"coverFormat\",\"type\":\"integer\",\"required\":false,\"description\":\"Cover format, default is 2, optional values are 1 or 2.\"},{\"name\":\"cursor\",\"type\":\"integer\",\"required\":false,\"description\":\"Page cursor\"},{\"name\":\"secUid\",\"type\":\"string\",\"required\":true,\"description\":\"User secUid\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/user-repost \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"secUid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"secUid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-repost\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"secUid\\\": \\\"MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/user-repost\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/user-repost\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/user-repost\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/user-repost\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/user-repost\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/user-repost\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/user-repost\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user reposts" + modelName: "TikTok User Reposts" modelId: "tiktok/web/user-repost" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/tiktok/web/web-guest-cookie.md b/model-api-reference/platform-apis/tiktok/web/web-guest-cookie.md index 128ad5b8..7d7bb49c 100644 --- a/model-api-reference/platform-apis/tiktok/web/web-guest-cookie.md +++ b/model-api-reference/platform-apis/tiktok/web/web-guest-cookie.md @@ -1,13 +1,13 @@ --- -title: "Get the guest Cookie API Reference" -description: "SandBase API operation tiktok/web/web-guest-cookie." +title: "TikTok Web Guest Cookie API Reference" +description: "TikTok Web Guest Cookie API reference for SandBase. Use model tiktok/web/web-guest-cookie with /v1/api/tiktok/web/web-guest-cookie; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/tiktok/web/web-guest-cookie" -apiReferenceJson: "{\"title\":\"Get the guest Cookie\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/web-guest-cookie\",\"description\":\"Get the guest Cookie of TikTok Web Can be used to crawl data of TikTok Web, such as user videos, mix videos, etc. Can fix identity to avoid duplicate data for some interfaces. Please note: Guest Cookie cannot crawl all data, there are certain restrictions. Can be used with open source projects to implement data crawling of TikTok Web using this interface.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_agent\",\"type\":\"string\",\"required\":true,\"description\":\"User browser agent\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/web-guest-cookie \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_agent\\\": \\\"user_agent\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_agent\\\": \\\"user_agent\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/web-guest-cookie\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_agent\\\": \\\"user_agent\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/web-guest-cookie\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/web-guest-cookie\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/web-guest-cookie\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/web-guest-cookie\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/web-guest-cookie\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/web-guest-cookie\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/web-guest-cookie\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"TikTok Web Guest Cookie\",\"operation\":\"TikTok API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/tiktok/web/web-guest-cookie\",\"description\":\"Returns guest session cookies for TikTok Web based on a specified browser user agent string. Helps maintain session identity when querying web-based TikTok data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_agent\",\"type\":\"string\",\"required\":true,\"description\":\"User browser agent\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, tiktok\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/tiktok/web/web-guest-cookie \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_agent\\\": \\\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:145.0) Gecko/20100101 Firefox/145.0\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_agent\\\": \\\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:145.0) Gecko/20100101 Firefox/145.0\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/tiktok/web/web-guest-cookie\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_agent\\\": \\\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:145.0) Gecko/20100101 Firefox/145.0\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/tiktok/web/web-guest-cookie\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"tiktok/web/web-guest-cookie\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"tiktok/web/web-guest-cookie\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"tiktok/web/web-guest-cookie\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"tiktok/web/web-guest-cookie\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"tiktok/web/web-guest-cookie\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"tiktok/web/web-guest-cookie\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get the guest Cookie" + modelName: "TikTok Web Guest Cookie" modelId: "tiktok/web/web-guest-cookie" vendor: "TikTok" vendorSlug: "tiktok" diff --git a/model-api-reference/platform-apis/toutiao/app/article-info.md b/model-api-reference/platform-apis/toutiao/app/article-info.md index 52a7b9ed..6396dbc2 100644 --- a/model-api-reference/platform-apis/toutiao/app/article-info.md +++ b/model-api-reference/platform-apis/toutiao/app/article-info.md @@ -1,13 +1,13 @@ --- -title: "Get information of specified article API Reference — Toutiao Info" -description: "SandBase API operation toutiao/app/article-info." +title: "Toutiao Article Details (App) API Reference" +description: "Toutiao Article Details (App) API reference for SandBase. Use model toutiao/app/article-info with /v1/api/toutiao/app/article-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/toutiao/app/article-info" -apiReferenceJson: "{\"title\":\"Get information of specified article\",\"operation\":\"Toutiao API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/toutiao/app/article-info\",\"description\":\"Get information of specified post\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"group_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID, can be obtained from the link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, toutiao\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/toutiao/app/article-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"group_id\\\": \\\"7450114952884503059\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"group_id\\\": \\\"7450114952884503059\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/toutiao/app/article-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"group_id\\\": \\\"7450114952884503059\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/toutiao/app/article-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"toutiao/app/article-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"toutiao/app/article-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"toutiao/app/article-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"toutiao/app/article-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"toutiao/app/article-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"toutiao/app/article-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Toutiao Article Details (App)\",\"operation\":\"Toutiao API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/toutiao/app/article-info\",\"description\":\"Returns details and interface settings for a specified Toutiao post. Provide the post ID to inspect article properties and action settings.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"group_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID, can be obtained from the link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, toutiao\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/toutiao/app/article-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"group_id\\\": \\\"7450114952884503059\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"group_id\\\": \\\"7450114952884503059\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/toutiao/app/article-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"group_id\\\": \\\"7450114952884503059\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/toutiao/app/article-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"toutiao/app/article-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"toutiao/app/article-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"toutiao/app/article-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"toutiao/app/article-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"toutiao/app/article-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"toutiao/app/article-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get information of specified article" + modelName: "Toutiao Article Details (App)" modelId: "toutiao/app/article-info" vendor: "Toutiao" vendorSlug: "toutiao" diff --git a/model-api-reference/platform-apis/toutiao/app/comments.md b/model-api-reference/platform-apis/toutiao/app/comments.md index 6f11c164..e440bdd0 100644 --- a/model-api-reference/platform-apis/toutiao/app/comments.md +++ b/model-api-reference/platform-apis/toutiao/app/comments.md @@ -1,13 +1,13 @@ --- -title: "Get comments of specified post API Reference" -description: "SandBase API operation toutiao/app/comments." +title: "Toutiao Post Comments API Reference" +description: "Toutiao Post Comments API reference for SandBase. Use model toutiao/app/comments with /v1/api/toutiao/app/comments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/toutiao/app/comments" -apiReferenceJson: "{\"title\":\"Get comments of specified post\",\"operation\":\"Toutiao API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/toutiao/app/comments\",\"description\":\"Get comments of specified post\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"group_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID, can be obtained from the link\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":true,\"description\":\"Offset, used for pagination, default is 0, then add 20 each time\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, toutiao\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/toutiao/app/comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"group_id\\\": \\\"7453372680222523931\\\",\\n \\\"offset\\\": \\\"0\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"group_id\\\": \\\"7453372680222523931\\\",\\n \\\"offset\\\": \\\"0\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/toutiao/app/comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"group_id\\\": \\\"7453372680222523931\\\",\\n \\\"offset\\\": \\\"0\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/toutiao/app/comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"toutiao/app/comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"toutiao/app/comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"toutiao/app/comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"toutiao/app/comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"toutiao/app/comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"toutiao/app/comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Toutiao Post Comments\",\"operation\":\"Toutiao API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/toutiao/app/comments\",\"description\":\"Returns user comments and interaction metrics for a specific Toutiao post. Results can be paginated through comment batches using an offset index.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"group_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID, can be obtained from the link\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":true,\"description\":\"Offset, used for pagination, default is 0, then add 20 each time\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, toutiao\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/toutiao/app/comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"group_id\\\": \\\"7453372680222523931\\\",\\n \\\"offset\\\": \\\"0\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"group_id\\\": \\\"7453372680222523931\\\",\\n \\\"offset\\\": \\\"0\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/toutiao/app/comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"group_id\\\": \\\"7453372680222523931\\\",\\n \\\"offset\\\": \\\"0\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/toutiao/app/comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"toutiao/app/comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"toutiao/app/comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"toutiao/app/comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"toutiao/app/comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"toutiao/app/comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"toutiao/app/comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get comments of specified post" + modelName: "Toutiao Post Comments" modelId: "toutiao/app/comments" vendor: "Toutiao" vendorSlug: "toutiao" diff --git a/model-api-reference/platform-apis/toutiao/app/user-id.md b/model-api-reference/platform-apis/toutiao/app/user-id.md index ba385ea0..b364e53d 100644 --- a/model-api-reference/platform-apis/toutiao/app/user-id.md +++ b/model-api-reference/platform-apis/toutiao/app/user-id.md @@ -1,13 +1,13 @@ --- -title: "Get user_id from user profile API Reference" -description: "SandBase API operation toutiao/app/user-id." +title: "Toutiao Profile User ID API Reference" +description: "Toutiao Profile User ID API reference for SandBase. Use model toutiao/app/user-id with /v1/api/toutiao/app/user-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/toutiao/app/user-id" -apiReferenceJson: "{\"title\":\"Get user_id from user profile\",\"operation\":\"Toutiao API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/toutiao/app/user-id\",\"description\":\"Get user_id from user profile\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_profile_url\",\"type\":\"string\",\"required\":true,\"description\":\"User profile URL\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, toutiao\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/toutiao/app/user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_profile_url\\\": \\\"https://www.toutiao.com/c/user/token/MS4wLjABAAAAwK6echNksY69R8l2vcZudupfhTItbGSGt-8ineO5UaB4L-djqkYDgB6TkAdMvrmW/\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_profile_url\\\": \\\"https://www.toutiao.com/c/user/token/MS4wLjABAAAAwK6echNksY69R8l2vcZudupfhTItbGSGt-8ineO5UaB4L-djqkYDgB6TkAdMvrmW/\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/toutiao/app/user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_profile_url\\\": \\\"https://www.toutiao.com/c/user/token/MS4wLjABAAAAwK6echNksY69R8l2vcZudupfhTItbGSGt-8ineO5UaB4L-djqkYDgB6TkAdMvrmW/\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/toutiao/app/user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"toutiao/app/user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"toutiao/app/user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"toutiao/app/user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"toutiao/app/user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"toutiao/app/user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"toutiao/app/user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Toutiao Profile User ID\",\"operation\":\"Toutiao API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/toutiao/app/user-id\",\"description\":\"Resolves a Toutiao user profile URL into numeric and secure user identifiers. Returns the user ID and sec_user_id associated with the provided profile link.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_profile_url\",\"type\":\"string\",\"required\":true,\"description\":\"User profile URL\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, toutiao\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/toutiao/app/user-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_profile_url\\\": \\\"https://www.toutiao.com/c/user/token/MS4wLjABAAAAwK6echNksY69R8l2vcZudupfhTItbGSGt-8ineO5UaB4L-djqkYDgB6TkAdMvrmW/\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_profile_url\\\": \\\"https://www.toutiao.com/c/user/token/MS4wLjABAAAAwK6echNksY69R8l2vcZudupfhTItbGSGt-8ineO5UaB4L-djqkYDgB6TkAdMvrmW/\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/toutiao/app/user-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_profile_url\\\": \\\"https://www.toutiao.com/c/user/token/MS4wLjABAAAAwK6echNksY69R8l2vcZudupfhTItbGSGt-8ineO5UaB4L-djqkYDgB6TkAdMvrmW/\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/toutiao/app/user-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"toutiao/app/user-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"toutiao/app/user-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"toutiao/app/user-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"toutiao/app/user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"toutiao/app/user-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"toutiao/app/user-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user_id from user profile" + modelName: "Toutiao Profile User ID" modelId: "toutiao/app/user-id" vendor: "Toutiao" vendorSlug: "toutiao" diff --git a/model-api-reference/platform-apis/toutiao/app/user-info.md b/model-api-reference/platform-apis/toutiao/app/user-info.md index c4399783..2e6cf539 100644 --- a/model-api-reference/platform-apis/toutiao/app/user-info.md +++ b/model-api-reference/platform-apis/toutiao/app/user-info.md @@ -1,13 +1,13 @@ --- -title: "Get information of specified user API Reference — Toutiao Info" -description: "SandBase API operation toutiao/app/user-info." +title: "Toutiao User Profile API Reference" +description: "Toutiao User Profile API reference for SandBase. Use model toutiao/app/user-info with /v1/api/toutiao/app/user-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/toutiao/app/user-info" -apiReferenceJson: "{\"title\":\"Get information of specified user\",\"operation\":\"Toutiao API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/toutiao/app/user-info\",\"description\":\"Get information of specified user\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID, can be obtained from the following API:\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, toutiao\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/toutiao/app/user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"1352838578180211\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"1352838578180211\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/toutiao/app/user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"1352838578180211\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/toutiao/app/user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"toutiao/app/user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"toutiao/app/user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"toutiao/app/user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"toutiao/app/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"toutiao/app/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"toutiao/app/user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Toutiao User Profile\",\"operation\":\"Toutiao API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/toutiao/app/user-info\",\"description\":\"Get a Toutiao (Jinri Toutiao) user profile by user ID: name, bio, avatar, follower, following and like counts, and content tabs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID, can be obtained from the following API: `toutiao/app/user-id`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, toutiao\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/toutiao/app/user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"1352838578180211\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"1352838578180211\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/toutiao/app/user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"1352838578180211\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/toutiao/app/user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"toutiao/app/user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"toutiao/app/user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"toutiao/app/user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"toutiao/app/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"toutiao/app/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"toutiao/app/user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get information of specified user" + modelName: "Toutiao User Profile" modelId: "toutiao/app/user-info" vendor: "Toutiao" vendorSlug: "toutiao" diff --git a/model-api-reference/platform-apis/toutiao/app/video-info.md b/model-api-reference/platform-apis/toutiao/app/video-info.md index a57f01d0..1874c1cf 100644 --- a/model-api-reference/platform-apis/toutiao/app/video-info.md +++ b/model-api-reference/platform-apis/toutiao/app/video-info.md @@ -1,13 +1,13 @@ --- -title: "Get information of specified video API Reference — Toutiao Info" -description: "SandBase API operation toutiao/app/video-info." +title: "Toutiao Video Information API Reference" +description: "Toutiao Video Information API reference for SandBase. Use model toutiao/app/video-info with /v1/api/toutiao/app/video-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/toutiao/app/video-info" -apiReferenceJson: "{\"title\":\"Get information of specified video\",\"operation\":\"Toutiao API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/toutiao/app/video-info\",\"description\":\"Get information of specified video\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"group_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID, can be obtained from the link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, toutiao\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/toutiao/app/video-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"group_id\\\": \\\"7431543350882206242\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"group_id\\\": \\\"7431543350882206242\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/toutiao/app/video-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"group_id\\\": \\\"7431543350882206242\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/toutiao/app/video-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"toutiao/app/video-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"toutiao/app/video-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"toutiao/app/video-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"toutiao/app/video-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"toutiao/app/video-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"toutiao/app/video-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Toutiao Video Information\",\"operation\":\"Toutiao API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/toutiao/app/video-info\",\"description\":\"Returns detailed information for a specified Toutiao video using its post identifier. Useful for retrieving metadata and content status from Toutiao posts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"group_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID, can be obtained from the link\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, toutiao\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/toutiao/app/video-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"group_id\\\": \\\"7431543350882206242\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"group_id\\\": \\\"7431543350882206242\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/toutiao/app/video-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"group_id\\\": \\\"7431543350882206242\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/toutiao/app/video-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"toutiao/app/video-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"toutiao/app/video-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"toutiao/app/video-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"toutiao/app/video-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"toutiao/app/video-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"toutiao/app/video-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get information of specified video" + modelName: "Toutiao Video Information" modelId: "toutiao/app/video-info" vendor: "Toutiao" vendorSlug: "toutiao" diff --git a/model-api-reference/platform-apis/toutiao/web/article-info.md b/model-api-reference/platform-apis/toutiao/web/article-info.md index af72744e..36b06054 100644 --- a/model-api-reference/platform-apis/toutiao/web/article-info.md +++ b/model-api-reference/platform-apis/toutiao/web/article-info.md @@ -1,13 +1,13 @@ --- -title: "Get information of specified article — 1d6ub2 API" -description: "SandBase API operation toutiao/web/article-info." +title: "Toutiao Article Details (Web) API Reference" +description: "Toutiao Article Details (Web) API reference for SandBase. Use model toutiao/web/article-info with /v1/api/toutiao/web/article-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/toutiao/web/article-info" -apiReferenceJson: "{\"title\":\"Get information of specified article\",\"operation\":\"Toutiao API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/toutiao/web/article-info\",\"description\":\"Get information of specified post\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, toutiao\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/toutiao/web/article-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"aweme_id\\\": \\\"7450114952884503059\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"aweme_id\\\": \\\"7450114952884503059\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/toutiao/web/article-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"aweme_id\\\": \\\"7450114952884503059\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/toutiao/web/article-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"toutiao/web/article-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"toutiao/web/article-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"toutiao/web/article-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"toutiao/web/article-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"toutiao/web/article-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"toutiao/web/article-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Toutiao Article Details (Web)\",\"operation\":\"Toutiao API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/toutiao/web/article-info\",\"description\":\"Returns detailed post information and interface action settings for a specified Toutiao article based on its unique post identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, toutiao\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/toutiao/web/article-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"aweme_id\\\": \\\"7450114952884503059\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"aweme_id\\\": \\\"7450114952884503059\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/toutiao/web/article-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"aweme_id\\\": \\\"7450114952884503059\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/toutiao/web/article-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"toutiao/web/article-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"toutiao/web/article-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"toutiao/web/article-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"toutiao/web/article-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"toutiao/web/article-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"toutiao/web/article-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get information of specified article" + modelName: "Toutiao Article Details (Web)" modelId: "toutiao/web/article-info" vendor: "Toutiao" vendorSlug: "toutiao" diff --git a/model-api-reference/platform-apis/toutiao/web/video-info.md b/model-api-reference/platform-apis/toutiao/web/video-info.md index 0ae8ae3a..15ec3e81 100644 --- a/model-api-reference/platform-apis/toutiao/web/video-info.md +++ b/model-api-reference/platform-apis/toutiao/web/video-info.md @@ -1,13 +1,13 @@ --- -title: "Get information of specified video — 3hwftf API" -description: "SandBase API operation toutiao/web/video-info." +title: "Toutiao Specified Video Details API Reference" +description: "Toutiao Specified Video Details API reference for SandBase. Use model toutiao/web/video-info with /v1/api/toutiao/web/video-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/toutiao/web/video-info" -apiReferenceJson: "{\"title\":\"Get information of specified video\",\"operation\":\"Toutiao API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/toutiao/web/video-info\",\"description\":\"Get information of specified video\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, toutiao\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/toutiao/web/video-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"aweme_id\\\": \\\"7431543350882206242\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"aweme_id\\\": \\\"7431543350882206242\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/toutiao/web/video-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"aweme_id\\\": \\\"7431543350882206242\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/toutiao/web/video-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"toutiao/web/video-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"toutiao/web/video-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"toutiao/web/video-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"toutiao/web/video-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"toutiao/web/video-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"toutiao/web/video-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Toutiao Specified Video Details\",\"operation\":\"Toutiao API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/toutiao/web/video-info\",\"description\":\"Returns detailed information for a specified Toutiao video post. Retrieve post metadata and related video attributes using a valid post identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"aweme_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, toutiao\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/toutiao/web/video-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"aweme_id\\\": \\\"7431543350882206242\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"aweme_id\\\": \\\"7431543350882206242\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/toutiao/web/video-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"aweme_id\\\": \\\"7431543350882206242\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/toutiao/web/video-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"toutiao/web/video-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"toutiao/web/video-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"toutiao/web/video-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"toutiao/web/video-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"toutiao/web/video-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"toutiao/web/video-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get information of specified video" + modelName: "Toutiao Specified Video Details" modelId: "toutiao/web/video-info" vendor: "Toutiao" vendorSlug: "toutiao" diff --git a/model-api-reference/platform-apis/twitter/web/latest-post-comments.md b/model-api-reference/platform-apis/twitter/web/latest-post-comments.md index a076c428..aa874481 100644 --- a/model-api-reference/platform-apis/twitter/web/latest-post-comments.md +++ b/model-api-reference/platform-apis/twitter/web/latest-post-comments.md @@ -1,13 +1,13 @@ --- -title: "Get the latest tweet comments API Reference" -description: "SandBase API operation twitter/web/latest-post-comments." +title: "Twitter (X) Latest Tweet Comments API Reference" +description: "SandBase API reference for model twitter/web/latest-post-comments. Call /v1/api/twitter/web/latest-post-comments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/twitter/web/latest-post-comments" -apiReferenceJson: "{\"title\":\"Get the latest tweet comments\",\"operation\":\"Twitter API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/twitter/web/latest-post-comments\",\"description\":\"Get the available tweet comments\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, default is None, used for paging, obtained from the last request\"},{\"name\":\"tweet_id\",\"type\":\"string\",\"required\":true,\"description\":\"Tweet ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, twitter\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/twitter/web/latest-post-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"tweet_id\\\": \\\"tweet_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"tweet_id\\\": \\\"tweet_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/twitter/web/latest-post-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"tweet_id\\\": \\\"tweet_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/twitter/web/latest-post-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"twitter/web/latest-post-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"twitter/web/latest-post-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"twitter/web/latest-post-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"twitter/web/latest-post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"twitter/web/latest-post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"twitter/web/latest-post-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Twitter (X) Latest Tweet Comments\",\"operation\":\"Twitter API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/twitter/web/latest-post-comments\",\"description\":\"Returns recent replies and comment timelines for a specific post using its tweet ID, with cursor support for multi-page results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, default is None, used for paging, obtained from the last request\"},{\"name\":\"tweet_id\",\"type\":\"string\",\"required\":true,\"description\":\"Tweet ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, twitter\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/twitter/web/latest-post-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"tweet_id\\\": \\\"2107237881668313108\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"tweet_id\\\": \\\"2107237881668313108\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/twitter/web/latest-post-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"tweet_id\\\": \\\"2107237881668313108\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/twitter/web/latest-post-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"twitter/web/latest-post-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"twitter/web/latest-post-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"twitter/web/latest-post-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"twitter/web/latest-post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"twitter/web/latest-post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"twitter/web/latest-post-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get the latest tweet comments" + modelName: "Twitter (X) Latest Tweet Comments" modelId: "twitter/web/latest-post-comments" vendor: "Twitter" vendorSlug: "twitter" diff --git a/model-api-reference/platform-apis/twitter/web/post-comments.md b/model-api-reference/platform-apis/twitter/web/post-comments.md index 8063b162..8075212d 100644 --- a/model-api-reference/platform-apis/twitter/web/post-comments.md +++ b/model-api-reference/platform-apis/twitter/web/post-comments.md @@ -1,13 +1,13 @@ --- -title: "Get comments API Reference" -description: "SandBase API operation twitter/web/post-comments." +title: "Twitter (X) Tweet Comments API Reference" +description: "Twitter (X) Tweet Comments API reference for SandBase. Use model twitter/web/post-comments with /v1/api/twitter/web/post-comments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/twitter/web/post-comments" -apiReferenceJson: "{\"title\":\"Get comments\",\"operation\":\"Twitter API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/twitter/web/post-comments\",\"description\":\"Get comments under the tweet\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, default is None, used for paging, obtained from the last request\"},{\"name\":\"tweet_id\",\"type\":\"string\",\"required\":true,\"description\":\"Tweet ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, twitter\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/twitter/web/post-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"tweet_id\\\": \\\"tweet_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"tweet_id\\\": \\\"tweet_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/twitter/web/post-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"tweet_id\\\": \\\"tweet_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/twitter/web/post-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"twitter/web/post-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"twitter/web/post-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"twitter/web/post-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"twitter/web/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"twitter/web/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"twitter/web/post-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Twitter (X) Tweet Comments\",\"operation\":\"Twitter API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/twitter/web/post-comments\",\"description\":\"Returns comment threads and replies under a specified tweet. Provide a tweet ID and paginate through conversations using cursor values.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, default is None, used for paging, obtained from the last request\"},{\"name\":\"tweet_id\",\"type\":\"string\",\"required\":true,\"description\":\"Tweet ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, twitter\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/twitter/web/post-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"tweet_id\\\": \\\"2107237881668313108\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"tweet_id\\\": \\\"2107237881668313108\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/twitter/web/post-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"tweet_id\\\": \\\"2107237881668313108\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/twitter/web/post-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"twitter/web/post-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"twitter/web/post-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"twitter/web/post-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"twitter/web/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"twitter/web/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"twitter/web/post-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get comments" + modelName: "Twitter (X) Tweet Comments" modelId: "twitter/web/post-comments" vendor: "Twitter" vendorSlug: "twitter" diff --git a/model-api-reference/platform-apis/twitter/web/retweet-user-list.md b/model-api-reference/platform-apis/twitter/web/retweet-user-list.md index 29d5c57e..2c5a0f62 100644 --- a/model-api-reference/platform-apis/twitter/web/retweet-user-list.md +++ b/model-api-reference/platform-apis/twitter/web/retweet-user-list.md @@ -1,13 +1,13 @@ --- -title: "ReTweet User list API Reference" -description: "SandBase API operation twitter/web/retweet-user-list." +title: "Twitter (X) Retweet User List API Reference" +description: "SandBase API reference for model twitter/web/retweet-user-list. Call /v1/api/twitter/web/retweet-user-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/twitter/web/retweet-user-list" -apiReferenceJson: "{\"title\":\"ReTweet User list\",\"operation\":\"Twitter API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/twitter/web/retweet-user-list\",\"description\":\"Get ReTweet User list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, default is None, used for paging, obtained from the last request\"},{\"name\":\"tweet_id\",\"type\":\"string\",\"required\":true,\"description\":\"Tweet ID, can be obtained from the tweet link. For example: 1808168603721650364 in https://x.com/elonmusk/status/1808168603721650364\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, twitter\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/twitter/web/retweet-user-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"tweet_id\\\": \\\"tweet_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"tweet_id\\\": \\\"tweet_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/twitter/web/retweet-user-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"tweet_id\\\": \\\"tweet_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/twitter/web/retweet-user-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"twitter/web/retweet-user-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"twitter/web/retweet-user-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"twitter/web/retweet-user-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"twitter/web/retweet-user-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"twitter/web/retweet-user-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"twitter/web/retweet-user-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Twitter (X) Retweet User List\",\"operation\":\"Twitter API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/twitter/web/retweet-user-list\",\"description\":\"Returns a list of users who reposted a specific post using its tweet ID, including follower counts, media counts, and user identifiers.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, default is None, used for paging, obtained from the last request\"},{\"name\":\"tweet_id\",\"type\":\"string\",\"required\":true,\"description\":\"Tweet ID, can be obtained from the tweet link. For example: 1808168603721650364 in https://x.com/elonmusk/status/1808168603721650364\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, twitter\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/twitter/web/retweet-user-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"tweet_id\\\": \\\"2107237881668313108\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"tweet_id\\\": \\\"2107237881668313108\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/twitter/web/retweet-user-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"tweet_id\\\": \\\"2107237881668313108\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/twitter/web/retweet-user-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"twitter/web/retweet-user-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"twitter/web/retweet-user-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"twitter/web/retweet-user-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"twitter/web/retweet-user-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"twitter/web/retweet-user-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"twitter/web/retweet-user-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "ReTweet User list" + modelName: "Twitter (X) Retweet User List" modelId: "twitter/web/retweet-user-list" vendor: "Twitter" vendorSlug: "twitter" diff --git a/model-api-reference/platform-apis/twitter/web/search-timeline.md b/model-api-reference/platform-apis/twitter/web/search-timeline.md index c89cd806..f58a952b 100644 --- a/model-api-reference/platform-apis/twitter/web/search-timeline.md +++ b/model-api-reference/platform-apis/twitter/web/search-timeline.md @@ -1,13 +1,13 @@ --- -title: "Search API Reference — Twitter Web / Search Timeline API" -description: "SandBase API operation twitter/web/search-timeline." +title: "Twitter (X) Search API Reference" +description: "Twitter (X) Search API reference for SandBase. Use model twitter/web/search-timeline with /v1/api/twitter/web/search-timeline; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/twitter/web/search-timeline" -apiReferenceJson: "{\"title\":\"Search\",\"operation\":\"Twitter API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/twitter/web/search-timeline\",\"description\":\"Search\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, default is None, used for paging, obtained from the last request\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"search_type\",\"type\":\"string\",\"required\":false,\"description\":\"Search type, default is Top, other optional values are Latest, Media, People, Lists\",\"default\":\"Top\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, twitter\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/twitter/web/search-timeline \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/twitter/web/search-timeline\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/twitter/web/search-timeline\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"twitter/web/search-timeline\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"twitter/web/search-timeline\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"twitter/web/search-timeline\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"twitter/web/search-timeline\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"twitter/web/search-timeline\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"twitter/web/search-timeline\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Twitter (X) Search\",\"operation\":\"Twitter API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/twitter/web/search-timeline\",\"description\":\"Search Twitter / X posts by keyword and get tweets with text, author, time and engagement counts (likes, retweets, replies, views). Supports Top, available, Media, People and Lists results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, default is None, used for paging, obtained from the last request\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"search_type\",\"type\":\"string\",\"required\":false,\"description\":\"Search type, default is Top, other optional values are Latest, Media, People, Lists\",\"default\":\"Top\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, twitter\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/twitter/web/search-timeline \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/twitter/web/search-timeline\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/twitter/web/search-timeline\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"twitter/web/search-timeline\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"twitter/web/search-timeline\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"twitter/web/search-timeline\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"twitter/web/search-timeline\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"twitter/web/search-timeline\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"twitter/web/search-timeline\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search" + modelName: "Twitter (X) Search" modelId: "twitter/web/search-timeline" vendor: "Twitter" vendorSlug: "twitter" diff --git a/model-api-reference/platform-apis/twitter/web/trending.md b/model-api-reference/platform-apis/twitter/web/trending.md index 82d5b6c0..33e01d79 100644 --- a/model-api-reference/platform-apis/twitter/web/trending.md +++ b/model-api-reference/platform-apis/twitter/web/trending.md @@ -1,13 +1,13 @@ --- -title: "Trending API Reference" -description: "SandBase API operation twitter/web/trending." +title: "Twitter (X) Trending Topics API Reference" +description: "Twitter (X) Trending Topics API reference for SandBase. Use model twitter/web/trending with /v1/api/twitter/web/trending; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/twitter/web/trending" -apiReferenceJson: "{\"title\":\"Trending\",\"operation\":\"Twitter API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/twitter/web/trending\",\"description\":\"Get Trending\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"country\",\"type\":\"string\",\"required\":false,\"description\":\"Country, default is UnitedStates, other optional values are as follows\",\"default\":\"UnitedStates\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, twitter\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/twitter/web/trending \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"twitter/web/trending\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"twitter/web/trending\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/twitter/web/trending\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"twitter/web/trending\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/twitter/web/trending\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"twitter/web/trending\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"twitter/web/trending\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"twitter/web/trending\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"twitter/web/trending\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"twitter/web/trending\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"twitter/web/trending\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Twitter (X) Trending Topics\",\"operation\":\"Twitter API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/twitter/web/trending\",\"description\":\"Get trending topics on Twitter / X by country: trend names with their category context, for the United States, Japan, India, the UK and other markets.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"country\",\"type\":\"string\",\"required\":false,\"description\":\"Country, default is UnitedStates, other optional values are as follows: China; India; Japan; Russia; Germany; Indonesia; Brazil; France; UnitedKingdom; Turkey; Italy; Mexico; SouthKorea; Canada; Spain; SaudiArabia; Egypt; Australia; Poland; Iran; Pakistan; Vietnam; Nigeria; Bangladesh; Netherlands; Argentina; Philippines; Malaysia; Colombia; UniteArabEmirates; Romania; Belgium; Switzerland; Singapore; Sweden; Norway; Austria; Kazakhstan; Algeria; Chile; Czechia; Peru\",\"default\":\"UnitedStates\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, twitter\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/twitter/web/trending \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/twitter/web/trending\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/twitter/web/trending\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"twitter/web/trending\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"twitter/web/trending\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"twitter/web/trending\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"twitter/web/trending\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"twitter/web/trending\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"twitter/web/trending\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Trending" + modelName: "Twitter (X) Trending Topics" modelId: "twitter/web/trending" vendor: "Twitter" vendorSlug: "twitter" diff --git a/model-api-reference/platform-apis/twitter/web/tweet-detail.md b/model-api-reference/platform-apis/twitter/web/tweet-detail.md index 842fce0e..bd71c069 100644 --- a/model-api-reference/platform-apis/twitter/web/tweet-detail.md +++ b/model-api-reference/platform-apis/twitter/web/tweet-detail.md @@ -1,13 +1,13 @@ --- -title: "Get single tweet data API Reference" -description: "SandBase API operation twitter/web/tweet-detail." +title: "Twitter Tweet Detail API Reference" +description: "Twitter Tweet Detail API reference for SandBase. Use model twitter/web/tweet-detail with /v1/api/twitter/web/tweet-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/twitter/web/tweet-detail" -apiReferenceJson: "{\"title\":\"Get single tweet data\",\"operation\":\"Twitter API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/twitter/web/tweet-detail\",\"description\":\"Get single tweet data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"tweet_id\",\"type\":\"string\",\"required\":true,\"description\":\"Tweet ID, can be obtained from the tweet link. For example: 1808168603721650364 in https://x.com/elonmusk/status/1808168603721650364\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, twitter\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/twitter/web/tweet-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"tweet_id\\\": \\\"1808168603721650364\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"tweet_id\\\": \\\"1808168603721650364\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/twitter/web/tweet-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"tweet_id\\\": \\\"1808168603721650364\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/twitter/web/tweet-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"twitter/web/tweet-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"twitter/web/tweet-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"twitter/web/tweet-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"twitter/web/tweet-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"twitter/web/tweet-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"twitter/web/tweet-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Twitter Tweet Detail\",\"operation\":\"Twitter API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/twitter/web/tweet-detail\",\"description\":\"Get a single tweet (X post) by ID: full text, author, media, and like, retweet, reply, quote, bookmark and view counts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"tweet_id\",\"type\":\"string\",\"required\":true,\"description\":\"Tweet ID, can be obtained from the tweet link. For example: 1808168603721650364 in https://x.com/elonmusk/status/1808168603721650364\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, twitter\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/twitter/web/tweet-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"tweet_id\\\": \\\"1808168603721650364\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"tweet_id\\\": \\\"1808168603721650364\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/twitter/web/tweet-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"tweet_id\\\": \\\"1808168603721650364\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/twitter/web/tweet-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"twitter/web/tweet-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"twitter/web/tweet-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"twitter/web/tweet-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"twitter/web/tweet-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"twitter/web/tweet-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"twitter/web/tweet-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single tweet data" + modelName: "Twitter Tweet Detail" modelId: "twitter/web/tweet-detail" vendor: "Twitter" vendorSlug: "twitter" diff --git a/model-api-reference/platform-apis/twitter/web/user-followers.md b/model-api-reference/platform-apis/twitter/web/user-followers.md index 52cb2117..2ddfddfc 100644 --- a/model-api-reference/platform-apis/twitter/web/user-followers.md +++ b/model-api-reference/platform-apis/twitter/web/user-followers.md @@ -1,13 +1,13 @@ --- -title: "User Followers API Reference" -description: "SandBase API operation twitter/web/user-followers." +title: "Twitter (X) User Followers API Reference" +description: "Twitter (X) User Followers API reference for SandBase. Use model twitter/web/user-followers with /v1/api/twitter/web/user-followers; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/twitter/web/user-followers" -apiReferenceJson: "{\"title\":\"User Followers\",\"operation\":\"Twitter API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/twitter/web/user-followers\",\"description\":\"Get User Followers\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, default is None, used for paging, obtained from the last request\"},{\"name\":\"screen_name\",\"type\":\"string\",\"required\":true,\"description\":\"Screen Name, for example: elonmusk, can be obtained from the user's homepage link, for example: elonmusk in https://twitter.com/elonmusk\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, twitter\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/twitter/web/user-followers \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"screen_name\\\": \\\"screen_name\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"screen_name\\\": \\\"screen_name\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/twitter/web/user-followers\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"screen_name\\\": \\\"screen_name\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/twitter/web/user-followers\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"twitter/web/user-followers\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"twitter/web/user-followers\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"twitter/web/user-followers\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"twitter/web/user-followers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"twitter/web/user-followers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"twitter/web/user-followers\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Twitter (X) User Followers\",\"operation\":\"Twitter API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/twitter/web/user-followers\",\"description\":\"Retrieves follower profiles for a specified Twitter (X) account, including follower counts and verification statuses. Supports pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, default is None, used for paging, obtained from the last request\"},{\"name\":\"screen_name\",\"type\":\"string\",\"required\":true,\"description\":\"Screen Name, for example: elonmusk, can be obtained from the user's homepage link, for example: elonmusk in https://twitter.com/elonmusk\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, twitter\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/twitter/web/user-followers \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"screen_name\\\": \\\"NASA\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"screen_name\\\": \\\"NASA\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/twitter/web/user-followers\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"screen_name\\\": \\\"NASA\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/twitter/web/user-followers\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"twitter/web/user-followers\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"twitter/web/user-followers\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"twitter/web/user-followers\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"twitter/web/user-followers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"twitter/web/user-followers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"twitter/web/user-followers\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "User Followers" + modelName: "Twitter (X) User Followers" modelId: "twitter/web/user-followers" vendor: "Twitter" vendorSlug: "twitter" diff --git a/model-api-reference/platform-apis/twitter/web/user-followings.md b/model-api-reference/platform-apis/twitter/web/user-followings.md index c35b34f0..dcce24b2 100644 --- a/model-api-reference/platform-apis/twitter/web/user-followings.md +++ b/model-api-reference/platform-apis/twitter/web/user-followings.md @@ -1,13 +1,13 @@ --- -title: "User Followings API Reference" -description: "SandBase API operation twitter/web/user-followings." +title: "Twitter (X) User Followings API Reference" +description: "Twitter (X) User Followings API reference for SandBase. Use model twitter/web/user-followings with /v1/api/twitter/web/user-followings; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/twitter/web/user-followings" -apiReferenceJson: "{\"title\":\"User Followings\",\"operation\":\"Twitter API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/twitter/web/user-followings\",\"description\":\"Get User Followings\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, default is None, used for paging, obtained from the last request\"},{\"name\":\"screen_name\",\"type\":\"string\",\"required\":true,\"description\":\"Screen Name, for example: elonmusk, can be obtained from the user's homepage link, for example: elonmusk in https://twitter.com/elonmusk\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, twitter\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/twitter/web/user-followings \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"screen_name\\\": \\\"screen_name\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"screen_name\\\": \\\"screen_name\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/twitter/web/user-followings\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"screen_name\\\": \\\"screen_name\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/twitter/web/user-followings\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"twitter/web/user-followings\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"twitter/web/user-followings\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"twitter/web/user-followings\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"twitter/web/user-followings\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"twitter/web/user-followings\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"twitter/web/user-followings\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Twitter (X) User Followings\",\"operation\":\"Twitter API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/twitter/web/user-followings\",\"description\":\"Returns a list of accounts followed by a specified Twitter (X) user. Results provide follower counts, friend counts, media statistics, and profile details.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, default is None, used for paging, obtained from the last request\"},{\"name\":\"screen_name\",\"type\":\"string\",\"required\":true,\"description\":\"Screen Name, for example: elonmusk, can be obtained from the user's homepage link, for example: elonmusk in https://twitter.com/elonmusk\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, twitter\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/twitter/web/user-followings \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"screen_name\\\": \\\"NASA\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"screen_name\\\": \\\"NASA\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/twitter/web/user-followings\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"screen_name\\\": \\\"NASA\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/twitter/web/user-followings\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"twitter/web/user-followings\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"twitter/web/user-followings\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"twitter/web/user-followings\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"twitter/web/user-followings\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"twitter/web/user-followings\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"twitter/web/user-followings\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "User Followings" + modelName: "Twitter (X) User Followings" modelId: "twitter/web/user-followings" vendor: "Twitter" vendorSlug: "twitter" diff --git a/model-api-reference/platform-apis/twitter/web/user-media.md b/model-api-reference/platform-apis/twitter/web/user-media.md index ed7091aa..bf4cc1d3 100644 --- a/model-api-reference/platform-apis/twitter/web/user-media.md +++ b/model-api-reference/platform-apis/twitter/web/user-media.md @@ -1,13 +1,13 @@ --- -title: "Get user media API Reference" -description: "SandBase API operation twitter/web/user-media." +title: "Twitter (X) User Media API Reference" +description: "Twitter (X) User Media API reference for SandBase. Use model twitter/web/user-media with /v1/api/twitter/web/user-media; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/twitter/web/user-media" -apiReferenceJson: "{\"title\":\"Get user media\",\"operation\":\"Twitter API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/twitter/web/user-media\",\"description\":\"Get user media\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, default is None, used for paging, obtained from the `next_cursor` in the last request\"},{\"name\":\"rest_id\",\"type\":\"integer\",\"required\":false,\"description\":\"User ID, for example: 44196397, if the user ID is used, the username will be ignored, only one of them can be selected.\"},{\"name\":\"screen_name\",\"type\":\"string\",\"required\":true,\"description\":\"Screen Name, for example: elonmusk, can be obtained from the user's homepage link, for example: elonmusk in https://twitter.com/elonmusk\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, twitter\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/twitter/web/user-media \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"screen_name\\\": \\\"NASA\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"screen_name\\\": \\\"NASA\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/twitter/web/user-media\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"screen_name\\\": \\\"NASA\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/twitter/web/user-media\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"twitter/web/user-media\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"twitter/web/user-media\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"twitter/web/user-media\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"twitter/web/user-media\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"twitter/web/user-media\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"twitter/web/user-media\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Twitter (X) User Media\",\"operation\":\"Twitter API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/twitter/web/user-media\",\"description\":\"Returns media posts and timeline items for a specified user profile, queried by screen name or user ID. Supports cursor-based pagination for browsing past media posts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, default is None, used for paging, obtained from the `next_cursor` in the last request\"},{\"name\":\"rest_id\",\"type\":\"integer\",\"required\":false,\"description\":\"User ID, for example: 44196397, if the user ID is used, the username will be ignored, only one of them can be selected.\"},{\"name\":\"screen_name\",\"type\":\"string\",\"required\":true,\"description\":\"Screen Name, for example: elonmusk, can be obtained from the user's homepage link, for example: elonmusk in https://twitter.com/elonmusk\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, twitter\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/twitter/web/user-media \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"screen_name\\\": \\\"NASA\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"screen_name\\\": \\\"NASA\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/twitter/web/user-media\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"screen_name\\\": \\\"NASA\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/twitter/web/user-media\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"twitter/web/user-media\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"twitter/web/user-media\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"twitter/web/user-media\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"twitter/web/user-media\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"twitter/web/user-media\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"twitter/web/user-media\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user media" + modelName: "Twitter (X) User Media" modelId: "twitter/web/user-media" vendor: "Twitter" vendorSlug: "twitter" diff --git a/model-api-reference/platform-apis/twitter/web/user-post-tweet.md b/model-api-reference/platform-apis/twitter/web/user-post-tweet.md index 6bf24061..626cc8c9 100644 --- a/model-api-reference/platform-apis/twitter/web/user-post-tweet.md +++ b/model-api-reference/platform-apis/twitter/web/user-post-tweet.md @@ -1,13 +1,13 @@ --- -title: "Get user post API Reference" -description: "SandBase API operation twitter/web/user-post-tweet." +title: "Twitter (X) User Posts API Reference" +description: "Twitter (X) User Posts API reference for SandBase. Use model twitter/web/user-post-tweet with /v1/api/twitter/web/user-post-tweet; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/twitter/web/user-post-tweet" -apiReferenceJson: "{\"title\":\"Get user post\",\"operation\":\"Twitter API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/twitter/web/user-post-tweet\",\"description\":\"Get user post\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, default is None, used for paging, obtained from the JSON in the last request.\"},{\"name\":\"rest_id\",\"type\":\"integer\",\"required\":false,\"description\":\"User ID, for example: 44196397, if the user ID is used, the username will be ignored, only one of them can be selected.\"},{\"name\":\"screen_name\",\"type\":\"string\",\"required\":false,\"description\":\"Screen Name, for example: elonmusk, can be obtained from the user's homepage link, for example: elonmusk in https://twitter.com/elonmusk\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, twitter\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/twitter/web/user-post-tweet \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"twitter/web/user-post-tweet\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"twitter/web/user-post-tweet\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/twitter/web/user-post-tweet\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"twitter/web/user-post-tweet\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/twitter/web/user-post-tweet\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"twitter/web/user-post-tweet\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"twitter/web/user-post-tweet\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"twitter/web/user-post-tweet\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"twitter/web/user-post-tweet\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"twitter/web/user-post-tweet\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"twitter/web/user-post-tweet\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Twitter (X) User Posts\",\"operation\":\"Twitter API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/twitter/web/user-post-tweet\",\"description\":\"Returns posts and tweets from a specified Twitter (X) user timeline. Users can be identified by either their screen name or numeric user ID, with cursor pagination supported.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, default is None, used for paging, obtained from the JSON in the last request.\"},{\"name\":\"rest_id\",\"type\":\"integer\",\"required\":false,\"description\":\"User ID, for example: 44196397, if the user ID is used, the username will be ignored, only one of them can be selected.\"},{\"name\":\"screen_name\",\"type\":\"string\",\"required\":false,\"description\":\"Screen Name, for example: elonmusk, can be obtained from the user's homepage link, for example: elonmusk in https://twitter.com/elonmusk\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, twitter\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/twitter/web/user-post-tweet \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/twitter/web/user-post-tweet\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/twitter/web/user-post-tweet\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"twitter/web/user-post-tweet\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"twitter/web/user-post-tweet\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"twitter/web/user-post-tweet\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"twitter/web/user-post-tweet\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"twitter/web/user-post-tweet\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"twitter/web/user-post-tweet\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user post" + modelName: "Twitter (X) User Posts" modelId: "twitter/web/user-post-tweet" vendor: "Twitter" vendorSlug: "twitter" diff --git a/model-api-reference/platform-apis/twitter/web/user-profile.md b/model-api-reference/platform-apis/twitter/web/user-profile.md index 5db4da93..2d9e45d0 100644 --- a/model-api-reference/platform-apis/twitter/web/user-profile.md +++ b/model-api-reference/platform-apis/twitter/web/user-profile.md @@ -1,13 +1,13 @@ --- -title: "Get user profile API Reference — Twitter Web / User Profile API" -description: "SandBase API operation twitter/web/user-profile." +title: "Twitter (X) User Profile API Reference" +description: "Twitter (X) User Profile API reference for SandBase. Use model twitter/web/user-profile with /v1/api/twitter/web/user-profile; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/twitter/web/user-profile" -apiReferenceJson: "{\"title\":\"Get user profile\",\"operation\":\"Twitter API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/twitter/web/user-profile\",\"description\":\"Get user profile\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"rest_id\",\"type\":\"integer\",\"required\":false,\"description\":\"User ID, for example: 44196397, if the user ID is used, the username will be ignored, only one of them can be selected.\"},{\"name\":\"screen_name\",\"type\":\"string\",\"required\":false,\"description\":\"Screen Name, for example: elonmusk, can be obtained from the user's homepage link, for example: elonmusk in https://twitter.com/elonmusk\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, twitter\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/twitter/web/user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"twitter/web/user-profile\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"twitter/web/user-profile\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/twitter/web/user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"twitter/web/user-profile\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/twitter/web/user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"twitter/web/user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"twitter/web/user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"twitter/web/user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"twitter/web/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"twitter/web/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"twitter/web/user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Twitter (X) User Profile\",\"operation\":\"Twitter API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/twitter/web/user-profile\",\"description\":\"Get a Twitter / X user profile by screen name or user ID: name, bio, follower and following counts, post and media counts, verification and creation date.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"rest_id\",\"type\":\"integer\",\"required\":false,\"description\":\"User ID, for example: 44196397, if the user ID is used, the username will be ignored, only one of them can be selected.\"},{\"name\":\"screen_name\",\"type\":\"string\",\"required\":false,\"description\":\"Screen Name, for example: elonmusk, can be obtained from the user's homepage link, for example: elonmusk in https://twitter.com/elonmusk\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, twitter\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/twitter/web/user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/twitter/web/user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/twitter/web/user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"twitter/web/user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"twitter/web/user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"twitter/web/user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"twitter/web/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"twitter/web/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"twitter/web/user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user profile" + modelName: "Twitter (X) User Profile" modelId: "twitter/web/user-profile" vendor: "Twitter" vendorSlug: "twitter" diff --git a/model-api-reference/platform-apis/twitter/web/user-tweet-replies.md b/model-api-reference/platform-apis/twitter/web/user-tweet-replies.md index ec09e3ab..3379256c 100644 --- a/model-api-reference/platform-apis/twitter/web/user-tweet-replies.md +++ b/model-api-reference/platform-apis/twitter/web/user-tweet-replies.md @@ -1,13 +1,13 @@ --- -title: "Get user tweet replies API Reference" -description: "SandBase API operation twitter/web/user-tweet-replies." +title: "Twitter (X) User Tweet Replies API Reference" +description: "SandBase API reference for model twitter/web/user-tweet-replies. Call /v1/api/twitter/web/user-tweet-replies; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/twitter/web/user-tweet-replies" -apiReferenceJson: "{\"title\":\"Get user tweet replies\",\"operation\":\"Twitter API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/twitter/web/user-tweet-replies\",\"description\":\"Get user tweet replies\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, default is None, used for paging, obtained from the last request\"},{\"name\":\"screen_name\",\"type\":\"string\",\"required\":true,\"description\":\"Screen Name, for example: elonmusk, can be obtained from the user's homepage link, for example: elonmusk in https://twitter.com/elonmusk\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, twitter\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/twitter/web/user-tweet-replies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"screen_name\\\": \\\"screen_name\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"screen_name\\\": \\\"screen_name\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/twitter/web/user-tweet-replies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"screen_name\\\": \\\"screen_name\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/twitter/web/user-tweet-replies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"twitter/web/user-tweet-replies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"twitter/web/user-tweet-replies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"twitter/web/user-tweet-replies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"twitter/web/user-tweet-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"twitter/web/user-tweet-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"twitter/web/user-tweet-replies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Twitter (X) User Tweet Replies\",\"operation\":\"Twitter API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/twitter/web/user-tweet-replies\",\"description\":\"Returns a timeline of replies posted by a specific Twitter user. Filter by username and paginate through responses using cursor tokens.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Cursor, default is None, used for paging, obtained from the last request\"},{\"name\":\"screen_name\",\"type\":\"string\",\"required\":true,\"description\":\"Screen Name, for example: elonmusk, can be obtained from the user's homepage link, for example: elonmusk in https://twitter.com/elonmusk\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, twitter\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/twitter/web/user-tweet-replies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"screen_name\\\": \\\"NASA\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"screen_name\\\": \\\"NASA\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/twitter/web/user-tweet-replies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"screen_name\\\": \\\"NASA\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/twitter/web/user-tweet-replies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"twitter/web/user-tweet-replies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"twitter/web/user-tweet-replies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"twitter/web/user-tweet-replies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"twitter/web/user-tweet-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"twitter/web/user-tweet-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"twitter/web/user-tweet-replies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user tweet replies" + modelName: "Twitter (X) User Tweet Replies" modelId: "twitter/web/user-tweet-replies" vendor: "Twitter" vendorSlug: "twitter" diff --git a/model-api-reference/platform-apis/wechat-channels/v2/channel-id-to-username.md b/model-api-reference/platform-apis/wechat-channels/v2/channel-id-to-username.md index d0feba4b..fd00652e 100644 --- a/model-api-reference/platform-apis/wechat-channels/v2/channel-id-to-username.md +++ b/model-api-reference/platform-apis/wechat-channels/v2/channel-id-to-username.md @@ -1,13 +1,13 @@ --- -title: "Convert Channel ID to Finder Username API Reference" -description: "SandBase API operation wechat-channels/v2/channel-id-to-username." +title: "WeChat Channels ID to Username API Reference" +description: "SandBase API reference for model wechat-channels/v2/channel-id-to-username. Call /v1/api/wechat-channels/v2/channel-id-to-username; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/wechat-channels/v2/channel-id-to-username" -apiReferenceJson: "{\"title\":\"Convert Channel ID to Finder Username\",\"operation\":\"WeChat Channels API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-channels/v2/channel-id-to-username\",\"description\":\"Resolve a publicly visible Channel ID (`sph…` short ID) into a finder username (`v2_…@finder`). With the username you can then call `fetch_user_videos`, `fetch_channel_info`, `fetch_user_profile`, etc. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_id\",\"type\":\"string\",\"required\":true,\"description\":\"Channel ID (`sph…` short ID), e.g. `sphi9BjV8GK0Zsl` (People's Daily). Must start with `sph`.\",\"constraints\":\"Length: 0 to 64. Pattern: ^sph[A-Za-z0-9_-]+$\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw response; False=simplified parsed structure.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-channels\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-channels/v2/channel-id-to-username \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"channel_id\\\": \\\"sphexample\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"channel_id\\\": \\\"sphexample\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/channel-id-to-username\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"channel_id\\\": \\\"sphexample\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/channel-id-to-username\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-channels/v2/channel-id-to-username\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-channels/v2/channel-id-to-username\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-channels/v2/channel-id-to-username\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-channels/v2/channel-id-to-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-channels/v2/channel-id-to-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-channels/v2/channel-id-to-username\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"WeChat Channels ID to Username\",\"operation\":\"WeChat Channels API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-channels/v2/channel-id-to-username\",\"description\":\"Convert a public WeChat Channels Channel ID (sph… short ID) into the finder username (v2_…@finder) required by the other WeChat Channels APIs. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_id\",\"type\":\"string\",\"required\":true,\"description\":\"Channel ID (`sph…` short ID), e.g. `sphi9BjV8GK0Zsl` (People's Daily). Must start with `sph`.\",\"constraints\":\"Length: 0 to 64. Pattern: ^sph[A-Za-z0-9_-]+$\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw response; False=simplified parsed structure.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-channels\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-channels/v2/channel-id-to-username \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"channel_id\\\": \\\"sphi9BjV8GK0Zsl\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"channel_id\\\": \\\"sphi9BjV8GK0Zsl\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/channel-id-to-username\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"channel_id\\\": \\\"sphi9BjV8GK0Zsl\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/channel-id-to-username\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-channels/v2/channel-id-to-username\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-channels/v2/channel-id-to-username\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-channels/v2/channel-id-to-username\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-channels/v2/channel-id-to-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-channels/v2/channel-id-to-username\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-channels/v2/channel-id-to-username\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Convert Channel ID to Finder Username" + modelName: "WeChat Channels ID to Username" modelId: "wechat-channels/v2/channel-id-to-username" vendor: "WeChat Channels" vendorSlug: "wechat-channels" diff --git a/model-api-reference/platform-apis/wechat-channels/v2/channel-info.md b/model-api-reference/platform-apis/wechat-channels/v2/channel-info.md index 9feee95c..059f461a 100644 --- a/model-api-reference/platform-apis/wechat-channels/v2/channel-info.md +++ b/model-api-reference/platform-apis/wechat-channels/v2/channel-info.md @@ -1,13 +1,13 @@ --- -title: "Get WeChat Channels Account Info API Reference" -description: "SandBase API operation wechat-channels/v2/channel-info." +title: "WeChat Channels Account Info API Reference" +description: "SandBase API reference for model wechat-channels/v2/channel-info. Call /v1/api/wechat-channels/v2/channel-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/wechat-channels/v2/channel-info" -apiReferenceJson: "{\"title\":\"Get WeChat Channels Account Info\",\"operation\":\"WeChat Channels API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-channels/v2/channel-info\",\"description\":\"Get the \\\"More Info\\\" of a WeChat Channels account: basic info section (IP location / profile location / Channel ID = public sph ID) + verification section (service unit / entity type / internet news service license number / service category / verification time). Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw response; False=simplified parsed structure.\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"WeChat Channels finder username (`v2_…@finder` format), e.g. `v2_060000231003b20faec8c6e4811dc1d4c602ee30b0771bbcf220c67926bb76ab7702ac335a53@finder` (People's Daily).\",\"constraints\":\"Length: 10 to 256. Pattern: ^v2_[0-9a-fA-F]+@finder$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-channels\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-channels/v2/channel-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"v2_abcdef@finder\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"v2_abcdef@finder\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/channel-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"v2_abcdef@finder\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/channel-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-channels/v2/channel-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-channels/v2/channel-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-channels/v2/channel-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-channels/v2/channel-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-channels/v2/channel-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-channels/v2/channel-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"WeChat Channels Account Info\",\"operation\":\"WeChat Channels API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-channels/v2/channel-info\",\"description\":\"Get the public \\\"More info\\\" panel of a WeChat Channels account: Channel ID, IP and profile location, and verification details such as entity type, service category and license numbers. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw response; False=simplified parsed structure.\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"WeChat Channels finder username (`v2_…@finder` format), e.g. `v2_060000231003b20faec8c6e4811dc1d4c602ee30b0771bbcf220c67926bb76ab7702ac335a53@finder` (People's Daily).\",\"constraints\":\"Length: 10 to 256. Pattern: ^v2_[0-9a-fA-F]+@finder$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-channels\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-channels/v2/channel-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"v2_060000231003b20faec8c6e4811dc1d4c602ee30b0771bbcf220c67926bb76ab7702ac335a53@finder\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"v2_060000231003b20faec8c6e4811dc1d4c602ee30b0771bbcf220c67926bb76ab7702ac335a53@finder\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/channel-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"v2_060000231003b20faec8c6e4811dc1d4c602ee30b0771bbcf220c67926bb76ab7702ac335a53@finder\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/channel-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-channels/v2/channel-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-channels/v2/channel-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-channels/v2/channel-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-channels/v2/channel-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-channels/v2/channel-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-channels/v2/channel-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get WeChat Channels Account Info" + modelName: "WeChat Channels Account Info" modelId: "wechat-channels/v2/channel-info" vendor: "WeChat Channels" vendorSlug: "wechat-channels" diff --git a/model-api-reference/platform-apis/wechat-channels/v2/collection-videos.md b/model-api-reference/platform-apis/wechat-channels/v2/collection-videos.md index 604f5764..bee91c81 100644 --- a/model-api-reference/platform-apis/wechat-channels/v2/collection-videos.md +++ b/model-api-reference/platform-apis/wechat-channels/v2/collection-videos.md @@ -1,13 +1,13 @@ --- -title: "Get WeChat Channels Collection Videos API Reference" -description: "SandBase API operation wechat-channels/v2/collection-videos." +title: "WeChat Channels Collection Videos API Reference" +description: "SandBase API reference for model wechat-channels/v2/collection-videos. Call /v1/api/wechat-channels/v2/collection-videos; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/wechat-channels/v2/collection-videos" -apiReferenceJson: "{\"title\":\"Get WeChat Channels Collection Videos\",\"operation\":\"WeChat Channels API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-channels/v2/collection-videos\",\"description\":\"Given a collection `topic_id` (from `fetch_user_collections`), return the video list inside that collection. Each video carries a `media` object (`url` / `url_token` / `decode_key`) ready for download and decryption. Supports pagination for more videos. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response. ⚠️ Large-integer ID precision: IDs such as `id` / `topic_id` in the response are 64-bit big integers beyond JavaScript's safe-integer range (2^53-1). Always receive / pass such IDs as strings (parse JSON with json-bigint or read them as text), never through JS `Number`. Swagger UI rounds the trailing digits of huge integers in its docs view — this is expected and does not affect the actual data returned by the API.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"last_buffer\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional pagination cursor (base64), **leave empty for the first page**; when `down_continue` is truthy, pass the previous page's `last_buffer`.\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw response; False=simplified parsed structure (recommended for media download).\"},{\"name\":\"topic\",\"type\":\"string | null\",\"required\":false,\"description\":\"Collection name (optional, improves hit rate)\"},{\"name\":\"topic_id\",\"type\":\"string\",\"required\":true,\"description\":\"Collection ID (numeric, from topic_id of fetch_user_collections)\",\"constraints\":\"Length: 0 to 32. Pattern: ^[0-9]+$\"},{\"name\":\"topic_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Optional, collection type, default 16 (align with the collection's `topic_type` from `fetch_user_collections`).\",\"constraints\":\"Range: 0 to 1000\"},{\"name\":\"username\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional, creator finder username (`v2_…@finder` format), improves hit rate.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-channels\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-channels/v2/collection-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"topic_id\\\": \\\"123456\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"topic_id\\\": \\\"123456\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/collection-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"topic_id\\\": \\\"123456\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/collection-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-channels/v2/collection-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-channels/v2/collection-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-channels/v2/collection-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-channels/v2/collection-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-channels/v2/collection-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-channels/v2/collection-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"WeChat Channels Collection Videos\",\"operation\":\"WeChat Channels API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-channels/v2/collection-videos\",\"description\":\"Returns videos contained within a WeChat Channels collection using a collection ID. Provides video media URLs, decryption keys, and pagination cursors. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"last_buffer\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional pagination cursor (base64), **leave empty for the first page**; when `down_continue` is truthy, pass the previous page's `last_buffer`.\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw response; False=simplified parsed structure (recommended for media download).\"},{\"name\":\"topic\",\"type\":\"string | null\",\"required\":false,\"description\":\"Collection name (optional, improves hit rate)\"},{\"name\":\"topic_id\",\"type\":\"string\",\"required\":true,\"description\":\"Collection ID (numeric, from topic_id of fetch_user_collections)\",\"constraints\":\"Length: 0 to 32. Pattern: ^[0-9]+$\"},{\"name\":\"topic_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Optional, collection type, default 16 (align with the collection's `topic_type` from `fetch_user_collections`).\",\"constraints\":\"Range: 0 to 1000\"},{\"name\":\"username\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional, creator finder username (`v2_…@finder` format), improves hit rate.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-channels\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-channels/v2/collection-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"topic_id\\\": \\\"123456\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"topic_id\\\": \\\"123456\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/collection-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"topic_id\\\": \\\"123456\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/collection-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-channels/v2/collection-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-channels/v2/collection-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-channels/v2/collection-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-channels/v2/collection-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-channels/v2/collection-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-channels/v2/collection-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get WeChat Channels Collection Videos" + modelName: "WeChat Channels Collection Videos" modelId: "wechat-channels/v2/collection-videos" vendor: "WeChat Channels" vendorSlug: "wechat-channels" diff --git a/model-api-reference/platform-apis/wechat-channels/v2/live-detail.md b/model-api-reference/platform-apis/wechat-channels/v2/live-detail.md index f2d4001b..d50bd6bd 100644 --- a/model-api-reference/platform-apis/wechat-channels/v2/live-detail.md +++ b/model-api-reference/platform-apis/wechat-channels/v2/live-detail.md @@ -1,13 +1,13 @@ --- -title: "Get WeChat Channels Live Detail API Reference" -description: "SandBase API operation wechat-channels/v2/live-detail." +title: "WeChat Channels Stream Detail API Reference" +description: "SandBase API reference for model wechat-channels/v2/live-detail. Call /v1/api/wechat-channels/v2/live-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/wechat-channels/v2/live-detail" -apiReferenceJson: "{\"title\":\"Get WeChat Channels Live Detail\",\"operation\":\"WeChat Channels API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-channels/v2/live-detail\",\"description\":\"Pass a live `live_id` to get live-room detail: anchor info, live status, online count, replay info, etc. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response. ⚠️ Large-integer ID precision: IDs such as `live_id` in the response are 64-bit big integers beyond JavaScript's safe-integer range (2^53-1). Always receive / pass such IDs as strings (parse JSON with json-bigint or read them as text), never through JS `Number`. Swagger UI rounds the trailing digits of huge integers in its docs view — this is expected and does not affect the actual data returned by the API.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"finder_username\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional, anchor finder username (`v2_…@finder` format), improves hit rate. E.g. `v2_060000231003b20faec8cae1811ac4d5c702ea32b0771737aa785454f7f8177114cc4d248d66@finder` (Huxiu).\"},{\"name\":\"live_id\",\"type\":\"string\",\"required\":true,\"description\":\"Live ID (numeric). Source: replay items of `fetch_live_history`, live entry, or live share. E.g. `2078950291205875194`.\",\"constraints\":\"Length: 0 to 32. Pattern: ^[0-9]+$\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw response; False=simplified parsed structure.\"},{\"name\":\"scene\",\"type\":\"integer\",\"required\":false,\"description\":\"Optional, entry scene, default 5.\",\"constraints\":\"Range: 0 to 1000\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-channels\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-channels/v2/live-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"live_id\\\": \\\"123456\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"live_id\\\": \\\"123456\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/live-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"live_id\\\": \\\"123456\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/live-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-channels/v2/live-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-channels/v2/live-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-channels/v2/live-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-channels/v2/live-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-channels/v2/live-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-channels/v2/live-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"WeChat Channels Stream Detail\",\"operation\":\"WeChat Channels API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-channels/v2/live-detail\",\"description\":\"Returns live-room details including anchor info, status, online count, and replay data using a live ID. Allows switching between raw and parsed output formats. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"finder_username\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional, anchor finder username (`v2_…@finder` format), improves hit rate. E.g. `v2_060000231003b20faec8cae1811ac4d5c702ea32b0771737aa785454f7f8177114cc4d248d66@finder` (Huxiu).\"},{\"name\":\"live_id\",\"type\":\"string\",\"required\":true,\"description\":\"Live ID (numeric). Source: replay items of `fetch_live_history`, live entry, or live share. E.g. `2078950291205875194`.\",\"constraints\":\"Length: 0 to 32. Pattern: ^[0-9]+$\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw response; False=simplified parsed structure.\"},{\"name\":\"scene\",\"type\":\"integer\",\"required\":false,\"description\":\"Optional, entry scene, default 5.\",\"constraints\":\"Range: 0 to 1000\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-channels\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-channels/v2/live-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"live_id\\\": \\\"123456\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"live_id\\\": \\\"123456\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/live-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"live_id\\\": \\\"123456\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/live-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-channels/v2/live-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-channels/v2/live-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-channels/v2/live-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-channels/v2/live-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-channels/v2/live-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-channels/v2/live-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get WeChat Channels Live Detail" + modelName: "WeChat Channels Stream Detail" modelId: "wechat-channels/v2/live-detail" vendor: "WeChat Channels" vendorSlug: "wechat-channels" diff --git a/model-api-reference/platform-apis/wechat-channels/v2/live-history.md b/model-api-reference/platform-apis/wechat-channels/v2/live-history.md index 5329dc0b..6415e4f5 100644 --- a/model-api-reference/platform-apis/wechat-channels/v2/live-history.md +++ b/model-api-reference/platform-apis/wechat-channels/v2/live-history.md @@ -1,13 +1,13 @@ --- -title: "Get WeChat Channels Live History API Reference" -description: "SandBase API operation wechat-channels/v2/live-history." +title: "WeChat Channels Stream Replay History API Reference" +description: "SandBase API reference for model wechat-channels/v2/live-history. Call /v1/api/wechat-channels/v2/live-history; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/wechat-channels/v2/live-history" -apiReferenceJson: "{\"title\":\"Get WeChat Channels Live History\",\"operation\":\"WeChat Channels API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-channels/v2/live-history\",\"description\":\"Get a creator's live replay list. Each replay is itself a video object with a `media` object (`url` / `url_token` / `decode_key`) ready for download and decryption. Supports pagination for more replays. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response. ⚠️ Large-integer ID precision: IDs such as `id` in the response are 64-bit big integers beyond JavaScript's safe-integer range (2^53-1). Always receive / pass such IDs as strings (parse JSON with json-bigint or read them as text), never through JS `Number`. Swagger UI rounds the trailing digits of huge integers in its docs view — this is expected and does not affect the actual data returned by the API.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"flag\",\"type\":\"integer\",\"required\":false,\"description\":\"Optional fetch flag, default 12.\",\"constraints\":\"Range: 0 to 1000\"},{\"name\":\"last_buffer\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional pagination cursor (base64), **leave empty for the first page**; when `continue_flag` is truthy, pass the previous page's `last_buffer`.\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw response; False=simplified parsed structure (recommended for media download).\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"WeChat Channels finder username (`v2_…@finder` format). Example (an account with live replays): `v2_060000231003b20faec8cae1811ac4d5c702ea32b0771737aa785454f7f8177114cc4d248d66@finder` (Huxiu).\",\"constraints\":\"Length: 10 to 256. Pattern: ^v2_[0-9a-fA-F]+@finder$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-channels\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-channels/v2/live-history \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"v2_abcdef@finder\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"v2_abcdef@finder\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/live-history\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"v2_abcdef@finder\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/live-history\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-channels/v2/live-history\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-channels/v2/live-history\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-channels/v2/live-history\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-channels/v2/live-history\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-channels/v2/live-history\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-channels/v2/live-history\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"WeChat Channels Stream Replay History\",\"operation\":\"WeChat Channels API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-channels/v2/live-history\",\"description\":\"Returns a creator's broadcast replay list, including media download URLs and decryption keys. Supports cursor pagination via a finder username. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"flag\",\"type\":\"integer\",\"required\":false,\"description\":\"Optional fetch flag, default 12.\",\"constraints\":\"Range: 0 to 1000\"},{\"name\":\"last_buffer\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional pagination cursor (base64), **leave empty for the first page**; when `continue_flag` is truthy, pass the previous page's `last_buffer`.\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw response; False=simplified parsed structure (recommended for media download).\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"WeChat Channels finder username (`v2_…@finder` format). Example (an account with live replays): `v2_060000231003b20faec8cae1811ac4d5c702ea32b0771737aa785454f7f8177114cc4d248d66@finder` (Huxiu).\",\"constraints\":\"Length: 10 to 256. Pattern: ^v2_[0-9a-fA-F]+@finder$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-channels\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-channels/v2/live-history \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"v2_abcdef@finder\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"v2_abcdef@finder\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/live-history\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"v2_abcdef@finder\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/live-history\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-channels/v2/live-history\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-channels/v2/live-history\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-channels/v2/live-history\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-channels/v2/live-history\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-channels/v2/live-history\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-channels/v2/live-history\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get WeChat Channels Live History" + modelName: "WeChat Channels Stream Replay History" modelId: "wechat-channels/v2/live-history" vendor: "WeChat Channels" vendorSlug: "wechat-channels" diff --git a/model-api-reference/platform-apis/wechat-channels/v2/search-channel-videos.md b/model-api-reference/platform-apis/wechat-channels/v2/search-channel-videos.md index 9aaf8e62..68273048 100644 --- a/model-api-reference/platform-apis/wechat-channels/v2/search-channel-videos.md +++ b/model-api-reference/platform-apis/wechat-channels/v2/search-channel-videos.md @@ -1,13 +1,13 @@ --- -title: "Search Videos Within a WeChat Channel API Reference" -description: "SandBase API operation wechat-channels/v2/search-channel-videos." +title: "WeChat Channels In-Channel Video Search API Reference" +description: "SandBase API reference for model wechat-channels/v2/search-channel-videos. Call /v1/api/wechat-channels/v2/search-channel-videos; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/wechat-channels/v2/search-channel-videos" -apiReferenceJson: "{\"title\":\"Search Videos Within a WeChat Channel\",\"operation\":\"WeChat Channels API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-channels/v2/search-channel-videos\",\"description\":\"In-channel search: search a creator's published videos by keyword within that channel only. This endpoint performs first-page retrieval only (no cursor parameter exposed, single-page result), but the response still carries `next_cursor` / `continue_flag` for reference. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response. ⚠️ Large-integer ID precision: IDs such as `doc_id` in the response are 64-bit big integers beyond JavaScript's safe-integer range (2^53-1). Always receive / pass such IDs as strings (parse JSON with json-bigint or read them as text), never through JS `Number`. Swagger UI rounds the trailing digits of huge integers in its docs view — this is expected and does not affect the actual data returned by the API.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword to search within this channel (1-100 chars)\",\"constraints\":\"Length: 1 to 100\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw search response; False=simplified parsed structure.\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Creator finder username (`v2_…@finder` format). E.g. `v2_060000231003b20faec8c6e4811dc1d4c602ee30b0771bbcf220c67926bb76ab7702ac335a53@finder` (People's Daily).\",\"constraints\":\"Length: 10 to 256. Pattern: ^v2_[0-9a-fA-F]+@finder$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-channels\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-channels/v2/search-channel-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"username\\\": \\\"v2_abcdef@finder\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"username\\\": \\\"v2_abcdef@finder\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/search-channel-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\",\\n \\\"username\\\": \\\"v2_abcdef@finder\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/search-channel-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-channels/v2/search-channel-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-channels/v2/search-channel-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-channels/v2/search-channel-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-channels/v2/search-channel-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-channels/v2/search-channel-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-channels/v2/search-channel-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"WeChat Channels In-Channel Video Search\",\"operation\":\"WeChat Channels API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-channels/v2/search-channel-videos\",\"description\":\"Search one WeChat Channels creator's videos by keyword, within that channel only. Returns matching video IDs and titles. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword to search within this channel (1-100 chars)\",\"constraints\":\"Length: 1 to 100\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw search response; False=simplified parsed structure.\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Creator finder username (`v2_…@finder` format). E.g. `v2_060000231003b20faec8c6e4811dc1d4c602ee30b0771bbcf220c67926bb76ab7702ac335a53@finder` (People's Daily).\",\"constraints\":\"Length: 10 to 256. Pattern: ^v2_[0-9a-fA-F]+@finder$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-channels\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-channels/v2/search-channel-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"永乐大典\\\",\\n \\\"username\\\": \\\"v2_060000231003b20faec8c6e4811dc1d4c602ee30b0771bbcf220c67926bb76ab7702ac335a53@finder\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"永乐大典\\\",\\n \\\"username\\\": \\\"v2_060000231003b20faec8c6e4811dc1d4c602ee30b0771bbcf220c67926bb76ab7702ac335a53@finder\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/search-channel-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"永乐大典\\\",\\n \\\"username\\\": \\\"v2_060000231003b20faec8c6e4811dc1d4c602ee30b0771bbcf220c67926bb76ab7702ac335a53@finder\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/search-channel-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-channels/v2/search-channel-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-channels/v2/search-channel-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-channels/v2/search-channel-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-channels/v2/search-channel-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-channels/v2/search-channel-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-channels/v2/search-channel-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search Videos Within a WeChat Channel" + modelName: "WeChat Channels In-Channel Video Search" modelId: "wechat-channels/v2/search-channel-videos" vendor: "WeChat Channels" vendorSlug: "wechat-channels" diff --git a/model-api-reference/platform-apis/wechat-channels/v2/user-collections.md b/model-api-reference/platform-apis/wechat-channels/v2/user-collections.md index 49dcbd86..f7ac0c2d 100644 --- a/model-api-reference/platform-apis/wechat-channels/v2/user-collections.md +++ b/model-api-reference/platform-apis/wechat-channels/v2/user-collections.md @@ -1,13 +1,13 @@ --- -title: "Get WeChat Channels User Collections API Reference" -description: "SandBase API operation wechat-channels/v2/user-collections." +title: "WeChat Channels User Collections API Reference" +description: "SandBase API reference for model wechat-channels/v2/user-collections. Call /v1/api/wechat-channels/v2/user-collections; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/wechat-channels/v2/user-collections" -apiReferenceJson: "{\"title\":\"Get WeChat Channels User Collections\",\"operation\":\"WeChat Channels API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-channels/v2/user-collections\",\"description\":\"Get the \\\"Collections\\\" list on a creator's homepage. Pass each collection's `topic_id` to `fetch_collection_videos` to get its videos. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response. ⚠️ Large-integer ID precision: IDs such as `topic_id` in the response are 64-bit big integers beyond JavaScript's safe-integer range (2^53-1). Always receive / pass such IDs as strings (parse JSON with json-bigint or read them as text), never through JS `Number`. Swagger UI rounds the trailing digits of huge integers in its docs view — this is expected and does not affect the actual data returned by the API.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw response; False=simplified parsed structure.\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"WeChat Channels finder username (`v2_…@finder` format). E.g. `v2_060000231003b20faec8c6e4811dc1d4c602ee30b0771bbcf220c67926bb76ab7702ac335a53@finder` (People's Daily).\",\"constraints\":\"Length: 10 to 256. Pattern: ^v2_[0-9a-fA-F]+@finder$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-channels\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-channels/v2/user-collections \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"v2_abcdef@finder\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"v2_abcdef@finder\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/user-collections\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"v2_abcdef@finder\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/user-collections\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-channels/v2/user-collections\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-channels/v2/user-collections\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-channels/v2/user-collections\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-channels/v2/user-collections\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-channels/v2/user-collections\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-channels/v2/user-collections\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"WeChat Channels User Collections\",\"operation\":\"WeChat Channels API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-channels/v2/user-collections\",\"description\":\"Returns the video collections displayed on a creator homepage by username. Includes collection metadata and identifiers used to look up collection videos. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw response; False=simplified parsed structure.\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"WeChat Channels finder username (`v2_…@finder` format). E.g. `v2_060000231003b20faec8c6e4811dc1d4c602ee30b0771bbcf220c67926bb76ab7702ac335a53@finder` (People's Daily).\",\"constraints\":\"Length: 10 to 256. Pattern: ^v2_[0-9a-fA-F]+@finder$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-channels\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-channels/v2/user-collections \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"v2_abcdef@finder\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"v2_abcdef@finder\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/user-collections\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"v2_abcdef@finder\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/user-collections\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-channels/v2/user-collections\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-channels/v2/user-collections\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-channels/v2/user-collections\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-channels/v2/user-collections\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-channels/v2/user-collections\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-channels/v2/user-collections\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get WeChat Channels User Collections" + modelName: "WeChat Channels User Collections" modelId: "wechat-channels/v2/user-collections" vendor: "WeChat Channels" vendorSlug: "wechat-channels" diff --git a/model-api-reference/platform-apis/wechat-channels/v2/user-profile.md b/model-api-reference/platform-apis/wechat-channels/v2/user-profile.md index addd872a..1b8e2db7 100644 --- a/model-api-reference/platform-apis/wechat-channels/v2/user-profile.md +++ b/model-api-reference/platform-apis/wechat-channels/v2/user-profile.md @@ -1,13 +1,13 @@ --- -title: "Get WeChat Channels User Profile & Stats API Reference" -description: "SandBase API operation wechat-channels/v2/user-profile." +title: "WeChat Channels User Profile API Reference" +description: "SandBase API reference for model wechat-channels/v2/user-profile. Call /v1/api/wechat-channels/v2/user-profile; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/wechat-channels/v2/user-profile" -apiReferenceJson: "{\"title\":\"Get WeChat Channels User Profile & Stats\",\"operation\":\"WeChat Channels API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-channels/v2/user-profile\",\"description\":\"Get a creator's homepage profile and interaction stats. Complementary to `fetch_channel_info` (verification entity / license): this endpoint provides nickname / signature / avatar, follower / video / like / favorite / forward counts, live duration, IP region, collection count, linked official accounts, etc. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw response; False=simplified parsed structure.\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"WeChat Channels finder username (`v2_…@finder` format). Source: the `username` field of video objects in `fetch_video_detail` / `fetch_user_videos` responses; or convert a `sph…` short ID via `fetch_channel_id_to_username`. E.g. `v2_060000231003b20faec8c6e4811dc1d4c602ee30b0771bbcf220c67926bb76ab7702ac335a53@finder` (People's Daily).\",\"constraints\":\"Length: 10 to 256. Pattern: ^v2_[0-9a-fA-F]+@finder$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-channels\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-channels/v2/user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"v2_abcdef@finder\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"v2_abcdef@finder\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"v2_abcdef@finder\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-channels/v2/user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-channels/v2/user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-channels/v2/user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-channels/v2/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-channels/v2/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-channels/v2/user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"WeChat Channels User Profile\",\"operation\":\"WeChat Channels API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-channels/v2/user-profile\",\"description\":\"Get a WeChat Channels creator's profile and stats: nickname, bio, region, follower, video, like and favorite counts, and linked accounts. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw response; False=simplified parsed structure.\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"WeChat Channels finder username (`v2_…@finder` format). Source: the `username` field of video objects in `fetch_video_detail` / `fetch_user_videos` responses; or convert a `sph…` short ID via `fetch_channel_id_to_username`. E.g. `v2_060000231003b20faec8c6e4811dc1d4c602ee30b0771bbcf220c67926bb76ab7702ac335a53@finder` (People's Daily).\",\"constraints\":\"Length: 10 to 256. Pattern: ^v2_[0-9a-fA-F]+@finder$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-channels\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-channels/v2/user-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"v2_060000231003b20faec8c6e4811dc1d4c602ee30b0771bbcf220c67926bb76ab7702ac335a53@finder\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"v2_060000231003b20faec8c6e4811dc1d4c602ee30b0771bbcf220c67926bb76ab7702ac335a53@finder\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/user-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"v2_060000231003b20faec8c6e4811dc1d4c602ee30b0771bbcf220c67926bb76ab7702ac335a53@finder\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/user-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-channels/v2/user-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-channels/v2/user-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-channels/v2/user-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-channels/v2/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-channels/v2/user-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-channels/v2/user-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get WeChat Channels User Profile & Stats" + modelName: "WeChat Channels User Profile" modelId: "wechat-channels/v2/user-profile" vendor: "WeChat Channels" vendorSlug: "wechat-channels" diff --git a/model-api-reference/platform-apis/wechat-channels/v2/user-videos.md b/model-api-reference/platform-apis/wechat-channels/v2/user-videos.md index d8f2cc20..58c025c6 100644 --- a/model-api-reference/platform-apis/wechat-channels/v2/user-videos.md +++ b/model-api-reference/platform-apis/wechat-channels/v2/user-videos.md @@ -1,13 +1,13 @@ --- -title: "Get WeChat Channels User Videos API Reference" -description: "SandBase API operation wechat-channels/v2/user-videos." +title: "WeChat Channels User Videos API Reference" +description: "SandBase API reference for model wechat-channels/v2/user-videos. Call /v1/api/wechat-channels/v2/user-videos; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/wechat-channels/v2/user-videos" -apiReferenceJson: "{\"title\":\"Get WeChat Channels User Videos\",\"operation\":\"WeChat Channels API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-channels/v2/user-videos\",\"description\":\"Get the video list from a WeChat Channels account's homepage. Each video carries a `media` object (`url` / `url_token` / `full_url` / `decode_key`) ready for download and decryption. Supports pagination for more videos. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response. ⚠️ Large-integer ID precision: IDs such as `id` / `object_nonce_id` in the response are 64-bit big integers beyond JavaScript's safe-integer range (2^53-1). Always receive / pass such IDs as strings (parse JSON with json-bigint or read them as text), never through JS `Number`. Swagger UI rounds the trailing digits of huge integers in its docs view — this is expected and does not affect the actual data returned by the API.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"last_buffer\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional pagination cursor (base64). **Leave empty for the first page**; when `up_continue` in the response is truthy, pass the previous page's `last_buffer` to get the next page. (base64 contains `+//=` characters, hence body instead of query.)\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw response; False=simplified parsed structure (recommended for media download).\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"WeChat Channels finder username (`v2_…@finder` format), e.g. `v2_060000231003b20faec8c6e4811dc1d4c602ee30b0771bbcf220c67926bb76ab7702ac335a53@finder` (People's Daily). See `fetch_channel_info` / `fetch_video_detail` / `fetch_channel_id_to_username` docs for how to obtain it.\",\"constraints\":\"Length: 10 to 256. Pattern: ^v2_[0-9a-fA-F]+@finder$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-channels\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-channels/v2/user-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"v2_abcdef@finder\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"v2_abcdef@finder\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/user-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"v2_abcdef@finder\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/user-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-channels/v2/user-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-channels/v2/user-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-channels/v2/user-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-channels/v2/user-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-channels/v2/user-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-channels/v2/user-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"WeChat Channels User Videos\",\"operation\":\"WeChat Channels API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-channels/v2/user-videos\",\"description\":\"Get the videos on a WeChat Channels account's homepage with descriptions, publish time, like, comment, share and favorite counts, and media download info, with cursor pagination. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"last_buffer\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional pagination cursor (base64). **Leave empty for the first page**; when `up_continue` in the response is truthy, pass the previous page's `last_buffer` to get the next page. (base64 contains `+//=` characters, hence body instead of query.)\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw response; False=simplified parsed structure (recommended for media download).\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"WeChat Channels finder username (`v2_…@finder` format), e.g. `v2_060000231003b20faec8c6e4811dc1d4c602ee30b0771bbcf220c67926bb76ab7702ac335a53@finder` (People's Daily). See `fetch_channel_info` / `fetch_video_detail` / `fetch_channel_id_to_username` docs for how to obtain it.\",\"constraints\":\"Length: 10 to 256. Pattern: ^v2_[0-9a-fA-F]+@finder$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-channels\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-channels/v2/user-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"v2_060000231003b20faec8c6e4811dc1d4c602ee30b0771bbcf220c67926bb76ab7702ac335a53@finder\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"v2_060000231003b20faec8c6e4811dc1d4c602ee30b0771bbcf220c67926bb76ab7702ac335a53@finder\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/user-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"v2_060000231003b20faec8c6e4811dc1d4c602ee30b0771bbcf220c67926bb76ab7702ac335a53@finder\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/user-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-channels/v2/user-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-channels/v2/user-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-channels/v2/user-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-channels/v2/user-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-channels/v2/user-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-channels/v2/user-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get WeChat Channels User Videos" + modelName: "WeChat Channels User Videos" modelId: "wechat-channels/v2/user-videos" vendor: "WeChat Channels" vendorSlug: "wechat-channels" diff --git a/model-api-reference/platform-apis/wechat-channels/v2/video-comments.md b/model-api-reference/platform-apis/wechat-channels/v2/video-comments.md index 7ee746ab..ebc1dbc6 100644 --- a/model-api-reference/platform-apis/wechat-channels/v2/video-comments.md +++ b/model-api-reference/platform-apis/wechat-channels/v2/video-comments.md @@ -1,13 +1,13 @@ --- -title: "Get WeChat Channels Video Comments API Reference" -description: "SandBase API operation wechat-channels/v2/video-comments." +title: "WeChat Channels Video Comments API Reference" +description: "SandBase API reference for model wechat-channels/v2/video-comments. Call /v1/api/wechat-channels/v2/video-comments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/wechat-channels/v2/video-comments" -apiReferenceJson: "{\"title\":\"Get WeChat Channels Video Comments\",\"operation\":\"WeChat Channels API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-channels/v2/video-comments\",\"description\":\"Get first-level comments of a video (with IP region / like count); pass `comment_id` to get second-level replies under that comment. Supports pagination for more comments. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response. ⚠️ Large-integer ID precision: IDs such as `comment_id` in the response are 64-bit big integers beyond JavaScript's safe-integer range (2^53-1). Always receive / pass such IDs as strings (parse JSON with json-bigint or read them as text), never through JS `Number`. Swagger UI rounds the trailing digits of huge integers in its docs view — this is expected and does not affect the actual data returned by the API.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"comment_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional. To expand the replies of a comment, pass its `comment_id` (numeric); leave empty for the first-level page.\"},{\"name\":\"last_buffer\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional pagination cursor (base64). **Leave empty for the first page**; when `down_continue` is truthy, pass the previous page's `last_buffer`.\"},{\"name\":\"object_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video objectId (numeric), e.g. `14941130915890399732`. From the video `id` of `fetch_user_videos` / `fetch_video_detail`.\",\"constraints\":\"Length: 0 to 32. Pattern: ^[0-9]+$\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw response; False=simplified parsed structure.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-channels\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-channels/v2/video-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"object_id\\\": \\\"123456\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"object_id\\\": \\\"123456\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/video-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"object_id\\\": \\\"123456\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/video-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-channels/v2/video-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-channels/v2/video-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-channels/v2/video-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-channels/v2/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-channels/v2/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-channels/v2/video-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"WeChat Channels Video Comments\",\"operation\":\"WeChat Channels API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-channels/v2/video-comments\",\"description\":\"Returns first-level comments or nested replies for a WeChat Channels video, including like counts and IP regions, using the video object ID. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"comment_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional. To expand the replies of a comment, pass its `comment_id` (numeric); leave empty for the first-level page.\"},{\"name\":\"last_buffer\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional pagination cursor (base64). **Leave empty for the first page**; when `down_continue` is truthy, pass the previous page's `last_buffer`.\"},{\"name\":\"object_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video objectId (numeric), e.g. `14941130915890399732`. From the video `id` of `fetch_user_videos` / `fetch_video_detail`.\",\"constraints\":\"Length: 0 to 32. Pattern: ^[0-9]+$\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw response; False=simplified parsed structure.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-channels\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-channels/v2/video-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"object_id\\\": \\\"123456\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"object_id\\\": \\\"123456\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/video-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"object_id\\\": \\\"123456\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/video-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-channels/v2/video-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-channels/v2/video-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-channels/v2/video-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-channels/v2/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-channels/v2/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-channels/v2/video-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get WeChat Channels Video Comments" + modelName: "WeChat Channels Video Comments" modelId: "wechat-channels/v2/video-comments" vendor: "WeChat Channels" vendorSlug: "wechat-channels" diff --git a/model-api-reference/platform-apis/wechat-channels/v2/video-detail.md b/model-api-reference/platform-apis/wechat-channels/v2/video-detail.md index c176d97a..6b5cc6e4 100644 --- a/model-api-reference/platform-apis/wechat-channels/v2/video-detail.md +++ b/model-api-reference/platform-apis/wechat-channels/v2/video-detail.md @@ -1,13 +1,13 @@ --- -title: "Get WeChat Channels Video Detail API Reference" -description: "SandBase API operation wechat-channels/v2/video-detail." +title: "WeChat Channels Video Detail API Reference" +description: "SandBase API reference for model wechat-channels/v2/video-detail. Call /v1/api/wechat-channels/v2/video-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/wechat-channels/v2/video-detail" -apiReferenceJson: "{\"title\":\"Get WeChat Channels Video Detail\",\"operation\":\"WeChat Channels API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-channels/v2/video-detail\",\"description\":\"Get the full detail of a WeChat Channels video (media address `media` + `decode_key`). Three input options, choose one, priority object_id > export_id > share_url. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response. ⚠️ Large-integer ID precision: IDs such as `id` in the response are 64-bit big integers beyond JavaScript's safe-integer range (2^53-1). Always receive / pass such IDs as strings (parse JSON with json-bigint or read them as text), never through JS `Number`. Swagger UI rounds the trailing digits of huge integers in its docs view — this is expected and does not affect the actual data returned by the API.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"export_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Second priority, optional. `exportId` from search results (must start with `export/`). Search results often only carry `exportId` without a plain object_id — pass export_id directly in that case (it expires, use it soon).\"},{\"name\":\"object_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Highest priority, optional. Video objectId (numeric), e.g. `14941130915890399732`. Obtainable from the video `id` of `fetch_user_videos` / `fetch_collection_videos`.\"},{\"name\":\"object_nonce_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional. `feedNonceId` (numeric) from search results, pairs with the above to improve hit rate.\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw response; False=simplified parsed structure (recommended for media download).\"},{\"name\":\"share_url\",\"type\":\"string | null\",\"required\":false,\"description\":\"Last, optional. Channels share URL (`https://weixin.qq.com/sph/…`), e.g. `https://weixin.qq.com/sph/AH3sCoIPhH`. Used only when both object_id and export_id are empty.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-channels\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-channels/v2/video-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"wechat-channels/v2/video-detail\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"wechat-channels/v2/video-detail\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/video-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"wechat-channels/v2/video-detail\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/video-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-channels/v2/video-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-channels/v2/video-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-channels/v2/video-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-channels/v2/video-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-channels/v2/video-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-channels/v2/video-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"WeChat Channels Video Detail\",\"operation\":\"WeChat Channels API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-channels/v2/video-detail\",\"description\":\"Get the full detail of a WeChat Channels video: description, author, engagement counts and the media URL with decode key for download. Look up by object ID, export ID or share URL. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"export_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Second priority, optional. `exportId` from search results (must start with `export/`). Search results often only carry `exportId` without a plain object_id — pass export_id directly in that case (it expires, use it soon).\"},{\"name\":\"object_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Highest priority, optional. Video objectId (numeric), e.g. `14941130915890399732`. Obtainable from the video `id` of `fetch_user_videos` / `fetch_collection_videos`.\"},{\"name\":\"object_nonce_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional. `feedNonceId` (numeric) from search results, pairs with the above to improve hit rate.\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw response; False=simplified parsed structure (recommended for media download).\"},{\"name\":\"share_url\",\"type\":\"string | null\",\"required\":false,\"description\":\"Last, optional. Channels share URL (`https://weixin.qq.com/sph/…`), e.g. `https://weixin.qq.com/sph/AH3sCoIPhH`. Used only when both object_id and export_id are empty.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-channels\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-channels/v2/video-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/video-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/video-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-channels/v2/video-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-channels/v2/video-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-channels/v2/video-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-channels/v2/video-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-channels/v2/video-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-channels/v2/video-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get WeChat Channels Video Detail" + modelName: "WeChat Channels Video Detail" modelId: "wechat-channels/v2/video-detail" vendor: "WeChat Channels" vendorSlug: "wechat-channels" diff --git a/model-api-reference/platform-apis/wechat-channels/v2/video-share-url.md b/model-api-reference/platform-apis/wechat-channels/v2/video-share-url.md index 4a315722..208f5dc0 100644 --- a/model-api-reference/platform-apis/wechat-channels/v2/video-share-url.md +++ b/model-api-reference/platform-apis/wechat-channels/v2/video-share-url.md @@ -1,13 +1,13 @@ --- -title: "Generate WeChat Channels Video Share URL API Reference" -description: "SandBase API operation wechat-channels/v2/video-share-url." +title: "WeChat Channels Video Share URL API Reference" +description: "SandBase API reference for model wechat-channels/v2/video-share-url. Call /v1/api/wechat-channels/v2/video-share-url; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/wechat-channels/v2/video-share-url" -apiReferenceJson: "{\"title\":\"Generate WeChat Channels Video Share URL\",\"operation\":\"WeChat Channels API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-channels/v2/video-share-url\",\"description\":\"Given a video `object_id`, return a shareable `weixin.qq.com/sph/…` short link (the inverse of the `share_url` input of `fetch_video_detail`). Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"object_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video objectId (numeric), e.g. `14941130915890399732`. From the video `id` of `fetch_user_videos` / `fetch_video_detail`.\",\"constraints\":\"Length: 0 to 32. Pattern: ^[0-9]+$\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw response; False=simplified parsed structure.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-channels\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-channels/v2/video-share-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"object_id\\\": \\\"123456\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"object_id\\\": \\\"123456\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/video-share-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"object_id\\\": \\\"123456\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/video-share-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-channels/v2/video-share-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-channels/v2/video-share-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-channels/v2/video-share-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-channels/v2/video-share-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-channels/v2/video-share-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-channels/v2/video-share-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"WeChat Channels Video Share URL\",\"operation\":\"WeChat Channels API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-channels/v2/video-share-url\",\"description\":\"Returns the share URL for a specific WeChat Channels video using its numeric object ID. Supports both raw and simplified parsed response formats. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"object_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video objectId (numeric), e.g. `14941130915890399732`. From the video `id` of `fetch_user_videos` / `fetch_video_detail`.\",\"constraints\":\"Length: 0 to 32. Pattern: ^[0-9]+$\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw response; False=simplified parsed structure.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-channels\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-channels/v2/video-share-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"object_id\\\": \\\"123456\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"object_id\\\": \\\"123456\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/video-share-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"object_id\\\": \\\"123456\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-channels/v2/video-share-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-channels/v2/video-share-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-channels/v2/video-share-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-channels/v2/video-share-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-channels/v2/video-share-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-channels/v2/video-share-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-channels/v2/video-share-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Generate WeChat Channels Video Share URL" + modelName: "WeChat Channels Video Share URL" modelId: "wechat-channels/v2/video-share-url" vendor: "WeChat Channels" vendorSlug: "wechat-channels" diff --git a/model-api-reference/platform-apis/wechat-mp/v2/account-articles.md b/model-api-reference/platform-apis/wechat-mp/v2/account-articles.md index c8088c7c..de659b6d 100644 --- a/model-api-reference/platform-apis/wechat-mp/v2/account-articles.md +++ b/model-api-reference/platform-apis/wechat-mp/v2/account-articles.md @@ -1,13 +1,13 @@ --- -title: "Get WeChat MP Account Articles API Reference" -description: "SandBase API operation wechat-mp/v2/account-articles." +title: "WeChat MP Account Articles API Reference" +description: "SandBase API reference for model wechat-mp/v2/account-articles. Call /v1/api/wechat-mp/v2/account-articles; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/wechat-mp/v2/account-articles" -apiReferenceJson: "{\"title\":\"Get WeChat MP Account Articles\",\"operation\":\"WeChat MP API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-mp/v2/account-articles\",\"description\":\"Pass a `gh_username` to get a single page of the account's historical posts (article tab). Manual paging: leave `offset` empty for the first page → take `next_offset` (base64 cursor) from the response → pass it as `offset` in the next request; `is_end` truthy means the last page. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"item_show_type\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Optional content tab (matches the \\\"Articles / Videos / Audios\\\" tabs on the account homepage). Empty / `0`=articles (default), `5`=videos, `7`=audios, `8`=image-text posts. Omitting it = articles, behavior unchanged.\"},{\"name\":\"offset\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional pagination cursor (base64), **leave empty for the first page**; for the next page pass `next_offset` from the previous response. E.g. `CAMQChiS5KfRBiAKOJLkp9EGQABIAVgAYABwAQ==`\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Optional, default 20, range **10-20**. Articles per page.\",\"constraints\":\"Range: 10 to 20\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw; False=simplified parsing.\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Official account `gh_username` (`gh_…`). E.g. `gh_363b924965e9`\",\"constraints\":\"Length: 0 to 64. Pattern: ^gh_[A-Za-z0-9_]+$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-mp\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-mp/v2/account-articles \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"gh_example\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"gh_example\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/account-articles\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"gh_example\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/account-articles\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-mp/v2/account-articles\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-mp/v2/account-articles\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-mp/v2/account-articles\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-mp/v2/account-articles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-mp/v2/account-articles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-mp/v2/account-articles\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"WeChat MP Account Articles\",\"operation\":\"WeChat MP API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-mp/v2/account-articles\",\"description\":\"Get the published articles of a WeChat official account by its gh_ username: titles, links, covers and post dates, one page at a time, including video and audio tabs. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"item_show_type\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Optional content tab (matches the \\\"Articles / Videos / Audios\\\" tabs on the account homepage). Empty / `0`=articles (default), `5`=videos, `7`=audios, `8`=image-text posts. Omitting it = articles, behavior unchanged.\"},{\"name\":\"offset\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional pagination cursor (base64), **leave empty for the first page**; for the next page pass `next_offset` from the previous response. E.g. `CAMQChiS5KfRBiAKOJLkp9EGQABIAVgAYABwAQ==`\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Optional, default 20, range **10-20**. Articles per page.\",\"constraints\":\"Range: 10 to 20\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw; False=simplified parsing.\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Official account `gh_username` (`gh_…`). E.g. `gh_363b924965e9`\",\"constraints\":\"Length: 0 to 64. Pattern: ^gh_[A-Za-z0-9_]+$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-mp\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-mp/v2/account-articles \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"gh_363b924965e9\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"gh_363b924965e9\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/account-articles\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"gh_363b924965e9\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/account-articles\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-mp/v2/account-articles\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-mp/v2/account-articles\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-mp/v2/account-articles\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-mp/v2/account-articles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-mp/v2/account-articles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-mp/v2/account-articles\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get WeChat MP Account Articles" + modelName: "WeChat MP Account Articles" modelId: "wechat-mp/v2/account-articles" vendor: "WeChat MP" vendorSlug: "wechat-mp" diff --git a/model-api-reference/platform-apis/wechat-mp/v2/account-profile.md b/model-api-reference/platform-apis/wechat-mp/v2/account-profile.md index 1cd9a210..a2c380c4 100644 --- a/model-api-reference/platform-apis/wechat-mp/v2/account-profile.md +++ b/model-api-reference/platform-apis/wechat-mp/v2/account-profile.md @@ -1,13 +1,13 @@ --- -title: "Get WeChat MP Account Profile API Reference" -description: "SandBase API operation wechat-mp/v2/account-profile." +title: "WeChat MP Account Profile API Reference" +description: "WeChat MP Account Profile API reference for SandBase. Use model wechat-mp/v2/account-profile with /v1/api/wechat-mp/v2/account-profile; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/wechat-mp/v2/account-profile" -apiReferenceJson: "{\"title\":\"Get WeChat MP Account Profile\",\"operation\":\"WeChat MP API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-mp/v2/account-profile\",\"description\":\"Pass a `gh_username` to get the official account profile: name / avatar / description / verification entity type, etc. Some accounts (like the example) have sparse fields; `nick_name` / `signature` / `head_url` may be `null`. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw; False=simplified parsing.\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Official account `gh_username` (`gh_…`). Sources: `content.user_name` from article detail, or `jumpInfo.userName` from WeChat Search V2 `fetch_search` (business_type=account) results. E.g. `gh_363b924965e9`\",\"constraints\":\"Length: 0 to 64. Pattern: ^gh_[A-Za-z0-9_]+$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-mp\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-mp/v2/account-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"gh_example\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"gh_example\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/account-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"gh_example\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/account-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-mp/v2/account-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-mp/v2/account-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-mp/v2/account-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-mp/v2/account-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-mp/v2/account-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-mp/v2/account-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"WeChat MP Account Profile\",\"operation\":\"WeChat MP API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-mp/v2/account-profile\",\"description\":\"Retrieves the profile details of an official WeChat account, including name, avatar, signature, and verification entity type using its official account ID. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw; False=simplified parsing.\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Official account `gh_username` (`gh_…`). Sources: `content.user_name` from article detail, or `jumpInfo.userName` from WeChat Search V2 `fetch_search` (business_type=account) results. E.g. `gh_363b924965e9`\",\"constraints\":\"Length: 0 to 64. Pattern: ^gh_[A-Za-z0-9_]+$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-mp\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-mp/v2/account-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"username\\\": \\\"gh_example\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"username\\\": \\\"gh_example\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/account-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"username\\\": \\\"gh_example\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/account-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-mp/v2/account-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-mp/v2/account-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-mp/v2/account-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-mp/v2/account-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-mp/v2/account-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-mp/v2/account-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get WeChat MP Account Profile" + modelName: "WeChat MP Account Profile" modelId: "wechat-mp/v2/account-profile" vendor: "WeChat MP" vendorSlug: "wechat-mp" diff --git a/model-api-reference/platform-apis/wechat-mp/v2/account-services.md b/model-api-reference/platform-apis/wechat-mp/v2/account-services.md deleted file mode 100644 index 1133ea35..00000000 --- a/model-api-reference/platform-apis/wechat-mp/v2/account-services.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get WeChat MP Account Services & Custom Menu API Reference" -description: "SandBase API operation wechat-mp/v2/account-services." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/wechat-mp/v2/account-services" -apiReferenceJson: "{\"title\":\"Get WeChat MP Account Services & Custom Menu\",\"operation\":\"WeChat MP API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-mp/v2/account-services\",\"description\":\"Pass a `gh_username` to get the custom menu / service entries at the bottom of the official account. Accounts without a custom menu return an empty menu. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw; False=simplified parsing.\"},{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"description\":\"Official account `gh_username` (`gh_…`). E.g. `gh_363b924965e9`\",\"constraints\":\"Length: 0 to 64. Pattern: ^gh_[A-Za-z0-9_]+$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-mp\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-mp/v2/account-services \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"username\\\": \\\"gh_example\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"username\\\": \\\"gh_example\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/account-services\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"username\\\": \\\"gh_example\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/account-services\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-mp/v2/account-services\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-mp/v2/account-services\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-mp/v2/account-services\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-mp/v2/account-services\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-mp/v2/account-services\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-mp/v2/account-services\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get WeChat MP Account Services & Custom Menu" - modelId: "wechat-mp/v2/account-services" - vendor: "WeChat MP" - vendorSlug: "wechat-mp" - modelSlug: "v2/account-services" - protocol: "API Reference" - endpoint: "/v1/api/wechat-mp/v2/account-services" - publishedAt: "" - capabilities: ["api","wechat-mp"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/wechat-mp/v2/article-ad.md b/model-api-reference/platform-apis/wechat-mp/v2/article-ad.md index 001105ef..9fe130f9 100644 --- a/model-api-reference/platform-apis/wechat-mp/v2/article-ad.md +++ b/model-api-reference/platform-apis/wechat-mp/v2/article-ad.md @@ -1,13 +1,13 @@ --- -title: "Get WeChat MP Article Ads API Reference" -description: "SandBase API operation wechat-mp/v2/article-ad." +title: "WeChat MP Article Ads API Reference" +description: "WeChat MP Article Ads API reference for SandBase. Use model wechat-mp/v2/article-ad with /v1/api/wechat-mp/v2/article-ad; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/wechat-mp/v2/article-ad" -apiReferenceJson: "{\"title\":\"Get WeChat MP Article Ads\",\"operation\":\"WeChat MP API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-mp/v2/article-ad\",\"description\":\"Pass an article URL to get the embedded ad slot info of the article. This endpoint responds relatively slowly, please be patient; articles without ads return empty. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=full raw response; False=flattened ad list.\",\"default\":\"true\"},{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"WeChat MP article URL. E.g. `https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw` (this article has no ads, returns empty)\",\"constraints\":\"Length: 0 to 2048. Pattern: ^https?://mp\\\\.weixin\\\\.qq\\\\.com/s([/?].+)?$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-mp\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-mp/v2/article-ad \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/article-ad\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/article-ad\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-mp/v2/article-ad\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-mp/v2/article-ad\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-mp/v2/article-ad\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-mp/v2/article-ad\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-mp/v2/article-ad\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-mp/v2/article-ad\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"WeChat MP Article Ads\",\"operation\":\"WeChat MP API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-mp/v2/article-ad\",\"description\":\"Returns embedded ad slot information for a specified WeChat MP article URL. Supports choosing between the full raw response or a flattened ad list. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=full raw response; False=flattened ad list.\",\"default\":\"true\"},{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"WeChat MP article URL. E.g. `https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw` (this article has no ads, returns empty)\",\"constraints\":\"Length: 0 to 2048. Pattern: ^https?://mp\\\\.weixin\\\\.qq\\\\.com/s([/?].+)?$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-mp\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-mp/v2/article-ad \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/article-ad\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/article-ad\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-mp/v2/article-ad\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-mp/v2/article-ad\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-mp/v2/article-ad\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-mp/v2/article-ad\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-mp/v2/article-ad\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-mp/v2/article-ad\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get WeChat MP Article Ads" + modelName: "WeChat MP Article Ads" modelId: "wechat-mp/v2/article-ad" vendor: "WeChat MP" vendorSlug: "wechat-mp" diff --git a/model-api-reference/platform-apis/wechat-mp/v2/article-comments.md b/model-api-reference/platform-apis/wechat-mp/v2/article-comments.md index dbc6c33d..9627d20a 100644 --- a/model-api-reference/platform-apis/wechat-mp/v2/article-comments.md +++ b/model-api-reference/platform-apis/wechat-mp/v2/article-comments.md @@ -1,13 +1,13 @@ --- -title: "Get WeChat MP Article Comments API Reference" -description: "SandBase API operation wechat-mp/v2/article-comments." +title: "WeChat MP Article Comments API Reference" +description: "SandBase API reference for model wechat-mp/v2/article-comments. Call /v1/api/wechat-mp/v2/article-comments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/wechat-mp/v2/article-comments" -apiReferenceJson: "{\"title\":\"Get WeChat MP Article Comments\",\"operation\":\"WeChat MP API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-mp/v2/article-comments\",\"description\":\"Get WeChat MP article comments (single page, `buffer` cursor pagination); returns one page of featured comments. Pagination: leave `buffer` empty for the first page → take `buffer` from the response → pass it back in the next request; `has_more` false means the last page. For second-level replies of a specific comment, use `fetch_comment_replies` (pass the comment's `content_id`). Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response. ⚠️ Large-integer ID precision: IDs such as `content_id` in the response are 64-bit big integers beyond JavaScript's safe-integer range (2^53-1). Always receive / pass such IDs as strings (parse JSON with json-bigint or read them as text), never through JS `Number`. Swagger UI rounds the trailing digits of huge integers in its docs view — this is expected and does not affect the actual data returned by the API.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"buffer\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional, default empty. Pagination cursor; leave empty for the first page, pass `buffer` from the previous response for the next page.\",\"default\":\"\\\"\\\"\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=full raw comment objects; False=simplified comment view.\",\"default\":\"true\"},{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"WeChat MP article URL (`https://mp.weixin.qq.com/s/…`). E.g. `https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw`\",\"constraints\":\"Length: 0 to 2048. Pattern: ^https?://mp\\\\.weixin\\\\.qq\\\\.com/s([/?].+)?$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-mp\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-mp/v2/article-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/article-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/article-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-mp/v2/article-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-mp/v2/article-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-mp/v2/article-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-mp/v2/article-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-mp/v2/article-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-mp/v2/article-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"WeChat MP Article Comments\",\"operation\":\"WeChat MP API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-mp/v2/article-comments\",\"description\":\"Get the comments on a WeChat official account article from its URL: comment text, likes, time and commenter region, with cursor pagination. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"buffer\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional, default empty. Pagination cursor; leave empty for the first page, pass `buffer` from the previous response for the next page.\",\"default\":\"\\\"\\\"\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=full raw comment objects; False=simplified comment view.\",\"default\":\"true\"},{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"WeChat MP article URL (`https://mp.weixin.qq.com/s/…`). E.g. `https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw`\",\"constraints\":\"Length: 0 to 2048. Pattern: ^https?://mp\\\\.weixin\\\\.qq\\\\.com/s([/?].+)?$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-mp\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-mp/v2/article-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/article-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/article-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-mp/v2/article-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-mp/v2/article-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-mp/v2/article-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-mp/v2/article-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-mp/v2/article-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-mp/v2/article-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get WeChat MP Article Comments" + modelName: "WeChat MP Article Comments" modelId: "wechat-mp/v2/article-comments" vendor: "WeChat MP" vendorSlug: "wechat-mp" diff --git a/model-api-reference/platform-apis/wechat-mp/v2/article-detail.md b/model-api-reference/platform-apis/wechat-mp/v2/article-detail.md index 755f2d85..a8e4650b 100644 --- a/model-api-reference/platform-apis/wechat-mp/v2/article-detail.md +++ b/model-api-reference/platform-apis/wechat-mp/v2/article-detail.md @@ -1,13 +1,13 @@ --- -title: "Get WeChat MP Article Detail API Reference" -description: "SandBase API operation wechat-mp/v2/article-detail." +title: "WeChat MP Article Detail API Reference" +description: "WeChat MP Article Detail API reference for SandBase. Use model wechat-mp/v2/article-detail with /v1/api/wechat-mp/v2/article-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/wechat-mp/v2/article-detail" -apiReferenceJson: "{\"title\":\"Get WeChat MP Article Detail\",\"operation\":\"WeChat MP API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-mp/v2/article-detail\",\"description\":\"Pass an article URL to get the article body / title / author / cover / publish time / album info. Regardless of `raw`, the nested `content` JSON string is always parsed into an object (structure normalized); `raw` only controls the projection scope of outer fields. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response. ⚠️ Large-integer ID precision: IDs such as `comment_id` / `msgId` in the response are 64-bit big integers beyond JavaScript's safe-integer range (2^53-1). Always receive / pass such IDs as strings (parse JSON with json-bigint or read them as text), never through JS `Number`. Swagger UI rounds the trailing digits of huge integers in its docs view — this is expected and does not affect the actual data returned by the API.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw response; False=simplified projection.\"},{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"WeChat MP article URL (`https://mp.weixin.qq.com/s/…` or long URL with `__biz`). E.g. `https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw`\",\"constraints\":\"Length: 0 to 2048. Pattern: ^https?://mp\\\\.weixin\\\\.qq\\\\.com/s([/?].+)?$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-mp\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-mp/v2/article-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/example\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/example\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/article-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/example\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/article-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-mp/v2/article-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-mp/v2/article-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-mp/v2/article-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-mp/v2/article-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-mp/v2/article-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-mp/v2/article-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"WeChat MP Article Detail\",\"operation\":\"WeChat MP API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-mp/v2/article-detail\",\"description\":\"Get a WeChat official account (MP) article from its URL: title, author, account, publish time, cover, full text and HTML content, and album info. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw response; False=simplified projection.\"},{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"WeChat MP article URL (`https://mp.weixin.qq.com/s/…` or long URL with `__biz`). E.g. `https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw`\",\"constraints\":\"Length: 0 to 2048. Pattern: ^https?://mp\\\\.weixin\\\\.qq\\\\.com/s([/?].+)?$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-mp\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-mp/v2/article-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/article-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/article-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-mp/v2/article-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-mp/v2/article-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-mp/v2/article-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-mp/v2/article-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-mp/v2/article-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-mp/v2/article-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get WeChat MP Article Detail" + modelName: "WeChat MP Article Detail" modelId: "wechat-mp/v2/article-detail" vendor: "WeChat MP" vendorSlug: "wechat-mp" diff --git a/model-api-reference/platform-apis/wechat-mp/v2/article-stats.md b/model-api-reference/platform-apis/wechat-mp/v2/article-stats.md index e85f18c4..7ee0fac8 100644 --- a/model-api-reference/platform-apis/wechat-mp/v2/article-stats.md +++ b/model-api-reference/platform-apis/wechat-mp/v2/article-stats.md @@ -1,13 +1,13 @@ --- -title: "Get WeChat MP Article Stats API Reference" -description: "SandBase API operation wechat-mp/v2/article-stats." +title: "WeChat MP Article Stats API Reference" +description: "WeChat MP Article Stats API reference for SandBase. Use model wechat-mp/v2/article-stats with /v1/api/wechat-mp/v2/article-stats; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/wechat-mp/v2/article-stats" -apiReferenceJson: "{\"title\":\"Get WeChat MP Article Stats\",\"operation\":\"WeChat MP API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-mp/v2/article-stats\",\"description\":\"Pass an article URL to get its interaction metrics (reads / likes / \\\"wow\\\" / shares / favorites / comments). Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=full raw stats object (with `show_*` visibility flags); False=simplified counts only.\",\"default\":\"true\"},{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"WeChat MP article URL (`https://mp.weixin.qq.com/s/…`). E.g. `https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw`\",\"constraints\":\"Length: 0 to 2048. Pattern: ^https?://mp\\\\.weixin\\\\.qq\\\\.com/s([/?].+)?$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-mp\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-mp/v2/article-stats \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/article-stats\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/article-stats\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-mp/v2/article-stats\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-mp/v2/article-stats\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-mp/v2/article-stats\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-mp/v2/article-stats\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-mp/v2/article-stats\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-mp/v2/article-stats\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"WeChat MP Article Stats\",\"operation\":\"WeChat MP API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-mp/v2/article-stats\",\"description\":\"Get the engagement metrics of a WeChat official account article from its URL: reads, likes, \\\"wow\\\" count, shares, favorites and comments. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=full raw stats object (with `show_*` visibility flags); False=simplified counts only.\",\"default\":\"true\"},{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"WeChat MP article URL (`https://mp.weixin.qq.com/s/…`). E.g. `https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw`\",\"constraints\":\"Length: 0 to 2048. Pattern: ^https?://mp\\\\.weixin\\\\.qq\\\\.com/s([/?].+)?$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-mp\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-mp/v2/article-stats \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/article-stats\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/article-stats\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-mp/v2/article-stats\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-mp/v2/article-stats\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-mp/v2/article-stats\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-mp/v2/article-stats\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-mp/v2/article-stats\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-mp/v2/article-stats\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get WeChat MP Article Stats" + modelName: "WeChat MP Article Stats" modelId: "wechat-mp/v2/article-stats" vendor: "WeChat MP" vendorSlug: "wechat-mp" diff --git a/model-api-reference/platform-apis/wechat-mp/v2/comment-replies.md b/model-api-reference/platform-apis/wechat-mp/v2/comment-replies.md index 5868554e..7f74afbe 100644 --- a/model-api-reference/platform-apis/wechat-mp/v2/comment-replies.md +++ b/model-api-reference/platform-apis/wechat-mp/v2/comment-replies.md @@ -1,13 +1,13 @@ --- -title: "Get WeChat MP Comment Replies API Reference" -description: "SandBase API operation wechat-mp/v2/comment-replies." +title: "WeChat MP Comment Replies API Reference" +description: "WeChat MP Comment Replies API reference for SandBase. Use model wechat-mp/v2/comment-replies with /v1/api/wechat-mp/v2/comment-replies; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/wechat-mp/v2/comment-replies" -apiReferenceJson: "{\"title\":\"Get WeChat MP Comment Replies\",\"operation\":\"WeChat MP API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-mp/v2/comment-replies\",\"description\":\"Get the second-level replies under a first-level comment. Chain: first call `fetch_article_comments` to get each comment's `content_id`, then feed it into this endpoint. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response. ⚠️ Large-integer ID precision: IDs such as `content_id` / `reply_id` in the response are 64-bit big integers beyond JavaScript's safe-integer range (2^53-1). Always receive / pass such IDs as strings (parse JSON with json-bigint or read them as text), never through JS `Number`. Swagger UI rounds the trailing digits of huge integers in its docs view — this is expected and does not affect the actual data returned by the API.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"all_pages\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default False. When True, ignores `offset` and fetches **all** replies at once (the response omits the `offset` / `next_offset` / `has_more` pagination fields).\"},{\"name\":\"content_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional (numeric). `content_id` of the target first-level comment, from `$.data.comments[N].content_id` of the `fetch_article_comments` response; **defaults to the first comment that has replies when omitted**. E.g. `12109128638545265979`\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Optional, default 0 (>=0). Reply pagination offset; 0 for the first page, pass `next_offset` from the previous response when `has_more=true`. Ignored when `all_pages=true`.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=full raw reply objects; False=simplified replies.\"},{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"WeChat MP article URL (`https://mp.weixin.qq.com/s/…`). E.g. `http://mp.weixin.qq.com/s?__biz=Mzk3NTA0MzM5NA==&mid=2247483745&idx=1&sn=3f34e768cf457a501038991ed30be1f4#rd`\",\"constraints\":\"Length: 0 to 2048. Pattern: ^https?://mp\\\\.weixin\\\\.qq\\\\.com/s([/?].+)?$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-mp\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-mp/v2/comment-replies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/example\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/example\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/comment-replies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/example\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/comment-replies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-mp/v2/comment-replies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-mp/v2/comment-replies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-mp/v2/comment-replies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-mp/v2/comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-mp/v2/comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-mp/v2/comment-replies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"WeChat MP Comment Replies\",\"operation\":\"WeChat MP API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-mp/v2/comment-replies\",\"description\":\"Returns second-level replies under a specific WeChat MP article comment using the article url and comment identifiers. Supports pagination offset and raw output formats. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"content_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional (numeric). `content_id` of the target first-level comment, from `$.data.comments[N].content_id` of the `fetch_article_comments` response; **defaults to the first comment that has replies when omitted**. E.g. `12109128638545265979`\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Optional, default 0 (>=0). Reply pagination offset; 0 for the first page, pass `next_offset` from the previous response when `has_more=true`. Ignored when `all_pages=true`.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=full raw reply objects; False=simplified replies.\"},{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"WeChat MP article URL (`https://mp.weixin.qq.com/s/…`). E.g. `http://mp.weixin.qq.com/s?__biz=Mzk3NTA0MzM5NA==&mid=2247483745&idx=1&sn=3f34e768cf457a501038991ed30be1f4#rd`\",\"constraints\":\"Length: 0 to 2048. Pattern: ^https?://mp\\\\.weixin\\\\.qq\\\\.com/s([/?].+)?$\"},{\"name\":\"comment_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"文章的评论 id(可选,**性能捷径**):不传时上游要先抓并解析整篇文章 HTML 才能拿到它,约占本接口耗时的一半;已有该值时传进来可显著加快。取自 /fetch_article_detail 或 /fetch_article_detail_h5 响应的 `$.data.content.comment_id`/Article comment id (optional, performance shortcut): when omitted, upstream must fetch and parse the whole article HTML to obtain it, which accounts for about half of this endpoint's latency\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-mp\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-mp/v2/comment-replies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/example\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/example\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/comment-replies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/example\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/comment-replies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-mp/v2/comment-replies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-mp/v2/comment-replies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-mp/v2/comment-replies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-mp/v2/comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-mp/v2/comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-mp/v2/comment-replies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get WeChat MP Comment Replies" + modelName: "WeChat MP Comment Replies" modelId: "wechat-mp/v2/comment-replies" vendor: "WeChat MP" vendorSlug: "wechat-mp" diff --git a/model-api-reference/platform-apis/wechat-mp/v2/related-articles.md b/model-api-reference/platform-apis/wechat-mp/v2/related-articles.md index 0569a3b4..9c9620ec 100644 --- a/model-api-reference/platform-apis/wechat-mp/v2/related-articles.md +++ b/model-api-reference/platform-apis/wechat-mp/v2/related-articles.md @@ -1,13 +1,13 @@ --- -title: "Get WeChat MP Related Articles API Reference" -description: "SandBase API operation wechat-mp/v2/related-articles." +title: "WeChat MP Related Articles API Reference" +description: "SandBase API reference for model wechat-mp/v2/related-articles. Call /v1/api/wechat-mp/v2/related-articles; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/wechat-mp/v2/related-articles" -apiReferenceJson: "{\"title\":\"Get WeChat MP Related Articles\",\"operation\":\"WeChat MP API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-mp/v2/related-articles\",\"description\":\"Pass an article URL to get the \\\"related articles\\\" at the bottom of the article. Articles without this feature return an empty list. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=full raw response; False=simplified projection.\",\"default\":\"true\"},{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"WeChat MP article URL (long or short form). E.g. `https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw` (this article has related articles disabled, returns empty)\",\"constraints\":\"Length: 0 to 2048. Pattern: ^https?://mp\\\\.weixin\\\\.qq\\\\.com/s([/?].+)?$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-mp\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-mp/v2/related-articles \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/related-articles\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/related-articles\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-mp/v2/related-articles\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-mp/v2/related-articles\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-mp/v2/related-articles\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-mp/v2/related-articles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-mp/v2/related-articles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-mp/v2/related-articles\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"WeChat MP Related Articles\",\"operation\":\"WeChat MP API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-mp/v2/related-articles\",\"description\":\"Retrieves the list of related articles displayed at the bottom of a WeChat MP post using its link. Supports choosing between raw and simplified response formats. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=full raw response; False=simplified projection.\",\"default\":\"true\"},{\"name\":\"url\",\"type\":\"string\",\"required\":true,\"description\":\"WeChat MP article URL (long or short form). E.g. `https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw` (this article has related articles disabled, returns empty)\",\"constraints\":\"Length: 0 to 2048. Pattern: ^https?://mp\\\\.weixin\\\\.qq\\\\.com/s([/?].+)?$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-mp\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-mp/v2/related-articles \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/related-articles\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"url\\\": \\\"https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-mp/v2/related-articles\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-mp/v2/related-articles\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-mp/v2/related-articles\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-mp/v2/related-articles\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-mp/v2/related-articles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-mp/v2/related-articles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-mp/v2/related-articles\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get WeChat MP Related Articles" + modelName: "WeChat MP Related Articles" modelId: "wechat-mp/v2/related-articles" vendor: "WeChat MP" vendorSlug: "wechat-mp" diff --git a/model-api-reference/platform-apis/wechat-search/v2/search-videos.md b/model-api-reference/platform-apis/wechat-search/v2/search-videos.md index c91abca4..213dd072 100644 --- a/model-api-reference/platform-apis/wechat-search/v2/search-videos.md +++ b/model-api-reference/platform-apis/wechat-search/v2/search-videos.md @@ -1,13 +1,13 @@ --- -title: "WeChat Channels Video Search API Reference" -description: "SandBase API operation wechat-search/v2/search-videos." +title: "WeChat Search for Channels Videos API Reference" +description: "SandBase API reference for model wechat-search/v2/search-videos. Call /v1/api/wechat-search/v2/search-videos; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/wechat-search/v2/search-videos" -apiReferenceJson: "{\"title\":\"WeChat Channels Video Search\",\"operation\":\"WeChat Search API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-search/v2/search-videos\",\"description\":\"Search WeChat Channels videos specifically (`video` vertical), with the result page's \\\"duration\\\" filter, \\\"relevance/available/most-liked\\\" sort, and \\\"time\\\" dropdown. Equivalent to universal search `/fetch_search` (`business_type=video`) plus filters; all filters are verified to work. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response. ⚠️ Large-integer ID precision: IDs such as `docID` / `feedNonceId` in the response are 64-bit big integers beyond JavaScript's safe-integer range (2^53-1). Always receive / pass such IDs as strings (parse JSON with json-bigint or read them as text), never through JS `Number`. Swagger UI rounds the trailing digits of huge integers in its docs view — this is expected and does not affect the actual data returned by the API.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional. Pagination cursor, same usage as universal search `/fetch_search`. Leave empty for the first page; for the next page pass back the `cursor` from the previous response (repeat the same `duration` / `sort` / `publish_time`).\"},{\"name\":\"duration\",\"type\":\"integer | string\",\"required\":false,\"description\":\"Optional, default `all`. Duration tier (Channels video only) — `all`/0 / `short`/1 (<5min) / `medium`/2 (5-10min) / `long`/3 (20min+); string key or integer, invalid values rejected (400).\",\"default\":\"all\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (1-100 chars)\",\"constraints\":\"Length: 1 to 100\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Optional, default 0 (>=0). Pass `0` for the first page; use `cursor` to paginate (offset alone does not work).\",\"default\":\"0\",\"constraints\":\"Minimum: 0\"},{\"name\":\"publish_time\",\"type\":\"integer | string\",\"required\":false,\"description\":\"Optional, default `all`. Publish time — `all`/0 / `day`/1 / `week`/2 / `half_year`/3; string key or integer, invalid values rejected (400).\",\"default\":\"all\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw search response; False=simplified parsing.\",\"default\":\"true\"},{\"name\":\"sort\",\"type\":\"integer | string\",\"required\":false,\"description\":\"Optional, default `default`. Sort — `default`/0 (relevance) / `latest`/1 (newest) / `hot`/2 (most liked); string key or integer, invalid values rejected (400).\",\"default\":\"default\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-search\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-search/v2/search-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-search/v2/search-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-search/v2/search-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-search/v2/search-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-search/v2/search-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-search/v2/search-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-search/v2/search-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-search/v2/search-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-search/v2/search-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"WeChat Search for Channels Videos\",\"operation\":\"WeChat Search API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-search/v2/search-videos\",\"description\":\"Search WeChat Channels videos by keyword with duration, sort (relevance, available, most liked) and publish-time filters. Returns titles, creators, duration, likes and publish time. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional. Pagination cursor, same usage as universal search `/fetch_search`. Leave empty for the first page; for the next page pass back the `cursor` from the previous response (repeat the same `duration` / `sort` / `publish_time`).\"},{\"name\":\"duration\",\"type\":\"integer | string\",\"required\":false,\"description\":\"Optional, default `all`. Duration tier (Channels video only) — `all`/0 / `short`/1 (<5min) / `medium`/2 (5-10min) / `long`/3 (20min+); string key or integer, invalid values rejected (400).\",\"default\":\"all\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (1-100 chars)\",\"constraints\":\"Length: 1 to 100\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Optional, default 0 (>=0). Pass `0` for the first page; use `cursor` to paginate (offset alone does not work).\",\"default\":\"0\",\"constraints\":\"Minimum: 0\"},{\"name\":\"publish_time\",\"type\":\"integer | string\",\"required\":false,\"description\":\"Optional, default `all`. Publish time — `all`/0 / `day`/1 / `week`/2 / `half_year`/3; string key or integer, invalid values rejected (400).\",\"default\":\"all\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw search response; False=simplified parsing.\",\"default\":\"true\"},{\"name\":\"sort\",\"type\":\"integer | string\",\"required\":false,\"description\":\"Optional, default `default`. Sort — `default`/0 (relevance) / `latest`/1 (newest) / `hot`/2 (most liked); string key or integer, invalid values rejected (400).\",\"default\":\"default\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-search\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-search/v2/search-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-search/v2/search-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-search/v2/search-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-search/v2/search-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-search/v2/search-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-search/v2/search-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-search/v2/search-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-search/v2/search-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-search/v2/search-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "WeChat Channels Video Search" + modelName: "WeChat Search for Channels Videos" modelId: "wechat-search/v2/search-videos" vendor: "WeChat Search" vendorSlug: "wechat-search" diff --git a/model-api-reference/platform-apis/wechat-search/v2/search.md b/model-api-reference/platform-apis/wechat-search/v2/search.md index 56fc5c9f..1df782b9 100644 --- a/model-api-reference/platform-apis/wechat-search/v2/search.md +++ b/model-api-reference/platform-apis/wechat-search/v2/search.md @@ -1,13 +1,13 @@ --- -title: "WeChat Universal Search API Reference" -description: "SandBase API operation wechat-search/v2/search." +title: "WeChat Search API Reference" +description: "WeChat Search API reference for SandBase. Use model wechat-search/v2/search with /v1/api/wechat-search/v2/search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/wechat-search/v2/search" -apiReferenceJson: "{\"title\":\"WeChat Universal Search\",\"operation\":\"WeChat Search API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-search/v2/search\",\"description\":\"Searches official accounts / articles / Channels videos / live streams / Moments / news / books / images / encyclopedia / WeChat Index, etc. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response. ⚠️ Large-integer ID precision: IDs such as `docID` / `feedNonceId` in the response are 64-bit big integers beyond JavaScript's safe-integer range (2^53-1). Always receive / pass such IDs as strings (parse JSON with json-bigint or read them as text), never through JS `Number`. Swagger UI rounds the trailing digits of huge integers in its docs view — this is expected and does not affect the actual data returned by the API.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"business_type\",\"type\":\"string\",\"required\":false,\"description\":\"Optional, default `all`. Vertical string key, only the following are supported — `all` / `account` / `article` / `video` / `live_stream` / `moments` / `news` / `book` / `listen` / `image` / `encyclopedia` / `weixin_index`; any other value is rejected (422).\",\"default\":\"all\",\"constraints\":\"Allowed values: all, account, article, video, live_stream, moments, news, book, listen, image, encyclopedia, weixin_index\"},{\"name\":\"cursor\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional. Pagination cursor. Leave empty for the first page; for the next page pass back the `cursor` returned in the previous response (repeat the same `sort` / `publish_time`), and use `continue_flag` to check whether there are more pages.\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (1-100 chars)\",\"constraints\":\"Length: 1 to 100\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Optional, default 0 (>=0). Pass `0` for the first page; **use `cursor` to paginate — offset alone does not work** (it returns the first page every time).\",\"default\":\"0\",\"constraints\":\"Minimum: 0\"},{\"name\":\"publish_time\",\"type\":\"integer | string\",\"required\":false,\"description\":\"Optional, default `all`. Publish time (result page \\\"time\\\" dropdown, common) — `all`/0 / `day`/1 / `week`/2 / `half_year`/3; string key or integer, invalid values rejected (400).\",\"default\":\"all\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw search response; False=simplified parsing.\",\"default\":\"true\"},{\"name\":\"sort\",\"type\":\"integer | string\",\"required\":false,\"description\":\"Optional, default `default`. Sort (result page \\\"sort\\\" dropdown, common to all verticals) — `default`/0 (relevance) / `latest`/1 (newest) / `hot`/2 (most liked); string key or integer, invalid values rejected (400).\",\"default\":\"default\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-search\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-search/v2/search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-search/v2/search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-search/v2/search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-search/v2/search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-search/v2/search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-search/v2/search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-search/v2/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-search/v2/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-search/v2/search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"WeChat Search\",\"operation\":\"WeChat Search API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/wechat-search/v2/search\",\"description\":\"Search WeChat with one endpoint: official account articles, accounts, Channels videos, live streams, news and more. Filter by vertical, sort and publish time, with cursor pagination. Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"business_type\",\"type\":\"string\",\"required\":false,\"description\":\"Optional, default `all`. Vertical string key, only the following are supported — `all` / `account` / `article` / `video` / `live_stream` / `moments` / `news` / `book` / `listen` / `image` / `encyclopedia` / `weixin_index`; any other value is rejected (422).\",\"default\":\"all\",\"constraints\":\"Allowed values: all, account, article, video, live_stream, moments, news, book, listen, image, encyclopedia, weixin_index\"},{\"name\":\"cursor\",\"type\":\"string | null\",\"required\":false,\"description\":\"Optional. Pagination cursor. Leave empty for the first page; for the next page pass back the `cursor` returned in the previous response (repeat the same `sort` / `publish_time`), and use `continue_flag` to check whether there are more pages.\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (1-100 chars)\",\"constraints\":\"Length: 1 to 100\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Optional, default 0 (>=0). Pass `0` for the first page; **use `cursor` to paginate — offset alone does not work** (it returns the first page every time).\",\"default\":\"0\",\"constraints\":\"Minimum: 0\"},{\"name\":\"publish_time\",\"type\":\"integer | string\",\"required\":false,\"description\":\"Optional, default `all`. Publish time (result page \\\"time\\\" dropdown, common) — `all`/0 / `day`/1 / `week`/2 / `half_year`/3; string key or integer, invalid values rejected (400).\",\"default\":\"all\"},{\"name\":\"raw\",\"type\":\"boolean\",\"required\":false,\"description\":\"Optional, default True. True=raw search response; False=simplified parsing.\",\"default\":\"true\"},{\"name\":\"sort\",\"type\":\"integer | string\",\"required\":false,\"description\":\"Optional, default `default`. Sort (result page \\\"sort\\\" dropdown, common to all verticals) — `default`/0 (relevance) / `latest`/1 (newest) / `hot`/2 (most liked); string key or integer, invalid values rejected (400).\",\"default\":\"default\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, wechat-search\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/wechat-search/v2/search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/wechat-search/v2/search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/wechat-search/v2/search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"wechat-search/v2/search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"wechat-search/v2/search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"wechat-search/v2/search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"wechat-search/v2/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"wechat-search/v2/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"wechat-search/v2/search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "WeChat Universal Search" + modelName: "WeChat Search" modelId: "wechat-search/v2/search" vendor: "WeChat Search" vendorSlug: "wechat-search" diff --git a/model-api-reference/platform-apis/weibo/app/ai-smart-search.md b/model-api-reference/platform-apis/weibo/app/ai-smart-search.md index a31ce46e..73128e4f 100644 --- a/model-api-reference/platform-apis/weibo/app/ai-smart-search.md +++ b/model-api-reference/platform-apis/weibo/app/ai-smart-search.md @@ -1,13 +1,13 @@ --- -title: "AI Smart Search API Reference" -description: "SandBase API operation weibo/app/ai-smart-search." +title: "Weibo App AI Smart Search API Reference" +description: "Weibo App AI Smart Search API reference for SandBase. Use model weibo/app/ai-smart-search with /v1/api/weibo/app/ai-smart-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/app/ai-smart-search" -apiReferenceJson: "{\"title\":\"AI Smart Search\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/ai-smart-search\",\"description\":\"Use Weibo AI Smart Search to search, return AI-enhanced search results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, starts from 1 (default 1)\",\"default\":\"1\",\"constraints\":\"Minimum: 1\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/ai-smart-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/ai-smart-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/ai-smart-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/ai-smart-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/ai-smart-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/ai-smart-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/ai-smart-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/ai-smart-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/ai-smart-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo App AI Smart Search\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/ai-smart-search\",\"description\":\"Returns AI smart search channel results and feed metadata from Weibo for a specified keyword query, with optional page-based pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, starts from 1 (default 1)\",\"default\":\"1\",\"constraints\":\"Minimum: 1\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/ai-smart-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/ai-smart-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/ai-smart-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/ai-smart-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/ai-smart-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/ai-smart-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/ai-smart-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/ai-smart-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/ai-smart-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "AI Smart Search" + modelName: "Weibo App AI Smart Search" modelId: "weibo/app/ai-smart-search" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/app/home-recommend-feed.md b/model-api-reference/platform-apis/weibo/app/home-recommend-feed.md index fecf7e91..ee10f318 100644 --- a/model-api-reference/platform-apis/weibo/app/home-recommend-feed.md +++ b/model-api-reference/platform-apis/weibo/app/home-recommend-feed.md @@ -1,13 +1,13 @@ --- -title: "Get home recommend feed API Reference" -description: "SandBase API operation weibo/app/home-recommend-feed." +title: "Weibo Home Recommend Feed API Reference" +description: "SandBase API reference for model weibo/app/home-recommend-feed. Call /v1/api/weibo/app/home-recommend-feed; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/app/home-recommend-feed" -apiReferenceJson: "{\"title\":\"Get home recommend feed\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/home-recommend-feed\",\"description\":\"Get the home recommend feed from Weibo.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Items per page, default 15, max 50\",\"default\":\"15\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"page\",\"type\":\"string | null\",\"required\":false,\"description\":\"Page number, don't pass for first page, pass \\\"2\\\" for second page, and so on\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/home-recommend-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"weibo/app/home-recommend-feed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"weibo/app/home-recommend-feed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/home-recommend-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"weibo/app/home-recommend-feed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/home-recommend-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/home-recommend-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/home-recommend-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/home-recommend-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/home-recommend-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/home-recommend-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/home-recommend-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Home Recommend Feed\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/home-recommend-feed\",\"description\":\"Returns recommended feed items from the Weibo app homepage, with options to paginate and specify the number of items per request.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Items per page, default 15, max 50\",\"default\":\"15\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"page\",\"type\":\"string | null\",\"required\":false,\"description\":\"Page number, don't pass for first page, pass \\\"2\\\" for second page, and so on\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/home-recommend-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/home-recommend-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/home-recommend-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/home-recommend-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/home-recommend-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/home-recommend-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/home-recommend-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/home-recommend-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/home-recommend-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get home recommend feed" + modelName: "Weibo Home Recommend Feed" modelId: "weibo/app/home-recommend-feed" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/app/hot-search-categories.md b/model-api-reference/platform-apis/weibo/app/hot-search-categories.md index e29edecc..ec27aa4e 100644 --- a/model-api-reference/platform-apis/weibo/app/hot-search-categories.md +++ b/model-api-reference/platform-apis/weibo/app/hot-search-categories.md @@ -1,13 +1,13 @@ --- -title: "Get hot search categories API Reference" -description: "SandBase API operation weibo/app/hot-search-categories." +title: "Weibo Hot Search Categories API Reference" +description: "SandBase API reference for model weibo/app/hot-search-categories. Call /v1/api/weibo/app/hot-search-categories; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/app/hot-search-categories" -apiReferenceJson: "{\"title\":\"Get hot search categories\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/hot-search-categories\",\"description\":\"Get all available hot search category list from Weibo.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/hot-search-categories \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"weibo/app/hot-search-categories\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"weibo/app/hot-search-categories\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/hot-search-categories\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"weibo/app/hot-search-categories\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/hot-search-categories\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/hot-search-categories\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/hot-search-categories\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/hot-search-categories\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/hot-search-categories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/hot-search-categories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/hot-search-categories\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Hot Search Categories\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/hot-search-categories\",\"description\":\"Returns all available hot search categories from Weibo. Enables browsing trending topics segmented by specific Weibo category classifications.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/hot-search-categories \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/hot-search-categories\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/hot-search-categories\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/hot-search-categories\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/hot-search-categories\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/hot-search-categories\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/hot-search-categories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/hot-search-categories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/hot-search-categories\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get hot search categories" + modelName: "Weibo Hot Search Categories" modelId: "weibo/app/hot-search-categories" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/app/hot-search.md b/model-api-reference/platform-apis/weibo/app/hot-search.md index 2dd65619..e12cd996 100644 --- a/model-api-reference/platform-apis/weibo/app/hot-search.md +++ b/model-api-reference/platform-apis/weibo/app/hot-search.md @@ -1,13 +1,13 @@ --- -title: "Get hot search API Reference" -description: "SandBase API operation weibo/app/hot-search." +title: "Weibo Hot Search Rankings API Reference" +description: "Weibo Hot Search Rankings API reference for SandBase. Use model weibo/app/hot-search with /v1/api/weibo/app/hot-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/app/hot-search" -apiReferenceJson: "{\"title\":\"Get hot search\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/hot-search\",\"description\":\"Get Weibo hot search ranking, supports multiple categories.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"category\",\"type\":\"string\",\"required\":false,\"description\":\"Hot search category\",\"default\":\"realtimehot\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Items per page, default 20, max 50\",\"default\":\"20\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, starts from 1 (default 1)\",\"default\":\"1\",\"constraints\":\"Minimum: 1\"},{\"name\":\"region_name\",\"type\":\"string\",\"required\":false,\"description\":\"City name for local hot search, only effective when category=region, default Beijing\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/hot-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"weibo/app/hot-search\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"weibo/app/hot-search\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/hot-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"weibo/app/hot-search\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/hot-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/hot-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/hot-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/hot-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/hot-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/hot-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/hot-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Hot Search Rankings\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/hot-search\",\"description\":\"Returns current Weibo hot search rankings across various categories. Supports filtering by category such as realtime trends or by city name for regional topics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"category\",\"type\":\"string\",\"required\":false,\"description\":\"Hot search category\",\"default\":\"realtimehot\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Items per page, default 20, max 50\",\"default\":\"20\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, starts from 1 (default 1)\",\"default\":\"1\",\"constraints\":\"Minimum: 1\"},{\"name\":\"region_name\",\"type\":\"string\",\"required\":false,\"description\":\"City name for local hot search, only effective when category=region, default Beijing\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/hot-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/hot-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/hot-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/hot-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/hot-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/hot-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/hot-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/hot-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/hot-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get hot search" + modelName: "Weibo Hot Search Rankings" modelId: "weibo/app/hot-search" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/app/search-all.md b/model-api-reference/platform-apis/weibo/app/search-all.md index 2d10ad00..644583d4 100644 --- a/model-api-reference/platform-apis/weibo/app/search-all.md +++ b/model-api-reference/platform-apis/weibo/app/search-all.md @@ -1,13 +1,13 @@ --- -title: "Comprehensive search API Reference — Weibo App / Search All API" -description: "SandBase API operation weibo/app/search-all." +title: "Weibo Comprehensive Search API Reference" +description: "Weibo Comprehensive Search API reference for SandBase. Use model weibo/app/search-all with /v1/api/weibo/app/search-all; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/app/search-all" -apiReferenceJson: "{\"title\":\"Comprehensive search\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/search-all\",\"description\":\"Comprehensive search in Weibo, return related content. Supports multiple search types.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, starts from 1 (default 1)\",\"default\":\"1\",\"constraints\":\"Minimum: 1\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\"},{\"name\":\"search_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Search type\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/search-all \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/search-all\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/search-all\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/search-all\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/search-all\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/search-all\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/search-all\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/search-all\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/search-all\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Comprehensive Search\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/search-all\",\"description\":\"Returns comprehensive search results from Weibo for a specified keyword. Supports pagination and filtering by search type.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, starts from 1 (default 1)\",\"default\":\"1\",\"constraints\":\"Minimum: 1\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\"},{\"name\":\"search_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Search type\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/search-all \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/search-all\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/search-all\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/search-all\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/search-all\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/search-all\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/search-all\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/search-all\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/search-all\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Comprehensive search" + modelName: "Weibo Comprehensive Search" modelId: "weibo/app/search-all" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/app/status-comments.md b/model-api-reference/platform-apis/weibo/app/status-comments.md index 67a28b56..7eae1cfe 100644 --- a/model-api-reference/platform-apis/weibo/app/status-comments.md +++ b/model-api-reference/platform-apis/weibo/app/status-comments.md @@ -1,13 +1,13 @@ --- -title: "Get post comments API Reference — Weibo App / Status Comments API" -description: "SandBase API operation weibo/app/status-comments." +title: "Weibo Post Comments (App) API Reference" +description: "Weibo Post Comments (App) API reference for SandBase. Use model weibo/app/status-comments with /v1/api/weibo/app/status-comments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/app/status-comments" -apiReferenceJson: "{\"title\":\"Get post comments\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/status-comments\",\"description\":\"Get the first-level comment list of specified post (also works for video comments).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"max_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Pagination cursor, don't pass for first request, use returned max_id for subsequent requests\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Comment sort type\",\"default\":\"0\"},{\"name\":\"status_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID or Video ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/status-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"status_id\\\": \\\"5258708168476831\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"status_id\\\": \\\"5258708168476831\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/status-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"status_id\\\": \\\"5258708168476831\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/status-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/status-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/status-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/status-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/status-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/status-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/status-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Post Comments (App)\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/status-comments\",\"description\":\"Returns the first-level comments for a designated post or video on Weibo. Supports sorting options and cursor-based pagination for browsing discussion threads.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"max_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Pagination cursor, don't pass for first request, use returned max_id for subsequent requests\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Comment sort type\",\"default\":\"0\"},{\"name\":\"status_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID or Video ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/status-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"status_id\\\": \\\"5258708168476831\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"status_id\\\": \\\"5258708168476831\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/status-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"status_id\\\": \\\"5258708168476831\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/status-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/status-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/status-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/status-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/status-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/status-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/status-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get post comments" + modelName: "Weibo Post Comments (App)" modelId: "weibo/app/status-comments" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/app/status-detail.md b/model-api-reference/platform-apis/weibo/app/status-detail.md index 7d5c16e4..46fe4bc8 100644 --- a/model-api-reference/platform-apis/weibo/app/status-detail.md +++ b/model-api-reference/platform-apis/weibo/app/status-detail.md @@ -1,13 +1,13 @@ --- -title: "Get post detail API Reference — Weibo App / Status Detail API" -description: "SandBase API operation weibo/app/status-detail." +title: "Weibo Post Detail (App) API Reference" +description: "Weibo Post Detail (App) API reference for SandBase. Use model weibo/app/status-detail with /v1/api/weibo/app/status-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/app/status-detail" -apiReferenceJson: "{\"title\":\"Get post detail\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/status-detail\",\"description\":\"Get detailed information of specified post.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"status_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/status-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"status_id\\\": \\\"5016922058656962\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"status_id\\\": \\\"5016922058656962\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/status-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"status_id\\\": \\\"5016922058656962\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/status-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/status-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/status-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/status-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/status-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/status-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/status-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Post Detail (App)\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/status-detail\",\"description\":\"Returns detailed post information from the Weibo app based on a specified post identifier. Use this endpoint to inspect post metadata and actions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"status_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/status-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"status_id\\\": \\\"5016922058656962\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"status_id\\\": \\\"5016922058656962\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/status-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"status_id\\\": \\\"5016922058656962\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/status-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/status-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/status-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/status-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/status-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/status-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/status-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get post detail" + modelName: "Weibo Post Detail (App)" modelId: "weibo/app/status-detail" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/app/status-likes.md b/model-api-reference/platform-apis/weibo/app/status-likes.md index 063fb606..e816fc86 100644 --- a/model-api-reference/platform-apis/weibo/app/status-likes.md +++ b/model-api-reference/platform-apis/weibo/app/status-likes.md @@ -1,13 +1,13 @@ --- -title: "Get post likes API Reference — Weibo App / Status Likes API" -description: "SandBase API operation weibo/app/status-likes." +title: "Weibo Post Likes API Reference" +description: "Weibo Post Likes API reference for SandBase. Use model weibo/app/status-likes with /v1/api/weibo/app/status-likes; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/app/status-likes" -apiReferenceJson: "{\"title\":\"Get post likes\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/status-likes\",\"description\":\"Get the like list of specified post (also works for video likes).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"attitude_type\",\"type\":\"string\",\"required\":false,\"description\":\"Like type filter\"},{\"name\":\"status_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID or Video ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/status-likes \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"status_id\\\": \\\"status_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"status_id\\\": \\\"status_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/status-likes\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"status_id\\\": \\\"status_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/status-likes\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/status-likes\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/status-likes\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/status-likes\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/status-likes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/status-likes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/status-likes\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Post Likes\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/status-likes\",\"description\":\"Returns the list of likes for a specified Weibo post or video. Supports filtering reactions using an attitude type parameter.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"attitude_type\",\"type\":\"string\",\"required\":false,\"description\":\"Like type filter\"},{\"name\":\"status_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID or Video ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/status-likes \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"status_id\\\": \\\"status_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"status_id\\\": \\\"status_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/status-likes\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"status_id\\\": \\\"status_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/status-likes\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/status-likes\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/status-likes\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/status-likes\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/status-likes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/status-likes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/status-likes\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get post likes" + modelName: "Weibo Post Likes" modelId: "weibo/app/status-likes" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/app/status-reposts.md b/model-api-reference/platform-apis/weibo/app/status-reposts.md index 28466ec7..bfe4920a 100644 --- a/model-api-reference/platform-apis/weibo/app/status-reposts.md +++ b/model-api-reference/platform-apis/weibo/app/status-reposts.md @@ -1,13 +1,13 @@ --- -title: "Get post reposts API Reference" -description: "SandBase API operation weibo/app/status-reposts." +title: "Weibo Post Reposts API Reference" +description: "Weibo Post Reposts API reference for SandBase. Use model weibo/app/status-reposts with /v1/api/weibo/app/status-reposts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/app/status-reposts" -apiReferenceJson: "{\"title\":\"Get post reposts\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/status-reposts\",\"description\":\"Get the repost list of specified post (also works for video reposts).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"max_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Pagination cursor, don't pass for first request, use returned max_id for subsequent requests\"},{\"name\":\"status_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID or Video ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/status-reposts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"status_id\\\": \\\"5016922058656962\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"status_id\\\": \\\"5016922058656962\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/status-reposts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"status_id\\\": \\\"5016922058656962\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/status-reposts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/status-reposts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/status-reposts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/status-reposts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/status-reposts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/status-reposts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/status-reposts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Post Reposts\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/status-reposts\",\"description\":\"Returns a list of reposts for a specified Weibo post or video. Output includes repost details and engagement metrics with pagination support.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"max_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Pagination cursor, don't pass for first request, use returned max_id for subsequent requests\"},{\"name\":\"status_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID or Video ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/status-reposts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"status_id\\\": \\\"5016922058656962\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"status_id\\\": \\\"5016922058656962\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/status-reposts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"status_id\\\": \\\"5016922058656962\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/status-reposts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/status-reposts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/status-reposts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/status-reposts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/status-reposts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/status-reposts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/status-reposts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get post reposts" + modelName: "Weibo Post Reposts" modelId: "weibo/app/status-reposts" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/app/user-album.md b/model-api-reference/platform-apis/weibo/app/user-album.md index f420befb..7f828586 100644 --- a/model-api-reference/platform-apis/weibo/app/user-album.md +++ b/model-api-reference/platform-apis/weibo/app/user-album.md @@ -1,13 +1,13 @@ --- -title: "Get user album API Reference" -description: "SandBase API operation weibo/app/user-album." +title: "Weibo User Album API Reference" +description: "Weibo User Album API reference for SandBase. Use model weibo/app/user-album with /v1/api/weibo/app/user-album; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/app/user-album" -apiReferenceJson: "{\"title\":\"Get user album\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/user-album\",\"description\":\"Get the album content of specified user.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"since_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Pagination cursor, don't pass for first request, use returned since_id for subsequent requests\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/user-album \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-album\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-album\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/user-album\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/user-album\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/user-album\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/user-album\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/user-album\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/user-album\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo User Album\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/user-album\",\"description\":\"Returns the photo and media album content of a specified Weibo user. Supports cursor-based pagination using the since_id parameter.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"since_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Pagination cursor, don't pass for first request, use returned since_id for subsequent requests\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/user-album \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-album\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-album\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/user-album\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/user-album\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/user-album\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/user-album\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/user-album\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/user-album\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user album" + modelName: "Weibo User Album" modelId: "weibo/app/user-album" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/app/user-articles.md b/model-api-reference/platform-apis/weibo/app/user-articles.md index 736dd6c5..be51a276 100644 --- a/model-api-reference/platform-apis/weibo/app/user-articles.md +++ b/model-api-reference/platform-apis/weibo/app/user-articles.md @@ -1,13 +1,13 @@ --- -title: "Get user articles API Reference" -description: "SandBase API operation weibo/app/user-articles." +title: "Weibo User Articles API Reference" +description: "Weibo User Articles API reference for SandBase. Use model weibo/app/user-articles with /v1/api/weibo/app/user-articles; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/app/user-articles" -apiReferenceJson: "{\"title\":\"Get user articles\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/user-articles\",\"description\":\"Get the article list published by specified user.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"since_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Pagination cursor, don't pass for first request, use returned since_id for subsequent requests\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/user-articles \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-articles\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-articles\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/user-articles\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/user-articles\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/user-articles\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/user-articles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/user-articles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/user-articles\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo User Articles\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/user-articles\",\"description\":\"Returns a list of articles released by a specified Weibo user. Supports pagination via a cursor parameter.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"since_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Pagination cursor, don't pass for first request, use returned since_id for subsequent requests\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/user-articles \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-articles\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-articles\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/user-articles\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/user-articles\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/user-articles\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/user-articles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/user-articles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/user-articles\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user articles" + modelName: "Weibo User Articles" modelId: "weibo/app/user-articles" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/app/user-audios.md b/model-api-reference/platform-apis/weibo/app/user-audios.md deleted file mode 100644 index d1ca3d39..00000000 --- a/model-api-reference/platform-apis/weibo/app/user-audios.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get user audios API Reference" -description: "SandBase API operation weibo/app/user-audios." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/weibo/app/user-audios" -apiReferenceJson: "{\"title\":\"Get user audios\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/user-audios\",\"description\":\"Get the audio list published by specified user.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"since_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Pagination cursor, don't pass for first request, use returned since_id for subsequent requests\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/user-audios \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-audios\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-audios\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/user-audios\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/user-audios\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/user-audios\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/user-audios\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/user-audios\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/user-audios\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get user audios" - modelId: "weibo/app/user-audios" - vendor: "Weibo" - vendorSlug: "weibo" - modelSlug: "app/user-audios" - protocol: "API Reference" - endpoint: "/v1/api/weibo/app/user-audios" - publishedAt: "" - capabilities: ["api","weibo"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/weibo/app/user-info-detail.md b/model-api-reference/platform-apis/weibo/app/user-info-detail.md index e977d3d8..99a4e9e5 100644 --- a/model-api-reference/platform-apis/weibo/app/user-info-detail.md +++ b/model-api-reference/platform-apis/weibo/app/user-info-detail.md @@ -1,13 +1,13 @@ --- -title: "Get user detail information API Reference" -description: "SandBase API operation weibo/app/user-info-detail." +title: "Weibo User Profile Details (App) API Reference" +description: "SandBase API reference for model weibo/app/user-info-detail. Call /v1/api/weibo/app/user-info-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/app/user-info-detail" -apiReferenceJson: "{\"title\":\"Get user detail information\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/user-info-detail\",\"description\":\"Get detailed information of Weibo users, more complete than basic info, including verification info, tags, level, etc.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/user-info-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-info-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-info-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/user-info-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/user-info-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/user-info-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/user-info-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/user-info-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/user-info-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo User Profile Details (App)\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/user-info-detail\",\"description\":\"Returns comprehensive profile information for a Weibo user, including verification status, account level, and tags based on the specified user ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/user-info-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"8431518763\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"8431518763\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-info-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"8431518763\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-info-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/user-info-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/user-info-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/user-info-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/user-info-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/user-info-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/user-info-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user detail information" + modelName: "Weibo User Profile Details (App)" modelId: "weibo/app/user-info-detail" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/app/user-info.md b/model-api-reference/platform-apis/weibo/app/user-info.md index e1cf7cca..8dd52960 100644 --- a/model-api-reference/platform-apis/weibo/app/user-info.md +++ b/model-api-reference/platform-apis/weibo/app/user-info.md @@ -1,13 +1,13 @@ --- -title: "Get user information API Reference — Weibo App / User Info API" -description: "SandBase API operation weibo/app/user-info." +title: "Weibo User Profile Information API Reference" +description: "Weibo User Profile Information API reference for SandBase. Use model weibo/app/user-info with /v1/api/weibo/app/user-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/app/user-info" -apiReferenceJson: "{\"title\":\"Get user information\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/user-info\",\"description\":\"Get basic information of Weibo users, including nickname, avatar, bio, following count, followers count, etc.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"7648703289\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"7648703289\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"7648703289\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo User Profile Information\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/user-info\",\"description\":\"Returns basic profile information for a Weibo user, including nickname, avatar, biography, follower counts, and channel metadata, using a user ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"7648703289\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"7648703289\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"7648703289\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user information" + modelName: "Weibo User Profile Information" modelId: "weibo/app/user-info" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/app/user-profile-feed.md b/model-api-reference/platform-apis/weibo/app/user-profile-feed.md index ee735c68..4b4c448a 100644 --- a/model-api-reference/platform-apis/weibo/app/user-profile-feed.md +++ b/model-api-reference/platform-apis/weibo/app/user-profile-feed.md @@ -1,13 +1,13 @@ --- -title: "Get user profile feed API Reference" -description: "SandBase API operation weibo/app/user-profile-feed." +title: "Weibo App User Profile Feed API Reference" +description: "Weibo App User Profile Feed API reference for SandBase. Use model weibo/app/user-profile-feed with /v1/api/weibo/app/user-profile-feed; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/app/user-profile-feed" -apiReferenceJson: "{\"title\":\"Get user profile feed\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/user-profile-feed\",\"description\":\"Get the profile feed of specified user.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"since_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Pagination cursor, don't pass for first request, use returned since_id for subsequent requests\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/user-profile-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-profile-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-profile-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/user-profile-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/user-profile-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/user-profile-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/user-profile-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/user-profile-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/user-profile-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo App User Profile Feed\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/user-profile-feed\",\"description\":\"Retrieves the profile feed cards for a specified user on Weibo. Query by target user identifier with support for cursor-based pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"since_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Pagination cursor, don't pass for first request, use returned since_id for subsequent requests\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/user-profile-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"8431518763\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"8431518763\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-profile-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"8431518763\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-profile-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/user-profile-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/user-profile-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/user-profile-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/user-profile-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/user-profile-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/user-profile-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user profile feed" + modelName: "Weibo App User Profile Feed" modelId: "weibo/app/user-profile-feed" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/app/user-super-topics.md b/model-api-reference/platform-apis/weibo/app/user-super-topics.md index bdd52634..c3e588ab 100644 --- a/model-api-reference/platform-apis/weibo/app/user-super-topics.md +++ b/model-api-reference/platform-apis/weibo/app/user-super-topics.md @@ -1,13 +1,13 @@ --- -title: "Get user super topics API Reference" -description: "SandBase API operation weibo/app/user-super-topics." +title: "Weibo User Super Topics API Reference" +description: "Weibo User Super Topics API reference for SandBase. Use model weibo/app/user-super-topics with /v1/api/weibo/app/user-super-topics; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/app/user-super-topics" -apiReferenceJson: "{\"title\":\"Get user super topics\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/user-super-topics\",\"description\":\"Get the super topics list that user participated in.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, starts from 1 (default 1)\",\"constraints\":\"Minimum: 1\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/user-super-topics \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-super-topics\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-super-topics\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/user-super-topics\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/user-super-topics\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/user-super-topics\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/user-super-topics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/user-super-topics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/user-super-topics\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo User Super Topics\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/user-super-topics\",\"description\":\"Returns the list of super topics that a specified Weibo user has joined or participated in, with optional pagination support.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, starts from 1 (default 1)\",\"constraints\":\"Minimum: 1\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/user-super-topics \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"8431518763\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"8431518763\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-super-topics\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"8431518763\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-super-topics\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/user-super-topics\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/user-super-topics\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/user-super-topics\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/user-super-topics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/user-super-topics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/user-super-topics\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user super topics" + modelName: "Weibo User Super Topics" modelId: "weibo/app/user-super-topics" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/app/user-timeline.md b/model-api-reference/platform-apis/weibo/app/user-timeline.md index 45c7ca7e..cad781ec 100644 --- a/model-api-reference/platform-apis/weibo/app/user-timeline.md +++ b/model-api-reference/platform-apis/weibo/app/user-timeline.md @@ -1,13 +1,13 @@ --- -title: "Get user timeline API Reference" -description: "SandBase API operation weibo/app/user-timeline." +title: "Weibo User Timeline API Reference" +description: "Weibo User Timeline API reference for SandBase. Use model weibo/app/user-timeline with /v1/api/weibo/app/user-timeline; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/app/user-timeline" -apiReferenceJson: "{\"title\":\"Get user timeline\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/user-timeline\",\"description\":\"Get the list of posts published by specified user, support pagination and multiple content filters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"filter_type\",\"type\":\"string\",\"required\":false,\"description\":\"Filter type (default \\\"all\\\")\",\"default\":\"all\"},{\"name\":\"month\",\"type\":\"string | null\",\"required\":false,\"description\":\"Time filter parameter, format YYYYMMDD (only used when filter_type=month)\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, starts from 1 (default 1)\",\"default\":\"1\",\"constraints\":\"Minimum: 1\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/user-timeline \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"7648703289\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"7648703289\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-timeline\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"7648703289\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-timeline\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/user-timeline\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/user-timeline\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/user-timeline\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/user-timeline\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/user-timeline\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/user-timeline\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo User Timeline\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/user-timeline\",\"description\":\"Get the posts on a Weibo user's timeline: text, publish time, region, images and repost, comment and like counts, with page and month filters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"filter_type\",\"type\":\"string\",\"required\":false,\"description\":\"Filter type (default \\\"all\\\")\",\"default\":\"all\"},{\"name\":\"month\",\"type\":\"string | null\",\"required\":false,\"description\":\"Time filter parameter, format YYYYMMDD (only used when filter_type=month)\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, starts from 1 (default 1)\",\"default\":\"1\",\"constraints\":\"Minimum: 1\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/user-timeline \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"7648703289\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"7648703289\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-timeline\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"7648703289\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-timeline\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/user-timeline\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/user-timeline\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/user-timeline\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/user-timeline\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/user-timeline\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/user-timeline\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user timeline" + modelName: "Weibo User Timeline" modelId: "weibo/app/user-timeline" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/app/user-videos.md b/model-api-reference/platform-apis/weibo/app/user-videos.md index e28371c5..f4d53c1a 100644 --- a/model-api-reference/platform-apis/weibo/app/user-videos.md +++ b/model-api-reference/platform-apis/weibo/app/user-videos.md @@ -1,13 +1,13 @@ --- -title: "Get user videos API Reference — Weibo App / User Videos API" -description: "SandBase API operation weibo/app/user-videos." +title: "Weibo User Videos API Reference" +description: "Weibo User Videos API reference for SandBase. Use model weibo/app/user-videos with /v1/api/weibo/app/user-videos; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/app/user-videos" -apiReferenceJson: "{\"title\":\"Get user videos\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/user-videos\",\"description\":\"Get the video list published by specified user (waterfall layout).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"since_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Pagination cursor, don't pass for first request, use returned since_id for subsequent requests\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/user-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/user-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/user-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/user-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/user-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/user-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/user-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo User Videos\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/user-videos\",\"description\":\"Returns the video feed for a specified Weibo user in a waterfall layout. Accepts a user identifier and an optional cursor for paginated results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"since_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"Pagination cursor, don't pass for first request, use returned since_id for subsequent requests\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/user-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"8431518763\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"8431518763\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"8431518763\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/user-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/user-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/user-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/user-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/user-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/user-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/user-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user videos" + modelName: "Weibo User Videos" modelId: "weibo/app/user-videos" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/app/video-detail.md b/model-api-reference/platform-apis/weibo/app/video-detail.md index 7c8c3b74..16e28810 100644 --- a/model-api-reference/platform-apis/weibo/app/video-detail.md +++ b/model-api-reference/platform-apis/weibo/app/video-detail.md @@ -1,13 +1,13 @@ --- -title: "Get video detail API Reference — Weibo App / Video Detail API" -description: "SandBase API operation weibo/app/video-detail." +title: "Weibo Video Detail API Reference" +description: "Weibo Video Detail API reference for SandBase. Use model weibo/app/video-detail with /v1/api/weibo/app/video-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/app/video-detail" -apiReferenceJson: "{\"title\":\"Get video detail\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/video-detail\",\"description\":\"Get detailed information of single video, including video play URL. Important: Required step to get real video ID from Weibo video link (e.g., https://weibo.com/tv/show/1034:5232127105761312)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"mid\",\"type\":\"string\",\"required\":true,\"description\":\"Video post ID or ID from link (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/video-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"mid\\\": \\\"5242977759006596\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"mid\\\": \\\"5242977759006596\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/video-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"mid\\\": \\\"5242977759006596\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/video-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/video-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/video-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/video-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/video-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/video-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/video-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Video Detail\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/video-detail\",\"description\":\"Retrieves detailed information for a single Weibo video, including playback URLs and metadata, based on a specified post identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"mid\",\"type\":\"string\",\"required\":true,\"description\":\"Video post ID or ID from link (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/video-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"mid\\\": \\\"5242977759006596\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"mid\\\": \\\"5242977759006596\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/video-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"mid\\\": \\\"5242977759006596\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/video-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/video-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/video-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/video-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/video-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/video-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/video-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video detail" + modelName: "Weibo Video Detail" modelId: "weibo/app/video-detail" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/app/video-featured-feed.md b/model-api-reference/platform-apis/weibo/app/video-featured-feed.md index 00d341ad..b0801c07 100644 --- a/model-api-reference/platform-apis/weibo/app/video-featured-feed.md +++ b/model-api-reference/platform-apis/weibo/app/video-featured-feed.md @@ -1,13 +1,13 @@ --- -title: "Get video featured feed API Reference" -description: "SandBase API operation weibo/app/video-featured-feed." +title: "Weibo Featured Video Feed API Reference" +description: "SandBase API reference for model weibo/app/video-featured-feed. Call /v1/api/weibo/app/video-featured-feed; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/app/video-featured-feed" -apiReferenceJson: "{\"title\":\"Get video featured feed\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/video-featured-feed\",\"description\":\"Get the featured video feed from Weibo video section.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"string | null\",\"required\":false,\"description\":\"Page number, don't pass for first page, pass \\\"2\\\" for second page, and so on\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/video-featured-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"weibo/app/video-featured-feed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"weibo/app/video-featured-feed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/video-featured-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"weibo/app/video-featured-feed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/video-featured-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/video-featured-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/video-featured-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/video-featured-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/video-featured-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/video-featured-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/video-featured-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Featured Video Feed\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/app/video-featured-feed\",\"description\":\"Returns featured video feed cards from the Weibo video section. Supports pagination using page numbers to browse recommended multimedia posts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"string | null\",\"required\":false,\"description\":\"Page number, don't pass for first page, pass \\\"2\\\" for second page, and so on\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/app/video-featured-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/app/video-featured-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/app/video-featured-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/app/video-featured-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/app/video-featured-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/app/video-featured-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/app/video-featured-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/app/video-featured-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/app/video-featured-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video featured feed" + modelName: "Weibo Featured Video Feed" modelId: "weibo/app/video-featured-feed" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/advanced-search.md b/model-api-reference/platform-apis/weibo/web-v2/advanced-search.md index 9ef7e55d..7b15ffc8 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/advanced-search.md +++ b/model-api-reference/platform-apis/weibo/web-v2/advanced-search.md @@ -1,11 +1,11 @@ --- title: "Weibo Advanced Search API Reference" -description: "SandBase API operation weibo/web-v2/advanced-search." +description: "Weibo Advanced Search API reference for SandBase. Use model weibo/web-v2/advanced-search with /v1/api/weibo/web-v2/advanced-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/advanced-search" -apiReferenceJson: "{\"title\":\"Weibo Advanced Search\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/advanced-search\",\"description\":\"Weibo advanced search with multi-dimensional filtering.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"include_type\",\"type\":\"string | null\",\"required\":false,\"description\":\"Include type (all/pic/video/music/link)\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number (default 1)\",\"default\":\"1\"},{\"name\":\"q\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\"},{\"name\":\"search_type\",\"type\":\"string | null\",\"required\":false,\"description\":\"Search type (all/hot/original/verified/media/viewpoint)\"},{\"name\":\"timescope\",\"type\":\"string | null\",\"required\":false,\"description\":\"Time scope (format: custom:start_date:end_date, e.g. custom:2025-09-01-0:2025-09-08-23)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/advanced-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"q\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"q\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/advanced-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"q\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/advanced-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/advanced-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/advanced-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/advanced-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/advanced-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/advanced-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/advanced-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Advanced Search\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/advanced-search\",\"description\":\"Search Weibo posts by keyword with filters for time range, post type (hot, original, verified, media) and content type (images, video, links). Returns post text, author, time and engagement.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"include_type\",\"type\":\"string | null\",\"required\":false,\"description\":\"Include type (all/pic/video/music/link)\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number (default 1)\",\"default\":\"1\"},{\"name\":\"q\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\"},{\"name\":\"search_type\",\"type\":\"string | null\",\"required\":false,\"description\":\"Search type (all/hot/original/verified/media/viewpoint)\"},{\"name\":\"timescope\",\"type\":\"string | null\",\"required\":false,\"description\":\"Time scope (format: custom:start_date:end_date, e.g. custom:2025-09-01-0:2025-09-08-23)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/advanced-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"q\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"q\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/advanced-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"q\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/advanced-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/advanced-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/advanced-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/advanced-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/advanced-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/advanced-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/advanced-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: modelName: "Weibo Advanced Search" modelId: "weibo/web-v2/advanced-search" diff --git a/model-api-reference/platform-apis/weibo/web-v2/ai-related-search.md b/model-api-reference/platform-apis/weibo/web-v2/ai-related-search.md index 572526ca..364bc97c 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/ai-related-search.md +++ b/model-api-reference/platform-apis/weibo/web-v2/ai-related-search.md @@ -1,13 +1,13 @@ --- -title: "Weibo AI Search Content Extension API Reference" -description: "SandBase API operation weibo/web-v2/ai-related-search." +title: "Weibo AI Related Search Content API Reference" +description: "SandBase API reference for model weibo/web-v2/ai-related-search. Call /v1/api/weibo/web-v2/ai-related-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/ai-related-search" -apiReferenceJson: "{\"title\":\"Weibo AI Search Content Extension\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/ai-related-search\",\"description\":\"Get content extensions related to keyword (related questions, blogger recommendations, reference posts).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required, recommend using topic format #TopicName#)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/ai-related-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/ai-related-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/ai-related-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/ai-related-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/ai-related-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/ai-related-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/ai-related-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/ai-related-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/ai-related-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo AI Related Search Content\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/ai-related-search\",\"description\":\"Returns AI-generated content extensions for a keyword, including related questions, recommended bloggers, and reference posts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required, recommend using topic format #TopicName#)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/ai-related-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/ai-related-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/ai-related-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/ai-related-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/ai-related-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/ai-related-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/ai-related-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/ai-related-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/ai-related-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Weibo AI Search Content Extension" + modelName: "Weibo AI Related Search Content" modelId: "weibo/web-v2/ai-related-search" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/ai-search.md b/model-api-reference/platform-apis/weibo/web-v2/ai-search.md index 1f25db01..d5488a83 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/ai-search.md +++ b/model-api-reference/platform-apis/weibo/web-v2/ai-search.md @@ -1,11 +1,11 @@ --- title: "Weibo AI Search API Reference" -description: "SandBase API operation weibo/web-v2/ai-search." +description: "Weibo AI Search API reference for SandBase. Use model weibo/web-v2/ai-search with /v1/api/weibo/web-v2/ai-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/ai-search" -apiReferenceJson: "{\"title\":\"Weibo AI Search\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/ai-search\",\"description\":\"Get search results through Weibo AI intelligent search.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required, recommend using topic format #TopicName#)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/ai-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"#人工智能#\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"#人工智能#\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/ai-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"#人工智能#\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/ai-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/ai-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/ai-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/ai-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/ai-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/ai-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/ai-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo AI Search\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/ai-search\",\"description\":\"Returns multimodal search results and relevance scores from Weibo intelligent search for a specified keyword or topic query.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required, recommend using topic format #TopicName#)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/ai-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"#人工智能#\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"#人工智能#\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/ai-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"#人工智能#\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/ai-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/ai-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/ai-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/ai-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/ai-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/ai-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/ai-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: modelName: "Weibo AI Search" modelId: "weibo/web-v2/ai-search" diff --git a/model-api-reference/platform-apis/weibo/web-v2/all-groups.md b/model-api-reference/platform-apis/weibo/web-v2/all-groups.md index c64a2b7f..52ed01fa 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/all-groups.md +++ b/model-api-reference/platform-apis/weibo/web-v2/all-groups.md @@ -1,13 +1,13 @@ --- -title: "Get all groups information API Reference" -description: "SandBase API operation weibo/web-v2/all-groups." +title: "Weibo All Groups Information API Reference" +description: "Weibo All Groups Information API reference for SandBase. Use model weibo/web-v2/all-groups with /v1/api/weibo/web-v2/all-groups; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/all-groups" -apiReferenceJson: "{\"title\":\"Get all groups information\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/all-groups\",\"description\":\"Get all group information on Weibo platform, including default and user-defined groups.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/all-groups \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"weibo/web-v2/all-groups\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"weibo/web-v2/all-groups\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/all-groups\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"weibo/web-v2/all-groups\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/all-groups\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/all-groups\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/all-groups\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/all-groups\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/all-groups\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/all-groups\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/all-groups\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo All Groups Information\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/all-groups\",\"description\":\"Retrieves complete group information on the Weibo platform. Returns details for both default system groups and user-defined custom groups.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/all-groups \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/all-groups\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/all-groups\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/all-groups\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/all-groups\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/all-groups\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/all-groups\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/all-groups\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/all-groups\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get all groups information" + modelName: "Weibo All Groups Information" modelId: "weibo/web-v2/all-groups" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/check-allow-comment-with-pic.md b/model-api-reference/platform-apis/weibo/web-v2/check-allow-comment-with-pic.md index 8243aae3..a517d91b 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/check-allow-comment-with-pic.md +++ b/model-api-reference/platform-apis/weibo/web-v2/check-allow-comment-with-pic.md @@ -1,13 +1,13 @@ --- -title: "Check if Weibo allows image comments API Reference" -description: "SandBase API operation weibo/web-v2/check-allow-comment-with-pic." +title: "Weibo Image Comment Permission Check API Reference" +description: "SandBase API reference for model weibo/web-v2/check-allow-comment-with-pic. Call /v1/api/weibo/web-v2/check-allow-comment-with-pic; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/check-allow-comment-with-pic" -apiReferenceJson: "{\"title\":\"Check if Weibo allows image comments\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/check-allow-comment-with-pic\",\"description\":\"Check if a specific Weibo post allows image comments.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Weibo post ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/check-allow-comment-with-pic \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"id\\\": \\\"5092682368025584\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"id\\\": \\\"5092682368025584\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/check-allow-comment-with-pic\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"id\\\": \\\"5092682368025584\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/check-allow-comment-with-pic\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/check-allow-comment-with-pic\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/check-allow-comment-with-pic\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/check-allow-comment-with-pic\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/check-allow-comment-with-pic\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/check-allow-comment-with-pic\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/check-allow-comment-with-pic\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Image Comment Permission Check\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/check-allow-comment-with-pic\",\"description\":\"Checks whether a specific Weibo post permits image attachments in user comments. Returns the image comment eligibility status using the provided post ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Weibo post ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/check-allow-comment-with-pic \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"id\\\": \\\"5092682368025584\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"id\\\": \\\"5092682368025584\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/check-allow-comment-with-pic\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"id\\\": \\\"5092682368025584\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/check-allow-comment-with-pic\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/check-allow-comment-with-pic\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/check-allow-comment-with-pic\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/check-allow-comment-with-pic\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/check-allow-comment-with-pic\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/check-allow-comment-with-pic\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/check-allow-comment-with-pic\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Check if Weibo allows image comments" + modelName: "Weibo Image Comment Permission Check" modelId: "weibo/web-v2/check-allow-comment-with-pic" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/city-list.md b/model-api-reference/platform-apis/weibo/web-v2/city-list.md index 8fdba0e9..28686f80 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/city-list.md +++ b/model-api-reference/platform-apis/weibo/web-v2/city-list.md @@ -1,13 +1,13 @@ --- -title: "Region City List API Reference" -description: "SandBase API operation weibo/web-v2/city-list." +title: "Weibo Region City List API Reference" +description: "Weibo Region City List API reference for SandBase. Use model weibo/web-v2/city-list with /v1/api/weibo/web-v2/city-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/city-list" -apiReferenceJson: "{\"title\":\"Region City List\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/city-list\",\"description\":\"Get region city mapping data for region filter parameter in user search APIs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"normalized\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to return normalized structure (default True)\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/city-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"weibo/web-v2/city-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"weibo/web-v2/city-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/city-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"weibo/web-v2/city-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/city-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/city-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/city-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/city-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/city-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/city-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/city-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Region City List\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/city-list\",\"description\":\"Returns a directory of provinces and cities on Weibo. Supports toggling a normalized data structure via the normalized parameter.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"normalized\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to return normalized structure (default True)\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/city-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/city-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/city-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/city-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/city-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/city-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/city-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/city-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/city-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Region City List" + modelName: "Weibo Region City List" modelId: "weibo/web-v2/city-list" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/entertainment-ranking.md b/model-api-reference/platform-apis/weibo/web-v2/entertainment-ranking.md index db25b497..a674e08d 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/entertainment-ranking.md +++ b/model-api-reference/platform-apis/weibo/web-v2/entertainment-ranking.md @@ -1,13 +1,13 @@ --- -title: "Get Weibo entertainment ranking API Reference" -description: "SandBase API operation weibo/web-v2/entertainment-ranking." +title: "Weibo Entertainment Ranking API Reference" +description: "SandBase API reference for model weibo/web-v2/entertainment-ranking. Call /v1/api/weibo/web-v2/entertainment-ranking; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/entertainment-ranking" -apiReferenceJson: "{\"title\":\"Get Weibo entertainment ranking\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/entertainment-ranking\",\"description\":\"Get Weibo entertainment ranking data (entertainment, film & TV, variety shows).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/entertainment-ranking \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"weibo/web-v2/entertainment-ranking\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"weibo/web-v2/entertainment-ranking\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/entertainment-ranking\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"weibo/web-v2/entertainment-ranking\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/entertainment-ranking\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/entertainment-ranking\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/entertainment-ranking\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/entertainment-ranking\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/entertainment-ranking\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/entertainment-ranking\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/entertainment-ranking\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Entertainment Ranking\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/entertainment-ranking\",\"description\":\"Returns Weibo entertainment ranking data across entertainment, film, television, and variety shows. Provides current trending topics and media leaderboards.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/entertainment-ranking \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/entertainment-ranking\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/entertainment-ranking\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/entertainment-ranking\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/entertainment-ranking\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/entertainment-ranking\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/entertainment-ranking\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/entertainment-ranking\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/entertainment-ranking\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Weibo entertainment ranking" + modelName: "Weibo Entertainment Ranking" modelId: "weibo/web-v2/entertainment-ranking" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/hot-ranking-timeline.md b/model-api-reference/platform-apis/weibo/web-v2/hot-ranking-timeline.md index 44a3e2cc..e93e7e18 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/hot-ranking-timeline.md +++ b/model-api-reference/platform-apis/weibo/web-v2/hot-ranking-timeline.md @@ -1,13 +1,13 @@ --- -title: "Get hot ranking timeline API Reference" -description: "SandBase API operation weibo/web-v2/hot-ranking-timeline." +title: "Weibo Hot Ranking Timeline API Reference" +description: "SandBase API reference for model weibo/web-v2/hot-ranking-timeline. Call /v1/api/weibo/web-v2/hot-ranking-timeline; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/hot-ranking-timeline" -apiReferenceJson: "{\"title\":\"Get hot ranking timeline\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/hot-ranking-timeline\",\"description\":\"Get various types of hot ranking content from Weibo platform.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Count (default 10)\",\"default\":\"10\"},{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, pass \\\"0\\\" for first request\",\"default\":\"0\"},{\"name\":\"ranking_type\",\"type\":\"string\",\"required\":true,\"description\":\"Ranking type (required)\"},{\"name\":\"since_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination identifier, default is 0\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/hot-ranking-timeline \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"ranking_type\\\": \\\"hour\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"ranking_type\\\": \\\"hour\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/hot-ranking-timeline\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"ranking_type\\\": \\\"hour\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/hot-ranking-timeline\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/hot-ranking-timeline\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/hot-ranking-timeline\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/hot-ranking-timeline\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/hot-ranking-timeline\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/hot-ranking-timeline\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/hot-ranking-timeline\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Hot Ranking Timeline\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/hot-ranking-timeline\",\"description\":\"Returns popular posts from Weibo hot rankings based on a specified ranking type. Supports pagination using cursor and identifier parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Count (default 10)\",\"default\":\"10\"},{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, pass \\\"0\\\" for first request\",\"default\":\"0\"},{\"name\":\"ranking_type\",\"type\":\"string\",\"required\":true,\"description\":\"Ranking type (required)\"},{\"name\":\"since_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination identifier, default is 0\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/hot-ranking-timeline \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"ranking_type\\\": \\\"hour\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"ranking_type\\\": \\\"hour\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/hot-ranking-timeline\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"ranking_type\\\": \\\"hour\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/hot-ranking-timeline\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/hot-ranking-timeline\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/hot-ranking-timeline\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/hot-ranking-timeline\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/hot-ranking-timeline\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/hot-ranking-timeline\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/hot-ranking-timeline\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get hot ranking timeline" + modelName: "Weibo Hot Ranking Timeline" modelId: "weibo/web-v2/hot-ranking-timeline" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/hot-search-index.md b/model-api-reference/platform-apis/weibo/web-v2/hot-search-index.md index eebade38..770560f8 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/hot-search-index.md +++ b/model-api-reference/platform-apis/weibo/web-v2/hot-search-index.md @@ -1,13 +1,13 @@ --- -title: "Get Weibo hot search index (10 items) API Reference" -description: "SandBase API operation weibo/web-v2/hot-search-index." +title: "Weibo Hot Search Index API Reference" +description: "Weibo Hot Search Index API reference for SandBase. Use model weibo/web-v2/hot-search-index with /v1/api/weibo/web-v2/hot-search-index; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/hot-search-index" -apiReferenceJson: "{\"title\":\"Get Weibo hot search index (10 items)\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/hot-search-index\",\"description\":\"Quickly get top 10 Weibo hot search items.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/hot-search-index \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"weibo/web-v2/hot-search-index\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"weibo/web-v2/hot-search-index\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/hot-search-index\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"weibo/web-v2/hot-search-index\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/hot-search-index\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search-index\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search-index\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search-index\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search-index\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search-index\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/hot-search-index\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Hot Search Index\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/hot-search-index\",\"description\":\"Returns the top 10 hot search ranking items currently trending on Weibo. It delivers active search topics without requiring any input parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/hot-search-index \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/hot-search-index\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/hot-search-index\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search-index\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search-index\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search-index\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search-index\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search-index\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/hot-search-index\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Weibo hot search index (10 items)" + modelName: "Weibo Hot Search Index" modelId: "weibo/web-v2/hot-search-index" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/hot-search-summary.md b/model-api-reference/platform-apis/weibo/web-v2/hot-search-summary.md index 4ffa0c03..bfed7dae 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/hot-search-summary.md +++ b/model-api-reference/platform-apis/weibo/web-v2/hot-search-summary.md @@ -1,13 +1,13 @@ --- -title: "Get Weibo complete hot search ranking (50 items) API Reference" -description: "SandBase API operation weibo/web-v2/hot-search-summary." +title: "Weibo Hot Search List API Reference" +description: "SandBase API reference for model weibo/web-v2/hot-search-summary. Call /v1/api/weibo/web-v2/hot-search-summary; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/hot-search-summary" -apiReferenceJson: "{\"title\":\"Get Weibo complete hot search ranking (50 items)\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/hot-search-summary\",\"description\":\"Get complete Weibo hot search ranking (50 items).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/hot-search-summary \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"weibo/web-v2/hot-search-summary\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"weibo/web-v2/hot-search-summary\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/hot-search-summary\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"weibo/web-v2/hot-search-summary\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/hot-search-summary\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search-summary\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search-summary\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search-summary\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search-summary\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search-summary\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/hot-search-summary\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Hot Search List\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/hot-search-summary\",\"description\":\"Get the complete real-time Weibo hot search ranking (top 50): keyword, rank, heat tag and search link for each trending topic.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/hot-search-summary \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/hot-search-summary\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/hot-search-summary\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search-summary\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search-summary\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search-summary\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search-summary\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search-summary\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/hot-search-summary\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Weibo complete hot search ranking (50 items)" + modelName: "Weibo Hot Search List" modelId: "weibo/web-v2/hot-search-summary" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/hot-search.md b/model-api-reference/platform-apis/weibo/web-v2/hot-search.md index ba0fb6b5..e7f906bd 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/hot-search.md +++ b/model-api-reference/platform-apis/weibo/web-v2/hot-search.md @@ -1,13 +1,13 @@ --- -title: "Get Weibo hot search ranking API Reference" -description: "SandBase API operation weibo/web-v2/hot-search." +title: "Weibo Real-Time Hot Search API Reference" +description: "Weibo Real-Time Hot Search API reference for SandBase. Use model weibo/web-v2/hot-search with /v1/api/weibo/web-v2/hot-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/hot-search" -apiReferenceJson: "{\"title\":\"Get Weibo hot search ranking\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/hot-search\",\"description\":\"Get Weibo real-time hot search ranking data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/hot-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"weibo/web-v2/hot-search\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"weibo/web-v2/hot-search\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/hot-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"weibo/web-v2/hot-search\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/hot-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/hot-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Real-Time Hot Search\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/hot-search\",\"description\":\"Get the Weibo real-time hot search ranking: trending keywords with rank, heat value and labels such as new or hot.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/hot-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/hot-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/hot-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/hot-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/hot-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Weibo hot search ranking" + modelName: "Weibo Real-Time Hot Search" modelId: "weibo/web-v2/hot-search" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/life-ranking.md b/model-api-reference/platform-apis/weibo/web-v2/life-ranking.md index 3eeb7d3a..11f5df06 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/life-ranking.md +++ b/model-api-reference/platform-apis/weibo/web-v2/life-ranking.md @@ -1,13 +1,13 @@ --- -title: "Get Weibo life ranking API Reference" -description: "SandBase API operation weibo/web-v2/life-ranking." +title: "Weibo Life Ranking API Reference" +description: "Weibo Life Ranking API reference for SandBase. Use model weibo/web-v2/life-ranking with /v1/api/weibo/web-v2/life-ranking; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/life-ranking" -apiReferenceJson: "{\"title\":\"Get Weibo life ranking\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/life-ranking\",\"description\":\"Get Weibo life ranking data (food, travel, health, fashion).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/life-ranking \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"weibo/web-v2/life-ranking\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"weibo/web-v2/life-ranking\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/life-ranking\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"weibo/web-v2/life-ranking\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/life-ranking\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/life-ranking\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/life-ranking\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/life-ranking\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/life-ranking\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/life-ranking\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/life-ranking\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Life Ranking\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/life-ranking\",\"description\":\"Returns Weibo life ranking data across categories such as food, travel, health, and fashion. Retrieves trending lifestyle lists directly from the platform.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/life-ranking \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/life-ranking\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/life-ranking\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/life-ranking\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/life-ranking\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/life-ranking\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/life-ranking\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/life-ranking\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/life-ranking\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Weibo life ranking" + modelName: "Weibo Life Ranking" modelId: "weibo/web-v2/life-ranking" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/pic-search.md b/model-api-reference/platform-apis/weibo/web-v2/pic-search.md index af0cfbfe..56d89757 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/pic-search.md +++ b/model-api-reference/platform-apis/weibo/web-v2/pic-search.md @@ -1,13 +1,13 @@ --- -title: "Weibo picture search API Reference" -description: "SandBase API operation weibo/web-v2/pic-search." +title: "Weibo Picture Search API Reference" +description: "Weibo Picture Search API reference for SandBase. Use model weibo/web-v2/pic-search with /v1/api/weibo/web-v2/pic-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/pic-search" -apiReferenceJson: "{\"title\":\"Weibo picture search\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/pic-search\",\"description\":\"Search Weibo picture content, aggregated by weibo ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number (default 1)\",\"default\":\"1\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/pic-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/pic-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/pic-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/pic-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/pic-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/pic-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/pic-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/pic-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/pic-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Picture Search\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/pic-search\",\"description\":\"Returns picture content and associated post details matching a search query on Weibo. Results include image URLs, post text, and user profile information.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number (default 1)\",\"default\":\"1\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/pic-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/pic-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/pic-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/pic-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/pic-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/pic-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/pic-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/pic-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/pic-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Weibo picture search" + modelName: "Weibo Picture Search" modelId: "weibo/web-v2/pic-search" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/post-comments.md b/model-api-reference/platform-apis/weibo/web-v2/post-comments.md index acc266d8..de98b7a9 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/post-comments.md +++ b/model-api-reference/platform-apis/weibo/web-v2/post-comments.md @@ -1,13 +1,13 @@ --- -title: "Get Weibo comments API Reference" -description: "SandBase API operation weibo/web-v2/post-comments." +title: "Weibo Post Comments API Reference" +description: "Weibo Post Comments API reference for SandBase. Use model weibo/web-v2/post-comments with /v1/api/weibo/web-v2/post-comments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/post-comments" -apiReferenceJson: "{\"title\":\"Get Weibo comments\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/post-comments\",\"description\":\"Get the first-level comment list of specified post.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of comments (default 10)\",\"default\":\"10\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Weibo post ID (required)\"},{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, pass empty for first request, use returned max_id for subsequent requests\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/post-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"id\\\": \\\"5283919831764022\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"id\\\": \\\"5283919831764022\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/post-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"id\\\": \\\"5283919831764022\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/post-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/post-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/post-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/post-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/post-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Post Comments\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/post-comments\",\"description\":\"Get the first-level comments on a Weibo post: comment text, author, time, likes and reply counts, with cursor pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of comments (default 10)\",\"default\":\"10\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Weibo post ID (required)\"},{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, pass empty for first request, use returned max_id for subsequent requests\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/post-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"id\\\": \\\"5283919831764022\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"id\\\": \\\"5283919831764022\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/post-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"id\\\": \\\"5283919831764022\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/post-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/post-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/post-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/post-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/post-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Weibo comments" + modelName: "Weibo Post Comments" modelId: "weibo/web-v2/post-comments" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/post-detail.md b/model-api-reference/platform-apis/weibo/web-v2/post-detail.md index 54d536b3..ab82af80 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/post-detail.md +++ b/model-api-reference/platform-apis/weibo/web-v2/post-detail.md @@ -1,13 +1,13 @@ --- -title: "Get single post data API Reference" -description: "SandBase API operation weibo/web-v2/post-detail." +title: "Weibo Post Detail API Reference" +description: "Weibo Post Detail API reference for SandBase. Use model weibo/web-v2/post-detail with /v1/api/weibo/web-v2/post-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/post-detail" -apiReferenceJson: "{\"title\":\"Get single post data\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/post-detail\",\"description\":\"Get detailed information of a specific Weibo post, including content, author, interaction data.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Weibo post ID (required)\"},{\"name\":\"is_get_long_text\",\"type\":\"string\",\"required\":false,\"description\":\"Whether to get full text of long posts (default \\\"true\\\")\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/post-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"id\\\": \\\"5092682368025584\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"id\\\": \\\"5092682368025584\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/post-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"id\\\": \\\"5092682368025584\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/post-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/post-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/post-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/post-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/post-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Post Detail\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/post-detail\",\"description\":\"Get the full data of a single Weibo post by its ID: text (including long posts), author, publish time, location and repost, comment and like counts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Weibo post ID (required)\"},{\"name\":\"is_get_long_text\",\"type\":\"string\",\"required\":false,\"description\":\"Whether to get full text of long posts (default \\\"true\\\")\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/post-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"id\\\": \\\"5092682368025584\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"id\\\": \\\"5092682368025584\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/post-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"id\\\": \\\"5092682368025584\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/post-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/post-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/post-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/post-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/post-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single post data" + modelName: "Weibo Post Detail" modelId: "weibo/web-v2/post-detail" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/post-sub-comments.md b/model-api-reference/platform-apis/weibo/web-v2/post-sub-comments.md index dd20c100..ed58d9a4 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/post-sub-comments.md +++ b/model-api-reference/platform-apis/weibo/web-v2/post-sub-comments.md @@ -1,13 +1,13 @@ --- -title: "Get Weibo sub-comments API Reference" -description: "SandBase API operation weibo/web-v2/post-sub-comments." +title: "Weibo Post Sub-Comments API Reference" +description: "SandBase API reference for model weibo/web-v2/post-sub-comments. Call /v1/api/weibo/web-v2/post-sub-comments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/post-sub-comments" -apiReferenceJson: "{\"title\":\"Get Weibo sub-comments\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/post-sub-comments\",\"description\":\"Get the reply (sub-comment) list of a specified comment.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of sub-comments (default 10)\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Main comment ID (required)\"},{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, pass empty for first request, use returned max_id for subsequent requests\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/post-sub-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"id\\\": \\\"id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"id\\\": \\\"id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/post-sub-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"id\\\": \\\"id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/post-sub-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/post-sub-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/post-sub-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/post-sub-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/post-sub-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/post-sub-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/post-sub-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Post Sub-Comments\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/post-sub-comments\",\"description\":\"Returns the list of sub-comments or replies for a specific Weibo comment. Supports pagination cursors and adjustable result counts per request.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of sub-comments (default 10)\"},{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Main comment ID (required)\"},{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, pass empty for first request, use returned max_id for subsequent requests\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/post-sub-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"id\\\": \\\"7648703289\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"id\\\": \\\"7648703289\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/post-sub-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"id\\\": \\\"7648703289\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/post-sub-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/post-sub-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/post-sub-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/post-sub-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/post-sub-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/post-sub-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/post-sub-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Weibo sub-comments" + modelName: "Weibo Post Sub-Comments" modelId: "weibo/web-v2/post-sub-comments" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/realtime-search.md b/model-api-reference/platform-apis/weibo/web-v2/realtime-search.md index d25fad71..818a374a 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/realtime-search.md +++ b/model-api-reference/platform-apis/weibo/web-v2/realtime-search.md @@ -1,13 +1,13 @@ --- -title: "Weibo Realtime Search API Reference" -description: "SandBase API operation weibo/web-v2/realtime-search." +title: "Weibo Real-Time Search API Reference" +description: "Weibo Real-Time Search API reference for SandBase. Use model weibo/web-v2/realtime-search with /v1/api/weibo/web-v2/realtime-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/realtime-search" -apiReferenceJson: "{\"title\":\"Weibo Realtime Search\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/realtime-search\",\"description\":\"Get Weibo realtime search results (available posts sorted by time).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number (default 1)\",\"default\":\"1\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/realtime-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/realtime-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/realtime-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/realtime-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/realtime-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/realtime-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/realtime-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/realtime-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/realtime-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Real-Time Search\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/realtime-search\",\"description\":\"Search the available Weibo posts for a keyword, sorted by time: post text, author, publish time and interaction counts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number (default 1)\",\"default\":\"1\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/realtime-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/realtime-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/realtime-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/realtime-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/realtime-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/realtime-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/realtime-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/realtime-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/realtime-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Weibo Realtime Search" + modelName: "Weibo Real-Time Search" modelId: "weibo/web-v2/realtime-search" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/search-user-posts.md b/model-api-reference/platform-apis/weibo/web-v2/search-user-posts.md index 91be4e76..9b571766 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/search-user-posts.md +++ b/model-api-reference/platform-apis/weibo/web-v2/search-user-posts.md @@ -1,13 +1,13 @@ --- -title: "Search user posts API Reference" -description: "SandBase API operation weibo/web-v2/search-user-posts." +title: "Weibo User Post Search API Reference" +description: "SandBase API reference for model weibo/web-v2/search-user-posts. Call /v1/api/weibo/web-v2/search-user-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/search-user-posts" -apiReferenceJson: "{\"title\":\"Search user posts\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/search-user-posts\",\"description\":\"Search for content containing specific keywords in a specified user's posts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endtime\",\"type\":\"integer | null\",\"required\":false,\"description\":\"End timestamp (optional, Unix timestamp format)\"},{\"name\":\"hasmusic\",\"type\":\"integer\",\"required\":false,\"description\":\"Include music posts (default 1 include)\"},{\"name\":\"hasori\",\"type\":\"integer\",\"required\":false,\"description\":\"Include original posts (default 1 include)\"},{\"name\":\"haspic\",\"type\":\"integer\",\"required\":false,\"description\":\"Include image posts (default 1 include)\"},{\"name\":\"hasret\",\"type\":\"integer\",\"required\":false,\"description\":\"Include retweets (default 1 include)\"},{\"name\":\"hastext\",\"type\":\"integer\",\"required\":false,\"description\":\"Include text posts (default 1 include)\"},{\"name\":\"hasvideo\",\"type\":\"integer\",\"required\":false,\"description\":\"Include video posts (default 1 include)\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, starts from 1 (default 1)\"},{\"name\":\"q\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword (optional, empty string means search all content)\"},{\"name\":\"starttime\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Start timestamp (optional, Unix timestamp format)\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/search-user-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/search-user-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/search-user-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/search-user-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/search-user-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/search-user-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/search-user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/search-user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/search-user-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo User Post Search\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/search-user-posts\",\"description\":\"Returns posts from a specified Weibo user matching optional search keywords. Supports filtering by post types such as images, videos, and retweets, as well as date ranges.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"endtime\",\"type\":\"integer | null\",\"required\":false,\"description\":\"End timestamp (optional, Unix timestamp format)\"},{\"name\":\"hasmusic\",\"type\":\"integer\",\"required\":false,\"description\":\"Include music posts (default 1 include)\"},{\"name\":\"hasori\",\"type\":\"integer\",\"required\":false,\"description\":\"Include original posts (default 1 include)\"},{\"name\":\"haspic\",\"type\":\"integer\",\"required\":false,\"description\":\"Include image posts (default 1 include)\"},{\"name\":\"hasret\",\"type\":\"integer\",\"required\":false,\"description\":\"Include retweets (default 1 include)\"},{\"name\":\"hastext\",\"type\":\"integer\",\"required\":false,\"description\":\"Include text posts (default 1 include)\"},{\"name\":\"hasvideo\",\"type\":\"integer\",\"required\":false,\"description\":\"Include video posts (default 1 include)\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, starts from 1 (default 1)\"},{\"name\":\"q\",\"type\":\"string\",\"required\":false,\"description\":\"Search keyword (optional, empty string means search all content)\"},{\"name\":\"starttime\",\"type\":\"integer | null\",\"required\":false,\"description\":\"Start timestamp (optional, Unix timestamp format)\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/search-user-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"8431518763\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"8431518763\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/search-user-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"8431518763\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/search-user-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/search-user-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/search-user-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/search-user-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/search-user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/search-user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/search-user-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search user posts" + modelName: "Weibo User Post Search" modelId: "weibo/web-v2/search-user-posts" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/similar-search.md b/model-api-reference/platform-apis/weibo/web-v2/similar-search.md index bd4c4169..eb6e203a 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/similar-search.md +++ b/model-api-reference/platform-apis/weibo/web-v2/similar-search.md @@ -1,13 +1,13 @@ --- -title: "Get Weibo similar search recommendations API Reference" -description: "SandBase API operation weibo/web-v2/similar-search." +title: "Weibo Similar Search Recommendations API Reference" +description: "SandBase API reference for model weibo/web-v2/similar-search. Call /v1/api/weibo/web-v2/similar-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/similar-search" -apiReferenceJson: "{\"title\":\"Get Weibo similar search recommendations\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/similar-search\",\"description\":\"Get similar search word recommendations based on keyword.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required, supports topic tag format like #TopicName#)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/similar-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/similar-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/similar-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/similar-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/similar-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/similar-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/similar-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/similar-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/similar-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Similar Search Recommendations\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/similar-search\",\"description\":\"Returns related search keyword recommendations and hot query suggestions based on a target query. Supports topic tag formatting.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required, supports topic tag format like #TopicName#)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/similar-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/similar-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/similar-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/similar-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/similar-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/similar-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/similar-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/similar-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/similar-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Weibo similar search recommendations" + modelName: "Weibo Similar Search Recommendations" modelId: "weibo/web-v2/similar-search" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/social-ranking.md b/model-api-reference/platform-apis/weibo/web-v2/social-ranking.md index 51cbed64..875f797b 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/social-ranking.md +++ b/model-api-reference/platform-apis/weibo/web-v2/social-ranking.md @@ -1,13 +1,13 @@ --- -title: "Get Weibo social ranking API Reference" -description: "SandBase API operation weibo/web-v2/social-ranking." +title: "Weibo Social Ranking API Reference" +description: "Weibo Social Ranking API reference for SandBase. Use model weibo/web-v2/social-ranking with /v1/api/weibo/web-v2/social-ranking; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/social-ranking" -apiReferenceJson: "{\"title\":\"Get Weibo social ranking\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/social-ranking\",\"description\":\"Get Weibo social ranking data (current affairs, social hotspots, livelihood topics).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/social-ranking \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"weibo/web-v2/social-ranking\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"weibo/web-v2/social-ranking\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/social-ranking\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"weibo/web-v2/social-ranking\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/social-ranking\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/social-ranking\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/social-ranking\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/social-ranking\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/social-ranking\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/social-ranking\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/social-ranking\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Social Ranking\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/social-ranking\",\"description\":\"Returns Weibo social ranking data covering current affairs, social hotspots, and livelihood topics. Call this endpoint to track top-trending public interest discussions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/social-ranking \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/social-ranking\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/social-ranking\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/social-ranking\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/social-ranking\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/social-ranking\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/social-ranking\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/social-ranking\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/social-ranking\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Weibo social ranking" + modelName: "Weibo Social Ranking" modelId: "weibo/web-v2/social-ranking" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/topic-search.md b/model-api-reference/platform-apis/weibo/web-v2/topic-search.md index 52e8d606..cc0aa9aa 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/topic-search.md +++ b/model-api-reference/platform-apis/weibo/web-v2/topic-search.md @@ -1,13 +1,13 @@ --- -title: "Weibo topic search API Reference" -description: "SandBase API operation weibo/web-v2/topic-search." +title: "Weibo Topic Search API Reference" +description: "Weibo Topic Search API reference for SandBase. Use model weibo/web-v2/topic-search with /v1/api/weibo/web-v2/topic-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/topic-search" -apiReferenceJson: "{\"title\":\"Weibo topic search\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/topic-search\",\"description\":\"Search Weibo topics, get topic name, cover, discussion count, read count.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number (default 1)\",\"default\":\"1\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/topic-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/topic-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/topic-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/topic-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/topic-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/topic-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/topic-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/topic-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/topic-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Topic Search\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/topic-search\",\"description\":\"Searches Weibo topics matching a keyword and returns topic names, URLs, discussion counts, and read metrics across paginated results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number (default 1)\",\"default\":\"1\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/topic-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/topic-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/topic-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/topic-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/topic-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/topic-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/topic-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/topic-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/topic-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Weibo topic search" + modelName: "Weibo Topic Search" modelId: "weibo/web-v2/topic-search" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/user-basic-info.md b/model-api-reference/platform-apis/weibo/web-v2/user-basic-info.md index 9eb89385..a8cbead8 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/user-basic-info.md +++ b/model-api-reference/platform-apis/weibo/web-v2/user-basic-info.md @@ -1,13 +1,13 @@ --- -title: "Get user basic information API Reference" -description: "SandBase API operation weibo/web-v2/user-basic-info." +title: "Weibo User Basic Information API Reference" +description: "SandBase API reference for model weibo/web-v2/user-basic-info. Call /v1/api/weibo/web-v2/user-basic-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/user-basic-info" -apiReferenceJson: "{\"title\":\"Get user basic information\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/user-basic-info\",\"description\":\"Get basic information of Weibo users (lightweight API).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/user-basic-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"7648703289\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"7648703289\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-basic-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"7648703289\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-basic-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/user-basic-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/user-basic-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/user-basic-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/user-basic-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/user-basic-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/user-basic-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo User Basic Information\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/user-basic-info\",\"description\":\"Returns lightweight basic profile information for a specified Weibo user. Provide the target account identifier to retrieve user details.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/user-basic-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"7648703289\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"7648703289\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-basic-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"7648703289\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-basic-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/user-basic-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/user-basic-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/user-basic-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/user-basic-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/user-basic-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/user-basic-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user basic information" + modelName: "Weibo User Basic Information" modelId: "weibo/web-v2/user-basic-info" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/user-fans.md b/model-api-reference/platform-apis/weibo/web-v2/user-fans.md index 853ad2af..bda5a643 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/user-fans.md +++ b/model-api-reference/platform-apis/weibo/web-v2/user-fans.md @@ -1,13 +1,13 @@ --- -title: "Get user fans list API Reference — Weibo Web V2 / User Fans API" -description: "SandBase API operation weibo/web-v2/user-fans." +title: "Weibo User Follower List API Reference" +description: "Weibo User Follower List API reference for SandBase. Use model weibo/web-v2/user-fans with /v1/api/weibo/web-v2/user-fans; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/user-fans" -apiReferenceJson: "{\"title\":\"Get user fans list\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/user-fans\",\"description\":\"Get the fans list of specified user (who follows the user).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, starts from 0 (default 0)\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/user-fans \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-fans\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-fans\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/user-fans\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/user-fans\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/user-fans\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/user-fans\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/user-fans\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/user-fans\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo User Follower List\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/user-fans\",\"description\":\"Returns a paginated list of accounts following a specified Weibo user profile by ID, including follower metrics and profile summaries.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, starts from 0 (default 0)\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/user-fans \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"8431518763\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"8431518763\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-fans\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"8431518763\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-fans\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/user-fans\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/user-fans\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/user-fans\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/user-fans\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/user-fans\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/user-fans\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user fans list" + modelName: "Weibo User Follower List" modelId: "weibo/web-v2/user-fans" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/user-following.md b/model-api-reference/platform-apis/weibo/web-v2/user-following.md index 17069c98..510e25c2 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/user-following.md +++ b/model-api-reference/platform-apis/weibo/web-v2/user-following.md @@ -1,13 +1,13 @@ --- -title: "Get user following list API Reference — Weibo V2 / User Following" -description: "SandBase API operation weibo/web-v2/user-following." +title: "Weibo User Following List API Reference" +description: "Weibo User Following List API reference for SandBase. Use model weibo/web-v2/user-following with /v1/api/weibo/web-v2/user-following; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/user-following" -apiReferenceJson: "{\"title\":\"Get user following list\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/user-following\",\"description\":\"Get the following list of specified user (who the user follows).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, starts from 0 (default 0)\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/user-following \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-following\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-following\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/user-following\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/user-following\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/user-following\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/user-following\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/user-following\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/user-following\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo User Following List\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/user-following\",\"description\":\"Returns the list of accounts that a specified Weibo user follows. Accepts a user identifier and supports page-based pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, starts from 0 (default 0)\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/user-following \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"8431518763\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"8431518763\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-following\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"8431518763\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-following\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/user-following\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/user-following\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/user-following\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/user-following\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/user-following\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/user-following\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user following list" + modelName: "Weibo User Following List" modelId: "weibo/web-v2/user-following" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/user-info.md b/model-api-reference/platform-apis/weibo/web-v2/user-info.md index 0fb643a2..7228f26a 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/user-info.md +++ b/model-api-reference/platform-apis/weibo/web-v2/user-info.md @@ -1,13 +1,13 @@ --- -title: "Get user information API Reference — Weibo Web V2 / User Info API" -description: "SandBase API operation weibo/web-v2/user-info." +title: "Weibo User Profile Details (Web V2) API Reference" +description: "Weibo User Profile Details (Web V2) API reference for SandBase. Use model weibo/web-v2/user-info with /v1/api/weibo/web-v2/user-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/user-info" -apiReferenceJson: "{\"title\":\"Get user information\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/user-info\",\"description\":\"Get detailed information of Weibo users, including nickname, avatar, bio, following count, followers count.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"custom\",\"type\":\"string | null\",\"required\":false,\"description\":\"Custom username (optional, choose one with uid)\"},{\"name\":\"uid\",\"type\":\"string | null\",\"required\":false,\"description\":\"User ID (optional, choose one with custom)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"weibo/web-v2/user-info\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"weibo/web-v2/user-info\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"weibo/web-v2/user-info\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo User Profile Details (Web V2)\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/user-info\",\"description\":\"Returns detailed Weibo user profile information including nickname, avatar, bio, following count, and followers count by user ID or custom username.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"custom\",\"type\":\"string | null\",\"required\":false,\"description\":\"Custom username (optional, choose one with uid)\"},{\"name\":\"uid\",\"type\":\"string | null\",\"required\":false,\"description\":\"User ID (optional, choose one with custom)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user information" + modelName: "Weibo User Profile Details (Web V2)" modelId: "weibo/web-v2/user-info" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/user-original-posts.md b/model-api-reference/platform-apis/weibo/web-v2/user-original-posts.md index b0db7525..dc3d1bce 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/user-original-posts.md +++ b/model-api-reference/platform-apis/weibo/web-v2/user-original-posts.md @@ -1,13 +1,13 @@ --- -title: "Get Weibo user original posts API Reference" -description: "SandBase API operation weibo/web-v2/user-original-posts." +title: "Weibo User Original Posts API Reference" +description: "SandBase API reference for model weibo/web-v2/user-original-posts. Call /v1/api/weibo/web-v2/user-original-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/user-original-posts" -apiReferenceJson: "{\"title\":\"Get Weibo user original posts\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/user-original-posts\",\"description\":\"Get original posts published by specified user (excluding reposts).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, starts from 1 (default 1)\"},{\"name\":\"since_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination identifier (first page must get from fetch_user_posts)\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/user-original-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-original-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-original-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/user-original-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/user-original-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/user-original-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/user-original-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/user-original-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/user-original-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo User Original Posts\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/user-original-posts\",\"description\":\"Returns original posts shared by a specified user, excluding reposts. Results support pagination by page number or pagination identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, starts from 1 (default 1)\"},{\"name\":\"since_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination identifier (first page must get from fetch_user_posts)\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/user-original-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"8431518763\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"8431518763\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-original-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"8431518763\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-original-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/user-original-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/user-original-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/user-original-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/user-original-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/user-original-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/user-original-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Weibo user original posts" + modelName: "Weibo User Original Posts" modelId: "weibo/web-v2/user-original-posts" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/user-posts.md b/model-api-reference/platform-apis/weibo/web-v2/user-posts.md index 0075cb86..c845eb08 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/user-posts.md +++ b/model-api-reference/platform-apis/weibo/web-v2/user-posts.md @@ -1,13 +1,13 @@ --- -title: "Get Weibo user posts API Reference" -description: "SandBase API operation weibo/web-v2/user-posts." +title: "Weibo User Posts API Reference" +description: "Weibo User Posts API reference for SandBase. Use model weibo/web-v2/user-posts with /v1/api/weibo/web-v2/user-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/user-posts" -apiReferenceJson: "{\"title\":\"Get Weibo user posts\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/user-posts\",\"description\":\"Get the list of posts published by specified user, support pagination and multiple data detail levels.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"feature\",\"type\":\"integer\",\"required\":false,\"description\":\"Data feature value (default 0)\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, starts from 1 (default 1)\"},{\"name\":\"since_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination identifier for next page\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/user-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/user-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/user-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/user-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/user-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo User Posts\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/user-posts\",\"description\":\"Get the posts published by a Weibo user: text, publish time, images, videos and repost, comment and like counts, with pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"feature\",\"type\":\"integer\",\"required\":false,\"description\":\"Data feature value (default 0)\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, starts from 1 (default 1)\"},{\"name\":\"since_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination identifier for next page\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/user-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"2803301701\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"2803301701\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"2803301701\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/user-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/user-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/user-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/user-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Weibo user posts" + modelName: "Weibo User Posts" modelId: "weibo/web-v2/user-posts" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/user-recommend-timeline.md b/model-api-reference/platform-apis/weibo/web-v2/user-recommend-timeline.md index e7c59b68..57c63b33 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/user-recommend-timeline.md +++ b/model-api-reference/platform-apis/weibo/web-v2/user-recommend-timeline.md @@ -1,13 +1,13 @@ --- -title: "Get user recommend timeline API Reference" -description: "SandBase API operation weibo/web-v2/user-recommend-timeline." +title: "Weibo Recommended Homepage Feed API Reference" +description: "SandBase API reference for model weibo/web-v2/user-recommend-timeline. Call /v1/api/weibo/web-v2/user-recommend-timeline; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/user-recommend-timeline" -apiReferenceJson: "{\"title\":\"Get user recommend timeline\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/user-recommend-timeline\",\"description\":\"Get recommended timeline content from Weibo homepage, displaying personalized recommendations based on user interests.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"containerid\",\"type\":\"string\",\"required\":false,\"description\":\"Container ID (usually same as group_id)\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Count (default 10, suggested 5-20)\"},{\"name\":\"extparam\",\"type\":\"string\",\"required\":false,\"description\":\"Extended parameters (default \\\"discover|new_feed\\\")\"},{\"name\":\"group_id\",\"type\":\"string\",\"required\":false,\"description\":\"Group ID (can be obtained through fetch_all_groups)\"},{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, pass \\\"0\\\" for first request\"},{\"name\":\"refresh\",\"type\":\"integer\",\"required\":false,\"description\":\"Refresh type (0=normal refresh, 1=force refresh)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/user-recommend-timeline \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"weibo/web-v2/user-recommend-timeline\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"weibo/web-v2/user-recommend-timeline\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-recommend-timeline\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"weibo/web-v2/user-recommend-timeline\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-recommend-timeline\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/user-recommend-timeline\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/user-recommend-timeline\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/user-recommend-timeline\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/user-recommend-timeline\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/user-recommend-timeline\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/user-recommend-timeline\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Recommended Homepage Feed\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/user-recommend-timeline\",\"description\":\"Returns recommended timeline posts from the Weibo homepage feed. Supports filtering by group ID or container ID, custom feed counts, refresh types, and cursor-based pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"containerid\",\"type\":\"string\",\"required\":false,\"description\":\"Container ID (usually same as group_id)\"},{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Count (default 10, suggested 5-20)\"},{\"name\":\"extparam\",\"type\":\"string\",\"required\":false,\"description\":\"Extended parameters (default \\\"discover|new_feed\\\")\"},{\"name\":\"group_id\",\"type\":\"string\",\"required\":false,\"description\":\"Group ID (can be obtained through fetch_all_groups)\"},{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, pass \\\"0\\\" for first request\"},{\"name\":\"refresh\",\"type\":\"integer\",\"required\":false,\"description\":\"Refresh type (0=normal refresh, 1=force refresh)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/user-recommend-timeline \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-recommend-timeline\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-recommend-timeline\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/user-recommend-timeline\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/user-recommend-timeline\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/user-recommend-timeline\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/user-recommend-timeline\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/user-recommend-timeline\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/user-recommend-timeline\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user recommend timeline" + modelName: "Weibo Recommended Homepage Feed" modelId: "weibo/web-v2/user-recommend-timeline" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/user-search.md b/model-api-reference/platform-apis/weibo/web-v2/user-search.md index ddc05215..b0fbcdc1 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/user-search.md +++ b/model-api-reference/platform-apis/weibo/web-v2/user-search.md @@ -1,13 +1,13 @@ --- -title: "User search API Reference" -description: "SandBase API operation weibo/web-v2/user-search." +title: "Weibo User Search API Reference" +description: "Weibo User Search API reference for SandBase. Use model weibo/web-v2/user-search with /v1/api/weibo/web-v2/user-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/user-search" -apiReferenceJson: "{\"title\":\"User search\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/user-search\",\"description\":\"Search Weibo users with multiple filter options.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"age\",\"type\":\"string | null\",\"required\":false,\"description\":\"Age bucket 18y/22y/29y/39y/40y (optional)\"},{\"name\":\"auth\",\"type\":\"string | null\",\"required\":false,\"description\":\"Auth type org_vip/per_vip/ord (optional)\"},{\"name\":\"gender\",\"type\":\"string | null\",\"required\":false,\"description\":\"Gender man/women (optional)\"},{\"name\":\"nickname\",\"type\":\"string | null\",\"required\":false,\"description\":\"Nickname filter (optional)\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number (default 1)\",\"default\":\"1\"},{\"name\":\"query\",\"type\":\"string | null\",\"required\":false,\"description\":\"Search keyword (optional)\"},{\"name\":\"region\",\"type\":\"string | null\",\"required\":false,\"description\":\"Region code from /fetch_city_list (optional)\"},{\"name\":\"school\",\"type\":\"string | null\",\"required\":false,\"description\":\"School filter (optional)\"},{\"name\":\"tag\",\"type\":\"string | null\",\"required\":false,\"description\":\"Tag filter (optional)\"},{\"name\":\"work\",\"type\":\"string | null\",\"required\":false,\"description\":\"Company filter (optional)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/user-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"query\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"query\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"query\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/user-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/user-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/user-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/user-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/user-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/user-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo User Search\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/user-search\",\"description\":\"Search Weibo users using keywords or profile attributes such as company, school, tags, gender, age range, and verification type.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"age\",\"type\":\"string | null\",\"required\":false,\"description\":\"Age bucket 18y/22y/29y/39y/40y (optional)\"},{\"name\":\"auth\",\"type\":\"string | null\",\"required\":false,\"description\":\"Auth type org_vip/per_vip/ord (optional)\"},{\"name\":\"gender\",\"type\":\"string | null\",\"required\":false,\"description\":\"Gender man/women (optional)\"},{\"name\":\"nickname\",\"type\":\"string | null\",\"required\":false,\"description\":\"Nickname filter (optional)\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number (default 1)\",\"default\":\"1\"},{\"name\":\"query\",\"type\":\"string | null\",\"required\":false,\"description\":\"Search keyword (optional)\"},{\"name\":\"region\",\"type\":\"string | null\",\"required\":false,\"description\":\"Region code from /fetch_city_list (optional)\"},{\"name\":\"school\",\"type\":\"string | null\",\"required\":false,\"description\":\"School filter (optional)\"},{\"name\":\"tag\",\"type\":\"string | null\",\"required\":false,\"description\":\"Tag filter (optional)\"},{\"name\":\"work\",\"type\":\"string | null\",\"required\":false,\"description\":\"Company filter (optional)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/user-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"query\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"query\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"query\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/user-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/user-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/user-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/user-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/user-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/user-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "User search" + modelName: "Weibo User Search" modelId: "weibo/web-v2/user-search" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/user-video-collection-detail.md b/model-api-reference/platform-apis/weibo/web-v2/user-video-collection-detail.md index 4cf0af91..053d072b 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/user-video-collection-detail.md +++ b/model-api-reference/platform-apis/weibo/web-v2/user-video-collection-detail.md @@ -1,13 +1,13 @@ --- -title: "Get user video collection detail API Reference" -description: "SandBase API operation weibo/web-v2/user-video-collection-detail." +title: "Weibo User Video Collection Detail API Reference" +description: "SandBase API reference for model weibo/web-v2/user-video-collection-detail. Call /v1/api/weibo/web-v2/user-video-collection-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/user-video-collection-detail" -apiReferenceJson: "{\"title\":\"Get user video collection detail\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/user-video-collection-detail\",\"description\":\"Get detailed content of specified collection, including video list.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cid\",\"type\":\"string\",\"required\":true,\"description\":\"Collection ID (required, get from fetch_user_video_collection_list)\"},{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, pass empty for first request, use returned cursor for subsequent\"},{\"name\":\"tab_code\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort type (0=default, 1=hottest, 2=latest)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/user-video-collection-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cid\\\": \\\"cid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cid\\\": \\\"cid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-video-collection-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cid\\\": \\\"cid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-video-collection-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-collection-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-collection-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-collection-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-collection-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-collection-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/user-video-collection-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo User Video Collection Detail\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/user-video-collection-detail\",\"description\":\"Retrieves detailed information and video listings for a specified Weibo video collection. Supports sorting by default, hottest, or available videos, alongside cursor-based pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cid\",\"type\":\"string\",\"required\":true,\"description\":\"Collection ID (required, get from fetch_user_video_collection_list)\"},{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, pass empty for first request, use returned cursor for subsequent\"},{\"name\":\"tab_code\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort type (0=default, 1=hottest, 2=latest)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/user-video-collection-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"cid\\\": \\\"cid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"cid\\\": \\\"cid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-video-collection-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"cid\\\": \\\"cid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-video-collection-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-collection-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-collection-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-collection-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-collection-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-collection-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/user-video-collection-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user video collection detail" + modelName: "Weibo User Video Collection Detail" modelId: "weibo/web-v2/user-video-collection-detail" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/user-video-collection-list.md b/model-api-reference/platform-apis/weibo/web-v2/user-video-collection-list.md index 73c727b9..e055edf6 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/user-video-collection-list.md +++ b/model-api-reference/platform-apis/weibo/web-v2/user-video-collection-list.md @@ -1,13 +1,13 @@ --- -title: "Get user video collection list API Reference" -description: "SandBase API operation weibo/web-v2/user-video-collection-list." +title: "Weibo User Video Collection List API Reference" +description: "SandBase API reference for model weibo/web-v2/user-video-collection-list. Call /v1/api/weibo/web-v2/user-video-collection-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/user-video-collection-list" -apiReferenceJson: "{\"title\":\"Get user video collection list\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/user-video-collection-list\",\"description\":\"Get video collection list of specified user.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/user-video-collection-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-video-collection-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-video-collection-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-collection-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-collection-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-collection-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-collection-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-collection-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/user-video-collection-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo User Video Collection List\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/user-video-collection-list\",\"description\":\"Returns the video collection list belonging to a specified Weibo user. Provide the target account identifier using the uid parameter to retrieve their curated video playlists.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/user-video-collection-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"8431518763\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"8431518763\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-video-collection-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"8431518763\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-video-collection-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-collection-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-collection-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-collection-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-collection-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-collection-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/user-video-collection-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user video collection list" + modelName: "Weibo User Video Collection List" modelId: "weibo/web-v2/user-video-collection-list" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/user-video-list.md b/model-api-reference/platform-apis/weibo/web-v2/user-video-list.md index c6fd7129..5414e486 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/user-video-list.md +++ b/model-api-reference/platform-apis/weibo/web-v2/user-video-list.md @@ -1,13 +1,13 @@ --- -title: "Get user all videos API Reference" -description: "SandBase API operation weibo/web-v2/user-video-list." +title: "Weibo User Video List API Reference" +description: "Weibo User Video List API reference for SandBase. Use model weibo/web-v2/user-video-list with /v1/api/weibo/web-v2/user-video-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/user-video-list" -apiReferenceJson: "{\"title\":\"Get user all videos\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/user-video-list\",\"description\":\"Get all videos published by specified user (waterfall layout).\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, pass \\\"0\\\" for first request, use returned next_cursor for subsequent requests\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/user-video-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-video-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-video-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/user-video-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo User Video List\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/user-video-list\",\"description\":\"Retrieves a waterfall list of videos posted by a specified user. Supports pagination via cursor parameters to browse historical video entries.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, pass \\\"0\\\" for first request, use returned next_cursor for subsequent requests\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/user-video-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"uid\\\": \\\"8431518763\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"uid\\\": \\\"8431518763\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-video-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"uid\\\": \\\"8431518763\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/user-video-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/user-video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/user-video-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user all videos" + modelName: "Weibo User Video List" modelId: "weibo/web-v2/user-video-list" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web-v2/video-search.md b/model-api-reference/platform-apis/weibo/web-v2/video-search.md index 4417cca4..873342c5 100644 --- a/model-api-reference/platform-apis/weibo/web-v2/video-search.md +++ b/model-api-reference/platform-apis/weibo/web-v2/video-search.md @@ -1,13 +1,13 @@ --- -title: "Weibo video search (hot/all) API Reference" -description: "SandBase API operation weibo/web-v2/video-search." +title: "Weibo Video Search API Reference" +description: "Weibo Video Search API reference for SandBase. Use model weibo/web-v2/video-search with /v1/api/weibo/web-v2/video-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/weibo/web-v2/video-search" -apiReferenceJson: "{\"title\":\"Weibo video search (hot/all)\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/video-search\",\"description\":\"Search Weibo video content, supports hot and all modes.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"mode\",\"type\":\"string\",\"required\":false,\"description\":\"Search mode hot=popular / all=all (default hot)\",\"default\":\"hot\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number (default 1)\",\"default\":\"1\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/video-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/video-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/video-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/video-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/video-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/video-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/video-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/video-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/video-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Weibo Video Search\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web-v2/video-search\",\"description\":\"Searches Weibo video posts by keyword with sorting options for popular or all results, returning matching posts, user details, and engagement counts.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"mode\",\"type\":\"string\",\"required\":false,\"description\":\"Search mode hot=popular / all=all (default hot)\",\"default\":\"hot\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number (default 1)\",\"default\":\"1\"},{\"name\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web-v2/video-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/video-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web-v2/video-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web-v2/video-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web-v2/video-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web-v2/video-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web-v2/video-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web-v2/video-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web-v2/video-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Weibo video search (hot/all)" + modelName: "Weibo Video Search" modelId: "weibo/web-v2/video-search" vendor: "Weibo" vendorSlug: "weibo" diff --git a/model-api-reference/platform-apis/weibo/web/channel-feed.md b/model-api-reference/platform-apis/weibo/web/channel-feed.md deleted file mode 100644 index 99d8c560..00000000 --- a/model-api-reference/platform-apis/weibo/web/channel-feed.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get channel feed by name API Reference" -description: "SandBase API operation weibo/web/channel-feed." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/weibo/web/channel-feed" -apiReferenceJson: "{\"title\":\"Get channel feed by name\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web/channel-feed\",\"description\":\"Get trending content by channel name (convenience endpoint)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_name\",\"type\":\"string\",\"required\":false,\"description\":\"Channel name, use default if not provided\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web/channel-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"weibo/web/channel-feed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"weibo/web/channel-feed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web/channel-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"weibo/web/channel-feed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web/channel-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web/channel-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web/channel-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web/channel-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web/channel-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web/channel-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web/channel-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get channel feed by name" - modelId: "weibo/web/channel-feed" - vendor: "Weibo" - vendorSlug: "weibo" - modelSlug: "web/channel-feed" - protocol: "API Reference" - endpoint: "/v1/api/weibo/web/channel-feed" - publishedAt: "" - capabilities: ["api","weibo"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/weibo/web/comment-replies.md b/model-api-reference/platform-apis/weibo/web/comment-replies.md deleted file mode 100644 index 398cf063..00000000 --- a/model-api-reference/platform-apis/weibo/web/comment-replies.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get comment replies API Reference — Weibo Web / Comment Replies" -description: "SandBase API operation weibo/web/comment-replies." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/weibo/web/comment-replies" -apiReferenceJson: "{\"title\":\"Get comment replies\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web/comment-replies\",\"description\":\"Get comment replies (sub-comments)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cid\",\"type\":\"string\",\"required\":true,\"description\":\"Root comment ID (from fetch_post_comments response)\"},{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination ID, default 0 for first page, get next page max_id from previous response\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web/comment-replies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"cid\\\": \\\"cid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"cid\\\": \\\"cid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web/comment-replies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"cid\\\": \\\"cid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web/comment-replies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web/comment-replies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web/comment-replies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web/comment-replies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web/comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web/comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web/comment-replies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get comment replies" - modelId: "weibo/web/comment-replies" - vendor: "Weibo" - vendorSlug: "weibo" - modelSlug: "web/comment-replies" - protocol: "API Reference" - endpoint: "/v1/api/weibo/web/comment-replies" - publishedAt: "" - capabilities: ["api","weibo"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/weibo/web/config-list.md b/model-api-reference/platform-apis/weibo/web/config-list.md deleted file mode 100644 index 76301db5..00000000 --- a/model-api-reference/platform-apis/weibo/web/config-list.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get channel config list API Reference" -description: "SandBase API operation weibo/web/config-list." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/weibo/web/config-list" -apiReferenceJson: "{\"title\":\"Get channel config list\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web/config-list\",\"description\":\"Get all channel configuration information from Weibo mobile\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web/config-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"weibo/web/config-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"weibo/web/config-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web/config-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"weibo/web/config-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web/config-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web/config-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web/config-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web/config-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web/config-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web/config-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web/config-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get channel config list" - modelId: "weibo/web/config-list" - vendor: "Weibo" - vendorSlug: "weibo" - modelSlug: "web/config-list" - protocol: "API Reference" - endpoint: "/v1/api/weibo/web/config-list" - publishedAt: "" - capabilities: ["api","weibo"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/weibo/web/hot-search.md b/model-api-reference/platform-apis/weibo/web/hot-search.md deleted file mode 100644 index 40d1a35f..00000000 --- a/model-api-reference/platform-apis/weibo/web/hot-search.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get hot search ranking API Reference" -description: "SandBase API operation weibo/web/hot-search." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/weibo/web/hot-search" -apiReferenceJson: "{\"title\":\"Get hot search ranking\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web/hot-search\",\"description\":\"Get Weibo real-time hot search ranking (Top 50) and rising trends\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web/hot-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"weibo/web/hot-search\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"weibo/web/hot-search\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web/hot-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"weibo/web/hot-search\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web/hot-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web/hot-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web/hot-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web/hot-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web/hot-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web/hot-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web/hot-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get hot search ranking" - modelId: "weibo/web/hot-search" - vendor: "Weibo" - vendorSlug: "weibo" - modelSlug: "web/hot-search" - protocol: "API Reference" - endpoint: "/v1/api/weibo/web/hot-search" - publishedAt: "" - capabilities: ["api","weibo"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/weibo/web/post-comments.md b/model-api-reference/platform-apis/weibo/web/post-comments.md deleted file mode 100644 index 75269aae..00000000 --- a/model-api-reference/platform-apis/weibo/web/post-comments.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get post comments API Reference — Weibo Web / Post Comments API" -description: "SandBase API operation weibo/web/post-comments." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/weibo/web/post-comments" -apiReferenceJson: "{\"title\":\"Get post comments\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web/post-comments\",\"description\":\"Get Weibo post comments (hot comments flow)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"max_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination ID from previous page result\"},{\"name\":\"max_id_type\",\"type\":\"integer\",\"required\":false,\"description\":\"max_id type, default 0\",\"default\":\"0\"},{\"name\":\"mid\",\"type\":\"string\",\"required\":true,\"description\":\"Post MID\"},{\"name\":\"post_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web/post-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"mid\\\": \\\"5100663548412324\\\",\\n \\\"post_id\\\": \\\"5100663548412324\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"mid\\\": \\\"5100663548412324\\\",\\n \\\"post_id\\\": \\\"5100663548412324\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web/post-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"mid\\\": \\\"5100663548412324\\\",\\n \\\"post_id\\\": \\\"5100663548412324\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web/post-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web/post-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web/post-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web/post-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web/post-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get post comments" - modelId: "weibo/web/post-comments" - vendor: "Weibo" - vendorSlug: "weibo" - modelSlug: "web/post-comments" - protocol: "API Reference" - endpoint: "/v1/api/weibo/web/post-comments" - publishedAt: "" - capabilities: ["api","weibo"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/weibo/web/post-detail.md b/model-api-reference/platform-apis/weibo/web/post-detail.md deleted file mode 100644 index 9511d0cf..00000000 --- a/model-api-reference/platform-apis/weibo/web/post-detail.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get post detail API Reference — Weibo Web / Post Detail API" -description: "SandBase API operation weibo/web/post-detail." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/weibo/web/post-detail" -apiReferenceJson: "{\"title\":\"Get post detail\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web/post-detail\",\"description\":\"Get single Weibo post detail\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"post_id\",\"type\":\"string\",\"required\":true,\"description\":\"Post ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web/post-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"post_id\\\": \\\"5092682368025584\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"post_id\\\": \\\"5092682368025584\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web/post-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"post_id\\\": \\\"5092682368025584\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web/post-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web/post-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web/post-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web/post-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web/post-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get post detail" - modelId: "weibo/web/post-detail" - vendor: "Weibo" - vendorSlug: "weibo" - modelSlug: "web/post-detail" - protocol: "API Reference" - endpoint: "/v1/api/weibo/web/post-detail" - publishedAt: "" - capabilities: ["api","weibo"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/weibo/web/search-topics.md b/model-api-reference/platform-apis/weibo/web/search-topics.md deleted file mode 100644 index ac3100fd..00000000 --- a/model-api-reference/platform-apis/weibo/web/search-topics.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get search page hot topics API Reference" -description: "SandBase API operation weibo/web/search-topics." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/weibo/web/search-topics" -apiReferenceJson: "{\"title\":\"Get search page hot topics\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web/search-topics\",\"description\":\"Get search page hot topics list (search suggestions/trending topics)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web/search-topics \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"weibo/web/search-topics\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"weibo/web/search-topics\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web/search-topics\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"weibo/web/search-topics\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web/search-topics\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web/search-topics\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web/search-topics\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web/search-topics\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web/search-topics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web/search-topics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web/search-topics\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get search page hot topics" - modelId: "weibo/web/search-topics" - vendor: "Weibo" - vendorSlug: "weibo" - modelSlug: "web/search-topics" - protocol: "API Reference" - endpoint: "/v1/api/weibo/web/search-topics" - publishedAt: "" - capabilities: ["api","weibo"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/weibo/web/search.md b/model-api-reference/platform-apis/weibo/web/search.md deleted file mode 100644 index 93309866..00000000 --- a/model-api-reference/platform-apis/weibo/web/search.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Search Weibo API Reference" -description: "SandBase API operation weibo/web/search." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/weibo/web/search" -apiReferenceJson: "{\"title\":\"Search Weibo\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web/search\",\"description\":\"Search Weibo content\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number\",\"default\":\"1\",\"constraints\":\"Minimum: 1\"},{\"name\":\"search_type\",\"type\":\"string\",\"required\":false,\"description\":\"Search type\",\"default\":\"1\"},{\"name\":\"time_scope\",\"type\":\"string\",\"required\":false,\"description\":\"Time range filter\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web/search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web/search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web/search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web/search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web/search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web/search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web/search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web/search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Search Weibo" - modelId: "weibo/web/search" - vendor: "Weibo" - vendorSlug: "weibo" - modelSlug: "web/search" - protocol: "API Reference" - endpoint: "/v1/api/weibo/web/search" - publishedAt: "" - capabilities: ["api","weibo"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/weibo/web/trend-top.md b/model-api-reference/platform-apis/weibo/web/trend-top.md deleted file mode 100644 index 09175e33..00000000 --- a/model-api-reference/platform-apis/weibo/web/trend-top.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get channel trend top API Reference" -description: "SandBase API operation weibo/web/trend-top." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/weibo/web/trend-top" -apiReferenceJson: "{\"title\":\"Get channel trend top\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web/trend-top\",\"description\":\"Get trending content of the specified channel\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"containerid\",\"type\":\"string\",\"required\":true,\"description\":\"Channel container ID, can be obtained from fetch_config_list endpoint\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\",\"default\":\"1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web/trend-top \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"containerid\\\": \\\"102803_ctg1_8999_-_ctg1_8999_home\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"containerid\\\": \\\"102803_ctg1_8999_-_ctg1_8999_home\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web/trend-top\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"containerid\\\": \\\"102803_ctg1_8999_-_ctg1_8999_home\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web/trend-top\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web/trend-top\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web/trend-top\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web/trend-top\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web/trend-top\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web/trend-top\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web/trend-top\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get channel trend top" - modelId: "weibo/web/trend-top" - vendor: "Weibo" - vendorSlug: "weibo" - modelSlug: "web/trend-top" - protocol: "API Reference" - endpoint: "/v1/api/weibo/web/trend-top" - publishedAt: "" - capabilities: ["api","weibo"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/weibo/web/user-info.md b/model-api-reference/platform-apis/weibo/web/user-info.md deleted file mode 100644 index d06bfc1c..00000000 --- a/model-api-reference/platform-apis/weibo/web/user-info.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get user information API Reference — Weibo Web / User Info API" -description: "SandBase API operation weibo/web/user-info." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/weibo/web/user-info" -apiReferenceJson: "{\"title\":\"Get user information\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web/user-info\",\"description\":\"Get Weibo user information\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web/user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"2992978081\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"2992978081\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web/user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"2992978081\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web/user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web/user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web/user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web/user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web/user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get user information" - modelId: "weibo/web/user-info" - vendor: "Weibo" - vendorSlug: "weibo" - modelSlug: "web/user-info" - protocol: "API Reference" - endpoint: "/v1/api/weibo/web/user-info" - publishedAt: "" - capabilities: ["api","weibo"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/weibo/web/user-posts.md b/model-api-reference/platform-apis/weibo/web/user-posts.md deleted file mode 100644 index 6ec252af..00000000 --- a/model-api-reference/platform-apis/weibo/web/user-posts.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get user posts API Reference — Weibo Web / User Posts API" -description: "SandBase API operation weibo/web/user-posts." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/weibo/web/user-posts" -apiReferenceJson: "{\"title\":\"Get user posts\",\"operation\":\"Weibo API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/weibo/web/user-posts\",\"description\":\"Get Weibo user's posts list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, default 1\"},{\"name\":\"since_id\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination ID from previous page result\"},{\"name\":\"uid\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, weibo\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/weibo/web/user-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/weibo/web/user-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"uid\\\": \\\"uid\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/weibo/web/user-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"weibo/web/user-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"weibo/web/user-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"weibo/web/user-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"weibo/web/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"weibo/web/user-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"weibo/web/user-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get user posts" - modelId: "weibo/web/user-posts" - vendor: "Weibo" - vendorSlug: "weibo" - modelSlug: "web/user-posts" - protocol: "API Reference" - endpoint: "/v1/api/weibo/web/user-posts" - publishedAt: "" - capabilities: ["api","weibo"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/xiaohongshu/app-v2/creator-hot-inspiration-feed.md b/model-api-reference/platform-apis/xiaohongshu/app-v2/creator-hot-inspiration-feed.md index b5888a3e..780fe504 100644 --- a/model-api-reference/platform-apis/xiaohongshu/app-v2/creator-hot-inspiration-feed.md +++ b/model-api-reference/platform-apis/xiaohongshu/app-v2/creator-hot-inspiration-feed.md @@ -1,13 +1,13 @@ --- -title: "Get creator hot inspiration feed API Reference" -description: "SandBase API operation xiaohongshu/app-v2/creator-hot-inspiration-feed." +title: "Xiaohongshu (RED) Creator Hot Inspiration Feed API Reference" +description: "SandBase API reference: xiaohongshu/app-v2/creator-hot-inspiration-feed via /v1/api/xiaohongshu/app-v2/creator-hot-inspiration-feed. See request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/app-v2/creator-hot-inspiration-feed" -apiReferenceJson: "{\"title\":\"Get creator hot inspiration feed\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/creator-hot-inspiration-feed\",\"description\":\"Get creator center hot inspiration feed, using cursor pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, leave empty for first request, pass cursor value from previous response (e.g. \\\"1\\\", \\\"2\\\"...)\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/creator-hot-inspiration-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xiaohongshu/app-v2/creator-hot-inspiration-feed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"xiaohongshu/app-v2/creator-hot-inspiration-feed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/creator-hot-inspiration-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"xiaohongshu/app-v2/creator-hot-inspiration-feed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/creator-hot-inspiration-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/creator-hot-inspiration-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/creator-hot-inspiration-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/creator-hot-inspiration-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/creator-hot-inspiration-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/creator-hot-inspiration-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/creator-hot-inspiration-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) Creator Hot Inspiration Feed\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/creator-hot-inspiration-feed\",\"description\":\"Retrieves creator center hot inspiration feed items with topic titles, popularity scores, and deeplinks. Supports pagination using a cursor parameter.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, leave empty for first request, pass cursor value from previous response (e.g. \\\"1\\\", \\\"2\\\"...)\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/creator-hot-inspiration-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/creator-hot-inspiration-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/creator-hot-inspiration-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/creator-hot-inspiration-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/creator-hot-inspiration-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/creator-hot-inspiration-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/creator-hot-inspiration-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/creator-hot-inspiration-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/creator-hot-inspiration-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get creator hot inspiration feed" + modelName: "Xiaohongshu (RED) Creator Hot Inspiration Feed" modelId: "xiaohongshu/app-v2/creator-hot-inspiration-feed" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/app-v2/creator-inspiration-feed.md b/model-api-reference/platform-apis/xiaohongshu/app-v2/creator-inspiration-feed.md index a0bd85b0..6047d175 100644 --- a/model-api-reference/platform-apis/xiaohongshu/app-v2/creator-inspiration-feed.md +++ b/model-api-reference/platform-apis/xiaohongshu/app-v2/creator-inspiration-feed.md @@ -1,13 +1,13 @@ --- -title: "Get creator inspiration feed API Reference" -description: "SandBase API operation xiaohongshu/app-v2/creator-inspiration-feed." +title: "Xiaohongshu (RED) Inspiration Feed API Reference" +description: "SandBase API reference for model xiaohongshu/app-v2/creator-inspiration-feed. Call /v1/api/xiaohongshu/app-v2/creator-inspiration-feed; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/app-v2/creator-inspiration-feed" -apiReferenceJson: "{\"title\":\"Get creator inspiration feed\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/creator-inspiration-feed\",\"description\":\"Get creator center recommended inspiration feed, using cursor pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, leave empty for first request, pass cursor value from previous response (e.g. \\\"r_1\\\", \\\"r_2\\\"...)\",\"default\":\"\\\"\\\"\"},{\"name\":\"source\",\"type\":\"string\",\"required\":false,\"description\":\"Source, default \\\"creator_center\\\"\",\"default\":\"creator_center\"},{\"name\":\"tab\",\"type\":\"integer\",\"required\":false,\"description\":\"Tab type, default 0\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/creator-inspiration-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xiaohongshu/app-v2/creator-inspiration-feed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"xiaohongshu/app-v2/creator-inspiration-feed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/creator-inspiration-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"xiaohongshu/app-v2/creator-inspiration-feed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/creator-inspiration-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/creator-inspiration-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/creator-inspiration-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/creator-inspiration-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/creator-inspiration-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/creator-inspiration-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/creator-inspiration-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) Inspiration Feed\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/creator-inspiration-feed\",\"description\":\"Returns recommended inspiration feed items and trending topics from Xiaohongshu (RED). Supports cursor-based pagination and filtering by `tab`.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, leave empty for first request, pass cursor value from previous response (e.g. \\\"r_1\\\", \\\"r_2\\\"...)\",\"default\":\"\\\"\\\"\"},{\"name\":\"source\",\"type\":\"string\",\"required\":false,\"description\":\"Source, default \\\"creator_center\\\"\",\"default\":\"creator_center\"},{\"name\":\"tab\",\"type\":\"integer\",\"required\":false,\"description\":\"Tab type, default 0\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/creator-inspiration-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/creator-inspiration-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/creator-inspiration-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/creator-inspiration-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/creator-inspiration-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/creator-inspiration-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/creator-inspiration-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/creator-inspiration-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/creator-inspiration-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get creator inspiration feed" + modelName: "Xiaohongshu (RED) Inspiration Feed" modelId: "xiaohongshu/app-v2/creator-inspiration-feed" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/app-v2/image-note-detail.md b/model-api-reference/platform-apis/xiaohongshu/app-v2/image-note-detail.md index 06603b1c..0709cd08 100644 --- a/model-api-reference/platform-apis/xiaohongshu/app-v2/image-note-detail.md +++ b/model-api-reference/platform-apis/xiaohongshu/app-v2/image-note-detail.md @@ -1,13 +1,13 @@ --- -title: "Get image note detail API Reference" -description: "SandBase API operation xiaohongshu/app-v2/image-note-detail." +title: "Xiaohongshu (RED) Image Note Details API Reference" +description: "SandBase API reference for model xiaohongshu/app-v2/image-note-detail. Call /v1/api/xiaohongshu/app-v2/image-note-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/app-v2/image-note-detail" -apiReferenceJson: "{\"title\":\"Get image note detail\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/image-note-detail\",\"description\":\"Get full detail data of an image note\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"note_id\",\"type\":\"string\",\"required\":false,\"description\":\"Note ID, e.g. \\\"697c0eee000000000a03c308\\\"\",\"default\":\"\\\"\\\"\"},{\"name\":\"share_text\",\"type\":\"string\",\"required\":false,\"description\":\"Xiaohongshu sharing link (support APP and Web sharing link)\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/image-note-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xiaohongshu/app-v2/image-note-detail\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"xiaohongshu/app-v2/image-note-detail\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/image-note-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"xiaohongshu/app-v2/image-note-detail\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/image-note-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/image-note-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/image-note-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/image-note-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/image-note-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/image-note-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/image-note-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) Image Note Details\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/image-note-detail\",\"description\":\"Returns detailed information for a Xiaohongshu image note. Queries accept a specific note identifier or a post sharing link from the app or web interface.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"note_id\",\"type\":\"string\",\"required\":false,\"description\":\"Note ID, e.g. \\\"697c0eee000000000a03c308\\\"\",\"default\":\"\\\"\\\"\"},{\"name\":\"share_text\",\"type\":\"string\",\"required\":false,\"description\":\"Xiaohongshu sharing link (support APP and Web sharing link)\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/image-note-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/image-note-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/image-note-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/image-note-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/image-note-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/image-note-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/image-note-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/image-note-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/image-note-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get image note detail" + modelName: "Xiaohongshu (RED) Image Note Details" modelId: "xiaohongshu/app-v2/image-note-detail" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/app-v2/note-comments.md b/model-api-reference/platform-apis/xiaohongshu/app-v2/note-comments.md index c2bb9834..83384074 100644 --- a/model-api-reference/platform-apis/xiaohongshu/app-v2/note-comments.md +++ b/model-api-reference/platform-apis/xiaohongshu/app-v2/note-comments.md @@ -1,13 +1,13 @@ --- -title: "Get note comments API Reference" -description: "SandBase API operation xiaohongshu/app-v2/note-comments." +title: "Xiaohongshu (RED) Note Comments API Reference" +description: "SandBase API reference for model xiaohongshu/app-v2/note-comments. Call /v1/api/xiaohongshu/app-v2/note-comments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/app-v2/note-comments" -apiReferenceJson: "{\"title\":\"Get note comments\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/note-comments\",\"description\":\"Get comment list for a specified note, supports pagination and multiple sort strategies\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, leave empty for first request, pass cursor value from previous response for next page\",\"default\":\"\\\"\\\"\"},{\"name\":\"index\",\"type\":\"integer\",\"required\":false,\"description\":\"Comment index, pass 0 for first request, pass index value from previous response for next page\",\"default\":\"0\"},{\"name\":\"note_id\",\"type\":\"string\",\"required\":false,\"description\":\"Note ID, e.g. \\\"697c0eee000000000a03c308\\\"\",\"default\":\"\\\"\\\"\"},{\"name\":\"pageArea\",\"type\":\"string\",\"required\":false,\"description\":\"Fold status, default \\\"UNFOLDED\\\" (unfolded), pass pageArea value from previous response for next page\",\"default\":\"UNFOLDED\"},{\"name\":\"share_text\",\"type\":\"string\",\"required\":false,\"description\":\"Xiaohongshu sharing link (support APP and Web sharing link)\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_strategy\",\"type\":\"string\",\"required\":false,\"description\":\"Sort strategy\",\"default\":\"latest_v2\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/note-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xiaohongshu/app-v2/note-comments\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"xiaohongshu/app-v2/note-comments\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/note-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"xiaohongshu/app-v2/note-comments\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/note-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/note-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/note-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/note-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/note-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/note-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/note-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) Note Comments\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/note-comments\",\"description\":\"Get the comments on a Xiaohongshu note: comment text, time, likes, reply counts and location, with sorting and cursor pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, leave empty for first request, pass cursor value from previous response for next page\",\"default\":\"\\\"\\\"\"},{\"name\":\"index\",\"type\":\"integer\",\"required\":false,\"description\":\"Comment index, pass 0 for first request, pass index value from previous response for next page\",\"default\":\"0\"},{\"name\":\"note_id\",\"type\":\"string\",\"required\":false,\"description\":\"Note ID, e.g. \\\"697c0eee000000000a03c308\\\"\",\"default\":\"\\\"\\\"\"},{\"name\":\"pageArea\",\"type\":\"string\",\"required\":false,\"description\":\"Fold status, default \\\"UNFOLDED\\\" (unfolded), pass pageArea value from previous response for next page\",\"default\":\"UNFOLDED\"},{\"name\":\"share_text\",\"type\":\"string\",\"required\":false,\"description\":\"Xiaohongshu sharing link (support APP and Web sharing link)\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_strategy\",\"type\":\"string\",\"required\":false,\"description\":\"Sort strategy\",\"default\":\"latest_v2\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/note-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/note-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/note-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/note-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/note-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/note-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/note-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/note-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/note-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get note comments" + modelName: "Xiaohongshu (RED) Note Comments" modelId: "xiaohongshu/app-v2/note-comments" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/app-v2/note-sub-comments.md b/model-api-reference/platform-apis/xiaohongshu/app-v2/note-sub-comments.md deleted file mode 100644 index 3c42853b..00000000 --- a/model-api-reference/platform-apis/xiaohongshu/app-v2/note-sub-comments.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get note sub comments API Reference" -description: "SandBase API operation xiaohongshu/app-v2/note-sub-comments." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/xiaohongshu/app-v2/note-sub-comments" -apiReferenceJson: "{\"title\":\"Get note sub comments\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/note-sub-comments\",\"description\":\"Get sub-comment (reply) list under a specific comment of a note, using cursor pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"comment_id\",\"type\":\"string\",\"required\":true,\"description\":\"Parent comment ID (required), e.g. \\\"699fb9930000000008030db6\\\"\"},{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, leave empty for first request, extract `cursor` value from `$.data.cursor` of previous response for next page\"},{\"name\":\"index\",\"type\":\"integer\",\"required\":false,\"description\":\"Pagination index, pass 1 for first request, extract `index` value from `$.data.cursor` of previous response for next page\"},{\"name\":\"note_id\",\"type\":\"string\",\"required\":false,\"description\":\"Note ID, e.g. \\\"699916e6000000001d0253da\\\"\"},{\"name\":\"share_text\",\"type\":\"string\",\"required\":false,\"description\":\"Xiaohongshu sharing link (support APP and Web sharing link)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/note-sub-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/note-sub-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/note-sub-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/note-sub-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/note-sub-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/note-sub-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/note-sub-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/note-sub-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/note-sub-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get note sub comments" - modelId: "xiaohongshu/app-v2/note-sub-comments" - vendor: "Xiaohongshu" - vendorSlug: "xiaohongshu" - modelSlug: "app-v2/note-sub-comments" - protocol: "API Reference" - endpoint: "/v1/api/xiaohongshu/app-v2/note-sub-comments" - publishedAt: "" - capabilities: ["api","xiaohongshu"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/xiaohongshu/app-v2/product-detail.md b/model-api-reference/platform-apis/xiaohongshu/app-v2/product-detail.md index 3af1caf5..fe12b4af 100644 --- a/model-api-reference/platform-apis/xiaohongshu/app-v2/product-detail.md +++ b/model-api-reference/platform-apis/xiaohongshu/app-v2/product-detail.md @@ -1,13 +1,13 @@ --- -title: "Get product detail API Reference" -description: "SandBase API operation xiaohongshu/app-v2/product-detail." +title: "Xiaohongshu (RED) Product Detail API Reference" +description: "SandBase API reference for model xiaohongshu/app-v2/product-detail. Call /v1/api/xiaohongshu/app-v2/product-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/app-v2/product-detail" -apiReferenceJson: "{\"title\":\"Get product detail\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/product-detail\",\"description\":\"Get product detail by SKU ID, including price, specifications, stock, description, etc.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pre_page\",\"type\":\"string\",\"required\":false,\"description\":\"Previous page, default \\\"mall_search\\\"\",\"default\":\"mall_search\"},{\"name\":\"sku_id\",\"type\":\"string\",\"required\":true,\"description\":\"Product SKU ID (required), e.g. \\\"669ddd44e05f3700011067ed\\\"\"},{\"name\":\"source\",\"type\":\"string\",\"required\":false,\"description\":\"Source, default \\\"mall_search\\\"\",\"default\":\"mall_search\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/product-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sku_id\\\": \\\"669ddd44e05f3700011067ed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sku_id\\\": \\\"669ddd44e05f3700011067ed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/product-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sku_id\\\": \\\"669ddd44e05f3700011067ed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/product-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/product-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) Product Detail\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/product-detail\",\"description\":\"Returns detailed product information for a specified SKU on Xiaohongshu (RED). Supply a product SKU identifier along with optional source page context.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pre_page\",\"type\":\"string\",\"required\":false,\"description\":\"Previous page, default \\\"mall_search\\\"\",\"default\":\"mall_search\"},{\"name\":\"sku_id\",\"type\":\"string\",\"required\":true,\"description\":\"Product SKU ID (required), e.g. \\\"669ddd44e05f3700011067ed\\\"\"},{\"name\":\"source\",\"type\":\"string\",\"required\":false,\"description\":\"Source, default \\\"mall_search\\\"\",\"default\":\"mall_search\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/product-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sku_id\\\": \\\"669ddd44e05f3700011067ed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sku_id\\\": \\\"669ddd44e05f3700011067ed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/product-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sku_id\\\": \\\"669ddd44e05f3700011067ed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/product-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/product-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get product detail" + modelName: "Xiaohongshu (RED) Product Detail" modelId: "xiaohongshu/app-v2/product-detail" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/app-v2/product-recommendations.md b/model-api-reference/platform-apis/xiaohongshu/app-v2/product-recommendations.md index 0044a2a5..d6ad4b99 100644 --- a/model-api-reference/platform-apis/xiaohongshu/app-v2/product-recommendations.md +++ b/model-api-reference/platform-apis/xiaohongshu/app-v2/product-recommendations.md @@ -1,13 +1,13 @@ --- -title: "Get product recommendations API Reference" -description: "SandBase API operation xiaohongshu/app-v2/product-recommendations." +title: "Xiaohongshu (RED) Product Recommendations API Reference" +description: "SandBase API reference for model xiaohongshu/app-v2/product-recommendations. Call /v1/api/xiaohongshu/app-v2/product-recommendations; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/app-v2/product-recommendations" -apiReferenceJson: "{\"title\":\"Get product recommendations\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/product-recommendations\",\"description\":\"Get recommended products list by SKU ID, using cursor pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor_score\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, leave empty for first request, pass cursor_score value from previous response for next page\",\"default\":\"\\\"\\\"\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region, default \\\"US\\\"\",\"default\":\"US\"},{\"name\":\"sku_id\",\"type\":\"string\",\"required\":true,\"description\":\"Product SKU ID (required), e.g. \\\"669ddd44e05f3700011067ed\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/product-recommendations \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sku_id\\\": \\\"669ddd44e05f3700011067ed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sku_id\\\": \\\"669ddd44e05f3700011067ed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/product-recommendations\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sku_id\\\": \\\"669ddd44e05f3700011067ed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/product-recommendations\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-recommendations\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-recommendations\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-recommendations\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-recommendations\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-recommendations\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/product-recommendations\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) Product Recommendations\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/product-recommendations\",\"description\":\"Returns a list of recommended products based on a specified product SKU ID. Supports region-based filtering and cursor pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor_score\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, leave empty for first request, pass cursor_score value from previous response for next page\",\"default\":\"\\\"\\\"\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region, default \\\"US\\\"\",\"default\":\"US\"},{\"name\":\"sku_id\",\"type\":\"string\",\"required\":true,\"description\":\"Product SKU ID (required), e.g. \\\"669ddd44e05f3700011067ed\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/product-recommendations \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sku_id\\\": \\\"669ddd44e05f3700011067ed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sku_id\\\": \\\"669ddd44e05f3700011067ed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/product-recommendations\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sku_id\\\": \\\"669ddd44e05f3700011067ed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/product-recommendations\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-recommendations\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-recommendations\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-recommendations\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-recommendations\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-recommendations\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/product-recommendations\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get product recommendations" + modelName: "Xiaohongshu (RED) Product Recommendations" modelId: "xiaohongshu/app-v2/product-recommendations" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/app-v2/product-review-overview.md b/model-api-reference/platform-apis/xiaohongshu/app-v2/product-review-overview.md index 0c69beaa..57cf3592 100644 --- a/model-api-reference/platform-apis/xiaohongshu/app-v2/product-review-overview.md +++ b/model-api-reference/platform-apis/xiaohongshu/app-v2/product-review-overview.md @@ -1,13 +1,13 @@ --- -title: "Get product review overview API Reference" -description: "SandBase API operation xiaohongshu/app-v2/product-review-overview." +title: "Xiaohongshu (RED) Product Review Overview API Reference" +description: "SandBase API reference for model xiaohongshu/app-v2/product-review-overview. Call /v1/api/xiaohongshu/app-v2/product-review-overview; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/app-v2/product-review-overview" -apiReferenceJson: "{\"title\":\"Get product review overview\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/product-review-overview\",\"description\":\"Get product review statistics, including rating distribution, positive rate, review tags, etc.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sku_id\",\"type\":\"string\",\"required\":true,\"description\":\"Product SKU ID (required), e.g. \\\"669ddd44e05f3700011067ed\\\"\"},{\"name\":\"tab\",\"type\":\"integer\",\"required\":false,\"description\":\"Tab type, default 2\",\"default\":\"2\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/product-review-overview \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sku_id\\\": \\\"669ddd44e05f3700011067ed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sku_id\\\": \\\"669ddd44e05f3700011067ed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/product-review-overview\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sku_id\\\": \\\"669ddd44e05f3700011067ed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/product-review-overview\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-review-overview\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-review-overview\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-review-overview\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-review-overview\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-review-overview\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/product-review-overview\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) Product Review Overview\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/product-review-overview\",\"description\":\"Returns product review statistics and feedback details for a specific item on Xiaohongshu (RED), filtered by SKU identifier and tab type.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"sku_id\",\"type\":\"string\",\"required\":true,\"description\":\"Product SKU ID (required), e.g. \\\"669ddd44e05f3700011067ed\\\"\"},{\"name\":\"tab\",\"type\":\"integer\",\"required\":false,\"description\":\"Tab type, default 2\",\"default\":\"2\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/product-review-overview \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sku_id\\\": \\\"669ddd44e05f3700011067ed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sku_id\\\": \\\"669ddd44e05f3700011067ed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/product-review-overview\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sku_id\\\": \\\"669ddd44e05f3700011067ed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/product-review-overview\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-review-overview\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-review-overview\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-review-overview\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-review-overview\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-review-overview\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/product-review-overview\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get product review overview" + modelName: "Xiaohongshu (RED) Product Review Overview" modelId: "xiaohongshu/app-v2/product-review-overview" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/app-v2/product-reviews.md b/model-api-reference/platform-apis/xiaohongshu/app-v2/product-reviews.md index 41c012bf..ea01809a 100644 --- a/model-api-reference/platform-apis/xiaohongshu/app-v2/product-reviews.md +++ b/model-api-reference/platform-apis/xiaohongshu/app-v2/product-reviews.md @@ -1,13 +1,13 @@ --- -title: "Get product reviews API Reference" -description: "SandBase API operation xiaohongshu/app-v2/product-reviews." +title: "Xiaohongshu (RED) Product Reviews API Reference" +description: "SandBase API reference for model xiaohongshu/app-v2/product-reviews. Call /v1/api/xiaohongshu/app-v2/product-reviews; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/app-v2/product-reviews" -apiReferenceJson: "{\"title\":\"Get product reviews\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/product-reviews\",\"description\":\"Get product user reviews list, supports pagination, sorting, and filtering reviews with images\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"from_page\",\"type\":\"string\",\"required\":false,\"description\":\"From page, default \\\"score_page\\\"\",\"default\":\"score_page\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, start from 0\",\"default\":\"0\"},{\"name\":\"share_pics_only\",\"type\":\"integer\",\"required\":false,\"description\":\"Show reviews with images only, 0=no, 1=yes\",\"default\":\"0\"},{\"name\":\"sku_id\",\"type\":\"string\",\"required\":true,\"description\":\"Product SKU ID (required), e.g. \\\"669ddd44e05f3700011067ed\\\"\"},{\"name\":\"sort_strategy_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort strategy\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/product-reviews \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"sku_id\\\": \\\"669ddd44e05f3700011067ed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"sku_id\\\": \\\"669ddd44e05f3700011067ed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/product-reviews\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"sku_id\\\": \\\"669ddd44e05f3700011067ed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/product-reviews\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-reviews\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-reviews\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-reviews\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-reviews\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-reviews\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/product-reviews\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) Product Reviews\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/product-reviews\",\"description\":\"Returns customer reviews for a specified Xiaohongshu e-commerce SKU. Supports pagination, sorting strategy selection, and filtering for reviews with images.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"from_page\",\"type\":\"string\",\"required\":false,\"description\":\"From page, default \\\"score_page\\\"\",\"default\":\"score_page\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, start from 0\",\"default\":\"0\"},{\"name\":\"share_pics_only\",\"type\":\"integer\",\"required\":false,\"description\":\"Show reviews with images only, 0=no, 1=yes\",\"default\":\"0\"},{\"name\":\"sku_id\",\"type\":\"string\",\"required\":true,\"description\":\"Product SKU ID (required), e.g. \\\"669ddd44e05f3700011067ed\\\"\"},{\"name\":\"sort_strategy_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Sort strategy\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/product-reviews \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"sku_id\\\": \\\"669ddd44e05f3700011067ed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"sku_id\\\": \\\"669ddd44e05f3700011067ed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/product-reviews\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"sku_id\\\": \\\"669ddd44e05f3700011067ed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/product-reviews\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-reviews\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-reviews\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-reviews\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-reviews\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/product-reviews\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/product-reviews\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get product reviews" + modelName: "Xiaohongshu (RED) Product Reviews" modelId: "xiaohongshu/app-v2/product-reviews" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/app-v2/search-groups.md b/model-api-reference/platform-apis/xiaohongshu/app-v2/search-groups.md index b5ef2533..e593855e 100644 --- a/model-api-reference/platform-apis/xiaohongshu/app-v2/search-groups.md +++ b/model-api-reference/platform-apis/xiaohongshu/app-v2/search-groups.md @@ -1,13 +1,13 @@ --- -title: "Search groups API Reference" -description: "SandBase API operation xiaohongshu/app-v2/search-groups." +title: "Xiaohongshu (RED) Group Search API Reference" +description: "SandBase API reference for model xiaohongshu/app-v2/search-groups. Call /v1/api/xiaohongshu/app-v2/search-groups; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/app-v2/search-groups" -apiReferenceJson: "{\"title\":\"Search groups\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/search-groups\",\"description\":\"Search Xiaohongshu groups by keyword, supports pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"is_recommend\",\"type\":\"integer\",\"required\":false,\"description\":\"Is recommend, 0=no, 1=yes\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"page_no\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, start from 0\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID, pass value from first search response for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"source\",\"type\":\"string\",\"required\":false,\"description\":\"Source, default \\\"unifiedSearchGroup\\\"\",\"default\":\"unifiedSearchGroup\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-groups \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-groups\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-groups\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-groups\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-groups\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-groups\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-groups\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-groups\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/search-groups\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) Group Search\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/search-groups\",\"description\":\"Searches Xiaohongshu community groups by keyword with support for pagination, recommendation flags, and search filters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"is_recommend\",\"type\":\"integer\",\"required\":false,\"description\":\"Is recommend, 0=no, 1=yes\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"page_no\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, start from 0\",\"default\":\"0\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID, pass value from first search response for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"source\",\"type\":\"string\",\"required\":false,\"description\":\"Source, default \\\"unifiedSearchGroup\\\"\",\"default\":\"unifiedSearchGroup\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-groups \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-groups\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-groups\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-groups\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-groups\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-groups\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-groups\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-groups\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/search-groups\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search groups" + modelName: "Xiaohongshu (RED) Group Search" modelId: "xiaohongshu/app-v2/search-groups" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/app-v2/search-images.md b/model-api-reference/platform-apis/xiaohongshu/app-v2/search-images.md index 4e6844be..e65da872 100644 --- a/model-api-reference/platform-apis/xiaohongshu/app-v2/search-images.md +++ b/model-api-reference/platform-apis/xiaohongshu/app-v2/search-images.md @@ -1,13 +1,13 @@ --- -title: "Search images API Reference" -description: "SandBase API operation xiaohongshu/app-v2/search-images." +title: "Xiaohongshu (RED) Image Search API Reference" +description: "SandBase API reference for model xiaohongshu/app-v2/search-images. Call /v1/api/xiaohongshu/app-v2/search-images; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/app-v2/search-images" -apiReferenceJson: "{\"title\":\"Search images\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/search-images\",\"description\":\"Search Xiaohongshu images by keyword, returns 20 results per page, supports pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, start from 1\",\"default\":\"1\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID, pass value from first search response for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"search_session_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search session ID, pass value from first search response for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"source\",\"type\":\"string\",\"required\":false,\"description\":\"Source, default \\\"explore_feed\\\"\",\"default\":\"explore_feed\"},{\"name\":\"word_request_id\",\"type\":\"string\",\"required\":false,\"description\":\"Word request ID, pass value from first search response for pagination\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-images \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-images\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-images\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-images\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-images\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-images\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-images\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-images\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/search-images\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) Image Search\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/search-images\",\"description\":\"Returns image notes and matching post metadata for a specified search keyword. Results include image URLs, engagement metrics, note identifiers, and author information.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, start from 1\",\"default\":\"1\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID, pass value from first search response for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"search_session_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search session ID, pass value from first search response for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"source\",\"type\":\"string\",\"required\":false,\"description\":\"Source, default \\\"explore_feed\\\"\",\"default\":\"explore_feed\"},{\"name\":\"word_request_id\",\"type\":\"string\",\"required\":false,\"description\":\"Word request ID, pass value from first search response for pagination\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-images \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-images\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-images\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-images\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-images\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-images\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-images\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-images\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/search-images\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search images" + modelName: "Xiaohongshu (RED) Image Search" modelId: "xiaohongshu/app-v2/search-images" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/app-v2/search-notes.md b/model-api-reference/platform-apis/xiaohongshu/app-v2/search-notes.md index 82f8b3b4..1f5fedb9 100644 --- a/model-api-reference/platform-apis/xiaohongshu/app-v2/search-notes.md +++ b/model-api-reference/platform-apis/xiaohongshu/app-v2/search-notes.md @@ -1,13 +1,13 @@ --- -title: "Search notes API Reference" -description: "SandBase API operation xiaohongshu/app-v2/search-notes." +title: "Xiaohongshu (RED) Note Search API Reference" +description: "SandBase API reference for model xiaohongshu/app-v2/search-notes. Call /v1/api/xiaohongshu/app-v2/search-notes; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/app-v2/search-notes" -apiReferenceJson: "{\"title\":\"Search notes\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/search-notes\",\"description\":\"Search Xiaohongshu notes by keyword, supports multiple sort types, note type filters, and time filters\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"ai_mode\",\"type\":\"integer\",\"required\":false,\"description\":\"AI mode, 0=off, 1=on\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"note_type\",\"type\":\"string\",\"required\":false,\"description\":\"Note type filter\",\"default\":\"不限\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, start from 1\",\"default\":\"1\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID, pass value from first search response for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"search_session_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search session ID, pass value from first search response for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sort type\",\"default\":\"general\"},{\"name\":\"source\",\"type\":\"string\",\"required\":false,\"description\":\"Source, default \\\"explore_feed\\\"\",\"default\":\"explore_feed\"},{\"name\":\"time_filter\",\"type\":\"string\",\"required\":false,\"description\":\"Time filter\",\"default\":\"不限\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-notes \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-notes\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-notes\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-notes\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-notes\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-notes\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-notes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-notes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/search-notes\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) Note Search\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/search-notes\",\"description\":\"Search Xiaohongshu (RED / Little Red Book) notes by keyword and get titles, authors, cover images and like, collect, comment and share counts, with sort, note-type and time filters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"ai_mode\",\"type\":\"integer\",\"required\":false,\"description\":\"AI mode, 0=off, 1=on\",\"default\":\"0\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"note_type\",\"type\":\"string\",\"required\":false,\"description\":\"Note type filter\",\"default\":\"不限\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, start from 1\",\"default\":\"1\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID, pass value from first search response for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"search_session_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search session ID, pass value from first search response for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sort type\",\"default\":\"general\"},{\"name\":\"source\",\"type\":\"string\",\"required\":false,\"description\":\"Source, default \\\"explore_feed\\\"\",\"default\":\"explore_feed\"},{\"name\":\"time_filter\",\"type\":\"string\",\"required\":false,\"description\":\"Time filter\",\"default\":\"不限\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-notes \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-notes\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-notes\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-notes\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-notes\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-notes\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-notes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-notes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/search-notes\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search notes" + modelName: "Xiaohongshu (RED) Note Search" modelId: "xiaohongshu/app-v2/search-notes" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/app-v2/search-products.md b/model-api-reference/platform-apis/xiaohongshu/app-v2/search-products.md index b2c27c30..72b25fef 100644 --- a/model-api-reference/platform-apis/xiaohongshu/app-v2/search-products.md +++ b/model-api-reference/platform-apis/xiaohongshu/app-v2/search-products.md @@ -1,13 +1,13 @@ --- -title: "Search products API Reference" -description: "SandBase API operation xiaohongshu/app-v2/search-products." +title: "Xiaohongshu (RED) Product Search API Reference" +description: "SandBase API reference for model xiaohongshu/app-v2/search-products. Call /v1/api/xiaohongshu/app-v2/search-products; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/app-v2/search-products" -apiReferenceJson: "{\"title\":\"Search products\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/search-products\",\"description\":\"Search Xiaohongshu products by keyword, returns 20 results per page, supports pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, start from 1\",\"default\":\"1\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID, pass value from first search response for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"source\",\"type\":\"string\",\"required\":false,\"description\":\"Source, default \\\"explore_feed\\\"\",\"default\":\"explore_feed\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-products \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-products\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-products\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-products\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-products\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-products\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-products\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-products\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/search-products\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) Product Search\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/search-products\",\"description\":\"Returns Xiaohongshu product search results based on a target keyword. Includes product card details, goods identifiers, stock status, and item titles across paginated listings.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, start from 1\",\"default\":\"1\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID, pass value from first search response for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"source\",\"type\":\"string\",\"required\":false,\"description\":\"Source, default \\\"explore_feed\\\"\",\"default\":\"explore_feed\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-products \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-products\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-products\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-products\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-products\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-products\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-products\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-products\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/search-products\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search products" + modelName: "Xiaohongshu (RED) Product Search" modelId: "xiaohongshu/app-v2/search-products" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/app-v2/search-users.md b/model-api-reference/platform-apis/xiaohongshu/app-v2/search-users.md index c8183114..97e2c920 100644 --- a/model-api-reference/platform-apis/xiaohongshu/app-v2/search-users.md +++ b/model-api-reference/platform-apis/xiaohongshu/app-v2/search-users.md @@ -1,13 +1,13 @@ --- -title: "Search users API Reference — Xiaohongshu App V2 / Search Users" -description: "SandBase API operation xiaohongshu/app-v2/search-users." +title: "Xiaohongshu (RED) User Search API Reference" +description: "SandBase API reference for model xiaohongshu/app-v2/search-users. Call /v1/api/xiaohongshu/app-v2/search-users; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/app-v2/search-users" -apiReferenceJson: "{\"title\":\"Search users\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/search-users\",\"description\":\"Search Xiaohongshu users by keyword, returns 20 results per page, supports pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, start from 1\",\"default\":\"1\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID, pass value from first search response for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"source\",\"type\":\"string\",\"required\":false,\"description\":\"Source, default \\\"explore_feed\\\"\",\"default\":\"explore_feed\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-users \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"小红书\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"小红书\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-users\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"小红书\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-users\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-users\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-users\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-users\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-users\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-users\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/search-users\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) User Search\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/search-users\",\"description\":\"Returns Xiaohongshu user profiles matching a specified query term. Includes user identifiers, verification details, and follower count metrics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\"},{\"name\":\"page\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, start from 1\",\"default\":\"1\"},{\"name\":\"search_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search ID, pass value from first search response for pagination\",\"default\":\"\\\"\\\"\"},{\"name\":\"source\",\"type\":\"string\",\"required\":false,\"description\":\"Source, default \\\"explore_feed\\\"\",\"default\":\"explore_feed\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-users \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"小红书\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"小红书\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-users\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"小红书\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/search-users\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-users\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-users\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-users\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-users\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/search-users\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/search-users\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search users" + modelName: "Xiaohongshu (RED) User Search" modelId: "xiaohongshu/app-v2/search-users" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/app-v2/topic-feed.md b/model-api-reference/platform-apis/xiaohongshu/app-v2/topic-feed.md index 38beb5f6..5375a14a 100644 --- a/model-api-reference/platform-apis/xiaohongshu/app-v2/topic-feed.md +++ b/model-api-reference/platform-apis/xiaohongshu/app-v2/topic-feed.md @@ -1,13 +1,13 @@ --- -title: "Get topic feed API Reference" -description: "SandBase API operation xiaohongshu/app-v2/topic-feed." +title: "Xiaohongshu (RED) Topic Feed API Reference" +description: "SandBase API reference for model xiaohongshu/app-v2/topic-feed. Call /v1/api/xiaohongshu/app-v2/topic-feed; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/app-v2/topic-feed" -apiReferenceJson: "{\"title\":\"Get topic feed\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/topic-feed\",\"description\":\"Get notes list under a specified topic, supports sorting by trending or available, using cursor pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor_score\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor score, pass last item's cursor_score from previous response\"},{\"name\":\"first_load_time\",\"type\":\"string\",\"required\":false,\"description\":\"First load timestamp, keep consistent for pagination\"},{\"name\":\"last_note_ct\",\"type\":\"string\",\"required\":false,\"description\":\"Last note create time from previous page\"},{\"name\":\"last_note_id\",\"type\":\"string\",\"required\":false,\"description\":\"Last note ID from previous page\"},{\"name\":\"page_id\",\"type\":\"string\",\"required\":true,\"description\":\"Topic page ID (required), e.g. \\\"5c1cc866febed9000184b7c1\\\"\"},{\"name\":\"session_id\",\"type\":\"string\",\"required\":false,\"description\":\"Session ID, keep consistent for pagination\"},{\"name\":\"sort\",\"type\":\"string\",\"required\":false,\"description\":\"Sort type\"},{\"name\":\"source\",\"type\":\"string\",\"required\":false,\"description\":\"Source, default \\\"normal\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/topic-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"page_id\\\": \\\"page_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"page_id\\\": \\\"page_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/topic-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"page_id\\\": \\\"page_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/topic-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/topic-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/topic-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/topic-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/topic-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/topic-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/topic-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) Topic Feed\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/topic-feed\",\"description\":\"Returns a list of notes listed under a specified topic page on Xiaohongshu (RED). Supports sorting options and cursor pagination using previous response indicators.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor_score\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor score, pass last item's cursor_score from previous response\"},{\"name\":\"first_load_time\",\"type\":\"string\",\"required\":false,\"description\":\"First load timestamp, keep consistent for pagination\"},{\"name\":\"last_note_ct\",\"type\":\"string\",\"required\":false,\"description\":\"Last note create time from previous page\"},{\"name\":\"last_note_id\",\"type\":\"string\",\"required\":false,\"description\":\"Last note ID from previous page\"},{\"name\":\"page_id\",\"type\":\"string\",\"required\":true,\"description\":\"Topic page ID (required), e.g. \\\"5c1cc866febed9000184b7c1\\\"\"},{\"name\":\"session_id\",\"type\":\"string\",\"required\":false,\"description\":\"Session ID, keep consistent for pagination\"},{\"name\":\"sort\",\"type\":\"string\",\"required\":false,\"description\":\"Sort type\"},{\"name\":\"source\",\"type\":\"string\",\"required\":false,\"description\":\"Source, default \\\"normal\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/topic-feed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"page_id\\\": \\\"5c1cc866febed9000184b7c1\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"page_id\\\": \\\"5c1cc866febed9000184b7c1\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/topic-feed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"page_id\\\": \\\"5c1cc866febed9000184b7c1\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/topic-feed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/topic-feed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/topic-feed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/topic-feed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/topic-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/topic-feed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/topic-feed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get topic feed" + modelName: "Xiaohongshu (RED) Topic Feed" modelId: "xiaohongshu/app-v2/topic-feed" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/app-v2/topic-info.md b/model-api-reference/platform-apis/xiaohongshu/app-v2/topic-info.md index fee17486..ff0dce4d 100644 --- a/model-api-reference/platform-apis/xiaohongshu/app-v2/topic-info.md +++ b/model-api-reference/platform-apis/xiaohongshu/app-v2/topic-info.md @@ -1,13 +1,13 @@ --- -title: "Get topic info API Reference" -description: "SandBase API operation xiaohongshu/app-v2/topic-info." +title: "Xiaohongshu (RED) Topic Details API Reference" +description: "SandBase API reference for model xiaohongshu/app-v2/topic-info. Call /v1/api/xiaohongshu/app-v2/topic-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/app-v2/topic-info" -apiReferenceJson: "{\"title\":\"Get topic info\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/topic-info\",\"description\":\"Get topic detail info, including topic name, view count, discussion count, share info, etc.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"note_id\",\"type\":\"string\",\"required\":false,\"description\":\"Source note ID, pass when jumping from note to topic (optional)\",\"default\":\"\\\"\\\"\"},{\"name\":\"page_id\",\"type\":\"string\",\"required\":true,\"description\":\"Topic page ID (required), e.g. \\\"5c1cc866febed9000184b7c1\\\"\"},{\"name\":\"source\",\"type\":\"string\",\"required\":false,\"description\":\"Source, default \\\"normal\\\"\",\"default\":\"normal\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/topic-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"page_id\\\": \\\"5c1cc866febed9000184b7c1\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"page_id\\\": \\\"5c1cc866febed9000184b7c1\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/topic-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"page_id\\\": \\\"5c1cc866febed9000184b7c1\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/topic-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/topic-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/topic-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/topic-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/topic-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/topic-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/topic-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) Topic Details\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/topic-info\",\"description\":\"Returns topic page details such as topic name, view count, discussion count, and share info by topic page ID. Supports passing optional context like source note ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"note_id\",\"type\":\"string\",\"required\":false,\"description\":\"Source note ID, pass when jumping from note to topic (optional)\",\"default\":\"\\\"\\\"\"},{\"name\":\"page_id\",\"type\":\"string\",\"required\":true,\"description\":\"Topic page ID (required), e.g. \\\"5c1cc866febed9000184b7c1\\\"\"},{\"name\":\"source\",\"type\":\"string\",\"required\":false,\"description\":\"Source, default \\\"normal\\\"\",\"default\":\"normal\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/topic-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"page_id\\\": \\\"5c1cc866febed9000184b7c1\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"page_id\\\": \\\"5c1cc866febed9000184b7c1\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/topic-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"page_id\\\": \\\"5c1cc866febed9000184b7c1\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/topic-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/topic-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/topic-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/topic-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/topic-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/topic-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/topic-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get topic info" + modelName: "Xiaohongshu (RED) Topic Details" modelId: "xiaohongshu/app-v2/topic-info" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/app-v2/user-faved-notes.md b/model-api-reference/platform-apis/xiaohongshu/app-v2/user-faved-notes.md index e9d82a89..4f61263a 100644 --- a/model-api-reference/platform-apis/xiaohongshu/app-v2/user-faved-notes.md +++ b/model-api-reference/platform-apis/xiaohongshu/app-v2/user-faved-notes.md @@ -1,13 +1,13 @@ --- -title: "Get user faved notes API Reference" -description: "SandBase API operation xiaohongshu/app-v2/user-faved-notes." +title: "Xiaohongshu (RED) User Favorited Notes API Reference" +description: "SandBase API reference for model xiaohongshu/app-v2/user-faved-notes. Call /v1/api/xiaohongshu/app-v2/user-faved-notes; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/app-v2/user-faved-notes" -apiReferenceJson: "{\"title\":\"Get user faved notes\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/user-faved-notes\",\"description\":\"Get list of notes faved by a specified user, using cursor pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, leave empty for first request, pass last note_id from previous page for next page\"},{\"name\":\"share_text\",\"type\":\"string\",\"required\":false,\"description\":\"Xiaohongshu sharing link (support APP and Web sharing link)\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID, e.g. \\\"5a8cf39111be10466d285d6b\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/user-faved-notes \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xiaohongshu/app-v2/user-faved-notes\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"xiaohongshu/app-v2/user-faved-notes\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/user-faved-notes\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"xiaohongshu/app-v2/user-faved-notes\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/user-faved-notes\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-faved-notes\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-faved-notes\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-faved-notes\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-faved-notes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-faved-notes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/user-faved-notes\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) User Favorited Notes\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/user-faved-notes\",\"description\":\"Returns a paginated list of notes favorited by a specified Xiaohongshu (RED) user. Supports querying by user ID or profile share link, with cursor-based pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, leave empty for first request, pass last note_id from previous page for next page\"},{\"name\":\"share_text\",\"type\":\"string\",\"required\":false,\"description\":\"Xiaohongshu sharing link (support APP and Web sharing link)\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID, e.g. \\\"5a8cf39111be10466d285d6b\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/user-faved-notes \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/user-faved-notes\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/user-faved-notes\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-faved-notes\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-faved-notes\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-faved-notes\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-faved-notes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-faved-notes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/user-faved-notes\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user faved notes" + modelName: "Xiaohongshu (RED) User Favorited Notes" modelId: "xiaohongshu/app-v2/user-faved-notes" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/app-v2/user-info.md b/model-api-reference/platform-apis/xiaohongshu/app-v2/user-info.md index da319ef9..c6199b8d 100644 --- a/model-api-reference/platform-apis/xiaohongshu/app-v2/user-info.md +++ b/model-api-reference/platform-apis/xiaohongshu/app-v2/user-info.md @@ -1,13 +1,13 @@ --- -title: "Get user info API Reference — Xiaohongshu App V2 / User Info API" -description: "SandBase API operation xiaohongshu/app-v2/user-info." +title: "Xiaohongshu (RED) User Information API Reference" +description: "SandBase API reference for model xiaohongshu/app-v2/user-info. Call /v1/api/xiaohongshu/app-v2/user-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/app-v2/user-info" -apiReferenceJson: "{\"title\":\"Get user info\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/user-info\",\"description\":\"Get detailed info of a specified user\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_text\",\"type\":\"string\",\"required\":false,\"description\":\"Xiaohongshu sharing link (support APP and Web sharing link)\",\"default\":\"\\\"\\\"\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID, e.g. \\\"61b46d790000000010008153\\\"\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xiaohongshu/app-v2/user-info\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"xiaohongshu/app-v2/user-info\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"xiaohongshu/app-v2/user-info\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) User Information\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/user-info\",\"description\":\"Returns detailed profile data for a Xiaohongshu user. Look up accounts by providing either a specific user identifier or a profile share link.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"share_text\",\"type\":\"string\",\"required\":false,\"description\":\"Xiaohongshu sharing link (support APP and Web sharing link)\",\"default\":\"\\\"\\\"\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID, e.g. \\\"61b46d790000000010008153\\\"\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user info" + modelName: "Xiaohongshu (RED) User Information" modelId: "xiaohongshu/app-v2/user-info" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/app-v2/user-posted-notes.md b/model-api-reference/platform-apis/xiaohongshu/app-v2/user-posted-notes.md index 8cf167ac..6a7d0485 100644 --- a/model-api-reference/platform-apis/xiaohongshu/app-v2/user-posted-notes.md +++ b/model-api-reference/platform-apis/xiaohongshu/app-v2/user-posted-notes.md @@ -1,13 +1,13 @@ --- -title: "Get user posted notes API Reference" -description: "SandBase API operation xiaohongshu/app-v2/user-posted-notes." +title: "Xiaohongshu (RED) User Posted Notes API Reference" +description: "SandBase API reference for model xiaohongshu/app-v2/user-posted-notes. Call /v1/api/xiaohongshu/app-v2/user-posted-notes; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/app-v2/user-posted-notes" -apiReferenceJson: "{\"title\":\"Get user posted notes\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/user-posted-notes\",\"description\":\"Get list of notes posted by a specified user, using cursor pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, leave empty for first request, pass cursor value from previous response for next page\"},{\"name\":\"share_text\",\"type\":\"string\",\"required\":false,\"description\":\"Xiaohongshu sharing link (support APP and Web sharing link)\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID, e.g. \\\"61b46d790000000010008153\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/user-posted-notes \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xiaohongshu/app-v2/user-posted-notes\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"xiaohongshu/app-v2/user-posted-notes\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/user-posted-notes\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"xiaohongshu/app-v2/user-posted-notes\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/user-posted-notes\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-posted-notes\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-posted-notes\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-posted-notes\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-posted-notes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-posted-notes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/user-posted-notes\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) User Posted Notes\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/user-posted-notes\",\"description\":\"Retrieves a list of notes posted by a specific Xiaohongshu user with cursor pagination. Query by providing a user identifier or a shared post link.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor, leave empty for first request, pass cursor value from previous response for next page\"},{\"name\":\"share_text\",\"type\":\"string\",\"required\":false,\"description\":\"Xiaohongshu sharing link (support APP and Web sharing link)\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":false,\"description\":\"User ID, e.g. \\\"61b46d790000000010008153\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/user-posted-notes \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/user-posted-notes\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/user-posted-notes\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-posted-notes\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-posted-notes\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-posted-notes\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-posted-notes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/user-posted-notes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/user-posted-notes\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user posted notes" + modelName: "Xiaohongshu (RED) User Posted Notes" modelId: "xiaohongshu/app-v2/user-posted-notes" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/app-v2/video-note-detail.md b/model-api-reference/platform-apis/xiaohongshu/app-v2/video-note-detail.md index 032b693b..fb40b41a 100644 --- a/model-api-reference/platform-apis/xiaohongshu/app-v2/video-note-detail.md +++ b/model-api-reference/platform-apis/xiaohongshu/app-v2/video-note-detail.md @@ -1,13 +1,13 @@ --- -title: "Get video note detail API Reference" -description: "SandBase API operation xiaohongshu/app-v2/video-note-detail." +title: "Xiaohongshu (RED) Video Note Detail API Reference" +description: "SandBase API reference for model xiaohongshu/app-v2/video-note-detail. Call /v1/api/xiaohongshu/app-v2/video-note-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/app-v2/video-note-detail" -apiReferenceJson: "{\"title\":\"Get video note detail\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/video-note-detail\",\"description\":\"Get full detail data of a video note\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"note_id\",\"type\":\"string\",\"required\":false,\"description\":\"Note ID, e.g. \\\"697c0eee000000000a03c308\\\"\",\"default\":\"\\\"\\\"\"},{\"name\":\"share_text\",\"type\":\"string\",\"required\":false,\"description\":\"Xiaohongshu sharing link (support APP and Web sharing link)\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/video-note-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xiaohongshu/app-v2/video-note-detail\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"xiaohongshu/app-v2/video-note-detail\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/video-note-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"xiaohongshu/app-v2/video-note-detail\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/video-note-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/video-note-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/video-note-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/video-note-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/video-note-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/video-note-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/video-note-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) Video Note Detail\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/app-v2/video-note-detail\",\"description\":\"Returns detailed metadata for a video note on Xiaohongshu (RED) using an identifier or a share link.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"note_id\",\"type\":\"string\",\"required\":false,\"description\":\"Note ID, e.g. \\\"697c0eee000000000a03c308\\\"\",\"default\":\"\\\"\\\"\"},{\"name\":\"share_text\",\"type\":\"string\",\"required\":false,\"description\":\"Xiaohongshu sharing link (support APP and Web sharing link)\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/video-note-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/video-note-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/app-v2/video-note-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/video-note-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/video-note-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/video-note-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/video-note-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/app-v2/video-note-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/app-v2/video-note-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video note detail" + modelName: "Xiaohongshu (RED) Video Note Detail" modelId: "xiaohongshu/app-v2/video-note-detail" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-core-data.md b/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-core-data.md index f0d83a43..53072107 100644 --- a/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-core-data.md +++ b/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-core-data.md @@ -1,13 +1,13 @@ --- -title: "Get PGY blogger core data API Reference" -description: "SandBase API operation xiaohongshu/pgy/blogger-core-data." +title: "Xiaohongshu (RED) Blogger Core Data API Reference" +description: "SandBase API reference for model xiaohongshu/pgy/blogger-core-data. Call /v1/api/xiaohongshu/pgy/blogger-core-data; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/pgy/blogger-core-data" -apiReferenceJson: "{\"title\":\"Get PGY blogger core data\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/pgy/blogger-core-data\",\"description\":\"Get blogger core data with daily trend and range summary\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"advertise_switch\",\"type\":\"integer\",\"required\":false,\"description\":\"Traffic type, 1=all (incl. ads), 0=organic only\",\"constraints\":\"Allowed values: 0, 1\"},{\"name\":\"date_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Date range (~1=7d, 2=30d, 3=90d)\",\"constraints\":\"Range: 1 to 12\"},{\"name\":\"note_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Note type, 1=image, 2=video, 3=all (default)\",\"constraints\":\"Allowed values: 1, 2, 3\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Blogger user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-core-data \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-core-data\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-core-data\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-core-data\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-core-data\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-core-data\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-core-data\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-core-data\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/pgy/blogger-core-data\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) Blogger Core Data\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/pgy/blogger-core-data\",\"description\":\"Returns Pugongying core performance metrics and daily trend data for a specified Xiaohongshu blogger, filterable by date range, note type, and traffic source.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"advertise_switch\",\"type\":\"integer\",\"required\":false,\"description\":\"Traffic type, 1=all (incl. ads), 0=organic only\",\"constraints\":\"Allowed values: 0, 1\"},{\"name\":\"date_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Date range (~1=7d, 2=30d, 3=90d)\",\"constraints\":\"Range: 1 to 12\"},{\"name\":\"note_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Note type, 1=image, 2=video, 3=all (default)\",\"constraints\":\"Allowed values: 1, 2, 3\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Blogger user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-core-data \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"60b137080000000001000301\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"60b137080000000001000301\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-core-data\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"60b137080000000001000301\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-core-data\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-core-data\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-core-data\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-core-data\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-core-data\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-core-data\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/pgy/blogger-core-data\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get PGY blogger core data" + modelName: "Xiaohongshu (RED) Blogger Core Data" modelId: "xiaohongshu/pgy/blogger-core-data" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-data-summary.md b/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-data-summary.md index 9061ec8d..941d399b 100644 --- a/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-data-summary.md +++ b/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-data-summary.md @@ -1,13 +1,13 @@ --- -title: "Get PGY blogger data summary API Reference" -description: "SandBase API operation xiaohongshu/pgy/blogger-data-summary." +title: "Xiaohongshu (RED) PGY Blogger Data Summary API Reference" +description: "SandBase API reference for model xiaohongshu/pgy/blogger-data-summary. Call /v1/api/xiaohongshu/pgy/blogger-data-summary; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/pgy/blogger-data-summary" -apiReferenceJson: "{\"title\":\"Get PGY blogger data summary\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/pgy/blogger-data-summary\",\"description\":\"Get account-level data overview of a blogger\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Blogger user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-data-summary \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-data-summary\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-data-summary\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-data-summary\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-data-summary\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-data-summary\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-data-summary\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-data-summary\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/pgy/blogger-data-summary\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) PGY Blogger Data Summary\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/pgy/blogger-data-summary\",\"description\":\"Returns an account-level data summary for a Xiaohongshu blogger on the Pugongying (PGY) platform based on the specified blogger user ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Blogger user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-data-summary \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-data-summary\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-data-summary\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-data-summary\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-data-summary\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-data-summary\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-data-summary\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-data-summary\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/pgy/blogger-data-summary\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get PGY blogger data summary" + modelName: "Xiaohongshu (RED) PGY Blogger Data Summary" modelId: "xiaohongshu/pgy/blogger-data-summary" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-detail.md b/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-detail.md index ff504672..1d2d558e 100644 --- a/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-detail.md +++ b/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-detail.md @@ -1,13 +1,13 @@ --- -title: "Get PGY blogger detail API Reference" -description: "SandBase API operation xiaohongshu/pgy/blogger-detail." +title: "Xiaohongshu (RED) PGY Blogger Details API Reference" +description: "SandBase API reference for model xiaohongshu/pgy/blogger-detail. Call /v1/api/xiaohongshu/pgy/blogger-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/pgy/blogger-detail" -apiReferenceJson: "{\"title\":\"Get PGY blogger detail\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/pgy/blogger-detail\",\"description\":\"Get detailed profile of a single blogger\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Blogger user ID, obtainable from blogger list results or PGY blogger page URL\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/pgy/blogger-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) PGY Blogger Details\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/pgy/blogger-detail\",\"description\":\"Retrieves detailed profile information for a specific Xiaohongshu blogger on the PGY platform using their user ID. Returns creator metrics and account details.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Blogger user ID, obtainable from blogger list results or PGY blogger page URL\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"60b137080000000001000301\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"60b137080000000001000301\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"60b137080000000001000301\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/pgy/blogger-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get PGY blogger detail" + modelName: "Xiaohongshu (RED) PGY Blogger Details" modelId: "xiaohongshu/pgy/blogger-detail" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-fans-history.md b/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-fans-history.md index 38ee7843..d360bea8 100644 --- a/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-fans-history.md +++ b/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-fans-history.md @@ -1,13 +1,13 @@ --- -title: "Get PGY blogger fans history API Reference" -description: "SandBase API operation xiaohongshu/pgy/blogger-fans-history." +title: "Xiaohongshu (RED) PGY Blogger Fan History API Reference" +description: "SandBase API reference for model xiaohongshu/pgy/blogger-fans-history. Call /v1/api/xiaohongshu/pgy/blogger-fans-history; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/pgy/blogger-fans-history" -apiReferenceJson: "{\"title\":\"Get PGY blogger fans history\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/pgy/blogger-fans-history\",\"description\":\"Get blogger fans growth curve over time\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Date range (~1=7d, 2=30d, 3=90d)\",\"constraints\":\"Range: 1 to 12\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Blogger user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-fans-history \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-fans-history\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-fans-history\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-history\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-history\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-history\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-history\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-history\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/pgy/blogger-fans-history\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) PGY Blogger Fan History\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/pgy/blogger-fans-history\",\"description\":\"Returns historical follower growth counts for a Xiaohongshu Pugongying blogger over time based on user ID and a selected date range.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"date_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Date range (~1=7d, 2=30d, 3=90d)\",\"constraints\":\"Range: 1 to 12\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Blogger user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-fans-history \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"60b137080000000001000301\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"60b137080000000001000301\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-fans-history\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"60b137080000000001000301\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-fans-history\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-history\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-history\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-history\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-history\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-history\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/pgy/blogger-fans-history\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get PGY blogger fans history" + modelName: "Xiaohongshu (RED) PGY Blogger Fan History" modelId: "xiaohongshu/pgy/blogger-fans-history" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-fans-profile.md b/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-fans-profile.md index 0a149e68..2f725999 100644 --- a/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-fans-profile.md +++ b/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-fans-profile.md @@ -1,13 +1,13 @@ --- -title: "Get PGY blogger fans profile API Reference" -description: "SandBase API operation xiaohongshu/pgy/blogger-fans-profile." +title: "Xiaohongshu (RED) PGY Blogger Fan Profile API Reference" +description: "SandBase API reference for model xiaohongshu/pgy/blogger-fans-profile. Call /v1/api/xiaohongshu/pgy/blogger-fans-profile; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/pgy/blogger-fans-profile" -apiReferenceJson: "{\"title\":\"Get PGY blogger fans profile\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/pgy/blogger-fans-profile\",\"description\":\"Get blogger fans profile (gender, age, region, interests, devices distribution)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Blogger user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-fans-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-fans-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-fans-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/pgy/blogger-fans-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) PGY Blogger Fan Profile\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/pgy/blogger-fans-profile\",\"description\":\"Returns demographic distributions for a blogger's follower base, including gender, age, region, interests, and device types, filtered by user ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Blogger user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-fans-profile \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"60b137080000000001000301\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"60b137080000000001000301\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-fans-profile\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"60b137080000000001000301\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-fans-profile\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-profile\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-profile\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-profile\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-profile\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/pgy/blogger-fans-profile\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get PGY blogger fans profile" + modelName: "Xiaohongshu (RED) PGY Blogger Fan Profile" modelId: "xiaohongshu/pgy/blogger-fans-profile" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-fans-summary.md b/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-fans-summary.md index b0bcb650..939a03bd 100644 --- a/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-fans-summary.md +++ b/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-fans-summary.md @@ -1,13 +1,13 @@ --- -title: "Get PGY blogger fans summary API Reference" -description: "SandBase API operation xiaohongshu/pgy/blogger-fans-summary." +title: "Xiaohongshu (RED) PGY Blogger Fans Summary API Reference" +description: "SandBase API reference for model xiaohongshu/pgy/blogger-fans-summary. Call /v1/api/xiaohongshu/pgy/blogger-fans-summary; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/pgy/blogger-fans-summary" -apiReferenceJson: "{\"title\":\"Get PGY blogger fans summary\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/pgy/blogger-fans-summary\",\"description\":\"Get blogger fans overview (fans scale, activity, etc.)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Blogger user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-fans-summary \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-fans-summary\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-fans-summary\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-summary\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-summary\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-summary\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-summary\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-summary\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/pgy/blogger-fans-summary\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) PGY Blogger Fans Summary\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/pgy/blogger-fans-summary\",\"description\":\"Returns an overview of a Xiaohongshu blogger audience on PGY, including fan scale and activity metrics. Looks up fan statistics for a specified blogger user ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Blogger user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-fans-summary \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"60b137080000000001000301\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"60b137080000000001000301\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-fans-summary\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"60b137080000000001000301\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-fans-summary\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-summary\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-summary\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-summary\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-summary\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-fans-summary\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/pgy/blogger-fans-summary\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get PGY blogger fans summary" + modelName: "Xiaohongshu (RED) PGY Blogger Fans Summary" modelId: "xiaohongshu/pgy/blogger-fans-summary" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-list.md b/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-list.md index 6be6f794..bf17d2d7 100644 --- a/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-list.md +++ b/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-list.md @@ -1,13 +1,13 @@ --- -title: "Get PGY blogger list API Reference" -description: "SandBase API operation xiaohongshu/pgy/blogger-list." +title: "Xiaohongshu (RED) PGY Blogger Search API Reference" +description: "SandBase API reference for model xiaohongshu/pgy/blogger-list. Call /v1/api/xiaohongshu/pgy/blogger-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/pgy/blogger-list" -apiReferenceJson: "{\"title\":\"Get PGY blogger list\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/pgy/blogger-list\",\"description\":\"Filter cooperable bloggers by brand (PGY \\\"find blogger / selection\\\"), paginated candidates\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"brand_user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Brand/advertiser user ID, PGY matches under this brand (required)\"},{\"name\":\"fans_number_lower\",\"type\":\"string\",\"required\":false,\"description\":\"Lower follower-count bound (digits only); empty means unlimited.\",\"constraints\":\"Length: 0 to 20. Pattern: ^\\\\d*$\"},{\"name\":\"fans_number_upper\",\"type\":\"string\",\"required\":false,\"description\":\"Upper follower-count bound (digits only); empty means unlimited.\",\"constraints\":\"Length: 0 to 20. Pattern: ^\\\\d*$\"},{\"name\":\"page_num\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, start from 1\",\"constraints\":\"Range: 1 to 1000\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Page size (1-100)\",\"constraints\":\"Range: 1 to 100\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"brand_user_id\\\": \\\"brand_user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"brand_user_id\\\": \\\"brand_user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"brand_user_id\\\": \\\"brand_user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/pgy/blogger-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) PGY Blogger Search\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/pgy/blogger-list\",\"description\":\"Returns a paginated list of cooperable Xiaohongshu Pugongying bloggers matched under a specific brand. Filter candidate creators using keyword searches, audience profiles, performance metrics, and similar creator IDs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"brand_user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Brand/advertiser user ID, PGY matches under this brand (required)\"},{\"name\":\"page_num\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, start from 1\",\"constraints\":\"Range: 1 to 1000\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Page size (1-100)\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"搜索词;空=只筛选不搜索/Keyword\",\"default\":\"\\\"\\\"\",\"constraints\":\"Length: 0 to 50\"},{\"name\":\"search_type\",\"type\":\"integer\",\"required\":false,\"description\":\"1=按笔记关键词找博主(默认) 0=按昵称搜/Search mode\",\"default\":\"1\",\"constraints\":\"Allowed values: 0, 1\"},{\"name\":\"column\",\"type\":\"string\",\"required\":false,\"description\":\"排序字段,共 34 个,见接口说明的排序字段表/Sort column, 34 options, see endpoint docs\",\"default\":\"comprehensiverank\",\"constraints\":\"Allowed values: comprehensiverank, fansCount, price, clickNum, mEngagementNum, accumCommonImpMedinNum30d, accumPicCommonImpMedinNum30d, accumVideoCommonImpMedinNum30d, pictureClickMidNum, videoClickMidNum, pictureInterMidNum, videoInterMidNum, thousandLikePercent30, pictureThousandLikePercent30, videoThousandLikePercent30, hundredLikePercent30, pictureHundredLikePercent30, videoHundredLikePercent30, videoFinishRate, accumCoopImpMedinNum30d, readMidCoop30, interMidCoop30, mCpuvNum30d, picturePrice, videoPrice, pictureReadCost, videoReadCost, inviteReply48hNumRatio, fans30GrowthRate, fansActiveIn28dLv, fansEngageNum30dLv, kliveCnt30d, avgLiveViewerNum, avgAgmv90d\"},{\"name\":\"sort\",\"type\":\"string\",\"required\":false,\"description\":\"排序方向 desc/asc\",\"default\":\"desc\",\"constraints\":\"Allowed values: desc, asc\"},{\"name\":\"similar_user_id\",\"type\":\"string | null\",\"required\":false,\"description\":\"找相似博主:填一个博主的 userId,返回与他相似的博主,**并且可以叠加下面所有筛选**(这是它与 /get_blogger_similar 的关键区别)/Find similar bloggers; unlike /get_blogger_similar it can be combined with all filters below\"},{\"name\":\"similar_word\",\"type\":\"string | null\",\"required\":false,\"description\":\"配合 similar_user_id 的博主昵称,仅用于回显、不影响结果/Nickname echo for similar_user_id; does not affect results\"},{\"name\":\"goal\",\"type\":\"object | null\",\"required\":false,\"description\":\"合作目标筛选/Cooperation goal filters\"},{\"name\":\"goal.market_target\",\"type\":\"string | null\",\"required\":false,\"description\":\"「营销目标」:网页上是三级选择(目标 → 指标 → 统计方式),填最终叶子码 —— `estimateAllCpm` 曝光/曝光表现/成本、`mAccumImpNum` 曝光/曝光表现/规模、`readCost` 曝光/阅读表现/成本、`mValidRawReadFeedNum` 曝光/阅读表现/规模、`estimateEngageCost` 种草/互动表现/成本、`mEngagementNum90d` 种草/互动表现/规模、`estimateCpuv` 转化/外溢进店表现/成本、`mCpuvNum` 转化/外溢进店表现/规模\",\"constraints\":\"Allowed values: estimateAllCpm, mAccumImpNum, readCost, mValidRawReadFeedNum, estimateEngageCost, mEngagementNum90d, estimateCpuv, mCpuvNum\"},{\"name\":\"blogger\",\"type\":\"object | null\",\"required\":false,\"description\":\"博主属性筛选/Blogger attribute filters\"},{\"name\":\"blogger.audience20\",\"type\":\"array | null\",\"required\":false,\"description\":\"「二十大人群」:**不是扁平裸名**。一级填名字即可(如 `自在户外`,= 整个人群);**二级必须写成 `\\\"一级 一级-二级\\\"`**(如 `\\\"自在户外 自在户外-挑战极限者\\\"`)—— 一级名要出现两次。**照字典里的二级 label 直接填(如 `挑战极限者`)会静默返回 0 条**。一级与复合二级可以混在同一个数组里,多个之间是「或」。全量见 `/get_blogger_filter_options` 的 audience20(19 个一级 / 121 个二级)\"},{\"name\":\"blogger.consumer_behavior\",\"type\":\"array | null\",\"required\":false,\"description\":\"「预估消费行为」:**必须填含根节点的空格全路径**(如 `\\\"内容行为预估 汽车\\\"`),路径可停在任意深度。取值查 `/get_blogger_filter_options` 的 **consumerBehavior**(5 层树)。⚠️ **填裸的叶子名不会报错、也不会返回 0 条,而是整个筛选被静默忽略** —— 实测 `[\\\"保时捷911\\\"]` 与 `[\\\"zzz不存在zzz\\\"]` 都返回未经筛选的全量结果,只有全路径写法才真的生效(`[\\\"内容行为预估 汽车\\\"]` 才筛出 54 条)。用它时请对比加/不加该筛选两次请求的 total 确认真的筛上了。另:该项按账号灰度开放,字典里为 null 时表示当前账号不可用\"},{\"name\":\"blogger.content_tag\",\"type\":\"array | null\",\"required\":false,\"description\":\"「博主类目」:填类目名。一级共 28 个 —— 美妆/护肤/个人护理/母婴/时尚/美食/家居家装/影视综资讯/运动健身/宠物/文化艺术/兴趣爱好/生活记录/教育/职场/情感/摄影/游戏/科技数码/出行旅游/音乐/搞笑/健康养生/汽车/婚嫁/商业财经/素材/其他;也可填某一级下的二级名,**两级可以混在同一个数组里**,多个之间是「或」。某个类目要「全部」就填它的一级名,**不要展开成它的全部二级名**(有些博主只挂一级、没有二级标签,展开会漏掉他们)。**不限类目就不要传这个字段** —— 没有名为「全部」的类目,填了会静默返回 0 条。填错的名字同样不报错、只返回 0 条,务必从 contentTags 字典里原样复制。注意与「行业」(coop.industry) 不是同一套分类\"},{\"name\":\"blogger.content_theme\",\"type\":\"array | null\",\"required\":false,\"description\":\"「内容题材」:填 `/blogger/filter-options` 里 contentTheme 的**一级 label**(如 汽车特色 / 通用)。注意只支持一级,填子项 label 或 id 查不到结果\"},{\"name\":\"blogger.feature_tags\",\"type\":\"array | null\",\"required\":false,\"description\":\"「擅长内容」:填 `/get_blogger_filter_options` 里 featureTags 的名字(裸名)。**一级(形式/风格/生活方式/肤质肤色/皮肤养护)和二级(如 vlog / 韩系)都能填、可混填**,多个之间是「或」;填一级就是那一组全要(实测:一级 `形式`=183,二级 `vlog`=136)\"},{\"name\":\"blogger.gender\",\"type\":\"string | null\",\"required\":false,\"description\":\"「性别」:男 / 女(填中文,不是数字)\",\"constraints\":\"Allowed values: 男, 女\"},{\"name\":\"blogger.industry_crowd\",\"type\":\"array | null\",\"required\":false,\"description\":\"「行业特色画像」:填 `/blogger/filter-options` 里 automotiveIndustryTag **最深层叶子的 value**(数字字符串 ID,如 15795914,共 1600+ 个)。填 label 或中间层 id 均无结果\"},{\"name\":\"blogger.location\",\"type\":\"array | null\",\"required\":false,\"description\":\"「地域」:博主所在地。**直接填地名即可**,省/市/区县任意层级都行 —— [\\\"上海\\\"]、[\\\"杭州\\\"]、[\\\"上城区\\\"] 都可以,多个之间是「或」。也可以填完整路径(如 \\\"中国 浙江 杭州\\\"),上游会自动转成地名。可选地名见 /get_blogger_filter_options 的 **areas**(到区县)/Blogger location: plain place names work (province/city/district), OR-ed together\"},{\"name\":\"blogger.note_scene\",\"type\":\"array | null\",\"required\":false,\"description\":\"「笔记类目」:填**空格分隔的完整路径**(类目 一级 二级 三级),如 \\\"汽车 理性决策 选车攻略 政策\\\",路径可停在任意深度(越深越窄)。**只填末段(如 \\\"选车攻略\\\")会返回 0 条。** 取值查 `/get_blogger_filter_options` 的 **contentScenes**(实测:`[\\\"汽车\\\"]`=75、`[\\\"汽车 理性决策\\\"]`=23、四级路径=1、`[\\\"选车攻略\\\"]`=0)\"},{\"name\":\"blogger.personal_tags\",\"type\":\"array | null\",\"required\":false,\"description\":\"「博主人设」:填 `/get_blogger_filter_options` 里 personalTagsV2 的 `tagName`(裸名)。这是三层树(家庭身份/职业身份/特色背景 → 分组 → 叶子),**三层任意一层都能填、可以混填**,多个之间是「或」;想要整组就填那一组的名字,不用把叶子一个个列出来(实测:一级 `职业身份`=91 条,二级 `互联网`=8 条,叶子 `妈妈`=31 条)\"},{\"name\":\"blogger.signed\",\"type\":\"integer | null\",\"required\":false,\"description\":\"「签约情况」:-1=不限 0=个人博主 1=机构博主\",\"constraints\":\"Allowed values: -1, 0, 1\"},{\"name\":\"fans\",\"type\":\"object | null\",\"required\":false,\"description\":\"粉丝画像筛选/Fans profile filters\"},{\"name\":\"fans.age\",\"type\":\"integer | null\",\"required\":false,\"description\":\"「粉丝年龄」:0=不限 1=<18 2=18~24 3=25~34 4=35~44 5=>44 占比高\",\"constraints\":\"Allowed values: 0, 1, 2, 3, 4, 5\"},{\"name\":\"fans.child_age\",\"type\":\"array | null\",\"required\":false,\"description\":\"「母婴阶段」:0=备孕 2=0-6月 3=7-12月 4=1-3岁 5=4-6岁 6=7-12岁 7=孕早期 8=孕晚期\"},{\"name\":\"fans.consumption_level\",\"type\":\"integer | null\",\"required\":false,\"description\":\"「消费水平」:-1=不限 0=低消费 1=中消费 2=高消费\",\"constraints\":\"Allowed values: -1, 0, 1, 2\"},{\"name\":\"fans.count\",\"type\":\"object | null\",\"required\":false,\"description\":\"「粉丝量」区间\"},{\"name\":\"fans.count.max\",\"type\":\"number | null\",\"required\":false,\"description\":\"最大值(含);省略=不限\"},{\"name\":\"fans.count.min\",\"type\":\"number | null\",\"required\":false,\"description\":\"最小值(含)\"},{\"name\":\"fans.device_brand\",\"type\":\"array | null\",\"required\":false,\"description\":\"「手机品牌」\"},{\"name\":\"fans.device_price\",\"type\":\"array | null\",\"required\":false,\"description\":\"「手机价格」档位,如 3000-3999 / 8000+\"},{\"name\":\"fans.gender\",\"type\":\"integer | null\",\"required\":false,\"description\":\"「粉丝性别」:0=不限 1=男性占比高 2=女性占比高\",\"constraints\":\"Allowed values: 0, 1, 2\"},{\"name\":\"fans.location\",\"type\":\"array | null\",\"required\":false,\"description\":\"「粉丝地域」:粉丝所在地。**直接填地名即可**([\\\"上海\\\"]、[\\\"杭州\\\"]),上游会自动补成完整路径。也可以自己填完整路径 \\\"中国 浙江 杭州\\\"。注意这棵树**只到市**(没有区县),可选地名见 /get_blogger_filter_options 的 **fansAreas**/Fans location: plain place names work; this tree only goes down to city level\"},{\"name\":\"fans.marital_status\",\"type\":\"integer | null\",\"required\":false,\"description\":\"「婚恋状态」:-1=不限 0=未婚 1=已婚\",\"constraints\":\"Allowed values: -1, 0, 1\"},{\"name\":\"note\",\"type\":\"object | null\",\"required\":false,\"description\":\"日常笔记数据筛选/Organic note metric filters\"},{\"name\":\"note.imp_median\",\"type\":\"object | null\",\"required\":false,\"description\":\"「曝光中位数」\"},{\"name\":\"note.imp_median.max\",\"type\":\"number | null\",\"required\":false,\"description\":\"最大值(含);省略=不限\"},{\"name\":\"note.imp_median.min\",\"type\":\"number | null\",\"required\":false,\"description\":\"最小值(含)\"},{\"name\":\"note.inter_median\",\"type\":\"object | null\",\"required\":false,\"description\":\"「互动中位数」\"},{\"name\":\"note.inter_median.max\",\"type\":\"number | null\",\"required\":false,\"description\":\"最大值(含);省略=不限\"},{\"name\":\"note.inter_median.min\",\"type\":\"number | null\",\"required\":false,\"description\":\"最小值(含)\"},{\"name\":\"note.note_type\",\"type\":\"integer | null\",\"required\":false,\"description\":\"「笔记类型」:0=不限 1=图文笔记为主 2=视频笔记为主\",\"constraints\":\"Allowed values: 0, 1, 2\"},{\"name\":\"note.read_median\",\"type\":\"object | null\",\"required\":false,\"description\":\"「阅读中位数」\"},{\"name\":\"note.read_median.max\",\"type\":\"number | null\",\"required\":false,\"description\":\"最大值(含);省略=不限\"},{\"name\":\"note.read_median.min\",\"type\":\"number | null\",\"required\":false,\"description\":\"最小值(含)\"},{\"name\":\"note.thousand_like_percent\",\"type\":\"object | null\",\"required\":false,\"description\":\"「千赞笔记比例」:按 0~100 的百分点填,`20` 表示 20%(**不是 0.2**)/1000-like note ratio, fill 0-100 percent points (20 means 20%)\"},{\"name\":\"note.thousand_like_percent.max\",\"type\":\"number | null\",\"required\":false,\"description\":\"最大值(含),百分点 0~100/Max percent 0-100\"},{\"name\":\"note.thousand_like_percent.min\",\"type\":\"number | null\",\"required\":false,\"description\":\"最小值(含),百分点 0~100/Min percent 0-100\"},{\"name\":\"coop\",\"type\":\"object | null\",\"required\":false,\"description\":\"合作笔记数据筛选/Sponsored note metric filters\"},{\"name\":\"coop.brand_ids\",\"type\":\"array | null\",\"required\":false,\"description\":\"「近期合作品牌」:品牌 userId 列表\"},{\"name\":\"coop.cpuv\",\"type\":\"object | null\",\"required\":false,\"description\":\"「传播规模」进店 UV 中位数:近 30 日跨域合作笔记的进店 UV 量中位数。**这是次数不是金额**(网页档位 500~1000 / 1000~2000 / 2000~5000 / 5000~10000 / 1万以上);想按「每次进店花多少钱」筛请用 estimate_cpuv/Median store-visit UV COUNT (not cost). For cost use estimate_cpuv\"},{\"name\":\"coop.cpuv.max\",\"type\":\"number | null\",\"required\":false,\"description\":\"最大值(含);省略=不限\"},{\"name\":\"coop.cpuv.min\",\"type\":\"number | null\",\"required\":false,\"description\":\"最小值(含)\"},{\"name\":\"coop.estimate_cpuv\",\"type\":\"object | null\",\"required\":false,\"description\":\"「外溢进店单价」\"},{\"name\":\"coop.estimate_cpuv.max\",\"type\":\"number | null\",\"required\":false,\"description\":\"最大值(含);省略=不限\"},{\"name\":\"coop.estimate_cpuv.min\",\"type\":\"number | null\",\"required\":false,\"description\":\"最小值(含)\"},{\"name\":\"coop.exclude_brands\",\"type\":\"boolean | null\",\"required\":false,\"description\":\"配合 brand_ids:true=排除与这些品牌合作过的博主\"},{\"name\":\"coop.imp_median\",\"type\":\"object | null\",\"required\":false,\"description\":\"「传播规模」曝光中位数(合作笔记)\"},{\"name\":\"coop.imp_median.max\",\"type\":\"number | null\",\"required\":false,\"description\":\"最大值(含);省略=不限\"},{\"name\":\"coop.imp_median.min\",\"type\":\"number | null\",\"required\":false,\"description\":\"最小值(含)\"},{\"name\":\"coop.industry\",\"type\":\"string | null\",\"required\":false,\"description\":\"「近期合作行业」\",\"constraints\":\"Allowed values: 不限, 美妆个护, 食品饮料, 母婴, 3c及电器, 日用百货, 服装配饰, 互联网, 生活服务, 家居建材, 汽车\"},{\"name\":\"coop.inter_median\",\"type\":\"object | null\",\"required\":false,\"description\":\"「传播规模」互动中位数(合作笔记)\"},{\"name\":\"coop.inter_median.max\",\"type\":\"number | null\",\"required\":false,\"description\":\"最大值(含);省略=不限\"},{\"name\":\"coop.inter_median.min\",\"type\":\"number | null\",\"required\":false,\"description\":\"最小值(含)\"},{\"name\":\"coop.order_count\",\"type\":\"object | null\",\"required\":false,\"description\":\"「合作订单数」:博主**已接受、尚未完成**的订单数量(单)。注意这是**在手订单**,不是历史累计合作数 —— 想找经验丰富的博主不该用它/Open (accepted but unfinished) orders, NOT lifetime collaboration count\"},{\"name\":\"coop.order_count.max\",\"type\":\"number | null\",\"required\":false,\"description\":\"最大值(含);省略=不限\"},{\"name\":\"coop.order_count.min\",\"type\":\"number | null\",\"required\":false,\"description\":\"最小值(含)\"},{\"name\":\"coop.pic_cpm\",\"type\":\"object | null\",\"required\":false,\"description\":\"「预估CPM」图文\"},{\"name\":\"coop.pic_cpm.max\",\"type\":\"number | null\",\"required\":false,\"description\":\"最大值(含);省略=不限\"},{\"name\":\"coop.pic_cpm.min\",\"type\":\"number | null\",\"required\":false,\"description\":\"最小值(含)\"},{\"name\":\"coop.pic_engage_cost\",\"type\":\"object | null\",\"required\":false,\"description\":\"「预估互动单价」图文\"},{\"name\":\"coop.pic_engage_cost.max\",\"type\":\"number | null\",\"required\":false,\"description\":\"最大值(含);省略=不限\"},{\"name\":\"coop.pic_engage_cost.min\",\"type\":\"number | null\",\"required\":false,\"description\":\"最小值(含)\"},{\"name\":\"coop.pic_price\",\"type\":\"object | null\",\"required\":false,\"description\":\"「合作报价」图文笔记一口价(元)\"},{\"name\":\"coop.pic_price.max\",\"type\":\"number | null\",\"required\":false,\"description\":\"最大值(含);省略=不限\"},{\"name\":\"coop.pic_price.min\",\"type\":\"number | null\",\"required\":false,\"description\":\"最小值(含)\"},{\"name\":\"coop.pic_read_price\",\"type\":\"object | null\",\"required\":false,\"description\":\"「预估阅读单价」图文\"},{\"name\":\"coop.pic_read_price.max\",\"type\":\"number | null\",\"required\":false,\"description\":\"最大值(含);省略=不限\"},{\"name\":\"coop.pic_read_price.min\",\"type\":\"number | null\",\"required\":false,\"description\":\"最小值(含)\"},{\"name\":\"coop.read_median\",\"type\":\"object | null\",\"required\":false,\"description\":\"「传播规模」阅读中位数(合作笔记)\"},{\"name\":\"coop.read_median.max\",\"type\":\"number | null\",\"required\":false,\"description\":\"最大值(含);省略=不限\"},{\"name\":\"coop.read_median.min\",\"type\":\"number | null\",\"required\":false,\"description\":\"最小值(含)\"},{\"name\":\"coop.reply_48h_ratio\",\"type\":\"object | null\",\"required\":false,\"description\":\"「合作信用度」48h 邀约回复率:按 0~100 的百分点填,`80` 表示 80%/48h invitation reply rate, fill 0-100 percent points\"},{\"name\":\"coop.reply_48h_ratio.max\",\"type\":\"number | null\",\"required\":false,\"description\":\"最大值(含),百分点 0~100/Max percent 0-100\"},{\"name\":\"coop.reply_48h_ratio.min\",\"type\":\"number | null\",\"required\":false,\"description\":\"最小值(含),百分点 0~100/Min percent 0-100\"},{\"name\":\"coop.video_cpm\",\"type\":\"object | null\",\"required\":false,\"description\":\"「预估CPM」视频\"},{\"name\":\"coop.video_cpm.max\",\"type\":\"number | null\",\"required\":false,\"description\":\"最大值(含);省略=不限\"},{\"name\":\"coop.video_cpm.min\",\"type\":\"number | null\",\"required\":false,\"description\":\"最小值(含)\"},{\"name\":\"coop.video_engage_cost\",\"type\":\"object | null\",\"required\":false,\"description\":\"「预估互动单价」视频\"},{\"name\":\"coop.video_engage_cost.max\",\"type\":\"number | null\",\"required\":false,\"description\":\"最大值(含);省略=不限\"},{\"name\":\"coop.video_engage_cost.min\",\"type\":\"number | null\",\"required\":false,\"description\":\"最小值(含)\"},{\"name\":\"coop.video_price\",\"type\":\"object | null\",\"required\":false,\"description\":\"「合作报价」视频笔记一口价(元)\"},{\"name\":\"coop.video_price.max\",\"type\":\"number | null\",\"required\":false,\"description\":\"最大值(含);省略=不限\"},{\"name\":\"coop.video_price.min\",\"type\":\"number | null\",\"required\":false,\"description\":\"最小值(含)\"},{\"name\":\"coop.video_read_price\",\"type\":\"object | null\",\"required\":false,\"description\":\"「预估阅读单价」视频\"},{\"name\":\"coop.video_read_price.max\",\"type\":\"number | null\",\"required\":false,\"description\":\"最大值(含);省略=不限\"},{\"name\":\"coop.video_read_price.min\",\"type\":\"number | null\",\"required\":false,\"description\":\"最小值(含)\"},{\"name\":\"live\",\"type\":\"object | null\",\"required\":false,\"description\":\"直播数据筛选/Live metric filters\"},{\"name\":\"live.avg_gmv\",\"type\":\"object | null\",\"required\":false,\"description\":\"「场均销售额」:博主**近 90 天**直播的场均销售额(元)。统计窗口同样是 90 天,与 live_count(30 天)不同/Avg GMV per live over the last **90 days** (live_count uses 30 days)\"},{\"name\":\"live.avg_gmv.max\",\"type\":\"number | null\",\"required\":false,\"description\":\"最大值(含);省略=不限\"},{\"name\":\"live.avg_gmv.min\",\"type\":\"number | null\",\"required\":false,\"description\":\"最小值(含)\"},{\"name\":\"live.avg_viewer\",\"type\":\"object | null\",\"required\":false,\"description\":\"「场均观播人数」:博主**近 90 天**直播的场均观播人数(人)。注意统计窗口是 90 天,与 live_count(30 天)不同/Avg viewers per live over the last **90 days** (live_count uses 30 days)\"},{\"name\":\"live.avg_viewer.max\",\"type\":\"number | null\",\"required\":false,\"description\":\"最大值(含);省略=不限\"},{\"name\":\"live.avg_viewer.min\",\"type\":\"number | null\",\"required\":false,\"description\":\"最小值(含)\"},{\"name\":\"live.live_count\",\"type\":\"object | null\",\"required\":false,\"description\":\"「近30天直播场次」\"},{\"name\":\"live.live_count.max\",\"type\":\"number | null\",\"required\":false,\"description\":\"最大值(含);省略=不限\"},{\"name\":\"live.live_count.min\",\"type\":\"number | null\",\"required\":false,\"description\":\"最小值(含)\"},{\"name\":\"flags\",\"type\":\"object | null\",\"required\":false,\"description\":\"开关类筛选/Boolean flag filters\"},{\"name\":\"flags.activity_codes\",\"type\":\"array | null\",\"required\":false,\"description\":\"「热门活动」:填 `/blogger/filter-options` 里 activities 每项的 code\"},{\"name\":\"flags.exclude_cooperated\",\"type\":\"boolean | null\",\"required\":false,\"description\":\"「剔除已合作博主」\"},{\"name\":\"flags.exclude_fans_down\",\"type\":\"boolean | null\",\"required\":false,\"description\":\"「剔除掉粉博主」\"},{\"name\":\"flags.exclude_invited\",\"type\":\"boolean | null\",\"required\":false,\"description\":\"「剔除已邀约博主」\"},{\"name\":\"flags.exclude_low_active\",\"type\":\"boolean | null\",\"required\":false,\"description\":\"「剔除低活博主」\"},{\"name\":\"flags.filter_intention\",\"type\":\"boolean | null\",\"required\":false,\"description\":\"「意向行业匹配」\"},{\"name\":\"flags.high_quality\",\"type\":\"boolean | null\",\"required\":false,\"description\":\"「优质博主」\"},{\"name\":\"flags.industry_first\",\"type\":\"string | null\",\"required\":false,\"description\":\"「行业推荐博主」一级行业名(如 美妆个护);平台会按该行业推荐专属博主\"},{\"name\":\"flags.industry_second\",\"type\":\"string | null\",\"required\":false,\"description\":\"「行业推荐博主」二级行业名(配合 industry_first,取 `/blogger/filter-options` 里 industryTags 的 taxonomy2Tags)\"},{\"name\":\"flags.is_star\",\"type\":\"boolean | null\",\"required\":false,\"description\":\"「明星」\"},{\"name\":\"flags.new_high_quality\",\"type\":\"boolean | null\",\"required\":false,\"description\":\"「新锐博主」\"},{\"name\":\"flags.note_and_live\",\"type\":\"boolean | null\",\"required\":false,\"description\":\"「笔记+直播均可合作」\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"brand_user_id\\\": \\\"brand_user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"brand_user_id\\\": \\\"brand_user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"brand_user_id\\\": \\\"brand_user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/pgy/blogger-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get PGY blogger list" + modelName: "Xiaohongshu (RED) PGY Blogger Search" modelId: "xiaohongshu/pgy/blogger-list" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-notes-rate.md b/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-notes-rate.md index 8765727a..586a97be 100644 --- a/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-notes-rate.md +++ b/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-notes-rate.md @@ -1,13 +1,13 @@ --- -title: "Get PGY blogger notes rate API Reference" -description: "SandBase API operation xiaohongshu/pgy/blogger-notes-rate." +title: "Xiaohongshu (RED) PGY Blogger Note Rates API Reference" +description: "SandBase API reference for model xiaohongshu/pgy/blogger-notes-rate. Call /v1/api/xiaohongshu/pgy/blogger-notes-rate; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/pgy/blogger-notes-rate" -apiReferenceJson: "{\"title\":\"Get PGY blogger notes rate\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/pgy/blogger-notes-rate\",\"description\":\"Get overall data performance of blogger notes (blogger homepage \\\"data overview\\\")\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"advertise_switch\",\"type\":\"integer\",\"required\":false,\"description\":\"Traffic type, 1=all (incl. ads), 0=organic only\",\"constraints\":\"Allowed values: 0, 1\"},{\"name\":\"date_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Date range (~1=7d, 2=30d, 3=90d)\",\"constraints\":\"Range: 1 to 12\"},{\"name\":\"note_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Note type, 1=image, 2=video, 3=all (default)\",\"constraints\":\"Allowed values: 1, 2, 3\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Blogger user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-notes-rate \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-notes-rate\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-notes-rate\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-notes-rate\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-notes-rate\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-notes-rate\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-notes-rate\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-notes-rate\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/pgy/blogger-notes-rate\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) PGY Blogger Note Rates\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/pgy/blogger-notes-rate\",\"description\":\"Returns overall note performance metrics from a creator's data overview on Pugongying. Supports filtering by date range, note format, and advertising traffic.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"advertise_switch\",\"type\":\"integer\",\"required\":false,\"description\":\"Traffic type, 1=all (incl. ads), 0=organic only\",\"constraints\":\"Allowed values: 0, 1\"},{\"name\":\"date_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Date range (~1=7d, 2=30d, 3=90d)\",\"constraints\":\"Range: 1 to 12\"},{\"name\":\"note_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Note type, 1=image, 2=video, 3=all (default)\",\"constraints\":\"Allowed values: 1, 2, 3\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Blogger user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-notes-rate \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"60b137080000000001000301\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"60b137080000000001000301\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-notes-rate\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"60b137080000000001000301\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-notes-rate\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-notes-rate\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-notes-rate\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-notes-rate\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-notes-rate\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-notes-rate\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/pgy/blogger-notes-rate\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get PGY blogger notes rate" + modelName: "Xiaohongshu (RED) PGY Blogger Note Rates" modelId: "xiaohongshu/pgy/blogger-notes-rate" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-notes.md b/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-notes.md index fa78f38b..62dca7b7 100644 --- a/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-notes.md +++ b/model-api-reference/platform-apis/xiaohongshu/pgy/blogger-notes.md @@ -1,13 +1,13 @@ --- -title: "Get PGY blogger notes API Reference" -description: "SandBase API operation xiaohongshu/pgy/blogger-notes." +title: "Xiaohongshu (RED) PGY Blogger Notes API Reference" +description: "SandBase API reference for model xiaohongshu/pgy/blogger-notes. Call /v1/api/xiaohongshu/pgy/blogger-notes; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/pgy/blogger-notes" -apiReferenceJson: "{\"title\":\"Get PGY blogger notes\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/pgy/blogger-notes\",\"description\":\"Paginated blogger note details (each with impression/read/interaction metrics)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"advertise_switch\",\"type\":\"integer\",\"required\":false,\"description\":\"Traffic type, 1=all (incl. ads), 0=organic only\",\"constraints\":\"Allowed values: 0, 1\"},{\"name\":\"note_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Note type, 0=all, 1=image, 2=video, 4=image+video\",\"constraints\":\"Allowed values: 0, 1, 2, 4\"},{\"name\":\"order_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Order, 1=most read, 2=most interaction, 3=latest\",\"constraints\":\"Allowed values: 1, 2, 3\"},{\"name\":\"page_number\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, start from 1\",\"constraints\":\"Range: 1 to 1000\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Page size (1-100)\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Blogger user ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-notes \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-notes\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-notes\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-notes\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-notes\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-notes\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-notes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-notes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/pgy/blogger-notes\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) PGY Blogger Notes\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/pgy/blogger-notes\",\"description\":\"Returns notes posted by a specific blogger on the Xiaohongshu Pugongying platform. Supports filtering by note type, content tag, feature tag, and traffic source.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"advertise_switch\",\"type\":\"integer\",\"required\":false,\"description\":\"Traffic type, 1=all (incl. ads), 0=organic only\",\"constraints\":\"Allowed values: 0, 1\"},{\"name\":\"note_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Note type, 0=all, 1=image, 2=video, 4=image+video\",\"constraints\":\"Allowed values: 0, 1, 2, 4\"},{\"name\":\"order_type\",\"type\":\"integer\",\"required\":false,\"description\":\"Order, 1=most read, 2=most interaction, 3=latest\",\"constraints\":\"Allowed values: 1, 2, 3\"},{\"name\":\"page_number\",\"type\":\"integer\",\"required\":false,\"description\":\"Page number, start from 1\",\"constraints\":\"Range: 1 to 1000\"},{\"name\":\"page_size\",\"type\":\"integer\",\"required\":false,\"description\":\"Page size (1-100)\",\"constraints\":\"Range: 1 to 100\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"Blogger user ID\"},{\"name\":\"feature_tag\",\"type\":\"string\",\"required\":false,\"description\":\"按内容特征筛选,如 韩系;取值见博主详情的 featureTags/Filter by feature tag\",\"default\":\"\\\"\\\"\",\"constraints\":\"Length: 0 to 64\"},{\"name\":\"content_tag\",\"type\":\"string\",\"required\":false,\"description\":\"按内容类目筛选,如 美妆;取值见博主详情的 contentTags/Filter by content tag\",\"default\":\"\\\"\\\"\",\"constraints\":\"Length: 0 to 64\"},{\"name\":\"is_third_platform\",\"type\":\"integer\",\"required\":false,\"description\":\"1=只看跨域合作笔记 0=不限(默认)/Cross-platform notes only\",\"default\":\"0\",\"constraints\":\"Allowed values: 0, 1\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-notes \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-notes\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/blogger-notes\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-notes\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-notes\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-notes\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-notes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/pgy/blogger-notes\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/pgy/blogger-notes\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get PGY blogger notes" + modelName: "Xiaohongshu (RED) PGY Blogger Notes" modelId: "xiaohongshu/pgy/blogger-notes" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/pgy/note-detail.md b/model-api-reference/platform-apis/xiaohongshu/pgy/note-detail.md index 2cd9ca31..6eb8bfa7 100644 --- a/model-api-reference/platform-apis/xiaohongshu/pgy/note-detail.md +++ b/model-api-reference/platform-apis/xiaohongshu/pgy/note-detail.md @@ -1,13 +1,13 @@ --- -title: "Get PGY note detail API Reference" -description: "SandBase API operation xiaohongshu/pgy/note-detail." +title: "Xiaohongshu (RED) PGY Note Detail API Reference" +description: "SandBase API reference for model xiaohongshu/pgy/note-detail. Call /v1/api/xiaohongshu/pgy/note-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/pgy/note-detail" -apiReferenceJson: "{\"title\":\"Get PGY note detail\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/pgy/note-detail\",\"description\":\"Get detail data of a single PGY (Pugongying) note\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"note_id\",\"type\":\"string\",\"required\":true,\"description\":\"Note ID, e.g. \\\"6a20edfa0000000021020951\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/pgy/note-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"note_id\\\": \\\"note_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"note_id\\\": \\\"note_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/note-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"note_id\\\": \\\"note_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/note-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/pgy/note-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/pgy/note-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/note-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/note-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/pgy/note-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/pgy/note-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) PGY Note Detail\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/pgy/note-detail\",\"description\":\"Returns detailed information for a specific Pugongying (PGY) note on Xiaohongshu (RED). Look up content and metadata using a note identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"note_id\",\"type\":\"string\",\"required\":true,\"description\":\"Note ID, e.g. \\\"6a20edfa0000000021020951\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/pgy/note-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"note_id\\\": \\\"note_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"note_id\\\": \\\"note_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/note-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"note_id\\\": \\\"note_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/pgy/note-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/pgy/note-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/pgy/note-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/note-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/pgy/note-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/pgy/note-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/pgy/note-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get PGY note detail" + modelName: "Xiaohongshu (RED) PGY Note Detail" modelId: "xiaohongshu/pgy/note-detail" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/web-v3/homefeed-categories.md b/model-api-reference/platform-apis/xiaohongshu/web-v3/homefeed-categories.md index daa7f08d..13b8684f 100644 --- a/model-api-reference/platform-apis/xiaohongshu/web-v3/homefeed-categories.md +++ b/model-api-reference/platform-apis/xiaohongshu/web-v3/homefeed-categories.md @@ -1,13 +1,13 @@ --- -title: "Fetch homepage categories API Reference" -description: "SandBase API operation xiaohongshu/web-v3/homefeed-categories." +title: "Xiaohongshu (RED) Homepage Categories API Reference" +description: "SandBase API reference for model xiaohongshu/web-v3/homefeed-categories. Call /v1/api/xiaohongshu/web-v3/homefeed-categories; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/web-v3/homefeed-categories" -apiReferenceJson: "{\"title\":\"Fetch homepage categories\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/web-v3/homefeed-categories\",\"description\":\"Get homepage category channels\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/homefeed-categories \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xiaohongshu/web-v3/homefeed-categories\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"xiaohongshu/web-v3/homefeed-categories\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/homefeed-categories\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"xiaohongshu/web-v3/homefeed-categories\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/homefeed-categories\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/homefeed-categories\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/homefeed-categories\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/homefeed-categories\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/homefeed-categories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/homefeed-categories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/web-v3/homefeed-categories\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) Homepage Categories\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/web-v3/homefeed-categories\",\"description\":\"Returns a list of available homefeed category channels on Xiaohongshu (RED). Use this endpoint to inspect valid category identifiers for content discovery.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/homefeed-categories \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/homefeed-categories\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/homefeed-categories\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/homefeed-categories\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/homefeed-categories\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/homefeed-categories\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/homefeed-categories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/homefeed-categories\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/web-v3/homefeed-categories\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch homepage categories" + modelName: "Xiaohongshu (RED) Homepage Categories" modelId: "xiaohongshu/web-v3/homefeed-categories" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/web-v3/homefeed.md b/model-api-reference/platform-apis/xiaohongshu/web-v3/homefeed.md index f4bbff66..76fe5253 100644 --- a/model-api-reference/platform-apis/xiaohongshu/web-v3/homefeed.md +++ b/model-api-reference/platform-apis/xiaohongshu/web-v3/homefeed.md @@ -1,13 +1,13 @@ --- -title: "Fetch homepage feed API Reference" -description: "SandBase API operation xiaohongshu/web-v3/homefeed." +title: "Xiaohongshu (RED) Homepage Feed API Reference" +description: "SandBase API reference for model xiaohongshu/web-v3/homefeed. Call /v1/api/xiaohongshu/web-v3/homefeed; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/web-v3/homefeed" -apiReferenceJson: "{\"title\":\"Fetch homepage feed\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/web-v3/homefeed\",\"description\":\"Get homepage recommended notes\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"category\",\"type\":\"string\",\"required\":false,\"description\":\"Category channel ID\",\"default\":\"homefeed_recommend\"},{\"name\":\"cursor_score\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor\",\"default\":\"\\\"\\\"\"},{\"name\":\"need_filter_image\",\"type\":\"boolean\",\"required\":false,\"description\":\"Image notes only\",\"default\":\"false\"},{\"name\":\"num\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of results, max 40\",\"default\":\"20\",\"constraints\":\"Maximum: 40\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/homefeed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xiaohongshu/web-v3/homefeed\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"xiaohongshu/web-v3/homefeed\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/homefeed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"xiaohongshu/web-v3/homefeed\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/homefeed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/homefeed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/homefeed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/homefeed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/homefeed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/homefeed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/web-v3/homefeed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) Homepage Feed\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/web-v3/homefeed\",\"description\":\"Retrieves recommended notes from the Xiaohongshu homepage feed. Supports filtering by category channel, restricting results to image notes, and paginating via cursor score.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"category\",\"type\":\"string\",\"required\":false,\"description\":\"Category channel ID\",\"default\":\"homefeed_recommend\"},{\"name\":\"cursor_score\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor\",\"default\":\"\\\"\\\"\"},{\"name\":\"need_filter_image\",\"type\":\"boolean\",\"required\":false,\"description\":\"Image notes only\",\"default\":\"false\"},{\"name\":\"num\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of results, max 40\",\"default\":\"20\",\"constraints\":\"Maximum: 40\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/homefeed \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/homefeed\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/homefeed\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/homefeed\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/homefeed\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/homefeed\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/homefeed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/homefeed\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/web-v3/homefeed\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch homepage feed" + modelName: "Xiaohongshu (RED) Homepage Feed" modelId: "xiaohongshu/web-v3/homefeed" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/web-v3/hot-list.md b/model-api-reference/platform-apis/xiaohongshu/web-v3/hot-list.md deleted file mode 100644 index 4add053b..00000000 --- a/model-api-reference/platform-apis/xiaohongshu/web-v3/hot-list.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Fetch Xiaohongshu hot list API Reference" -description: "SandBase API operation xiaohongshu/web-v3/hot-list." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/xiaohongshu/web-v3/hot-list" -apiReferenceJson: "{\"title\":\"Fetch Xiaohongshu hot list\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/web-v3/hot-list\",\"description\":\"Get the Xiaohongshu hot list (realtime), i.e. today's trending topics/keywords\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/hot-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xiaohongshu/web-v3/hot-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"xiaohongshu/web-v3/hot-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/hot-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"xiaohongshu/web-v3/hot-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/hot-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/hot-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/hot-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/hot-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/hot-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/hot-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/web-v3/hot-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Fetch Xiaohongshu hot list" - modelId: "xiaohongshu/web-v3/hot-list" - vendor: "Xiaohongshu" - vendorSlug: "xiaohongshu" - modelSlug: "web-v3/hot-list" - protocol: "API Reference" - endpoint: "/v1/api/xiaohongshu/web-v3/hot-list" - publishedAt: "" - capabilities: ["api","xiaohongshu"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/xiaohongshu/web-v3/note-detail.md b/model-api-reference/platform-apis/xiaohongshu/web-v3/note-detail.md index e658b2e7..4de2e5eb 100644 --- a/model-api-reference/platform-apis/xiaohongshu/web-v3/note-detail.md +++ b/model-api-reference/platform-apis/xiaohongshu/web-v3/note-detail.md @@ -1,13 +1,13 @@ --- -title: "Fetch note detail API Reference" -description: "SandBase API operation xiaohongshu/web-v3/note-detail." +title: "Xiaohongshu (RED) Web Note Details API Reference" +description: "SandBase API reference for model xiaohongshu/web-v3/note-detail. Call /v1/api/xiaohongshu/web-v3/note-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/web-v3/note-detail" -apiReferenceJson: "{\"title\":\"Fetch note detail\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/web-v3/note-detail\",\"description\":\"Get note detail (image/video)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"note_id\",\"type\":\"string\",\"required\":true,\"description\":\"Note ID, can be obtained from the sharing link of Xiaohongshu\"},{\"name\":\"xsec_token\",\"type\":\"string\",\"required\":true,\"description\":\"Security token, can be obtained from the sharing link of Xiaohongshu\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/note-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"note_id\\\": \\\"note_id\\\",\\n \\\"xsec_token\\\": \\\"xsec_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"note_id\\\": \\\"note_id\\\",\\n \\\"xsec_token\\\": \\\"xsec_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/note-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"note_id\\\": \\\"note_id\\\",\\n \\\"xsec_token\\\": \\\"xsec_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/note-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/note-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/note-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/note-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/note-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/note-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/web-v3/note-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) Web Note Details\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/web-v3/note-detail\",\"description\":\"Returns detailed information for a specific Xiaohongshu note using its identifier and security token obtained from a web share link.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"note_id\",\"type\":\"string\",\"required\":true,\"description\":\"Note ID, can be obtained from the sharing link of Xiaohongshu\"},{\"name\":\"xsec_token\",\"type\":\"string\",\"required\":true,\"description\":\"Security token, can be obtained from the sharing link of Xiaohongshu\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/note-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"note_id\\\": \\\"note_id\\\",\\n \\\"xsec_token\\\": \\\"xsec_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"note_id\\\": \\\"note_id\\\",\\n \\\"xsec_token\\\": \\\"xsec_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/note-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"note_id\\\": \\\"note_id\\\",\\n \\\"xsec_token\\\": \\\"xsec_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/note-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/note-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/note-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/note-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/note-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/note-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/web-v3/note-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch note detail" + modelName: "Xiaohongshu (RED) Web Note Details" modelId: "xiaohongshu/web-v3/note-detail" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/web-v3/search-suggest.md b/model-api-reference/platform-apis/xiaohongshu/web-v3/search-suggest.md index 4e6387ae..23a5e69b 100644 --- a/model-api-reference/platform-apis/xiaohongshu/web-v3/search-suggest.md +++ b/model-api-reference/platform-apis/xiaohongshu/web-v3/search-suggest.md @@ -1,13 +1,13 @@ --- -title: "Fetch search suggestions API Reference" -description: "SandBase API operation xiaohongshu/web-v3/search-suggest." +title: "Xiaohongshu (RED) Search Suggestions API Reference" +description: "SandBase API reference for model xiaohongshu/web-v3/search-suggest. Call /v1/api/xiaohongshu/web-v3/search-suggest; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/web-v3/search-suggest" -apiReferenceJson: "{\"title\":\"Fetch search suggestions\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/web-v3/search-suggest\",\"description\":\"Get search suggestions, returns popular recommendations when keyword is empty\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Keyword (optional)\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/search-suggest \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/search-suggest\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/search-suggest\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/search-suggest\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/search-suggest\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/search-suggest\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/search-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/search-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/web-v3/search-suggest\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) Search Suggestions\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/web-v3/search-suggest\",\"description\":\"Returns search query suggestions and autocomplete terms from Xiaohongshu (RED). Accepts an optional search query prefix to surface matching keyword recommendations.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":false,\"description\":\"Keyword (optional)\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/search-suggest \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/search-suggest\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/search-suggest\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/search-suggest\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/search-suggest\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/search-suggest\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/search-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/search-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/web-v3/search-suggest\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch search suggestions" + modelName: "Xiaohongshu (RED) Search Suggestions" modelId: "xiaohongshu/web-v3/search-suggest" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xiaohongshu/web-v3/user-info.md b/model-api-reference/platform-apis/xiaohongshu/web-v3/user-info.md index e5fc9715..5d268067 100644 --- a/model-api-reference/platform-apis/xiaohongshu/web-v3/user-info.md +++ b/model-api-reference/platform-apis/xiaohongshu/web-v3/user-info.md @@ -1,13 +1,13 @@ --- -title: "Fetch user info API Reference — Xiaohongshu Web V3 / User Info" -description: "SandBase API operation xiaohongshu/web-v3/user-info." +title: "Xiaohongshu (RED) User Profile Information API Reference" +description: "SandBase API reference for model xiaohongshu/web-v3/user-info. Call /v1/api/xiaohongshu/web-v3/user-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xiaohongshu/web-v3/user-info" -apiReferenceJson: "{\"title\":\"Fetch user info\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/web-v3/user-info\",\"description\":\"Get user public profile\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"5e3a8ee700000000010070c6\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"5e3a8ee700000000010070c6\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"5e3a8ee700000000010070c6\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/web-v3/user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xiaohongshu (RED) User Profile Information\",\"operation\":\"Xiaohongshu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xiaohongshu/web-v3/user-info\",\"description\":\"Returns public profile details and interaction metrics for a specific Xiaohongshu account based on the provided user ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xiaohongshu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"5e3a8ee700000000010070c6\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"5e3a8ee700000000010070c6\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"5e3a8ee700000000010070c6\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xiaohongshu/web-v3/user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xiaohongshu/web-v3/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xiaohongshu/web-v3/user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Fetch user info" + modelName: "Xiaohongshu (RED) User Profile Information" modelId: "xiaohongshu/web-v3/user-info" vendor: "Xiaohongshu" vendorSlug: "xiaohongshu" diff --git a/model-api-reference/platform-apis/xigua/app-v2/one-video-play-url.md b/model-api-reference/platform-apis/xigua/app-v2/one-video-play-url.md index 100da395..b6cc361e 100644 --- a/model-api-reference/platform-apis/xigua/app-v2/one-video-play-url.md +++ b/model-api-reference/platform-apis/xigua/app-v2/one-video-play-url.md @@ -1,13 +1,13 @@ --- -title: "Get single video play URL API Reference" -description: "SandBase API operation xigua/app-v2/one-video-play-url." +title: "Xigua Video Play URL API Reference" +description: "SandBase API reference for model xigua/app-v2/one-video-play-url. Call /v1/api/xigua/app-v2/one-video-play-url; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xigua/app-v2/one-video-play-url" -apiReferenceJson: "{\"title\":\"Get single video play URL\",\"operation\":\"Xigua API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xigua/app-v2/one-video-play-url\",\"description\":\"Get single video play URL, the interface returns the decoded play URL, which can be used directly.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xigua\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xigua/app-v2/one-video-play-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/one-video-play-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/one-video-play-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xigua/app-v2/one-video-play-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xigua/app-v2/one-video-play-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xigua/app-v2/one-video-play-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xigua/app-v2/one-video-play-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xigua/app-v2/one-video-play-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xigua/app-v2/one-video-play-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xigua Video Play URL\",\"operation\":\"Xigua API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xigua/app-v2/one-video-play-url\",\"description\":\"Returns the direct playback URL for a specific Xigua video using its unique item identifier. Developers supply the target video ID to retrieve playable media links.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xigua\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xigua/app-v2/one-video-play-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/one-video-play-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/one-video-play-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xigua/app-v2/one-video-play-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xigua/app-v2/one-video-play-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xigua/app-v2/one-video-play-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xigua/app-v2/one-video-play-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xigua/app-v2/one-video-play-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xigua/app-v2/one-video-play-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video play URL" + modelName: "Xigua Video Play URL" modelId: "xigua/app-v2/one-video-play-url" vendor: "Xigua" vendorSlug: "xigua" diff --git a/model-api-reference/platform-apis/xigua/app-v2/one-video-v2.md b/model-api-reference/platform-apis/xigua/app-v2/one-video-v2.md deleted file mode 100644 index cafab2da..00000000 --- a/model-api-reference/platform-apis/xigua/app-v2/one-video-v2.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get single video data V2 API Reference — Xigua V2 / One Video V2" -description: "SandBase API operation xigua/app-v2/one-video-v2." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/xigua/app-v2/one-video-v2" -apiReferenceJson: "{\"title\":\"Get single video data V2\",\"operation\":\"Xigua API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xigua/app-v2/one-video-v2\",\"description\":\"Get single video data (more comprehensive information, including title and other information, but not including information about related video recommendations)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xigua\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xigua/app-v2/one-video-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/one-video-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/one-video-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xigua/app-v2/one-video-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xigua/app-v2/one-video-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xigua/app-v2/one-video-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xigua/app-v2/one-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xigua/app-v2/one-video-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xigua/app-v2/one-video-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get single video data V2" - modelId: "xigua/app-v2/one-video-v2" - vendor: "Xigua" - vendorSlug: "xigua" - modelSlug: "app-v2/one-video-v2" - protocol: "API Reference" - endpoint: "/v1/api/xigua/app-v2/one-video-v2" - publishedAt: "" - capabilities: ["api","xigua"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/xigua/app-v2/one-video.md b/model-api-reference/platform-apis/xigua/app-v2/one-video.md index 26ba21f5..272c7ac4 100644 --- a/model-api-reference/platform-apis/xigua/app-v2/one-video.md +++ b/model-api-reference/platform-apis/xigua/app-v2/one-video.md @@ -1,13 +1,13 @@ --- -title: "Get single video data API Reference — Xigua App V2 / One Video" -description: "SandBase API operation xigua/app-v2/one-video." +title: "Xigua Single Video Information API Reference" +description: "Xigua Single Video Information API reference for SandBase. Use model xigua/app-v2/one-video with /v1/api/xigua/app-v2/one-video; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xigua/app-v2/one-video" -apiReferenceJson: "{\"title\":\"Get single video data\",\"operation\":\"Xigua API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xigua/app-v2/one-video\",\"description\":\"Get single video data (less information, does not include title and other information, but includes information about related videos)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xigua\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xigua/app-v2/one-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/one-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/one-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xigua/app-v2/one-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xigua/app-v2/one-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xigua/app-v2/one-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xigua/app-v2/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xigua/app-v2/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xigua/app-v2/one-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xigua Single Video Information\",\"operation\":\"Xigua API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xigua/app-v2/one-video\",\"description\":\"Returns lightweight single video data and associated related video information from Xigua for a specific post by its unique item ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xigua\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xigua/app-v2/one-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/one-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/one-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xigua/app-v2/one-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xigua/app-v2/one-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xigua/app-v2/one-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xigua/app-v2/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xigua/app-v2/one-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xigua/app-v2/one-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get single video data" + modelName: "Xigua Single Video Information" modelId: "xigua/app-v2/one-video" vendor: "Xigua" vendorSlug: "xigua" diff --git a/model-api-reference/platform-apis/xigua/app-v2/search-video.md b/model-api-reference/platform-apis/xigua/app-v2/search-video.md index 7be9020b..a825c40d 100644 --- a/model-api-reference/platform-apis/xigua/app-v2/search-video.md +++ b/model-api-reference/platform-apis/xigua/app-v2/search-video.md @@ -1,13 +1,13 @@ --- -title: "Search video API Reference — Xigua App V2 / Search Video API" -description: "SandBase API operation xigua/app-v2/search-video." +title: "Xigua Video Search API Reference" +description: "Xigua Video Search API reference for SandBase. Use model xigua/app-v2/search-video with /v1/api/xigua/app-v2/search-video; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xigua/app-v2/search-video" -apiReferenceJson: "{\"title\":\"Search video\",\"operation\":\"Xigua API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xigua/app-v2/search-video\",\"description\":\"Search video\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword\"},{\"name\":\"max_duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum duration, default empty, in seconds.\"},{\"name\":\"min_duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Minimum duration, default empty, in seconds.\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset, pass 0 for the first request, pass the offset returned by the previous request for subsequent requests\",\"default\":\"0\"},{\"name\":\"order_type\",\"type\":\"string\",\"required\":false,\"description\":\"Order type, empty for default sorting, the following are optional sorting methods.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xigua\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xigua/app-v2/search-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/search-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/search-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xigua/app-v2/search-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xigua/app-v2/search-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xigua/app-v2/search-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xigua/app-v2/search-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xigua/app-v2/search-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xigua/app-v2/search-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xigua Video Search\",\"operation\":\"Xigua API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xigua/app-v2/search-video\",\"description\":\"Search Xigua Video (ByteDance long-form video) by keyword: titles, creators, duration, publish time and comment counts, with sort and duration filters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Keyword\"},{\"name\":\"max_duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum duration, default empty, in seconds.\"},{\"name\":\"min_duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Minimum duration, default empty, in seconds.\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset, pass 0 for the first request, pass the offset returned by the previous request for subsequent requests\",\"default\":\"0\"},{\"name\":\"order_type\",\"type\":\"string\",\"required\":false,\"description\":\"Order type, empty for default sorting, the following are optional sorting methods.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xigua\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xigua/app-v2/search-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/search-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/search-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xigua/app-v2/search-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xigua/app-v2/search-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xigua/app-v2/search-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xigua/app-v2/search-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xigua/app-v2/search-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xigua/app-v2/search-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search video" + modelName: "Xigua Video Search" modelId: "xigua/app-v2/search-video" vendor: "Xigua" vendorSlug: "xigua" diff --git a/model-api-reference/platform-apis/xigua/app-v2/user-info.md b/model-api-reference/platform-apis/xigua/app-v2/user-info.md index 6bb542c8..747bc0be 100644 --- a/model-api-reference/platform-apis/xigua/app-v2/user-info.md +++ b/model-api-reference/platform-apis/xigua/app-v2/user-info.md @@ -1,13 +1,13 @@ --- -title: "Personal information API Reference" -description: "SandBase API operation xigua/app-v2/user-info." +title: "Xigua User Profile Details API Reference" +description: "Xigua User Profile Details API reference for SandBase. Use model xigua/app-v2/user-info with /v1/api/xigua/app-v2/user-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xigua/app-v2/user-info" -apiReferenceJson: "{\"title\":\"Personal information\",\"operation\":\"Xigua API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xigua/app-v2/user-info\",\"description\":\"Personal information\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xigua\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xigua/app-v2/user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xigua/app-v2/user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xigua/app-v2/user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xigua/app-v2/user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xigua/app-v2/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xigua/app-v2/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xigua/app-v2/user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xigua User Profile Details\",\"operation\":\"Xigua API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xigua/app-v2/user-info\",\"description\":\"Returns profile and personal information for a specified Xigua account. Queries details using the target user identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xigua\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xigua/app-v2/user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xigua/app-v2/user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xigua/app-v2/user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xigua/app-v2/user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xigua/app-v2/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xigua/app-v2/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xigua/app-v2/user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Personal information" + modelName: "Xigua User Profile Details" modelId: "xigua/app-v2/user-info" vendor: "Xigua" vendorSlug: "xigua" diff --git a/model-api-reference/platform-apis/xigua/app-v2/user-post-list.md b/model-api-reference/platform-apis/xigua/app-v2/user-post-list.md index 0c4ae507..8bbed1a0 100644 --- a/model-api-reference/platform-apis/xigua/app-v2/user-post-list.md +++ b/model-api-reference/platform-apis/xigua/app-v2/user-post-list.md @@ -1,13 +1,13 @@ --- -title: "Get user post list API Reference — Xigua App V2 / User Post List" -description: "SandBase API operation xigua/app-v2/user-post-list." +title: "Xigua User Post List API Reference" +description: "Xigua User Post List API reference for SandBase. Use model xigua/app-v2/user-post-list with /v1/api/xigua/app-v2/user-post-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xigua/app-v2/user-post-list" -apiReferenceJson: "{\"title\":\"Get user post list\",\"operation\":\"Xigua API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xigua/app-v2/user-post-list\",\"description\":\"Get user post list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"max_behot_time\",\"type\":\"string\",\"required\":false,\"description\":\"Maximum behavior time, default empty, pass empty for the first request, pass the max_behot_time returned by the previous request for subsequent requests\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xigua\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xigua/app-v2/user-post-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/user-post-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/user-post-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xigua/app-v2/user-post-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xigua/app-v2/user-post-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xigua/app-v2/user-post-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xigua/app-v2/user-post-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xigua/app-v2/user-post-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xigua/app-v2/user-post-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xigua User Post List\",\"operation\":\"Xigua API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xigua/app-v2/user-post-list\",\"description\":\"Returns a list of posts from a specific Xigua user account. Supports paginated results using timestamp cursor tokens.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"max_behot_time\",\"type\":\"string\",\"required\":false,\"description\":\"Maximum behavior time, default empty, pass empty for the first request, pass the max_behot_time returned by the previous request for subsequent requests\"},{\"name\":\"user_id\",\"type\":\"string\",\"required\":true,\"description\":\"User id\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xigua\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xigua/app-v2/user-post-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_id\\\": \\\"user_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/user-post-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_id\\\": \\\"user_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/user-post-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xigua/app-v2/user-post-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xigua/app-v2/user-post-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xigua/app-v2/user-post-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xigua/app-v2/user-post-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xigua/app-v2/user-post-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xigua/app-v2/user-post-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get user post list" + modelName: "Xigua User Post List" modelId: "xigua/app-v2/user-post-list" vendor: "Xigua" vendorSlug: "xigua" diff --git a/model-api-reference/platform-apis/xigua/app-v2/video-comment-list.md b/model-api-reference/platform-apis/xigua/app-v2/video-comment-list.md index 6f868290..b3de334a 100644 --- a/model-api-reference/platform-apis/xigua/app-v2/video-comment-list.md +++ b/model-api-reference/platform-apis/xigua/app-v2/video-comment-list.md @@ -1,13 +1,13 @@ --- -title: "Video comment list API Reference" -description: "SandBase API operation xigua/app-v2/video-comment-list." +title: "Xigua Video Comment List API Reference" +description: "SandBase API reference for model xigua/app-v2/video-comment-list. Call /v1/api/xigua/app-v2/video-comment-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/xigua/app-v2/video-comment-list" -apiReferenceJson: "{\"title\":\"Video comment list\",\"operation\":\"Xigua API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xigua/app-v2/video-comment-list\",\"description\":\"Video comment list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Quantity, default 20, it is recommended to keep the default.\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset, pass 0 for the first request, pass the offset returned by the previous request for subsequent requests\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xigua\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xigua/app-v2/video-comment-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/video-comment-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/video-comment-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xigua/app-v2/video-comment-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xigua/app-v2/video-comment-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xigua/app-v2/video-comment-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xigua/app-v2/video-comment-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xigua/app-v2/video-comment-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xigua/app-v2/video-comment-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Xigua Video Comment List\",\"operation\":\"Xigua API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/xigua/app-v2/video-comment-list\",\"description\":\"Returns comments for a specified Xigua video. Supports paginating through discussion threads using offset and result count parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"count\",\"type\":\"integer\",\"required\":false,\"description\":\"Quantity, default 20, it is recommended to keep the default.\"},{\"name\":\"item_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video id\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset, pass 0 for the first request, pass the offset returned by the previous request for subsequent requests\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, xigua\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/xigua/app-v2/video-comment-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"item_id\\\": \\\"item_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"item_id\\\": \\\"item_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/video-comment-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"item_id\\\": \\\"item_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/xigua/app-v2/video-comment-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"xigua/app-v2/video-comment-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"xigua/app-v2/video-comment-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"xigua/app-v2/video-comment-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"xigua/app-v2/video-comment-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"xigua/app-v2/video-comment-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"xigua/app-v2/video-comment-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Video comment list" + modelName: "Xigua Video Comment List" modelId: "xigua/app-v2/video-comment-list" vendor: "Xigua" vendorSlug: "xigua" diff --git a/model-api-reference/platform-apis/youtube/web-v2/channel-community-posts.md b/model-api-reference/platform-apis/youtube/web-v2/channel-community-posts.md index 12c6c039..3a4d80aa 100644 --- a/model-api-reference/platform-apis/youtube/web-v2/channel-community-posts.md +++ b/model-api-reference/platform-apis/youtube/web-v2/channel-community-posts.md @@ -1,13 +1,13 @@ --- -title: "Get channel community posts API Reference" -description: "SandBase API operation youtube/web-v2/channel-community-posts." +title: "YouTube Channel Community Posts API Reference" +description: "SandBase API reference for model youtube/web-v2/channel-community-posts. Call /v1/api/youtube/web-v2/channel-community-posts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web-v2/channel-community-posts" -apiReferenceJson: "{\"title\":\"Get channel community posts\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/channel-community-posts\",\"description\":\"Get YouTube channel's community posts list Supports pagination via continuation_token\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_id\",\"type\":\"string\",\"required\":true,\"description\":\"Channel ID\"},{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":false,\"description\":\"Next page pagination token\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code, default `\\\"US\\\"`\",\"default\":\"US\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"Language code, default `\\\"zh-CN\\\"`\",\"default\":\"zh-CN\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to format data, default `true`\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/channel-community-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"channel_id\\\": \\\"UCeu6U67OzJhV1KwBansH3Dg\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"channel_id\\\": \\\"UCeu6U67OzJhV1KwBansH3Dg\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/channel-community-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"channel_id\\\": \\\"UCeu6U67OzJhV1KwBansH3Dg\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/channel-community-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/channel-community-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/channel-community-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/channel-community-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/channel-community-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/channel-community-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/channel-community-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Channel Community Posts\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/channel-community-posts\",\"description\":\"Returns community posts from a specific YouTube channel, including text content, polls, votes, and comment counts. Supports pagination via a continuation token.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_id\",\"type\":\"string\",\"required\":true,\"description\":\"Channel ID\"},{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":false,\"description\":\"Next page pagination token\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code, default `\\\"US\\\"`\",\"default\":\"US\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"Language code, default `\\\"zh-CN\\\"`\",\"default\":\"zh-CN\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to format data, default `true`\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/channel-community-posts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"channel_id\\\": \\\"UCeu6U67OzJhV1KwBansH3Dg\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"channel_id\\\": \\\"UCeu6U67OzJhV1KwBansH3Dg\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/channel-community-posts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"channel_id\\\": \\\"UCeu6U67OzJhV1KwBansH3Dg\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/channel-community-posts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/channel-community-posts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/channel-community-posts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/channel-community-posts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/channel-community-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/channel-community-posts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/channel-community-posts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get channel community posts" + modelName: "YouTube Channel Community Posts" modelId: "youtube/web-v2/channel-community-posts" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web-v2/channel-description.md b/model-api-reference/platform-apis/youtube/web-v2/channel-description.md index bc6c9e76..9e1c0137 100644 --- a/model-api-reference/platform-apis/youtube/web-v2/channel-description.md +++ b/model-api-reference/platform-apis/youtube/web-v2/channel-description.md @@ -1,13 +1,13 @@ --- -title: "Get channel description API Reference" -description: "SandBase API operation youtube/web-v2/channel-description." +title: "YouTube Channel Description API Reference" +description: "SandBase API reference for model youtube/web-v2/channel-description. Call /v1/api/youtube/web-v2/channel-description; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web-v2/channel-description" -apiReferenceJson: "{\"title\":\"Get channel description\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/channel-description\",\"description\":\"Get YouTube channel description information (subscribers, videos, views, creation date, social links, etc.)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_id\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Channel ID for first request to get basic channel info\"},{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Pagination token for second request to get advanced info\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Set region code\",\"default\":\"US\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Set language preference\",\"default\":\"zh-CN\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"**Purpose**: Whether to return cleaned simplified data\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/channel-description \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"youtube/web-v2/channel-description\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"youtube/web-v2/channel-description\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/channel-description\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"youtube/web-v2/channel-description\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/channel-description\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/channel-description\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/channel-description\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/channel-description\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/channel-description\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/channel-description\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/channel-description\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Channel Description\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/channel-description\",\"description\":\"Returns YouTube channel details including subscriber counts, video totals, view counts, joined date, and social links. Filter by country and language.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_id\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Channel ID for first request to get basic channel info\"},{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Pagination token for second request to get advanced info\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Set region code\",\"default\":\"US\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Set language preference\",\"default\":\"zh-CN\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"**Purpose**: Whether to return cleaned simplified data\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/channel-description \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/channel-description\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/channel-description\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/channel-description\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/channel-description\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/channel-description\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/channel-description\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/channel-description\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/channel-description\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get channel description" + modelName: "YouTube Channel Description" modelId: "youtube/web-v2/channel-description" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web-v2/channel-id.md b/model-api-reference/platform-apis/youtube/web-v2/channel-id.md index 565a46e1..44b1c33e 100644 --- a/model-api-reference/platform-apis/youtube/web-v2/channel-id.md +++ b/model-api-reference/platform-apis/youtube/web-v2/channel-id.md @@ -1,13 +1,13 @@ --- -title: "Get channel ID from URL API Reference" -description: "SandBase API operation youtube/web-v2/channel-id." +title: "YouTube Channel ID from URL API Reference" +description: "YouTube Channel ID from URL API reference for SandBase. Use model youtube/web-v2/channel-id with /v1/api/youtube/web-v2/channel-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web-v2/channel-id" -apiReferenceJson: "{\"title\":\"Get channel ID from URL\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/channel-id\",\"description\":\"Convert YouTube channel URL to channel ID. Supports multiple URL formats including @username, /channel/, /c/, /user/ formats.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_url\",\"type\":\"string\",\"required\":true,\"description\":\"Channel URL.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/channel-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"channel_url\\\": \\\"https://www.youtube.com/@CozyCraftYT\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"channel_url\\\": \\\"https://www.youtube.com/@CozyCraftYT\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/channel-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"channel_url\\\": \\\"https://www.youtube.com/@CozyCraftYT\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/channel-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/channel-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/channel-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/channel-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/channel-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/channel-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/channel-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Channel ID from URL\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/channel-id\",\"description\":\"Resolves a YouTube channel URL to its canonical channel ID. Accepts various channel URL structures including handle, channel, custom, and user formats.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_url\",\"type\":\"string\",\"required\":true,\"description\":\"Channel URL.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/channel-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"channel_url\\\": \\\"https://www.youtube.com/@CozyCraftYT\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"channel_url\\\": \\\"https://www.youtube.com/@CozyCraftYT\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/channel-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"channel_url\\\": \\\"https://www.youtube.com/@CozyCraftYT\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/channel-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/channel-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/channel-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/channel-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/channel-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/channel-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/channel-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get channel ID from URL" + modelName: "YouTube Channel ID from URL" modelId: "youtube/web-v2/channel-id" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web-v2/channel-shorts.md b/model-api-reference/platform-apis/youtube/web-v2/channel-shorts.md index 719234c4..26981f1e 100644 --- a/model-api-reference/platform-apis/youtube/web-v2/channel-shorts.md +++ b/model-api-reference/platform-apis/youtube/web-v2/channel-shorts.md @@ -1,13 +1,13 @@ --- -title: "Get channel shorts API Reference" -description: "SandBase API operation youtube/web-v2/channel-shorts." +title: "YouTube Channel Shorts API Reference" +description: "YouTube Channel Shorts API reference for SandBase. Use model youtube/web-v2/channel-shorts with /v1/api/youtube/web-v2/channel-shorts; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web-v2/channel-shorts" -apiReferenceJson: "{\"title\":\"Get channel shorts\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/channel-shorts\",\"description\":\"Get YouTube channel's Shorts (short videos) list Supports pagination to get more shorts\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_id\",\"type\":\"string\",\"required\":false,\"description\":\"Channel ID (recommended, e.g., UCuAXFkgsw1L7xaCfnd5JJOw)\"},{\"name\":\"channel_url\",\"type\":\"string\",\"required\":false,\"description\":\"Channel URL (optional, ignored if channel_id is provided)\"},{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token (optional, for next page)\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to format data (default true)\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/channel-shorts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"youtube/web-v2/channel-shorts\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"youtube/web-v2/channel-shorts\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/channel-shorts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"youtube/web-v2/channel-shorts\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/channel-shorts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/channel-shorts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/channel-shorts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/channel-shorts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/channel-shorts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/channel-shorts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/channel-shorts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Channel Shorts\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/channel-shorts\",\"description\":\"Returns a list of YouTube Shorts from a specified channel. Supports lookups by channel identifier or URL, optional response formatting, and pagination tokens for next-page results.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_id\",\"type\":\"string\",\"required\":false,\"description\":\"Channel ID (recommended, e.g., UCuAXFkgsw1L7xaCfnd5JJOw)\"},{\"name\":\"channel_url\",\"type\":\"string\",\"required\":false,\"description\":\"Channel URL (optional, ignored if channel_id is provided)\"},{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token (optional, for next page)\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to format data (default true)\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/channel-shorts \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/channel-shorts\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/channel-shorts\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/channel-shorts\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/channel-shorts\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/channel-shorts\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/channel-shorts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/channel-shorts\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/channel-shorts\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get channel shorts" + modelName: "YouTube Channel Shorts" modelId: "youtube/web-v2/channel-shorts" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web-v2/channel-url.md b/model-api-reference/platform-apis/youtube/web-v2/channel-url.md index 876c9b9b..aa1ef3ab 100644 --- a/model-api-reference/platform-apis/youtube/web-v2/channel-url.md +++ b/model-api-reference/platform-apis/youtube/web-v2/channel-url.md @@ -1,13 +1,13 @@ --- -title: "Get channel URL from channel ID — 3pul49 API" -description: "SandBase API operation youtube/web-v2/channel-url." +title: "YouTube Channel URL by ID API Reference" +description: "YouTube Channel URL by ID API reference for SandBase. Use model youtube/web-v2/channel-url with /v1/api/youtube/web-v2/channel-url; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web-v2/channel-url" -apiReferenceJson: "{\"title\":\"Get channel URL from channel ID\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/channel-url\",\"description\":\"Convert YouTube channel ID to channel handle (@username) Reverse operation of get_channel_id endpoint\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_id\",\"type\":\"string\",\"required\":true,\"description\":\"Channel ID (e.g., UCeu6U67OzJhV1KwBansH3Dg)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/channel-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"channel_id\\\": \\\"UCeu6U67OzJhV1KwBansH3Dg\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"channel_id\\\": \\\"UCeu6U67OzJhV1KwBansH3Dg\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/channel-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"channel_id\\\": \\\"UCeu6U67OzJhV1KwBansH3Dg\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/channel-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/channel-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/channel-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/channel-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/channel-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/channel-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/channel-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Channel URL by ID\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/channel-url\",\"description\":\"Returns standard and vanity channel URLs for a specified YouTube channel. Takes a unique channel ID to look up the corresponding handle and profile links.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_id\",\"type\":\"string\",\"required\":true,\"description\":\"Channel ID (e.g., UCeu6U67OzJhV1KwBansH3Dg)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/channel-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"channel_id\\\": \\\"UCeu6U67OzJhV1KwBansH3Dg\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"channel_id\\\": \\\"UCeu6U67OzJhV1KwBansH3Dg\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/channel-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"channel_id\\\": \\\"UCeu6U67OzJhV1KwBansH3Dg\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/channel-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/channel-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/channel-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/channel-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/channel-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/channel-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/channel-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get channel URL from channel ID" + modelName: "YouTube Channel URL by ID" modelId: "youtube/web-v2/channel-url" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web-v2/channel-videos.md b/model-api-reference/platform-apis/youtube/web-v2/channel-videos.md index ebef62d4..81039435 100644 --- a/model-api-reference/platform-apis/youtube/web-v2/channel-videos.md +++ b/model-api-reference/platform-apis/youtube/web-v2/channel-videos.md @@ -1,13 +1,13 @@ --- -title: "Get channel videos API Reference" -description: "SandBase API operation youtube/web-v2/channel-videos." +title: "YouTube Channel Videos API Reference" +description: "YouTube Channel Videos API reference for SandBase. Use model youtube/web-v2/channel-videos with /v1/api/youtube/web-v2/channel-videos; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web-v2/channel-videos" -apiReferenceJson: "{\"title\":\"Get channel videos\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/channel-videos\",\"description\":\"Get YouTube channel video list Supports pagination via continuation_token\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_id\",\"type\":\"string\",\"required\":true,\"description\":\"**Purpose**: Channel ID\"},{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Pagination token for next page\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Set region code\",\"default\":\"US\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Set language preference\",\"default\":\"zh-CN\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"**Purpose**: Whether to return cleaned simplified data\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/channel-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"channel_id\\\": \\\"UCeu6U67OzJhV1KwBansH3Dg\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"channel_id\\\": \\\"UCeu6U67OzJhV1KwBansH3Dg\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/channel-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"channel_id\\\": \\\"UCeu6U67OzJhV1KwBansH3Dg\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/channel-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/channel-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/channel-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/channel-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/channel-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/channel-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/channel-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Channel Videos\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/channel-videos\",\"description\":\"Returns a list of videos for a specified YouTube channel, including title, duration, URLs, and view counts. Supports pagination and region or language filters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_id\",\"type\":\"string\",\"required\":true,\"description\":\"**Purpose**: Channel ID\"},{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Pagination token for next page\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Set region code\",\"default\":\"US\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Set language preference\",\"default\":\"zh-CN\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"**Purpose**: Whether to return cleaned simplified data\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/channel-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"channel_id\\\": \\\"UCeu6U67OzJhV1KwBansH3Dg\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"channel_id\\\": \\\"UCeu6U67OzJhV1KwBansH3Dg\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/channel-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"channel_id\\\": \\\"UCeu6U67OzJhV1KwBansH3Dg\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/channel-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/channel-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/channel-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/channel-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/channel-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/channel-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/channel-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get channel videos" + modelName: "YouTube Channel Videos" modelId: "youtube/web-v2/channel-videos" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web-v2/general-search-v2.md b/model-api-reference/platform-apis/youtube/web-v2/general-search-v2.md index d182d0d3..87f69a3f 100644 --- a/model-api-reference/platform-apis/youtube/web-v2/general-search-v2.md +++ b/model-api-reference/platform-apis/youtube/web-v2/general-search-v2.md @@ -1,13 +1,13 @@ --- -title: "General search V2 API Reference" -description: "SandBase API operation youtube/web-v2/general-search-v2." +title: "YouTube General Search (Web V2, V2) API Reference" +description: "SandBase API reference for model youtube/web-v2/general-search-v2. Call /v1/api/youtube/web-v2/general-search-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web-v2/general-search-v2" -apiReferenceJson: "{\"title\":\"General search V2\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/general-search-v2\",\"description\":\"Search YouTube videos, Shorts, channels, and playlists Returns cleaned structured data (compared to get_general_search which returns raw data) Supports multiple filter conditions and sorting options Supports pagination for loading more results\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"continuation_token\",\"type\":\"string | null\",\"required\":false,\"description\":\"Pagination token (pass from previous response for next page)\"},{\"name\":\"duration\",\"type\":\"string | null\",\"required\":false,\"description\":\"Video duration filter - short(<4min)/medium(4-20min)/long(>20min)\",\"constraints\":\"Allowed values: short, medium, long\"},{\"name\":\"features\",\"type\":\"string | null\",\"required\":false,\"description\":\"Feature filter (comma separated) - live/4k/hd/subtitles/creative_commons/360/vr180/3d/hdr\"},{\"name\":\"keyword\",\"type\":\"string | null\",\"required\":false,\"description\":\"Search keyword (required for first request)\"},{\"name\":\"sort_by\",\"type\":\"string | null\",\"required\":false,\"description\":\"Sort by - relevance/upload_date/view_count/rating\",\"constraints\":\"Allowed values: relevance, upload_date, view_count, rating\"},{\"name\":\"type\",\"type\":\"string | null\",\"required\":false,\"description\":\"Result type filter - video/channel/playlist/movie\",\"constraints\":\"Allowed values: video, channel, playlist, movie\"},{\"name\":\"upload_date\",\"type\":\"string | null\",\"required\":false,\"description\":\"Upload date filter - last_hour/today/this_week/this_month/this_year\",\"constraints\":\"Allowed values: last_hour, today, this_week, this_month, this_year\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/general-search-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/general-search-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/general-search-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/general-search-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/general-search-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/general-search-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/general-search-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/general-search-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/general-search-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube General Search (Web V2, V2)\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/general-search-v2\",\"description\":\"Returns YouTube search results matching a query keyword. Supports filtering by content type, upload date, duration, features, and sorting options, with pagination via tokens.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"continuation_token\",\"type\":\"string | null\",\"required\":false,\"description\":\"Pagination token (pass from previous response for next page)\"},{\"name\":\"duration\",\"type\":\"string | null\",\"required\":false,\"description\":\"Video duration filter - short(<4min)/medium(4-20min)/long(>20min)\",\"constraints\":\"Allowed values: short, medium, long\"},{\"name\":\"features\",\"type\":\"string | null\",\"required\":false,\"description\":\"Feature filter (comma separated) - live/4k/hd/subtitles/creative_commons/360/vr180/3d/hdr\"},{\"name\":\"keyword\",\"type\":\"string | null\",\"required\":false,\"description\":\"Search keyword (required for first request)\"},{\"name\":\"sort_by\",\"type\":\"string | null\",\"required\":false,\"description\":\"Sort by - relevance/upload_date/view_count/rating\",\"constraints\":\"Allowed values: relevance, upload_date, view_count, rating\"},{\"name\":\"type\",\"type\":\"string | null\",\"required\":false,\"description\":\"Result type filter - video/channel/playlist/movie\",\"constraints\":\"Allowed values: video, channel, playlist, movie\"},{\"name\":\"upload_date\",\"type\":\"string | null\",\"required\":false,\"description\":\"Upload date filter - last_hour/today/this_week/this_month/this_year\",\"constraints\":\"Allowed values: last_hour, today, this_week, this_month, this_year\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/general-search-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"keyword\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"keyword\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/general-search-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"keyword\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/general-search-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/general-search-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/general-search-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/general-search-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/general-search-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/general-search-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/general-search-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "General search V2" + modelName: "YouTube General Search (Web V2, V2)" modelId: "youtube/web-v2/general-search-v2" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web-v2/general-search.md b/model-api-reference/platform-apis/youtube/web-v2/general-search.md index 537b0c83..88d9a8f4 100644 --- a/model-api-reference/platform-apis/youtube/web-v2/general-search.md +++ b/model-api-reference/platform-apis/youtube/web-v2/general-search.md @@ -1,11 +1,11 @@ --- title: "General search (raw data, recommend V2) API Reference" -description: "SandBase API operation youtube/web-v2/general-search." +description: "SandBase API reference for model youtube/web-v2/general-search. Call /v1/api/youtube/web-v2/general-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web-v2/general-search" -apiReferenceJson: "{\"title\":\"General search (raw data, recommend V2)\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/general-search\",\"description\":\"YouTube comprehensive search with multiple filter options for precise result filtering\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"content_type\",\"type\":\"string | null\",\"required\":false,\"description\":\"Content type filter\",\"constraints\":\"Allowed values: video, channel, playlist, movie\"},{\"name\":\"continuation_token\",\"type\":\"string | null\",\"required\":false,\"description\":\"Pagination token\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code affecting regional relevance\",\"default\":\"US\"},{\"name\":\"duration\",\"type\":\"string | null\",\"required\":false,\"description\":\"Duration filter\",\"constraints\":\"Allowed values: short, medium, long\"},{\"name\":\"feature\",\"type\":\"string | null\",\"required\":false,\"description\":\"Feature filter\",\"constraints\":\"Allowed values: live, 4k, hd, subtitles, creative_commons, 360, vr180, 3d, hdr, location, purchased\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"Language code (zh-CN for Chinese, en-US for English)\",\"default\":\"zh-CN\"},{\"name\":\"search_query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\",\"constraints\":\"Length: 0 to 200\"},{\"name\":\"sort_by\",\"type\":\"string | null\",\"required\":false,\"description\":\"Sort by\",\"constraints\":\"Allowed values: relevance, upload_date, view_count, rating\"},{\"name\":\"time_zone\",\"type\":\"string\",\"required\":false,\"description\":\"Time zone setting\",\"default\":\"America/Los_Angeles\"},{\"name\":\"upload_time\",\"type\":\"string | null\",\"required\":false,\"description\":\"Upload time filter\",\"constraints\":\"Allowed values: hour, today, week, month, year\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/general-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"search_query\\\": \\\"NASA\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"search_query\\\": \\\"NASA\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/general-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"search_query\\\": \\\"NASA\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/general-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/general-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/general-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/general-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/general-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/general-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/general-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"General search (raw data, recommend V2)\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/general-search\",\"description\":\"YouTube comprehensive search with multiple filter options for precise result filtering.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"content_type\",\"type\":\"string | null\",\"required\":false,\"description\":\"Content type filter\",\"constraints\":\"Allowed values: video, channel, playlist, movie\"},{\"name\":\"continuation_token\",\"type\":\"string | null\",\"required\":false,\"description\":\"Pagination token\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code affecting regional relevance\",\"default\":\"US\"},{\"name\":\"duration\",\"type\":\"string | null\",\"required\":false,\"description\":\"Duration filter\",\"constraints\":\"Allowed values: short, medium, long\"},{\"name\":\"feature\",\"type\":\"string | null\",\"required\":false,\"description\":\"Feature filter\",\"constraints\":\"Allowed values: live, 4k, hd, subtitles, creative_commons, 360, vr180, 3d, hdr, location, purchased\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"Language code (zh-CN for Chinese, en-US for English)\",\"default\":\"zh-CN\"},{\"name\":\"search_query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\",\"constraints\":\"Length: 0 to 200\"},{\"name\":\"sort_by\",\"type\":\"string | null\",\"required\":false,\"description\":\"Sort by\",\"constraints\":\"Allowed values: relevance, upload_date, view_count, rating\"},{\"name\":\"time_zone\",\"type\":\"string\",\"required\":false,\"description\":\"Time zone setting\",\"default\":\"America/Los_Angeles\"},{\"name\":\"upload_time\",\"type\":\"string | null\",\"required\":false,\"description\":\"Upload time filter\",\"constraints\":\"Allowed values: hour, today, week, month, year\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/general-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"search_query\\\": \\\"NASA\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"search_query\\\": \\\"NASA\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/general-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"search_query\\\": \\\"NASA\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/general-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/general-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/general-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/general-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/general-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/general-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/general-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: modelName: "General search (raw data, recommend V2)" modelId: "youtube/web-v2/general-search" diff --git a/model-api-reference/platform-apis/youtube/web-v2/post-comment-replies.md b/model-api-reference/platform-apis/youtube/web-v2/post-comment-replies.md index 39c40051..a254bbbb 100644 --- a/model-api-reference/platform-apis/youtube/web-v2/post-comment-replies.md +++ b/model-api-reference/platform-apis/youtube/web-v2/post-comment-replies.md @@ -1,13 +1,13 @@ --- -title: "Get post comment replies API Reference" -description: "SandBase API operation youtube/web-v2/post-comment-replies." +title: "YouTube Post Comment Replies API Reference" +description: "SandBase API reference for model youtube/web-v2/post-comment-replies. Call /v1/api/youtube/web-v2/post-comment-replies; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web-v2/post-comment-replies" -apiReferenceJson: "{\"title\":\"Get post comment replies\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/post-comment-replies\",\"description\":\"Get replies to a post comment (second-level comments)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":true,\"description\":\"Next page token (if more replies)\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code, default `\\\"US\\\"`\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"Language code, default `\\\"zh-CN\\\"`\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to format data, default `true`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/post-comment-replies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"continuation_token\\\": \\\"continuation_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"continuation_token\\\": \\\"continuation_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/post-comment-replies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"continuation_token\\\": \\\"continuation_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/post-comment-replies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/post-comment-replies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/post-comment-replies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/post-comment-replies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/post-comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/post-comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/post-comment-replies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Post Comment Replies\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/post-comment-replies\",\"description\":\"Returns second-level comment replies for a YouTube post. Supports pagination using continuation tokens, along with optional country and language localization settings.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":true,\"description\":\"Next page token (if more replies)\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code, default `\\\"US\\\"`\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"Language code, default `\\\"zh-CN\\\"`\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to format data, default `true`\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/post-comment-replies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"continuation_token\\\": \\\"continuation_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"continuation_token\\\": \\\"continuation_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/post-comment-replies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"continuation_token\\\": \\\"continuation_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/post-comment-replies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/post-comment-replies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/post-comment-replies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/post-comment-replies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/post-comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/post-comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/post-comment-replies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get post comment replies" + modelName: "YouTube Post Comment Replies" modelId: "youtube/web-v2/post-comment-replies" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web-v2/post-comments.md b/model-api-reference/platform-apis/youtube/web-v2/post-comments.md index 0b02530a..facf2312 100644 --- a/model-api-reference/platform-apis/youtube/web-v2/post-comments.md +++ b/model-api-reference/platform-apis/youtube/web-v2/post-comments.md @@ -1,13 +1,13 @@ --- -title: "Get post comments API Reference — YouTube Web V2 / Post Comments" -description: "SandBase API operation youtube/web-v2/post-comments." +title: "YouTube Community Post Comments API Reference" +description: "SandBase API reference for model youtube/web-v2/post-comments. Call /v1/api/youtube/web-v2/post-comments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web-v2/post-comments" -apiReferenceJson: "{\"title\":\"Get post comments\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/post-comments\",\"description\":\"Get YouTube post (community post) comments Supports pagination for more comments\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":false,\"description\":\"Next page token\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code, default `\\\"US\\\"`\",\"default\":\"US\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"Language code, default `\\\"zh-CN\\\"`\",\"default\":\"zh-CN\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to format data, default `true`\",\"default\":\"true\"},{\"name\":\"post_id\",\"type\":\"string\",\"required\":false,\"description\":\"Post ID, required for first request\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/post-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"youtube/web-v2/post-comments\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"youtube/web-v2/post-comments\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/post-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"youtube/web-v2/post-comments\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/post-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/post-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/post-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/post-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/post-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Community Post Comments\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/post-comments\",\"description\":\"Returns comments from a YouTube community post with support for pagination, formatted output, and regional localization settings.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":false,\"description\":\"Next page token\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code, default `\\\"US\\\"`\",\"default\":\"US\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"Language code, default `\\\"zh-CN\\\"`\",\"default\":\"zh-CN\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to format data, default `true`\",\"default\":\"true\"},{\"name\":\"post_id\",\"type\":\"string\",\"required\":false,\"description\":\"Post ID, required for first request\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/post-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/post-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/post-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/post-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/post-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/post-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/post-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/post-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get post comments" + modelName: "YouTube Community Post Comments" modelId: "youtube/web-v2/post-comments" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web-v2/post-detail.md b/model-api-reference/platform-apis/youtube/web-v2/post-detail.md index a222b2bc..1d0a3d36 100644 --- a/model-api-reference/platform-apis/youtube/web-v2/post-detail.md +++ b/model-api-reference/platform-apis/youtube/web-v2/post-detail.md @@ -1,13 +1,13 @@ --- -title: "Get post detail API Reference — YouTube Web V2 / Post Detail API" -description: "SandBase API operation youtube/web-v2/post-detail." +title: "YouTube Community Post Details API Reference" +description: "SandBase API reference for model youtube/web-v2/post-detail. Call /v1/api/youtube/web-v2/post-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web-v2/post-detail" -apiReferenceJson: "{\"title\":\"Get post detail\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/post-detail\",\"description\":\"Get YouTube post (community post) detail information Includes post content, attachments, engagement data\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code, default `\\\"US\\\"`\",\"default\":\"US\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"Language code, default `\\\"zh-CN\\\"`\",\"default\":\"zh-CN\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to format data, default `true`\",\"default\":\"true\"},{\"name\":\"post_id\",\"type\":\"string\",\"required\":true,\"description\":\"**Purpose**: Post ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/post-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"post_id\\\": \\\"UgkxiCSRfD6g7SPlWGPDa3vbP7aIsytXRkvy\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"post_id\\\": \\\"UgkxiCSRfD6g7SPlWGPDa3vbP7aIsytXRkvy\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/post-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"post_id\\\": \\\"UgkxiCSRfD6g7SPlWGPDa3vbP7aIsytXRkvy\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/post-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/post-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/post-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/post-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/post-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Community Post Details\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/post-detail\",\"description\":\"Returns detailed information for a YouTube community post, including post text, media attachments, and engagement metrics. Filter results by post ID, language, and country.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code, default `\\\"US\\\"`\",\"default\":\"US\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"Language code, default `\\\"zh-CN\\\"`\",\"default\":\"zh-CN\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to format data, default `true`\",\"default\":\"true\"},{\"name\":\"post_id\",\"type\":\"string\",\"required\":true,\"description\":\"**Purpose**: Post ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/post-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"post_id\\\": \\\"UgkxiCSRfD6g7SPlWGPDa3vbP7aIsytXRkvy\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"post_id\\\": \\\"UgkxiCSRfD6g7SPlWGPDa3vbP7aIsytXRkvy\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/post-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"post_id\\\": \\\"UgkxiCSRfD6g7SPlWGPDa3vbP7aIsytXRkvy\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/post-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/post-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/post-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/post-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/post-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/post-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get post detail" + modelName: "YouTube Community Post Details" modelId: "youtube/web-v2/post-detail" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web-v2/related-videos.md b/model-api-reference/platform-apis/youtube/web-v2/related-videos.md index 4cdcc4cc..b786cd51 100644 --- a/model-api-reference/platform-apis/youtube/web-v2/related-videos.md +++ b/model-api-reference/platform-apis/youtube/web-v2/related-videos.md @@ -1,13 +1,13 @@ --- -title: "Get related videos API Reference — YouTube V2 / Related Videos" -description: "SandBase API operation youtube/web-v2/related-videos." +title: "YouTube Related Videos (Web V2) API Reference" +description: "SandBase API reference for model youtube/web-v2/related-videos. Call /v1/api/youtube/web-v2/related-videos; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web-v2/related-videos" -apiReferenceJson: "{\"title\":\"Get related videos\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/related-videos\",\"description\":\"Get YouTube video's related content recommendations (recommended videos list) Similar to the related videos shown on the right side of video playback page Returns all recommended videos at once (typically 20-30 videos)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to format data (default true)\",\"default\":\"true\"},{\"name\":\"video_id\",\"type\":\"string\",\"required\":false,\"description\":\"Video ID (recommended)\"},{\"name\":\"video_url\",\"type\":\"string\",\"required\":false,\"description\":\"Full video URL (optional, ignored if video_id is provided)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/related-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"youtube/web-v2/related-videos\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"youtube/web-v2/related-videos\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/related-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"youtube/web-v2/related-videos\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/related-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/related-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/related-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/related-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/related-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/related-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/related-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Related Videos (Web V2)\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/related-videos\",\"description\":\"Returns a list of related videos for a given YouTube video by ID or URL. Includes an option to format the returned output structure.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to format data (default true)\",\"default\":\"true\"},{\"name\":\"video_id\",\"type\":\"string\",\"required\":false,\"description\":\"Video ID (recommended)\"},{\"name\":\"video_url\",\"type\":\"string\",\"required\":false,\"description\":\"Full video URL (optional, ignored if video_id is provided)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/related-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/related-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/related-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/related-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/related-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/related-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/related-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/related-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/related-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get related videos" + modelName: "YouTube Related Videos (Web V2)" modelId: "youtube/web-v2/related-videos" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web-v2/search-channels.md b/model-api-reference/platform-apis/youtube/web-v2/search-channels.md index 1205ab4b..4ddbced6 100644 --- a/model-api-reference/platform-apis/youtube/web-v2/search-channels.md +++ b/model-api-reference/platform-apis/youtube/web-v2/search-channels.md @@ -1,13 +1,13 @@ --- -title: "Search channels API Reference" -description: "SandBase API operation youtube/web-v2/search-channels." +title: "YouTube Channel Search API Reference" +description: "SandBase API reference for model youtube/web-v2/search-channels. Call /v1/api/youtube/web-v2/search-channels; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web-v2/search-channels" -apiReferenceJson: "{\"title\":\"Search channels\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/search-channels\",\"description\":\"Search YouTube channels Only returns channel-type search results (filters out videos, playlists, etc.) Supports pagination to get more channels\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token (optional, for next page)\"},{\"name\":\"keyword\",\"type\":\"string | null\",\"required\":false,\"description\":\"Search keyword (required for first request)\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to format data (default true)\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/search-channels \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/search-channels\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/search-channels\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/search-channels\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/search-channels\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/search-channels\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/search-channels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/search-channels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/search-channels\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Channel Search\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/search-channels\",\"description\":\"Searches YouTube channels by query terms and returns channel listings. Supports paginated results using continuation tokens and optional data formatting.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination token (optional, for next page)\"},{\"name\":\"keyword\",\"type\":\"string | null\",\"required\":false,\"description\":\"Search keyword (required for first request)\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to format data (default true)\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/search-channels \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"keyword\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"keyword\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/search-channels\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"keyword\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/search-channels\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/search-channels\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/search-channels\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/search-channels\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/search-channels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/search-channels\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/search-channels\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search channels" + modelName: "YouTube Channel Search" modelId: "youtube/web-v2/search-channels" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web-v2/search-suggestions.md b/model-api-reference/platform-apis/youtube/web-v2/search-suggestions.md index 05f227ef..d766571d 100644 --- a/model-api-reference/platform-apis/youtube/web-v2/search-suggestions.md +++ b/model-api-reference/platform-apis/youtube/web-v2/search-suggestions.md @@ -1,13 +1,13 @@ --- -title: "Get search suggestions API Reference" -description: "SandBase API operation youtube/web-v2/search-suggestions." +title: "YouTube Search Suggestions API Reference" +description: "SandBase API reference for model youtube/web-v2/search-suggestions. Call /v1/api/youtube/web-v2/search-suggestions; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web-v2/search-suggestions" -apiReferenceJson: "{\"title\":\"Get search suggestions\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/search-suggestions\",\"description\":\"Get YouTube search suggestions (autocomplete) Similar to suggestions shown when typing in YouTube search box\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\",\"constraints\":\"Length: 0 to 200\"},{\"name\":\"language\",\"type\":\"string\",\"required\":false,\"description\":\"Language code (optional, default en)\",\"default\":\"en\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code (optional, default US)\",\"default\":\"US\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/search-suggestions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/search-suggestions\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/search-suggestions\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/search-suggestions\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/search-suggestions\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/search-suggestions\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/search-suggestions\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/search-suggestions\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/search-suggestions\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Search Suggestions\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/search-suggestions\",\"description\":\"Returns YouTube autocomplete search suggestions for a given keyword query. Supports optional geographic region and language filtering.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword (required)\",\"constraints\":\"Length: 0 to 200\"},{\"name\":\"language\",\"type\":\"string\",\"required\":false,\"description\":\"Language code (optional, default en)\",\"default\":\"en\"},{\"name\":\"region\",\"type\":\"string\",\"required\":false,\"description\":\"Region code (optional, default US)\",\"default\":\"US\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/search-suggestions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/search-suggestions\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/search-suggestions\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/search-suggestions\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/search-suggestions\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/search-suggestions\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/search-suggestions\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/search-suggestions\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/search-suggestions\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get search suggestions" + modelName: "YouTube Search Suggestions" modelId: "youtube/web-v2/search-suggestions" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web-v2/shorts-search-v2.md b/model-api-reference/platform-apis/youtube/web-v2/shorts-search-v2.md index d9ed6d87..0bdbc084 100644 --- a/model-api-reference/platform-apis/youtube/web-v2/shorts-search-v2.md +++ b/model-api-reference/platform-apis/youtube/web-v2/shorts-search-v2.md @@ -1,13 +1,13 @@ --- -title: "Shorts search V2 API Reference" -description: "SandBase API operation youtube/web-v2/shorts-search-v2." +title: "YouTube Shorts Search (V2) API Reference" +description: "SandBase API reference for model youtube/web-v2/shorts-search-v2. Call /v1/api/youtube/web-v2/shorts-search-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web-v2/shorts-search-v2" -apiReferenceJson: "{\"title\":\"Shorts search V2\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/shorts-search-v2\",\"description\":\"Search specifically for YouTube Shorts Returns cleaned structured data (compared to get_shorts_search which returns raw data) Automatically filters non-Shorts content, returns only short videos Supports pagination\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"continuation_token\",\"type\":\"string | null\",\"required\":false,\"description\":\"Pagination token (from previous response)\"},{\"name\":\"keyword\",\"type\":\"string | null\",\"required\":false,\"description\":\"Search keyword (required for first request)\"},{\"name\":\"sort_by\",\"type\":\"string | null\",\"required\":false,\"description\":\"Sort by - relevance/upload_date/view_count/rating\",\"constraints\":\"Allowed values: relevance, upload_date, view_count, rating\"},{\"name\":\"upload_date\",\"type\":\"string | null\",\"required\":false,\"description\":\"Upload date filter - last_hour/today/this_week/this_month/this_year\",\"constraints\":\"Allowed values: last_hour, today, this_week, this_month, this_year\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/shorts-search-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/shorts-search-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"keyword\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/shorts-search-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/shorts-search-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/shorts-search-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/shorts-search-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/shorts-search-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/shorts-search-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/shorts-search-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Shorts Search (V2)\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/shorts-search-v2\",\"description\":\"Searches for YouTube Shorts matching a query keyword. Results can be filtered by upload date and sorted by relevance, upload date, view count, or rating.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"continuation_token\",\"type\":\"string | null\",\"required\":false,\"description\":\"Pagination token (from previous response)\"},{\"name\":\"keyword\",\"type\":\"string | null\",\"required\":false,\"description\":\"Search keyword (required for first request)\"},{\"name\":\"sort_by\",\"type\":\"string | null\",\"required\":false,\"description\":\"Sort by - relevance/upload_date/view_count/rating\",\"constraints\":\"Allowed values: relevance, upload_date, view_count, rating\"},{\"name\":\"upload_date\",\"type\":\"string | null\",\"required\":false,\"description\":\"Upload date filter - last_hour/today/this_week/this_month/this_year\",\"constraints\":\"Allowed values: last_hour, today, this_week, this_month, this_year\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/shorts-search-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"keyword\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"keyword\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/shorts-search-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"keyword\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/shorts-search-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/shorts-search-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/shorts-search-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/shorts-search-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/shorts-search-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/shorts-search-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/shorts-search-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Shorts search V2" + modelName: "YouTube Shorts Search (V2)" modelId: "youtube/web-v2/shorts-search-v2" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web-v2/shorts-search.md b/model-api-reference/platform-apis/youtube/web-v2/shorts-search.md index 3ae40db5..e504a154 100644 --- a/model-api-reference/platform-apis/youtube/web-v2/shorts-search.md +++ b/model-api-reference/platform-apis/youtube/web-v2/shorts-search.md @@ -1,11 +1,11 @@ --- title: "Shorts search (raw data, recommend V2) API Reference" -description: "SandBase API operation youtube/web-v2/shorts-search." +description: "SandBase API reference for model youtube/web-v2/shorts-search. Call /v1/api/youtube/web-v2/shorts-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web-v2/shorts-search" -apiReferenceJson: "{\"title\":\"Shorts search (raw data, recommend V2)\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/shorts-search\",\"description\":\"YouTube Shorts specialized search using native YouTube API\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"continuation_token\",\"type\":\"string | null\",\"required\":false,\"description\":\"Pagination token\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code affecting regional relevance\",\"default\":\"US\"},{\"name\":\"filter_mixed_content\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to filter long videos from mixed content (default true)\",\"default\":\"true\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"Language code (zh-CN for Chinese, en-US for English)\",\"default\":\"en-US\"},{\"name\":\"search_query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\",\"constraints\":\"Length: 0 to 200\"},{\"name\":\"sort_by\",\"type\":\"string | null\",\"required\":false,\"description\":\"Sort by for Shorts\",\"constraints\":\"Allowed values: relevance, upload_date, view_count, rating\"},{\"name\":\"time_zone\",\"type\":\"string\",\"required\":false,\"description\":\"Time zone (e.g., America/Los_Angeles, Asia/Shanghai)\",\"default\":\"America/Los_Angeles\"},{\"name\":\"upload_time\",\"type\":\"string | null\",\"required\":false,\"description\":\"Upload time filter for Shorts\",\"constraints\":\"Allowed values: hour, today, week, month, year\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/shorts-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"search_query\\\": \\\"NASA\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"search_query\\\": \\\"NASA\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/shorts-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"search_query\\\": \\\"NASA\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/shorts-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/shorts-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/shorts-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/shorts-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/shorts-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/shorts-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/shorts-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Shorts search (raw data, recommend V2)\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/shorts-search\",\"description\":\"YouTube Shorts specialized search using native YouTube API.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"continuation_token\",\"type\":\"string | null\",\"required\":false,\"description\":\"Pagination token\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code affecting regional relevance\",\"default\":\"US\"},{\"name\":\"filter_mixed_content\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to filter long videos from mixed content (default true)\",\"default\":\"true\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"Language code (zh-CN for Chinese, en-US for English)\",\"default\":\"en-US\"},{\"name\":\"search_query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword\",\"constraints\":\"Length: 0 to 200\"},{\"name\":\"sort_by\",\"type\":\"string | null\",\"required\":false,\"description\":\"Sort by for Shorts\",\"constraints\":\"Allowed values: relevance, upload_date, view_count, rating\"},{\"name\":\"time_zone\",\"type\":\"string\",\"required\":false,\"description\":\"Time zone (e.g., America/Los_Angeles, Asia/Shanghai)\",\"default\":\"America/Los_Angeles\"},{\"name\":\"upload_time\",\"type\":\"string | null\",\"required\":false,\"description\":\"Upload time filter for Shorts\",\"constraints\":\"Allowed values: hour, today, week, month, year\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/shorts-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"search_query\\\": \\\"NASA\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"search_query\\\": \\\"NASA\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/shorts-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"search_query\\\": \\\"NASA\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/shorts-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/shorts-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/shorts-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/shorts-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/shorts-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/shorts-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/shorts-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: modelName: "Shorts search (raw data, recommend V2)" modelId: "youtube/web-v2/shorts-search" diff --git a/model-api-reference/platform-apis/youtube/web-v2/signed-stream-url.md b/model-api-reference/platform-apis/youtube/web-v2/signed-stream-url.md index 5a8d7de5..03370363 100644 --- a/model-api-reference/platform-apis/youtube/web-v2/signed-stream-url.md +++ b/model-api-reference/platform-apis/youtube/web-v2/signed-stream-url.md @@ -1,13 +1,13 @@ --- -title: "Get signed video stream URL API Reference" -description: "SandBase API operation youtube/web-v2/signed-stream-url." +title: "YouTube Signed Video Stream URL API Reference" +description: "SandBase API reference for model youtube/web-v2/signed-stream-url. Call /v1/api/youtube/web-v2/signed-stream-url; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web-v2/signed-stream-url" -apiReferenceJson: "{\"title\":\"Get signed video stream URL\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/signed-stream-url\",\"description\":\"Get signed playback URL for specific itag (ready to play) Use with get_video_streams endpoint: first get all formats, then select itag to get playback URL\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"itag\",\"type\":\"integer\",\"required\":true,\"description\":\"Format identifier, selected from formats list returned by get_video_streams\"},{\"name\":\"video_id\",\"type\":\"string\",\"required\":false,\"description\":\"Video ID (recommended)\"},{\"name\":\"video_url\",\"type\":\"string\",\"required\":false,\"description\":\"Full video URL (optional)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/signed-stream-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"itag\\\": 18\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"itag\\\": 18\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/signed-stream-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"itag\\\": 18\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/signed-stream-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/signed-stream-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/signed-stream-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/signed-stream-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/signed-stream-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/signed-stream-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/signed-stream-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Signed Video Stream URL\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/signed-stream-url\",\"description\":\"Returns a signed playback stream URL for a specific YouTube video format. Requires a format itag identifier alongside either a video ID or full video link.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"itag\",\"type\":\"integer\",\"required\":true,\"description\":\"Format identifier, selected from formats list returned by get_video_streams\"},{\"name\":\"video_id\",\"type\":\"string\",\"required\":false,\"description\":\"Video ID (recommended)\"},{\"name\":\"video_url\",\"type\":\"string\",\"required\":false,\"description\":\"Full video URL (optional)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/signed-stream-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"itag\\\": 18\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"itag\\\": 18\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/signed-stream-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"itag\\\": 18\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/signed-stream-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/signed-stream-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/signed-stream-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/signed-stream-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/signed-stream-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/signed-stream-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/signed-stream-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get signed video stream URL" + modelName: "YouTube Signed Video Stream URL" modelId: "youtube/web-v2/signed-stream-url" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web-v2/video-captions-result.md b/model-api-reference/platform-apis/youtube/web-v2/video-captions-result.md index 14369def..006e1e4d 100644 --- a/model-api-reference/platform-apis/youtube/web-v2/video-captions-result.md +++ b/model-api-reference/platform-apis/youtube/web-v2/video-captions-result.md @@ -1,13 +1,13 @@ --- -title: "Get video captions async job result API Reference" -description: "SandBase API operation youtube/web-v2/video-captions-result." +title: "YouTube Video Captions Job Result API Reference" +description: "SandBase API reference for model youtube/web-v2/video-captions-result. Call /v1/api/youtube/web-v2/video-captions-result; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web-v2/video-captions-result" -apiReferenceJson: "{\"title\":\"Get video captions async job result\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/video-captions-result\",\"description\":\"Get the result of an asynchronous caption job For large videos, `/get_video_captions` returns `status=\\\"processing\\\"` with a `job_id`; use that `job_id` here to retrieve the final captions Single-shot, non-blocking query; poll it until the job completes\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"format\",\"type\":\"string\",\"required\":false,\"description\":\"Caption format (applies only when the job is completed)\",\"constraints\":\"Allowed values: srt, xml, json3, txt\"},{\"name\":\"job_id\",\"type\":\"string\",\"required\":true,\"description\":\"Async job ID (returned by `/get_video_captions`)\",\"constraints\":\"Length: 8 to 128. Pattern: ^[A-Za-z0-9_-]+$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/video-captions-result \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"job_id\\\": \\\"job_idxx\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"job_id\\\": \\\"job_idxx\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-captions-result\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"job_id\\\": \\\"job_idxx\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-captions-result\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/video-captions-result\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/video-captions-result\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/video-captions-result\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/video-captions-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/video-captions-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/video-captions-result\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Video Captions Job Result\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/video-captions-result\",\"description\":\"Returns the status and finished captions for an asynchronous video caption request by job ID. Supports output formats including SRT, XML, JSON3, and TXT once completed.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"format\",\"type\":\"string\",\"required\":false,\"description\":\"Caption format (applies only when the job is completed)\",\"constraints\":\"Allowed values: srt, xml, json3, txt\"},{\"name\":\"job_id\",\"type\":\"string\",\"required\":true,\"description\":\"Async job ID (returned by `/get_video_captions`)\",\"constraints\":\"Length: 8 to 128. Pattern: ^[A-Za-z0-9_-]+$\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/video-captions-result \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"job_id\\\": \\\"job_idxx\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"job_id\\\": \\\"job_idxx\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-captions-result\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"job_id\\\": \\\"job_idxx\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-captions-result\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/video-captions-result\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/video-captions-result\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/video-captions-result\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/video-captions-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/video-captions-result\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/video-captions-result\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video captions async job result" + modelName: "YouTube Video Captions Job Result" modelId: "youtube/web-v2/video-captions-result" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web-v2/video-captions.md b/model-api-reference/platform-apis/youtube/web-v2/video-captions.md index 83f78954..dbe5a9ce 100644 --- a/model-api-reference/platform-apis/youtube/web-v2/video-captions.md +++ b/model-api-reference/platform-apis/youtube/web-v2/video-captions.md @@ -1,13 +1,13 @@ --- -title: "Get video captions API Reference" -description: "SandBase API operation youtube/web-v2/video-captions." +title: "YouTube Video Captions API Reference" +description: "YouTube Video Captions API reference for SandBase. Use model youtube/web-v2/video-captions with /v1/api/youtube/web-v2/video-captions; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web-v2/video-captions" -apiReferenceJson: "{\"title\":\"Get video captions\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/video-captions\",\"description\":\"Get video caption list or caption content for a specific language Supports multiple caption format outputs\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"format\",\"type\":\"string\",\"required\":false,\"description\":\"Caption format\",\"default\":\"srt\",\"constraints\":\"Allowed values: srt, xml, json3, txt\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"Language code (e.g. en, zh-Hans, a.en), returns available caption list if empty\"},{\"name\":\"video_id\",\"type\":\"string\",\"required\":false,\"description\":\"Video ID (recommended)\"},{\"name\":\"video_url\",\"type\":\"string\",\"required\":false,\"description\":\"Full video URL (optional)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/video-captions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"youtube/web-v2/video-captions\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"youtube/web-v2/video-captions\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-captions\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"youtube/web-v2/video-captions\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-captions\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/video-captions\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/video-captions\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/video-captions\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/video-captions\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/video-captions\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/video-captions\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Video Captions\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/video-captions\",\"description\":\"Returns available video caption tracks or transcripts in multiple formats, filtered by video identifier and language code.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"format\",\"type\":\"string\",\"required\":false,\"description\":\"Caption format\",\"default\":\"srt\",\"constraints\":\"Allowed values: srt, xml, json3, txt\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"Language code (e.g. en, zh-Hans, a.en), returns available caption list if empty\"},{\"name\":\"video_id\",\"type\":\"string\",\"required\":false,\"description\":\"Video ID (recommended)\"},{\"name\":\"video_url\",\"type\":\"string\",\"required\":false,\"description\":\"Full video URL (optional)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/video-captions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-captions\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-captions\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/video-captions\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/video-captions\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/video-captions\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/video-captions\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/video-captions\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/video-captions\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video captions" + modelName: "YouTube Video Captions" modelId: "youtube/web-v2/video-captions" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web-v2/video-comment-replies.md b/model-api-reference/platform-apis/youtube/web-v2/video-comment-replies.md index 43a33c2c..afb43824 100644 --- a/model-api-reference/platform-apis/youtube/web-v2/video-comment-replies.md +++ b/model-api-reference/platform-apis/youtube/web-v2/video-comment-replies.md @@ -1,13 +1,13 @@ --- -title: "Get video sub comments API Reference" -description: "SandBase API operation youtube/web-v2/video-comment-replies." +title: "YouTube Video Comment Replies API Reference" +description: "SandBase API reference for model youtube/web-v2/video-comment-replies. Call /v1/api/youtube/web-v2/video-comment-replies; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web-v2/video-comment-replies" -apiReferenceJson: "{\"title\":\"Get video sub comments\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/video-comment-replies\",\"description\":\"Get video second-level comment replies\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":true,\"description\":\"**Purpose**: Reply continuation token from first-level comment\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Region code\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Language preference for comments\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"**Purpose**: Whether to return cleaned simplified data\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/video-comment-replies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"continuation_token\\\": \\\"continuation_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"continuation_token\\\": \\\"continuation_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-comment-replies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"continuation_token\\\": \\\"continuation_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-comment-replies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/video-comment-replies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/video-comment-replies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/video-comment-replies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/video-comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/video-comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/video-comment-replies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Video Comment Replies\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/video-comment-replies\",\"description\":\"Returns second-level replies for a YouTube video comment using a continuation token, with optional filters for region, language, and formatted output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":true,\"description\":\"**Purpose**: Reply continuation token from first-level comment\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Region code\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Language preference for comments\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"**Purpose**: Whether to return cleaned simplified data\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/video-comment-replies \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"continuation_token\\\": \\\"continuation_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"continuation_token\\\": \\\"continuation_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-comment-replies\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"continuation_token\\\": \\\"continuation_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-comment-replies\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/video-comment-replies\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/video-comment-replies\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/video-comment-replies\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/video-comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/video-comment-replies\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/video-comment-replies\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video sub comments" + modelName: "YouTube Video Comment Replies" modelId: "youtube/web-v2/video-comment-replies" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web-v2/video-comments.md b/model-api-reference/platform-apis/youtube/web-v2/video-comments.md index 7bd1f570..03e0e6ba 100644 --- a/model-api-reference/platform-apis/youtube/web-v2/video-comments.md +++ b/model-api-reference/platform-apis/youtube/web-v2/video-comments.md @@ -1,13 +1,13 @@ --- -title: "Get video comments API Reference — YouTube V2 / Video Comments" -description: "SandBase API operation youtube/web-v2/video-comments." +title: "YouTube Video Comments API Reference" +description: "YouTube Video Comments API reference for SandBase. Use model youtube/web-v2/video-comments with /v1/api/youtube/web-v2/video-comments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web-v2/video-comments" -apiReferenceJson: "{\"title\":\"Get video comments\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/video-comments\",\"description\":\"Get YouTube video first-level comments\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Pagination token for next page\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Set region code\",\"default\":\"US\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Set language preference for comments\",\"default\":\"zh-CN\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"**Purpose**: Whether to return cleaned simplified data\",\"default\":\"true\"},{\"name\":\"sort_by\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Comment sorting method\",\"constraints\":\"Allowed values: top, newest\"},{\"name\":\"video_id\",\"type\":\"string\",\"required\":true,\"description\":\"**Purpose**: Video ID\",\"constraints\":\"Length: 11 to 11\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/video-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"video_id\\\": \\\"dQw4w9WgXcQ\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"video_id\\\": \\\"dQw4w9WgXcQ\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"video_id\\\": \\\"dQw4w9WgXcQ\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/video-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/video-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/video-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/video-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Video Comments\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/video-comments\",\"description\":\"Retrieves top-level comments for a YouTube video specified by video ID. Supports sorting by top or available, regional localization, and pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Pagination token for next page\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Set region code\",\"default\":\"US\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Set language preference for comments\",\"default\":\"zh-CN\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"**Purpose**: Whether to return cleaned simplified data\",\"default\":\"true\"},{\"name\":\"sort_by\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Comment sorting method\",\"constraints\":\"Allowed values: top, newest\"},{\"name\":\"video_id\",\"type\":\"string\",\"required\":true,\"description\":\"**Purpose**: Video ID\",\"constraints\":\"Length: 11 to 11\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/video-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"video_id\\\": \\\"dQw4w9WgXcQ\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"video_id\\\": \\\"dQw4w9WgXcQ\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"video_id\\\": \\\"dQw4w9WgXcQ\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/video-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/video-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/video-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/video-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/video-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video comments" + modelName: "YouTube Video Comments" modelId: "youtube/web-v2/video-comments" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web-v2/video-info-v2.md b/model-api-reference/platform-apis/youtube/web-v2/video-info-v2.md index 45e0b443..1d27189c 100644 --- a/model-api-reference/platform-apis/youtube/web-v2/video-info-v2.md +++ b/model-api-reference/platform-apis/youtube/web-v2/video-info-v2.md @@ -1,13 +1,13 @@ --- -title: "Get video information V2 — hvnu3f API" -description: "SandBase API operation youtube/web-v2/video-info-v2." +title: "YouTube Video Information (V2) API Reference" +description: "SandBase API reference for model youtube/web-v2/video-info-v2. Call /v1/api/youtube/web-v2/video-info-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web-v2/video-info-v2" -apiReferenceJson: "{\"title\":\"Get video information V2\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/video-info-v2\",\"description\":\"Fetch YouTube video details via an alternative extraction path (more stable field extraction) Use when v1 `/get_video_info` returns empty title/author (age-gated, unlisted, music videos, etc.)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to return cleaned payload. Default `True`\",\"default\":\"true\"},{\"name\":\"video_id\",\"type\":\"string\",\"required\":false,\"description\":\"Video ID, e.g. `\\\"dQw4w9WgXcQ\\\"`\"},{\"name\":\"video_url\",\"type\":\"string\",\"required\":false,\"description\":\"Full video URL (ignored if video_id provided)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/video-info-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"youtube/web-v2/video-info-v2\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"youtube/web-v2/video-info-v2\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-info-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"youtube/web-v2/video-info-v2\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-info-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/video-info-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/video-info-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/video-info-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/video-info-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/video-info-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/video-info-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Video Information (V2)\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/video-info-v2\",\"description\":\"Returns comprehensive details for a YouTube video identified by its ID or direct URL, with an option to retrieve a cleaned payload format.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to return cleaned payload. Default `True`\",\"default\":\"true\"},{\"name\":\"video_id\",\"type\":\"string\",\"required\":false,\"description\":\"Video ID, e.g. `\\\"dQw4w9WgXcQ\\\"`\"},{\"name\":\"video_url\",\"type\":\"string\",\"required\":false,\"description\":\"Full video URL (ignored if video_id provided)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/video-info-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-info-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-info-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/video-info-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/video-info-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/video-info-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/video-info-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/video-info-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/video-info-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video information V2" + modelName: "YouTube Video Information (V2)" modelId: "youtube/web-v2/video-info-v2" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web-v2/video-info.md b/model-api-reference/platform-apis/youtube/web-v2/video-info.md index 8b470933..f4553f2d 100644 --- a/model-api-reference/platform-apis/youtube/web-v2/video-info.md +++ b/model-api-reference/platform-apis/youtube/web-v2/video-info.md @@ -1,13 +1,13 @@ --- -title: "Get video information API Reference" -description: "SandBase API operation youtube/web-v2/video-info." +title: "YouTube Video Information API Reference" +description: "YouTube Video Information API reference for SandBase. Use model youtube/web-v2/video-info with /v1/api/youtube/web-v2/video-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web-v2/video-info" -apiReferenceJson: "{\"title\":\"Get video information\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/video-info\",\"description\":\"Get YouTube video details Returns raw complete data (includes playerResponse and initialData)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Set language preference\",\"default\":\"zh-CN\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"true\"},{\"name\":\"video_id\",\"type\":\"string\",\"required\":true,\"description\":\"**Purpose**: Video ID\",\"constraints\":\"Length: 11 to 11\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/video-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"video_id\\\": \\\"dQw4w9WgXcQ\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"video_id\\\": \\\"dQw4w9WgXcQ\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"video_id\\\": \\\"dQw4w9WgXcQ\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/video-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/video-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/video-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/video-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/video-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/video-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Video Information\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/video-info\",\"description\":\"Returns detailed video information and caption tracks for a specified YouTube video ID. Supports optional parameters to format output data and set language preferences.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"**Purpose**: Set language preference\",\"default\":\"zh-CN\"},{\"name\":\"need_format\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to clean and format the data\",\"default\":\"true\"},{\"name\":\"video_id\",\"type\":\"string\",\"required\":true,\"description\":\"**Purpose**: Video ID\",\"constraints\":\"Length: 11 to 11\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/video-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"video_id\\\": \\\"dQw4w9WgXcQ\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"video_id\\\": \\\"dQw4w9WgXcQ\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"video_id\\\": \\\"dQw4w9WgXcQ\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/video-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/video-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/video-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/video-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/video-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/video-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video information" + modelName: "YouTube Video Information" modelId: "youtube/web-v2/video-info" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web-v2/video-streams-v2.md b/model-api-reference/platform-apis/youtube/web-v2/video-streams-v2.md index 50979b10..eb67b701 100644 --- a/model-api-reference/platform-apis/youtube/web-v2/video-streams-v2.md +++ b/model-api-reference/platform-apis/youtube/web-v2/video-streams-v2.md @@ -1,13 +1,13 @@ --- -title: "Get video streams info V2 API Reference" -description: "SandBase API operation youtube/web-v2/video-streams-v2." +title: "YouTube Video Streams (V2) API Reference" +description: "SandBase API reference for model youtube/web-v2/video-streams-v2. Call /v1/api/youtube/web-v2/video-streams-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web-v2/video-streams-v2" -apiReferenceJson: "{\"title\":\"Get video streams info V2\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/video-streams-v2\",\"description\":\"Get all quality format information and playback URLs for YouTube video Returns standard formats (merged audio/video) and adaptive formats (separate audio/video) Suitable for scenarios that need to display all quality options\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"video_id\",\"type\":\"string\",\"required\":false,\"description\":\"Video ID (recommended)\"},{\"name\":\"video_url\",\"type\":\"string\",\"required\":false,\"description\":\"Full video URL (optional, ignored if video_id is provided)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/video-streams-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"youtube/web-v2/video-streams-v2\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"youtube/web-v2/video-streams-v2\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-streams-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"youtube/web-v2/video-streams-v2\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-streams-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/video-streams-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/video-streams-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/video-streams-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/video-streams-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/video-streams-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/video-streams-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Video Streams (V2)\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/video-streams-v2\",\"description\":\"Retrieves stream information and playback details for a YouTube video. Queries data using either a video ID or a full video URL.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"video_id\",\"type\":\"string\",\"required\":false,\"description\":\"Video ID (recommended)\"},{\"name\":\"video_url\",\"type\":\"string\",\"required\":false,\"description\":\"Full video URL (optional, ignored if video_id is provided)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/video-streams-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-streams-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-streams-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/video-streams-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/video-streams-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/video-streams-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/video-streams-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/video-streams-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/video-streams-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video streams info V2" + modelName: "YouTube Video Streams (V2)" modelId: "youtube/web-v2/video-streams-v2" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web-v2/video-streams.md b/model-api-reference/platform-apis/youtube/web-v2/video-streams.md index 5d28e6fe..19354249 100644 --- a/model-api-reference/platform-apis/youtube/web-v2/video-streams.md +++ b/model-api-reference/platform-apis/youtube/web-v2/video-streams.md @@ -1,13 +1,13 @@ --- -title: "Get video streams info API Reference" -description: "SandBase API operation youtube/web-v2/video-streams." +title: "YouTube Video Streams API Reference" +description: "YouTube Video Streams API reference for SandBase. Use model youtube/web-v2/video-streams with /v1/api/youtube/web-v2/video-streams; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web-v2/video-streams" -apiReferenceJson: "{\"title\":\"Get video streams info\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/video-streams\",\"description\":\"Get all quality format information for YouTube video Returns standard formats (merged audio/video) and adaptive formats (separate audio/video)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"video_id\",\"type\":\"string\",\"required\":false,\"description\":\"Video ID (recommended)\"},{\"name\":\"video_url\",\"type\":\"string\",\"required\":false,\"description\":\"Full video URL (optional, ignored if video_id is provided)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/video-streams \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"youtube/web-v2/video-streams\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"youtube/web-v2/video-streams\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-streams\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"youtube/web-v2/video-streams\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-streams\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/video-streams\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/video-streams\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/video-streams\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/video-streams\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/video-streams\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/video-streams\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Video Streams\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web-v2/video-streams\",\"description\":\"Returns stream details and media information for a specified YouTube video. Queries accept either a direct video identifier or a full video URL.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"video_id\",\"type\":\"string\",\"required\":false,\"description\":\"Video ID (recommended)\"},{\"name\":\"video_url\",\"type\":\"string\",\"required\":false,\"description\":\"Full video URL (optional, ignored if video_id is provided)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web-v2/video-streams \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-streams\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web-v2/video-streams\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web-v2/video-streams\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web-v2/video-streams\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web-v2/video-streams\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web-v2/video-streams\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web-v2/video-streams\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web-v2/video-streams\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get video streams info" + modelName: "YouTube Video Streams" modelId: "youtube/web-v2/video-streams" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web/channel-id-v2.md b/model-api-reference/platform-apis/youtube/web/channel-id-v2.md index 42c080dd..68dd4aa1 100644 --- a/model-api-reference/platform-apis/youtube/web/channel-id-v2.md +++ b/model-api-reference/platform-apis/youtube/web/channel-id-v2.md @@ -1,13 +1,13 @@ --- -title: "Get channel ID from URL V2 API Reference" -description: "SandBase API operation youtube/web/channel-id-v2." +title: "YouTube Channel ID from URL (V2) API Reference" +description: "SandBase API reference for model youtube/web/channel-id-v2. Call /v1/api/youtube/web/channel-id-v2; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web/channel-id-v2" -apiReferenceJson: "{\"title\":\"Get channel ID from URL V2\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web/channel-id-v2\",\"description\":\"Convert YouTube channel URL to channel ID. Supports multiple URL formats including @username, /channel/, /c/, /user/ formats.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_url\",\"type\":\"string\",\"required\":true,\"description\":\"Channel URL.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web/channel-id-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"channel_url\\\": \\\"https://www.youtube.com/@CozyCraftYT\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"channel_url\\\": \\\"https://www.youtube.com/@CozyCraftYT\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web/channel-id-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"channel_url\\\": \\\"https://www.youtube.com/@CozyCraftYT\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web/channel-id-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web/channel-id-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web/channel-id-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web/channel-id-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web/channel-id-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web/channel-id-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web/channel-id-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Channel ID from URL (V2)\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web/channel-id-v2\",\"description\":\"Resolves a YouTube channel URL into its unique channel ID and standardized channel URL. Accepts various URL formats including handles, custom URLs, and user links.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_url\",\"type\":\"string\",\"required\":true,\"description\":\"Channel URL.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web/channel-id-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"channel_url\\\": \\\"https://www.youtube.com/@CozyCraftYT\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"channel_url\\\": \\\"https://www.youtube.com/@CozyCraftYT\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web/channel-id-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"channel_url\\\": \\\"https://www.youtube.com/@CozyCraftYT\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web/channel-id-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web/channel-id-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web/channel-id-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web/channel-id-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web/channel-id-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web/channel-id-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web/channel-id-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get channel ID from URL V2" + modelName: "YouTube Channel ID from URL (V2)" modelId: "youtube/web/channel-id-v2" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web/channel-id.md b/model-api-reference/platform-apis/youtube/web/channel-id.md index 4c701dc3..45166b5b 100644 --- a/model-api-reference/platform-apis/youtube/web/channel-id.md +++ b/model-api-reference/platform-apis/youtube/web/channel-id.md @@ -1,13 +1,13 @@ --- -title: "Get channel ID API Reference" -description: "SandBase API operation youtube/web/channel-id." +title: "YouTube Channel ID Lookup API Reference" +description: "YouTube Channel ID Lookup API reference for SandBase. Use model youtube/web/channel-id with /v1/api/youtube/web/channel-id; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web/channel-id" -apiReferenceJson: "{\"title\":\"Get channel ID\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web/channel-id\",\"description\":\"Get channel ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_name\",\"type\":\"string\",\"required\":true,\"description\":\"Channel name.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web/channel-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"channel_name\\\": \\\"LinusTechTips\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"channel_name\\\": \\\"LinusTechTips\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web/channel-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"channel_name\\\": \\\"LinusTechTips\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web/channel-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web/channel-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web/channel-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web/channel-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web/channel-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web/channel-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web/channel-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Channel ID Lookup\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web/channel-id\",\"description\":\"Retrieves the unique YouTube channel ID associated with a specific channel name. Provide the target channel name to receive the matching channel identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_name\",\"type\":\"string\",\"required\":true,\"description\":\"Channel name.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web/channel-id \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"channel_name\\\": \\\"LinusTechTips\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"channel_name\\\": \\\"LinusTechTips\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web/channel-id\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"channel_name\\\": \\\"LinusTechTips\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web/channel-id\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web/channel-id\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web/channel-id\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web/channel-id\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web/channel-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web/channel-id\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web/channel-id\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get channel ID" + modelName: "YouTube Channel ID Lookup" modelId: "youtube/web/channel-id" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web/channel-info.md b/model-api-reference/platform-apis/youtube/web/channel-info.md index 82656ba1..cbf30f1c 100644 --- a/model-api-reference/platform-apis/youtube/web/channel-info.md +++ b/model-api-reference/platform-apis/youtube/web/channel-info.md @@ -1,13 +1,13 @@ --- -title: "Get channel information API Reference" -description: "SandBase API operation youtube/web/channel-info." +title: "YouTube Channel Information API Reference" +description: "YouTube Channel Information API reference for SandBase. Use model youtube/web/channel-info with /v1/api/youtube/web/channel-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web/channel-info" -apiReferenceJson: "{\"title\":\"Get channel information\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web/channel-info\",\"description\":\"Get channel information.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_id\",\"type\":\"string\",\"required\":true,\"description\":\"Channel ID.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web/channel-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"channel_id\\\": \\\"UCXuqSBlHAE6Xw-yeJA0Tunw\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"channel_id\\\": \\\"UCXuqSBlHAE6Xw-yeJA0Tunw\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web/channel-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"channel_id\\\": \\\"UCXuqSBlHAE6Xw-yeJA0Tunw\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web/channel-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web/channel-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web/channel-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web/channel-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web/channel-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web/channel-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web/channel-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Channel Information\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web/channel-info\",\"description\":\"Returns profile details and external links for a specified YouTube channel. Look up channel data using a channel identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_id\",\"type\":\"string\",\"required\":true,\"description\":\"Channel ID.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web/channel-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"channel_id\\\": \\\"UCXuqSBlHAE6Xw-yeJA0Tunw\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"channel_id\\\": \\\"UCXuqSBlHAE6Xw-yeJA0Tunw\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web/channel-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"channel_id\\\": \\\"UCXuqSBlHAE6Xw-yeJA0Tunw\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web/channel-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web/channel-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web/channel-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web/channel-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web/channel-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web/channel-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web/channel-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get channel information" + modelName: "YouTube Channel Information" modelId: "youtube/web/channel-info" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web/channel-short-videos.md b/model-api-reference/platform-apis/youtube/web/channel-short-videos.md index 3e122866..60025a1a 100644 --- a/model-api-reference/platform-apis/youtube/web/channel-short-videos.md +++ b/model-api-reference/platform-apis/youtube/web/channel-short-videos.md @@ -1,13 +1,13 @@ --- -title: "Get channel short videos API Reference" -description: "SandBase API operation youtube/web/channel-short-videos." +title: "YouTube Channel Short Videos API Reference" +description: "SandBase API reference for model youtube/web/channel-short-videos. Call /v1/api/youtube/web/channel-short-videos; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web/channel-short-videos" -apiReferenceJson: "{\"title\":\"Get channel short videos\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web/channel-short-videos\",\"description\":\"Get channel short videos.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_id\",\"type\":\"string\",\"required\":true,\"description\":\"Channel ID.\"},{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":false,\"description\":\"Token to continue fetching channel short videos. Default is None.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web/channel-short-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"channel_id\\\": \\\"UCXuqSBlHAE6Xw-yeJA0Tunw\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"channel_id\\\": \\\"UCXuqSBlHAE6Xw-yeJA0Tunw\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web/channel-short-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"channel_id\\\": \\\"UCXuqSBlHAE6Xw-yeJA0Tunw\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web/channel-short-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web/channel-short-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web/channel-short-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web/channel-short-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web/channel-short-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web/channel-short-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web/channel-short-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Channel Short Videos\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web/channel-short-videos\",\"description\":\"Returns a list of YouTube Shorts from a specified channel. Supports pagination through an optional continuation token to browse additional short videos.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_id\",\"type\":\"string\",\"required\":true,\"description\":\"Channel ID.\"},{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":false,\"description\":\"Token to continue fetching channel short videos. Default is None.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web/channel-short-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"channel_id\\\": \\\"UCXuqSBlHAE6Xw-yeJA0Tunw\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"channel_id\\\": \\\"UCXuqSBlHAE6Xw-yeJA0Tunw\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web/channel-short-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"channel_id\\\": \\\"UCXuqSBlHAE6Xw-yeJA0Tunw\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web/channel-short-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web/channel-short-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web/channel-short-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web/channel-short-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web/channel-short-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web/channel-short-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web/channel-short-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get channel short videos" + modelName: "YouTube Channel Short Videos" modelId: "youtube/web/channel-short-videos" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web/channel-url.md b/model-api-reference/platform-apis/youtube/web/channel-url.md index 6645610e..961400cd 100644 --- a/model-api-reference/platform-apis/youtube/web/channel-url.md +++ b/model-api-reference/platform-apis/youtube/web/channel-url.md @@ -1,13 +1,13 @@ --- -title: "Get channel URL from channel ID API Reference — YouTube URL" -description: "SandBase API operation youtube/web/channel-url." +title: "YouTube Channel URL Lookup API Reference" +description: "YouTube Channel URL Lookup API reference for SandBase. Use model youtube/web/channel-url with /v1/api/youtube/web/channel-url; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web/channel-url" -apiReferenceJson: "{\"title\":\"Get channel URL from channel ID\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web/channel-url\",\"description\":\"Convert YouTube channel ID to channel handle (@username) Reverse operation of get_channel_id_v2 endpoint\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_id\",\"type\":\"string\",\"required\":true,\"description\":\"Channel ID (e.g., UCeu6U67OzJhV1KwBansH3Dg)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web/channel-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"channel_id\\\": \\\"UCeu6U67OzJhV1KwBansH3Dg\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"channel_id\\\": \\\"UCeu6U67OzJhV1KwBansH3Dg\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web/channel-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"channel_id\\\": \\\"UCeu6U67OzJhV1KwBansH3Dg\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web/channel-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web/channel-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web/channel-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web/channel-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web/channel-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web/channel-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web/channel-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Channel URL Lookup\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web/channel-url\",\"description\":\"Returns the standard channel URL and vanity handle URL for a specified YouTube channel. Takes a unique channel ID as input to resolve public web addresses.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_id\",\"type\":\"string\",\"required\":true,\"description\":\"Channel ID (e.g., UCeu6U67OzJhV1KwBansH3Dg)\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web/channel-url \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"channel_id\\\": \\\"UCeu6U67OzJhV1KwBansH3Dg\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"channel_id\\\": \\\"UCeu6U67OzJhV1KwBansH3Dg\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web/channel-url\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"channel_id\\\": \\\"UCeu6U67OzJhV1KwBansH3Dg\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web/channel-url\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web/channel-url\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web/channel-url\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web/channel-url\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web/channel-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web/channel-url\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web/channel-url\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get channel URL from channel ID" + modelName: "YouTube Channel URL Lookup" modelId: "youtube/web/channel-url" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web/channel-videos-v2.md b/model-api-reference/platform-apis/youtube/web/channel-videos-v2.md deleted file mode 100644 index 6eec17af..00000000 --- a/model-api-reference/platform-apis/youtube/web/channel-videos-v2.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get channel videos V2 API Reference" -description: "SandBase API operation youtube/web/channel-videos-v2." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/youtube/web/channel-videos-v2" -apiReferenceJson: "{\"title\":\"Get channel videos V2\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web/channel-videos-v2\",\"description\":\"Get channel videos V2, support getting channel video list, channel short video list, channel live list.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_id\",\"type\":\"string\",\"required\":true,\"description\":\"Channel ID or channel name, if it is a channel name, add `@` symbol in front of it, for example: @LinusTechTips.\"},{\"name\":\"contentType\",\"type\":\"string\",\"required\":false,\"description\":\"Content type, default is `videos`, optional values are `videos`\"},{\"name\":\"lang\",\"type\":\"string\",\"required\":false,\"description\":\"Video result language code, default is `en-US`, any language code is supported, when submitting unsupported language code, default use `en-US` as language code.\"},{\"name\":\"nextToken\",\"type\":\"string\",\"required\":false,\"description\":\"Token to continue fetching videos. Optional parameter, default value is empty, start from the first page.\"},{\"name\":\"sortBy\",\"type\":\"string\",\"required\":false,\"description\":\"Sort by, default is `newest`, optional values are `newest` and `oldest` and `mostPopular`:\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web/channel-videos-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"channel_id\\\": \\\"channel_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"channel_id\\\": \\\"channel_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web/channel-videos-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"channel_id\\\": \\\"channel_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web/channel-videos-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web/channel-videos-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web/channel-videos-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web/channel-videos-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web/channel-videos-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web/channel-videos-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web/channel-videos-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get channel videos V2" - modelId: "youtube/web/channel-videos-v2" - vendor: "YouTube" - vendorSlug: "youtube" - modelSlug: "web/channel-videos-v2" - protocol: "API Reference" - endpoint: "/v1/api/youtube/web/channel-videos-v2" - publishedAt: "" - capabilities: ["api","youtube"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/youtube/web/relate-video.md b/model-api-reference/platform-apis/youtube/web/relate-video.md index ab77e0a5..ec9df5ae 100644 --- a/model-api-reference/platform-apis/youtube/web/relate-video.md +++ b/model-api-reference/platform-apis/youtube/web/relate-video.md @@ -1,13 +1,13 @@ --- -title: "Get related videos API Reference — YouTube Web / Relate Video API" -description: "SandBase API operation youtube/web/relate-video." +title: "YouTube Related Videos (Web) API Reference" +description: "YouTube Related Videos (Web) API reference for SandBase. Use model youtube/web/relate-video with /v1/api/youtube/web/relate-video; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web/relate-video" -apiReferenceJson: "{\"title\":\"Get related videos\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web/relate-video\",\"description\":\"Get related videos by video ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":false,\"description\":\"Token to continue fetching related videos. Default is None.\"},{\"name\":\"video_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID, get it from the URL, for example: https://www.youtube.com/watch?v=LuIL5JATZsc, the id is LuIL5JATZsc.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web/relate-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"video_id\\\": \\\"LuIL5JATZsc\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"video_id\\\": \\\"LuIL5JATZsc\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web/relate-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"video_id\\\": \\\"LuIL5JATZsc\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web/relate-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web/relate-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web/relate-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web/relate-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web/relate-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web/relate-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web/relate-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Related Videos (Web)\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web/relate-video\",\"description\":\"Returns a list of related videos for a given YouTube video ID. Supports pagination using a continuation token to retrieve additional recommendations.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":false,\"description\":\"Token to continue fetching related videos. Default is None.\"},{\"name\":\"video_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID, get it from the URL, for example: https://www.youtube.com/watch?v=LuIL5JATZsc, the id is LuIL5JATZsc.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web/relate-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"video_id\\\": \\\"LuIL5JATZsc\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"video_id\\\": \\\"LuIL5JATZsc\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web/relate-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"video_id\\\": \\\"LuIL5JATZsc\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web/relate-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web/relate-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web/relate-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web/relate-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web/relate-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web/relate-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web/relate-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get related videos" + modelName: "YouTube Related Videos (Web)" modelId: "youtube/web/relate-video" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web/search-channel.md b/model-api-reference/platform-apis/youtube/web/search-channel.md index 8e550a08..4b3197b7 100644 --- a/model-api-reference/platform-apis/youtube/web/search-channel.md +++ b/model-api-reference/platform-apis/youtube/web/search-channel.md @@ -1,13 +1,13 @@ --- -title: "Search channel API Reference" -description: "SandBase API operation youtube/web/search-channel." +title: "YouTube Channel Video Search API Reference" +description: "YouTube Channel Video Search API reference for SandBase. Use model youtube/web/search-channel with /v1/api/youtube/web/search-channel; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web/search-channel" -apiReferenceJson: "{\"title\":\"Search channel\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web/search-channel\",\"description\":\"Search channel.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_id\",\"type\":\"string\",\"required\":true,\"description\":\"Channel ID\"},{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":false,\"description\":\"Token to continue fetching search results. Default is None.\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code, default is us.\",\"default\":\"us\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"Language code, default is en.\",\"default\":\"en\"},{\"name\":\"search_query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web/search-channel \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"channel_id\\\": \\\"UCXuqSBlHAE6Xw-yeJA0Tunw\\\",\\n \\\"search_query\\\": \\\"AMD\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"channel_id\\\": \\\"UCXuqSBlHAE6Xw-yeJA0Tunw\\\",\\n \\\"search_query\\\": \\\"AMD\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web/search-channel\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"channel_id\\\": \\\"UCXuqSBlHAE6Xw-yeJA0Tunw\\\",\\n \\\"search_query\\\": \\\"AMD\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web/search-channel\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web/search-channel\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web/search-channel\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web/search-channel\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web/search-channel\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web/search-channel\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web/search-channel\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Channel Video Search\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web/search-channel\",\"description\":\"Searches videos within a specific YouTube channel using a keyword query. Returns matching video details including title, view count, post date, and video ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"channel_id\",\"type\":\"string\",\"required\":true,\"description\":\"Channel ID\"},{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":false,\"description\":\"Token to continue fetching search results. Default is None.\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code, default is us.\",\"default\":\"us\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"Language code, default is en.\",\"default\":\"en\"},{\"name\":\"search_query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web/search-channel \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"channel_id\\\": \\\"UCXuqSBlHAE6Xw-yeJA0Tunw\\\",\\n \\\"search_query\\\": \\\"AMD\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"channel_id\\\": \\\"UCXuqSBlHAE6Xw-yeJA0Tunw\\\",\\n \\\"search_query\\\": \\\"AMD\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web/search-channel\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"channel_id\\\": \\\"UCXuqSBlHAE6Xw-yeJA0Tunw\\\",\\n \\\"search_query\\\": \\\"AMD\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web/search-channel\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web/search-channel\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web/search-channel\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web/search-channel\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web/search-channel\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web/search-channel\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web/search-channel\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search channel" + modelName: "YouTube Channel Video Search" modelId: "youtube/web/search-channel" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web/search-video.md b/model-api-reference/platform-apis/youtube/web/search-video.md index a55fae9a..f6849d7e 100644 --- a/model-api-reference/platform-apis/youtube/web/search-video.md +++ b/model-api-reference/platform-apis/youtube/web/search-video.md @@ -1,13 +1,13 @@ --- -title: "Search video API Reference — YouTube Web / Search Video API" -description: "SandBase API operation youtube/web/search-video." +title: "YouTube Video Search API Reference" +description: "YouTube Video Search API reference for SandBase. Use model youtube/web/search-video with /v1/api/youtube/web/search-video; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/youtube/web/search-video" -apiReferenceJson: "{\"title\":\"Search video\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web/search-video\",\"description\":\"Search video.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":false,\"description\":\"Token to continue fetching search results. Default is None.\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code, default is us.\",\"default\":\"us\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"Language code, default is en.\",\"default\":\"en\"},{\"name\":\"order_by\",\"type\":\"string\",\"required\":false,\"description\":\"Order by, default is this_month, optional values are this_week, this_month, this_year, last_hour, today.\",\"default\":\"this_month\"},{\"name\":\"search_query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web/search-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"search_query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"search_query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web/search-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"search_query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web/search-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web/search-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web/search-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web/search-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web/search-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web/search-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web/search-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"YouTube Video Search\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web/search-video\",\"description\":\"Search YouTube videos by keyword and get video ID, title, channel, views, length and publish time, with country, language and upload-date filters and continuation-token pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"continuation_token\",\"type\":\"string\",\"required\":false,\"description\":\"Token to continue fetching search results. Default is None.\"},{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code, default is us.\",\"default\":\"us\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"Language code, default is en.\",\"default\":\"en\"},{\"name\":\"order_by\",\"type\":\"string\",\"required\":false,\"description\":\"Order by, default is this_month, optional values are this_week, this_month, this_year, last_hour, today.\",\"default\":\"this_month\"},{\"name\":\"search_query\",\"type\":\"string\",\"required\":true,\"description\":\"Search keyword.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web/search-video \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"search_query\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"search_query\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web/search-video\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"search_query\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web/search-video\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web/search-video\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web/search-video\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web/search-video\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web/search-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web/search-video\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web/search-video\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Search video" + modelName: "YouTube Video Search" modelId: "youtube/web/search-video" vendor: "YouTube" vendorSlug: "youtube" diff --git a/model-api-reference/platform-apis/youtube/web/trending-videos.md b/model-api-reference/platform-apis/youtube/web/trending-videos.md deleted file mode 100644 index 95dfbd45..00000000 --- a/model-api-reference/platform-apis/youtube/web/trending-videos.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get trending videos API Reference" -description: "SandBase API operation youtube/web/trending-videos." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/youtube/web/trending-videos" -apiReferenceJson: "{\"title\":\"Get trending videos\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web/trending-videos\",\"description\":\"Get trending videos.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"country_code\",\"type\":\"string\",\"required\":false,\"description\":\"Country code, default is us.\",\"default\":\"us\"},{\"name\":\"language_code\",\"type\":\"string\",\"required\":false,\"description\":\"Language code, default is en.\",\"default\":\"en\"},{\"name\":\"section\",\"type\":\"string\",\"required\":false,\"description\":\"Section, default is Now, optional values are Music, Gaming, Movies.\",\"default\":\"Now\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web/trending-videos \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"youtube/web/trending-videos\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"youtube/web/trending-videos\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web/trending-videos\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"youtube/web/trending-videos\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web/trending-videos\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web/trending-videos\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web/trending-videos\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web/trending-videos\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web/trending-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web/trending-videos\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web/trending-videos\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get trending videos" - modelId: "youtube/web/trending-videos" - vendor: "YouTube" - vendorSlug: "youtube" - modelSlug: "web/trending-videos" - protocol: "API Reference" - endpoint: "/v1/api/youtube/web/trending-videos" - publishedAt: "" - capabilities: ["api","youtube"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/youtube/web/video-info-v2.md b/model-api-reference/platform-apis/youtube/web/video-info-v2.md deleted file mode 100644 index 9e14282f..00000000 --- a/model-api-reference/platform-apis/youtube/web/video-info-v2.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get video information V2 API Reference — YouTube / Video Info V2" -description: "SandBase API operation youtube/web/video-info-v2." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/youtube/web/video-info-v2" -apiReferenceJson: "{\"title\":\"Get video information V2\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web/video-info-v2\",\"description\":\"Get video metadata and download information This endpoint is charged: 0.001$/request\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"video_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID, get it from the URL, for example: https://www.youtube.com/watch?v=LuIL5JATZsc, the id is LuIL5JATZsc.\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web/video-info-v2 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"video_id\\\": \\\"video_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"video_id\\\": \\\"video_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web/video-info-v2\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"video_id\\\": \\\"video_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web/video-info-v2\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web/video-info-v2\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web/video-info-v2\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web/video-info-v2\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web/video-info-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web/video-info-v2\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web/video-info-v2\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get video information V2" - modelId: "youtube/web/video-info-v2" - vendor: "YouTube" - vendorSlug: "youtube" - modelSlug: "web/video-info-v2" - protocol: "API Reference" - endpoint: "/v1/api/youtube/web/video-info-v2" - publishedAt: "" - capabilities: ["api","youtube"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/youtube/web/video-info.md b/model-api-reference/platform-apis/youtube/web/video-info.md deleted file mode 100644 index 2c6a1cd9..00000000 --- a/model-api-reference/platform-apis/youtube/web/video-info.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get video information V1 API Reference" -description: "SandBase API operation youtube/web/video-info." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/youtube/web/video-info" -apiReferenceJson: "{\"title\":\"Get video information V1\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web/video-info\",\"description\":\"Get video metadata and download information This endpoint is charged: 0.002$/request To save cost, you can use V2 version, which is 0.001$/request, but stability is not guaranteed.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"audios\",\"type\":\"string\",\"required\":false,\"description\":\"Audio format selection\",\"constraints\":\"Allowed values: auto, true, raw, false\"},{\"name\":\"lang\",\"type\":\"string\",\"required\":false,\"description\":\"Language code\"},{\"name\":\"related\",\"type\":\"boolean\",\"required\":false,\"description\":\"Include related content\"},{\"name\":\"subtitles\",\"type\":\"boolean\",\"required\":false,\"description\":\"Include subtitles\"},{\"name\":\"url_access\",\"type\":\"string\",\"required\":false,\"description\":\"- normal: Include direct URLs\",\"constraints\":\"Allowed values: normal, blocked\"},{\"name\":\"video_id\",\"type\":\"string\",\"required\":true,\"description\":\"Video ID\"},{\"name\":\"videos\",\"type\":\"string\",\"required\":false,\"description\":\"Video format selection\",\"constraints\":\"Allowed values: auto, true, raw, false\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web/video-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"video_id\\\": \\\"video_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"video_id\\\": \\\"video_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web/video-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"video_id\\\": \\\"video_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web/video-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web/video-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web/video-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web/video-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web/video-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web/video-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web/video-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get video information V1" - modelId: "youtube/web/video-info" - vendor: "YouTube" - vendorSlug: "youtube" - modelSlug: "web/video-info" - protocol: "API Reference" - endpoint: "/v1/api/youtube/web/video-info" - publishedAt: "" - capabilities: ["api","youtube"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/youtube/web/video-subtitles.md b/model-api-reference/platform-apis/youtube/web/video-subtitles.md deleted file mode 100644 index e5f5de93..00000000 --- a/model-api-reference/platform-apis/youtube/web/video-subtitles.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Get video subtitles API Reference" -description: "SandBase API operation youtube/web/video-subtitles." -aside: false -outline: false -generatedBy: "sandbase-platform-api-reference" -apiReferenceKey: "api/youtube/web/video-subtitles" -apiReferenceJson: "{\"title\":\"Get video subtitles\",\"operation\":\"YouTube API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/youtube/web/video-subtitles\",\"description\":\"Get video subtitle content\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"fix_overlap\",\"type\":\"boolean\",\"required\":false,\"description\":\"Especially useful for auto-generated subtitles, will split overlapping time ranges\"},{\"name\":\"format\",\"type\":\"string\",\"required\":false,\"description\":\"xml/vtt/txt / Subtitle format\",\"constraints\":\"Allowed values: srt, xml, vtt, txt\"},{\"name\":\"subtitle_url\",\"type\":\"string\",\"required\":true,\"description\":\"Subtitle URL from video details\"},{\"name\":\"target_lang\",\"type\":\"string | null\",\"required\":false,\"description\":\"Target language code\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, youtube\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/youtube/web/video-subtitles \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"subtitle_url\\\": \\\"https://example.com/resource\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"subtitle_url\\\": \\\"https://example.com/resource\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/youtube/web/video-subtitles\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"subtitle_url\\\": \\\"https://example.com/resource\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/youtube/web/video-subtitles\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"youtube/web/video-subtitles\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"youtube/web/video-subtitles\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"youtube/web/video-subtitles\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"youtube/web/video-subtitles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"youtube/web/video-subtitles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"youtube/web/video-subtitles\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" -seo: - modelName: "Get video subtitles" - modelId: "youtube/web/video-subtitles" - vendor: "YouTube" - vendorSlug: "youtube" - modelSlug: "web/video-subtitles" - protocol: "API Reference" - endpoint: "/v1/api/youtube/web/video-subtitles" - publishedAt: "" - capabilities: ["api","youtube"] - category: "APIs" ---- - - diff --git a/model-api-reference/platform-apis/zhihu/web/ai-search-stream.md b/model-api-reference/platform-apis/zhihu/web/ai-search-stream.md index bc5aacbb..17850cff 100644 --- a/model-api-reference/platform-apis/zhihu/web/ai-search-stream.md +++ b/model-api-reference/platform-apis/zhihu/web/ai-search-stream.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu AI Search (v2) API Reference" -description: "SandBase API operation zhihu/web/ai-search-stream." +title: "Zhihu AI Search Stream API Reference" +description: "Zhihu AI Search Stream API reference for SandBase. Use model zhihu/web/ai-search-stream with /v1/api/zhihu/web/ai-search-stream; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/ai-search-stream" -apiReferenceJson: "{\"title\":\"Get Zhihu AI Search (v2)\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/ai-search-stream\",\"description\":\"Get Zhihu AI Search results (new endpoint)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"chat_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Chat mode, default FAST\"},{\"name\":\"message_content\",\"type\":\"string\",\"required\":true,\"description\":\"Search Content\"},{\"name\":\"session_id\",\"type\":\"string\",\"required\":false,\"description\":\"Session ID for multi-turn\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/ai-search-stream \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"message_content\\\": \\\"message_content\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"message_content\\\": \\\"message_content\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/ai-search-stream\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"message_content\\\": \\\"message_content\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/ai-search-stream\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/ai-search-stream\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/ai-search-stream\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/ai-search-stream\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/ai-search-stream\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/ai-search-stream\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/ai-search-stream\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu AI Search Stream\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/ai-search-stream\",\"description\":\"Returns streaming AI search results from Zhihu based on a query prompt. Supports conversational multi-turn sessions and chat modes.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"chat_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Chat mode, default FAST\"},{\"name\":\"message_content\",\"type\":\"string\",\"required\":true,\"description\":\"Search Content\"},{\"name\":\"session_id\",\"type\":\"string\",\"required\":false,\"description\":\"Session ID for multi-turn\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/ai-search-stream \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"message_content\\\": \\\"message_content\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"message_content\\\": \\\"message_content\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/ai-search-stream\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"message_content\\\": \\\"message_content\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/ai-search-stream\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/ai-search-stream\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/ai-search-stream\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/ai-search-stream\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/ai-search-stream\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/ai-search-stream\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/ai-search-stream\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu AI Search (v2)" + modelName: "Zhihu AI Search Stream" modelId: "zhihu/web/ai-search-stream" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/answer-detail.md b/model-api-reference/platform-apis/zhihu/web/answer-detail.md index ee1265b9..087536eb 100644 --- a/model-api-reference/platform-apis/zhihu/web/answer-detail.md +++ b/model-api-reference/platform-apis/zhihu/web/answer-detail.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Answer Detail API Reference" -description: "SandBase API operation zhihu/web/answer-detail." +title: "Zhihu Answer Details API Reference" +description: "Zhihu Answer Details API reference for SandBase. Use model zhihu/web/answer-detail with /v1/api/zhihu/web/answer-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/answer-detail" -apiReferenceJson: "{\"title\":\"Get Zhihu Answer Detail\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/answer-detail\",\"description\":\"Get a single Zhihu answer's detail (content / stats / author / question, etc.)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"answer_id\",\"type\":\"string\",\"required\":true,\"description\":\"Answer ID (the numeric id in the page URL .../answer/{answer_id})\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/answer-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"answer_id\\\": \\\"2054145988235880002\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"answer_id\\\": \\\"2054145988235880002\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/answer-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"answer_id\\\": \\\"2054145988235880002\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/answer-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/answer-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/answer-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/answer-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/answer-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/answer-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/answer-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Answer Details\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/answer-detail\",\"description\":\"Retrieves detailed information for a specific Zhihu answer using its numeric ID, including answer text, timestamps, and share links.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"answer_id\",\"type\":\"string\",\"required\":true,\"description\":\"Answer ID (the numeric id in the page URL .../answer/{answer_id})\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/answer-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"answer_id\\\": \\\"2054145988235880002\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"answer_id\\\": \\\"2054145988235880002\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/answer-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"answer_id\\\": \\\"2054145988235880002\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/answer-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/answer-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/answer-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/answer-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/answer-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/answer-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/answer-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Answer Detail" + modelName: "Zhihu Answer Details" modelId: "zhihu/web/answer-detail" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/article-search-v3.md b/model-api-reference/platform-apis/zhihu/web/article-search-v3.md index c97b73b8..f1748096 100644 --- a/model-api-reference/platform-apis/zhihu/web/article-search-v3.md +++ b/model-api-reference/platform-apis/zhihu/web/article-search-v3.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Article Search V3 API Reference" -description: "SandBase API operation zhihu/web/article-search-v3." +title: "Zhihu Article Search API Reference" +description: "Zhihu Article Search API reference for SandBase. Use model zhihu/web/article-search-v3 with /v1/api/zhihu/web/article-search-v3; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/article-search-v3" -apiReferenceJson: "{\"title\":\"Get Zhihu Article Search V3\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/article-search-v3\",\"description\":\"Get Zhihu Article Search V3\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search Keywords\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of articles per page\",\"default\":\"20\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"},{\"name\":\"search_hash_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search Hash ID, used to filter duplicate search results\",\"default\":\"\\\"\\\"\"},{\"name\":\"search_source\",\"type\":\"string\",\"required\":false,\"description\":\"Search Source\",\"default\":\"Normal\"},{\"name\":\"show_all_topics\",\"type\":\"integer\",\"required\":false,\"description\":\"Show all topics\",\"default\":\"0\"},{\"name\":\"sort\",\"type\":\"string\",\"required\":false,\"description\":\"Empty comprehensive sorting\",\"default\":\"\\\"\\\"\"},{\"name\":\"time_interval\",\"type\":\"string\",\"required\":false,\"description\":\"Time interval\",\"default\":\"\\\"\\\"\"},{\"name\":\"vertical\",\"type\":\"string\",\"required\":false,\"description\":\"Empty unlimited type\",\"default\":\"\\\"\\\"\"},{\"name\":\"vertical_info\",\"type\":\"string\",\"required\":false,\"description\":\"Vertical information\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/article-search-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/article-search-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/article-search-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/article-search-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/article-search-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/article-search-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/article-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/article-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/article-search-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Article Search\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/article-search-v3\",\"description\":\"Search Zhihu articles and answers by keyword and get titles, excerpts, authors, vote and comment counts, with sorting, content type and time filters plus offset pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search Keywords\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of articles per page\",\"default\":\"20\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"},{\"name\":\"search_hash_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search Hash ID, used to filter duplicate search results\",\"default\":\"\\\"\\\"\"},{\"name\":\"search_source\",\"type\":\"string\",\"required\":false,\"description\":\"Search Source\",\"default\":\"Normal\"},{\"name\":\"show_all_topics\",\"type\":\"integer\",\"required\":false,\"description\":\"Show all topics\",\"default\":\"0\"},{\"name\":\"sort\",\"type\":\"string\",\"required\":false,\"description\":\"Empty comprehensive sorting\",\"default\":\"\\\"\\\"\"},{\"name\":\"time_interval\",\"type\":\"string\",\"required\":false,\"description\":\"Time interval\",\"default\":\"\\\"\\\"\"},{\"name\":\"vertical\",\"type\":\"string\",\"required\":false,\"description\":\"Empty unlimited type\",\"default\":\"\\\"\\\"\"},{\"name\":\"vertical_info\",\"type\":\"string\",\"required\":false,\"description\":\"Vertical information\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/article-search-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/article-search-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/article-search-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/article-search-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/article-search-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/article-search-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/article-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/article-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/article-search-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Article Search V3" + modelName: "Zhihu Article Search" modelId: "zhihu/web/article-search-v3" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/column-article-detail.md b/model-api-reference/platform-apis/zhihu/web/column-article-detail.md index b33a79b3..3531aac0 100644 --- a/model-api-reference/platform-apis/zhihu/web/column-article-detail.md +++ b/model-api-reference/platform-apis/zhihu/web/column-article-detail.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Column Article Detail API Reference" -description: "SandBase API operation zhihu/web/column-article-detail." +title: "Zhihu Column Article Detail API Reference" +description: "SandBase API reference for model zhihu/web/column-article-detail. Call /v1/api/zhihu/web/column-article-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/column-article-detail" -apiReferenceJson: "{\"title\":\"Get Zhihu Column Article Detail\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/column-article-detail\",\"description\":\"Get Zhihu Column Article Detail\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"article_id\",\"type\":\"string\",\"required\":true,\"description\":\"Article ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/column-article-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"article_id\\\": \\\"669214677\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"article_id\\\": \\\"669214677\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/column-article-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"article_id\\\": \\\"669214677\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/column-article-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/column-article-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/column-article-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/column-article-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/column-article-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/column-article-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/column-article-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Column Article Detail\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/column-article-detail\",\"description\":\"Returns detailed information and metadata for a specific Zhihu column article, including author profile details, using a provided article ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"article_id\",\"type\":\"string\",\"required\":true,\"description\":\"Article ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/column-article-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"article_id\\\": \\\"669214677\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"article_id\\\": \\\"669214677\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/column-article-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"article_id\\\": \\\"669214677\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/column-article-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/column-article-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/column-article-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/column-article-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/column-article-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/column-article-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/column-article-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Column Article Detail" + modelName: "Zhihu Column Article Detail" modelId: "zhihu/web/column-article-detail" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/column-articles.md b/model-api-reference/platform-apis/zhihu/web/column-articles.md index bd0593f2..10445ebc 100644 --- a/model-api-reference/platform-apis/zhihu/web/column-articles.md +++ b/model-api-reference/platform-apis/zhihu/web/column-articles.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Column Articles API Reference" -description: "SandBase API operation zhihu/web/column-articles." +title: "Zhihu Column Articles API Reference" +description: "Zhihu Column Articles API reference for SandBase. Use model zhihu/web/column-articles with /v1/api/zhihu/web/column-articles; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/column-articles" -apiReferenceJson: "{\"title\":\"Get Zhihu Column Articles\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/column-articles\",\"description\":\"Get Zhihu Column Articles\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"column_id\",\"type\":\"string\",\"required\":true,\"description\":\"Column ID\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of articles per page\",\"default\":\"10\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/column-articles \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"column_id\\\": \\\"zhangjiawei\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"column_id\\\": \\\"zhangjiawei\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/column-articles\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"column_id\\\": \\\"zhangjiawei\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/column-articles\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/column-articles\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/column-articles\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/column-articles\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/column-articles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/column-articles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/column-articles\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Column Articles\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/column-articles\",\"description\":\"Returns articles from a specific Zhihu column, including titles, content snippets, vote counts, and author profile details.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"column_id\",\"type\":\"string\",\"required\":true,\"description\":\"Column ID\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of articles per page\",\"default\":\"10\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/column-articles \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"column_id\\\": \\\"zhangjiawei\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"column_id\\\": \\\"zhangjiawei\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/column-articles\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"column_id\\\": \\\"zhangjiawei\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/column-articles\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/column-articles\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/column-articles\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/column-articles\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/column-articles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/column-articles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/column-articles\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Column Articles" + modelName: "Zhihu Column Articles" modelId: "zhihu/web/column-articles" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/column-comment-config.md b/model-api-reference/platform-apis/zhihu/web/column-comment-config.md index 18c6bb2a..5572eb93 100644 --- a/model-api-reference/platform-apis/zhihu/web/column-comment-config.md +++ b/model-api-reference/platform-apis/zhihu/web/column-comment-config.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Column Comment Config API Reference" -description: "SandBase API operation zhihu/web/column-comment-config." +title: "Zhihu Column Comment Configuration API Reference" +description: "SandBase API reference for model zhihu/web/column-comment-config. Call /v1/api/zhihu/web/column-comment-config; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/column-comment-config" -apiReferenceJson: "{\"title\":\"Get Zhihu Column Comment Config\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/column-comment-config\",\"description\":\"Get Zhihu Column Comment Config\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"article_id\",\"type\":\"string\",\"required\":true,\"description\":\"Article ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/column-comment-config \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"article_id\\\": \\\"669214677\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"article_id\\\": \\\"669214677\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/column-comment-config\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"article_id\\\": \\\"669214677\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/column-comment-config\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/column-comment-config\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/column-comment-config\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/column-comment-config\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/column-comment-config\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/column-comment-config\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/column-comment-config\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Column Comment Configuration\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/column-comment-config\",\"description\":\"Returns comment settings and options for a Zhihu column article based on the provided article identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"article_id\",\"type\":\"string\",\"required\":true,\"description\":\"Article ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/column-comment-config \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"article_id\\\": \\\"669214677\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"article_id\\\": \\\"669214677\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/column-comment-config\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"article_id\\\": \\\"669214677\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/column-comment-config\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/column-comment-config\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/column-comment-config\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/column-comment-config\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/column-comment-config\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/column-comment-config\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/column-comment-config\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Column Comment Config" + modelName: "Zhihu Column Comment Configuration" modelId: "zhihu/web/column-comment-config" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/column-recommend.md b/model-api-reference/platform-apis/zhihu/web/column-recommend.md index a41fe0ef..d99bb39a 100644 --- a/model-api-reference/platform-apis/zhihu/web/column-recommend.md +++ b/model-api-reference/platform-apis/zhihu/web/column-recommend.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Similar Column Recommend API Reference" -description: "SandBase API operation zhihu/web/column-recommend." +title: "Zhihu Similar Column Recommendations API Reference" +description: "SandBase API reference for model zhihu/web/column-recommend. Call /v1/api/zhihu/web/column-recommend; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/column-recommend" -apiReferenceJson: "{\"title\":\"Get Zhihu Similar Column Recommend\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/column-recommend\",\"description\":\"Get Zhihu Similar Column Recommend\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"article_id\",\"type\":\"string\",\"required\":true,\"description\":\"Article ID\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of columns per page\",\"default\":\"12\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/column-recommend \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"article_id\\\": \\\"669214677\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"article_id\\\": \\\"669214677\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/column-recommend\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"article_id\\\": \\\"669214677\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/column-recommend\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/column-recommend\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/column-recommend\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/column-recommend\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/column-recommend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/column-recommend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/column-recommend\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Similar Column Recommendations\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/column-recommend\",\"description\":\"Returns recommended similar columns and articles for a specified Zhihu article ID, with support for pagination limits and offsets.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"article_id\",\"type\":\"string\",\"required\":true,\"description\":\"Article ID\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of columns per page\",\"default\":\"12\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/column-recommend \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"article_id\\\": \\\"669214677\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"article_id\\\": \\\"669214677\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/column-recommend\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"article_id\\\": \\\"669214677\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/column-recommend\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/column-recommend\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/column-recommend\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/column-recommend\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/column-recommend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/column-recommend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/column-recommend\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Similar Column Recommend" + modelName: "Zhihu Similar Column Recommendations" modelId: "zhihu/web/column-recommend" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/column-relationship.md b/model-api-reference/platform-apis/zhihu/web/column-relationship.md index de0cebdb..051e4e0c 100644 --- a/model-api-reference/platform-apis/zhihu/web/column-relationship.md +++ b/model-api-reference/platform-apis/zhihu/web/column-relationship.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Column Article Relationship API Reference" -description: "SandBase API operation zhihu/web/column-relationship." +title: "Zhihu Column Article Relationship API Reference" +description: "SandBase API reference for model zhihu/web/column-relationship. Call /v1/api/zhihu/web/column-relationship; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/column-relationship" -apiReferenceJson: "{\"title\":\"Get Zhihu Column Article Relationship\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/column-relationship\",\"description\":\"Get Zhihu Column Relationship\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"article_id\",\"type\":\"string\",\"required\":true,\"description\":\"Article ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/column-relationship \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"article_id\\\": \\\"669214677\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"article_id\\\": \\\"669214677\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/column-relationship\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"article_id\\\": \\\"669214677\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/column-relationship\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/column-relationship\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/column-relationship\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/column-relationship\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/column-relationship\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/column-relationship\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/column-relationship\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Column Article Relationship\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/column-relationship\",\"description\":\"Returns interaction details and relationship metadata for a Zhihu column article, including endorsement reaction text and navigation action links by article ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"article_id\",\"type\":\"string\",\"required\":true,\"description\":\"Article ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/column-relationship \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"article_id\\\": \\\"669214677\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"article_id\\\": \\\"669214677\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/column-relationship\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"article_id\\\": \\\"669214677\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/column-relationship\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/column-relationship\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/column-relationship\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/column-relationship\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/column-relationship\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/column-relationship\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/column-relationship\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Column Article Relationship" + modelName: "Zhihu Column Article Relationship" modelId: "zhihu/web/column-relationship" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/column-search-v3.md b/model-api-reference/platform-apis/zhihu/web/column-search-v3.md index 53c54b5a..7866b214 100644 --- a/model-api-reference/platform-apis/zhihu/web/column-search-v3.md +++ b/model-api-reference/platform-apis/zhihu/web/column-search-v3.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Column Search V3 API Reference" -description: "SandBase API operation zhihu/web/column-search-v3." +title: "Zhihu Column Search API Reference" +description: "Zhihu Column Search API reference for SandBase. Use model zhihu/web/column-search-v3 with /v1/api/zhihu/web/column-search-v3; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/column-search-v3" -apiReferenceJson: "{\"title\":\"Get Zhihu Column Search V3\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/column-search-v3\",\"description\":\"Get Zhihu Column Search V3\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search Keywords\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of columns per page\",\"default\":\"20\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"},{\"name\":\"search_hash_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search Hash ID\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/column-search-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/column-search-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/column-search-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/column-search-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/column-search-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/column-search-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/column-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/column-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/column-search-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Column Search\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/column-search-v3\",\"description\":\"Searches Zhihu columns matching a specified query term. Returns matching column profiles, follower counts, article totals, and snippet highlights with pagination support.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search Keywords\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of columns per page\",\"default\":\"20\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"},{\"name\":\"search_hash_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search Hash ID\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/column-search-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/column-search-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/column-search-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/column-search-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/column-search-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/column-search-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/column-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/column-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/column-search-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Column Search V3" + modelName: "Zhihu Column Search" modelId: "zhihu/web/column-search-v3" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/comment-v5.md b/model-api-reference/platform-apis/zhihu/web/comment-v5.md index b6bc7167..acee3665 100644 --- a/model-api-reference/platform-apis/zhihu/web/comment-v5.md +++ b/model-api-reference/platform-apis/zhihu/web/comment-v5.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Comment V5 API Reference" -description: "SandBase API operation zhihu/web/comment-v5." +title: "Zhihu Answer Comments API Reference" +description: "Zhihu Answer Comments API reference for SandBase. Use model zhihu/web/comment-v5 with /v1/api/zhihu/web/comment-v5; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/comment-v5" -apiReferenceJson: "{\"title\":\"Get Zhihu Comment V5\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/comment-v5\",\"description\":\"Get Zhihu Comment V5\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"answer_id\",\"type\":\"string\",\"required\":true,\"description\":\"Answer ID\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of comments per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset/Page Number\"},{\"name\":\"order_by\",\"type\":\"string\",\"required\":false,\"description\":\"Sort\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/comment-v5 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"answer_id\\\": \\\"answer_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"answer_id\\\": \\\"answer_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/comment-v5\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"answer_id\\\": \\\"answer_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/comment-v5\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/comment-v5\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/comment-v5\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/comment-v5\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/comment-v5\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/comment-v5\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/comment-v5\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Answer Comments\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/comment-v5\",\"description\":\"Get the comments on a Zhihu answer: comment text, author, time, like and reply counts, with sorting and pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"answer_id\",\"type\":\"string\",\"required\":true,\"description\":\"Answer ID\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of comments per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset/Page Number\"},{\"name\":\"order_by\",\"type\":\"string\",\"required\":false,\"description\":\"Sort\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/comment-v5 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"answer_id\\\": \\\"2023560406912770519\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"answer_id\\\": \\\"2023560406912770519\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/comment-v5\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"answer_id\\\": \\\"2023560406912770519\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/comment-v5\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/comment-v5\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/comment-v5\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/comment-v5\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/comment-v5\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/comment-v5\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/comment-v5\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Comment V5" + modelName: "Zhihu Answer Comments" modelId: "zhihu/web/comment-v5" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/ebook-search-v3.md b/model-api-reference/platform-apis/zhihu/web/ebook-search-v3.md index b5e3930a..465063ee 100644 --- a/model-api-reference/platform-apis/zhihu/web/ebook-search-v3.md +++ b/model-api-reference/platform-apis/zhihu/web/ebook-search-v3.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Ebook Search V3 API Reference" -description: "SandBase API operation zhihu/web/ebook-search-v3." +title: "Zhihu Ebook Search API Reference" +description: "Zhihu Ebook Search API reference for SandBase. Use model zhihu/web/ebook-search-v3 with /v1/api/zhihu/web/ebook-search-v3; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/ebook-search-v3" -apiReferenceJson: "{\"title\":\"Get Zhihu Ebook Search V3\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/ebook-search-v3\",\"description\":\"Get Zhihu Ebook Search V3\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search Keywords\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of ebooks per page\",\"default\":\"20\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"},{\"name\":\"search_hash_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search Hash ID\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/ebook-search-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/ebook-search-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/ebook-search-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/ebook-search-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/ebook-search-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/ebook-search-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/ebook-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/ebook-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/ebook-search-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Ebook Search\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/ebook-search-v3\",\"description\":\"Searches Zhihu for ebooks matching a query term. Returns publication details including commodity IDs, SKU IDs, and direct product links.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search Keywords\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of ebooks per page\",\"default\":\"20\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"},{\"name\":\"search_hash_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search Hash ID\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/ebook-search-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/ebook-search-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/ebook-search-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/ebook-search-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/ebook-search-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/ebook-search-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/ebook-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/ebook-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/ebook-search-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Ebook Search V3" + modelName: "Zhihu Ebook Search" modelId: "zhihu/web/ebook-search-v3" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/hot-list.md b/model-api-reference/platform-apis/zhihu/web/hot-list.md index 5b2b2c04..fd599b11 100644 --- a/model-api-reference/platform-apis/zhihu/web/hot-list.md +++ b/model-api-reference/platform-apis/zhihu/web/hot-list.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Hot List API Reference" -description: "SandBase API operation zhihu/web/hot-list." +title: "Zhihu Hot List API Reference" +description: "Zhihu Hot List API reference for SandBase. Use model zhihu/web/hot-list with /v1/api/zhihu/web/hot-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/hot-list" -apiReferenceJson: "{\"title\":\"Get Zhihu Hot List\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/hot-list\",\"description\":\"Get Zhihu Hot List\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"desktop\",\"type\":\"string\",\"required\":false,\"description\":\"Is it a desktop\",\"default\":\"true\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of articles per page\",\"default\":\"50\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/hot-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"zhihu/web/hot-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"zhihu/web/hot-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/hot-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"zhihu/web/hot-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/hot-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/hot-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/hot-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/hot-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/hot-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/hot-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/hot-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Hot List\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/hot-list\",\"description\":\"Get the Zhihu hot list: trending questions with title, excerpt, heat, answer and follower counts, and links.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"desktop\",\"type\":\"string\",\"required\":false,\"description\":\"Is it a desktop\",\"default\":\"true\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of articles per page\",\"default\":\"50\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/hot-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/hot-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/hot-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/hot-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/hot-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/hot-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/hot-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/hot-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/hot-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Hot List" + modelName: "Zhihu Hot List" modelId: "zhihu/web/hot-list" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/hot-recommend.md b/model-api-reference/platform-apis/zhihu/web/hot-recommend.md index ffbe3d4d..47a4c429 100644 --- a/model-api-reference/platform-apis/zhihu/web/hot-recommend.md +++ b/model-api-reference/platform-apis/zhihu/web/hot-recommend.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Hot Recommend API Reference" -description: "SandBase API operation zhihu/web/hot-recommend." +title: "Zhihu Hot Recommendations API Reference" +description: "Zhihu Hot Recommendations API reference for SandBase. Use model zhihu/web/hot-recommend with /v1/api/zhihu/web/hot-recommend; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/hot-recommend" -apiReferenceJson: "{\"title\":\"Get Zhihu Hot Recommend\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/hot-recommend\",\"description\":\"Get Zhihu Hot Recommend\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"},{\"name\":\"page_number\",\"type\":\"string\",\"required\":false,\"description\":\"Page Number\",\"default\":\"1\"},{\"name\":\"session_token\",\"type\":\"string\",\"required\":false,\"description\":\"Session Token\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/hot-recommend \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"zhihu/web/hot-recommend\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"zhihu/web/hot-recommend\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/hot-recommend\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"zhihu/web/hot-recommend\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/hot-recommend\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/hot-recommend\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/hot-recommend\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/hot-recommend\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/hot-recommend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/hot-recommend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/hot-recommend\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Hot Recommendations\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/hot-recommend\",\"description\":\"Returns hot recommendation items and content snippets from Zhihu Web. Supports pagination through offset and page_number alongside an optional session_token.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"},{\"name\":\"page_number\",\"type\":\"string\",\"required\":false,\"description\":\"Page Number\",\"default\":\"1\"},{\"name\":\"session_token\",\"type\":\"string\",\"required\":false,\"description\":\"Session Token\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/hot-recommend \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/hot-recommend\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/hot-recommend\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/hot-recommend\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/hot-recommend\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/hot-recommend\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/hot-recommend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/hot-recommend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/hot-recommend\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Hot Recommend" + modelName: "Zhihu Hot Recommendations" modelId: "zhihu/web/hot-recommend" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/pin-comments.md b/model-api-reference/platform-apis/zhihu/web/pin-comments.md index c54ddacd..fca7759f 100644 --- a/model-api-reference/platform-apis/zhihu/web/pin-comments.md +++ b/model-api-reference/platform-apis/zhihu/web/pin-comments.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Pin Comments API Reference" -description: "SandBase API operation zhihu/web/pin-comments." +title: "Zhihu Pin Comments API Reference" +description: "Zhihu Pin Comments API reference for SandBase. Use model zhihu/web/pin-comments with /v1/api/zhihu/web/pin-comments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/pin-comments" -apiReferenceJson: "{\"title\":\"Get Zhihu Pin Comments\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/pin-comments\",\"description\":\"Get the comments of a Zhihu pin\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of comments per page\",\"default\":\"20\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset, take the cursor from the response for paging\",\"default\":\"\\\"\\\"\"},{\"name\":\"order_by\",\"type\":\"string\",\"required\":false,\"description\":\"Sort, score=default, ts=newest\",\"default\":\"score\",\"constraints\":\"Allowed values: score, ts\"},{\"name\":\"pin_id\",\"type\":\"string\",\"required\":true,\"description\":\"Pin ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/pin-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"pin_id\\\": \\\"2050290260991534603\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"pin_id\\\": \\\"2050290260991534603\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/pin-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"pin_id\\\": \\\"2050290260991534603\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/pin-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/pin-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/pin-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/pin-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/pin-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/pin-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/pin-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Pin Comments\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/pin-comments\",\"description\":\"Returns comments for a Zhihu pin, including author details, like counts, and reply counts. Supports sorting by score or available timestamp.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of comments per page\",\"default\":\"20\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset, take the cursor from the response for paging\",\"default\":\"\\\"\\\"\"},{\"name\":\"order_by\",\"type\":\"string\",\"required\":false,\"description\":\"Sort, score=default, ts=newest\",\"default\":\"score\",\"constraints\":\"Allowed values: score, ts\"},{\"name\":\"pin_id\",\"type\":\"string\",\"required\":true,\"description\":\"Pin ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/pin-comments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"pin_id\\\": \\\"2050290260991534603\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"pin_id\\\": \\\"2050290260991534603\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/pin-comments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"pin_id\\\": \\\"2050290260991534603\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/pin-comments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/pin-comments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/pin-comments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/pin-comments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/pin-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/pin-comments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/pin-comments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Pin Comments" + modelName: "Zhihu Pin Comments" modelId: "zhihu/web/pin-comments" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/pin-detail.md b/model-api-reference/platform-apis/zhihu/web/pin-detail.md index e1ad3c66..55837ff0 100644 --- a/model-api-reference/platform-apis/zhihu/web/pin-detail.md +++ b/model-api-reference/platform-apis/zhihu/web/pin-detail.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Pin Detail API Reference" -description: "SandBase API operation zhihu/web/pin-detail." +title: "Zhihu Pin Detail API Reference" +description: "Zhihu Pin Detail API reference for SandBase. Use model zhihu/web/pin-detail with /v1/api/zhihu/web/pin-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/pin-detail" -apiReferenceJson: "{\"title\":\"Get Zhihu Pin Detail\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/pin-detail\",\"description\":\"Get the detail of a single Zhihu pin\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pin_id\",\"type\":\"string\",\"required\":true,\"description\":\"Pin ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/pin-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"pin_id\\\": \\\"2050290260991534603\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"pin_id\\\": \\\"2050290260991534603\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/pin-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"pin_id\\\": \\\"2050290260991534603\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/pin-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/pin-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/pin-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/pin-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/pin-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/pin-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/pin-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Pin Detail\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/pin-detail\",\"description\":\"Retrieves the full content and details of a single Zhihu pin using its unique pin identifier. Returns parsed text blocks, links, and formatting metadata.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"pin_id\",\"type\":\"string\",\"required\":true,\"description\":\"Pin ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/pin-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"pin_id\\\": \\\"2050290260991534603\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"pin_id\\\": \\\"2050290260991534603\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/pin-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"pin_id\\\": \\\"2050290260991534603\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/pin-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/pin-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/pin-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/pin-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/pin-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/pin-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/pin-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Pin Detail" + modelName: "Zhihu Pin Detail" modelId: "zhihu/web/pin-detail" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/preset-search.md b/model-api-reference/platform-apis/zhihu/web/preset-search.md index 88113f07..0c219dac 100644 --- a/model-api-reference/platform-apis/zhihu/web/preset-search.md +++ b/model-api-reference/platform-apis/zhihu/web/preset-search.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Preset Search API Reference" -description: "SandBase API operation zhihu/web/preset-search." +title: "Zhihu Preset Search API Reference" +description: "Zhihu Preset Search API reference for SandBase. Use model zhihu/web/preset-search with /v1/api/zhihu/web/preset-search; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/preset-search" -apiReferenceJson: "{\"title\":\"Get Zhihu Preset Search\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/preset-search\",\"description\":\"Get Zhihu Preset Search\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/preset-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"zhihu/web/preset-search\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"zhihu/web/preset-search\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/preset-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"zhihu/web/preset-search\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/preset-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/preset-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/preset-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/preset-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/preset-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/preset-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/preset-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Preset Search\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/preset-search\",\"description\":\"Retrieves preset search recommendations and default placeholder queries from Zhihu Web. Returns trending search terms without requiring input parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/preset-search \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/preset-search\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/preset-search\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/preset-search\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/preset-search\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/preset-search\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/preset-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/preset-search\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/preset-search\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Preset Search" + modelName: "Zhihu Preset Search" modelId: "zhihu/web/preset-search" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/question-answers.md b/model-api-reference/platform-apis/zhihu/web/question-answers.md index 952fda8d..5de2af14 100644 --- a/model-api-reference/platform-apis/zhihu/web/question-answers.md +++ b/model-api-reference/platform-apis/zhihu/web/question-answers.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Question Answers API Reference" -description: "SandBase API operation zhihu/web/question-answers." +title: "Zhihu Question Answers API Reference" +description: "Zhihu Question Answers API reference for SandBase. Use model zhihu/web/question-answers with /v1/api/zhihu/web/question-answers; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/question-answers" -apiReferenceJson: "{\"title\":\"Get Zhihu Question Answers\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/question-answers\",\"description\":\"Get Zhihu Question Answers List\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor for next page, extracted from response fields\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of answers per page, default 5\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset, default 0\"},{\"name\":\"order\",\"type\":\"string\",\"required\":false,\"description\":\"Sort order, default=default sort, updated=sort by time\"},{\"name\":\"question_id\",\"type\":\"string\",\"required\":true,\"description\":\"Question ID\"},{\"name\":\"session_id\",\"type\":\"string\",\"required\":false,\"description\":\"Session ID for pagination state, extracted from response fields\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/question-answers \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"question_id\\\": \\\"question_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"question_id\\\": \\\"question_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/question-answers\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"question_id\\\": \\\"question_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/question-answers\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/question-answers\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/question-answers\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/question-answers\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/question-answers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/question-answers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/question-answers\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Question Answers\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/question-answers\",\"description\":\"Returns a list of answers for a specified Zhihu question. Supports pagination through cursor or offset parameters and sorting by time or default rank.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"cursor\",\"type\":\"string\",\"required\":false,\"description\":\"Pagination cursor for next page, extracted from response fields\"},{\"name\":\"limit\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of answers per page, default 5\"},{\"name\":\"offset\",\"type\":\"integer\",\"required\":false,\"description\":\"Offset, default 0\"},{\"name\":\"order\",\"type\":\"string\",\"required\":false,\"description\":\"Sort order, default=default sort, updated=sort by time\"},{\"name\":\"question_id\",\"type\":\"string\",\"required\":true,\"description\":\"Question ID\"},{\"name\":\"session_id\",\"type\":\"string\",\"required\":false,\"description\":\"Session ID for pagination state, extracted from response fields\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/question-answers \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"question_id\\\": \\\"question_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"question_id\\\": \\\"question_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/question-answers\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"question_id\\\": \\\"question_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/question-answers\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/question-answers\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/question-answers\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/question-answers\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/question-answers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/question-answers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/question-answers\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Question Answers" + modelName: "Zhihu Question Answers" modelId: "zhihu/web/question-answers" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/question-detail.md b/model-api-reference/platform-apis/zhihu/web/question-detail.md index 06bba7d7..6e25b3c9 100644 --- a/model-api-reference/platform-apis/zhihu/web/question-detail.md +++ b/model-api-reference/platform-apis/zhihu/web/question-detail.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Question Detail API Reference" -description: "SandBase API operation zhihu/web/question-detail." +title: "Zhihu Question Detail API Reference" +description: "Zhihu Question Detail API reference for SandBase. Use model zhihu/web/question-detail with /v1/api/zhihu/web/question-detail; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/question-detail" -apiReferenceJson: "{\"title\":\"Get Zhihu Question Detail\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/question-detail\",\"description\":\"Get Zhihu Question Detail (title / description / stats / topics, etc.)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"question_id\",\"type\":\"string\",\"required\":true,\"description\":\"Question ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/question-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"question_id\\\": \\\"37811449\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"question_id\\\": \\\"37811449\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/question-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"question_id\\\": \\\"37811449\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/question-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/question-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/question-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/question-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/question-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/question-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/question-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Question Detail\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/question-detail\",\"description\":\"Retrieves question information on Zhihu using a question ID. Returns the question title, answer counts, comment counts, follower counts, and view statistics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"question_id\",\"type\":\"string\",\"required\":true,\"description\":\"Question ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/question-detail \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"question_id\\\": \\\"37811449\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"question_id\\\": \\\"37811449\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/question-detail\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"question_id\\\": \\\"37811449\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/question-detail\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/question-detail\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/question-detail\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/question-detail\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/question-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/question-detail\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/question-detail\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Question Detail" + modelName: "Zhihu Question Detail" modelId: "zhihu/web/question-detail" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/recommend-followees.md b/model-api-reference/platform-apis/zhihu/web/recommend-followees.md index fb5d17a2..74f622c3 100644 --- a/model-api-reference/platform-apis/zhihu/web/recommend-followees.md +++ b/model-api-reference/platform-apis/zhihu/web/recommend-followees.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Recommend Followees API Reference" -description: "SandBase API operation zhihu/web/recommend-followees." +title: "Zhihu Recommended Followees API Reference" +description: "SandBase API reference for model zhihu/web/recommend-followees. Call /v1/api/zhihu/web/recommend-followees; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/recommend-followees" -apiReferenceJson: "{\"title\":\"Get Zhihu Recommend Followees\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/recommend-followees\",\"description\":\"Get Zhihu Recommend Followees\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/recommend-followees \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"zhihu/web/recommend-followees\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"zhihu/web/recommend-followees\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/recommend-followees\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"zhihu/web/recommend-followees\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/recommend-followees\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/recommend-followees\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/recommend-followees\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/recommend-followees\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/recommend-followees\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/recommend-followees\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/recommend-followees\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Recommended Followees\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/recommend-followees\",\"description\":\"Returns a list of recommended users to follow on Zhihu. Access personalized author and contributor suggestions directly from Zhihu web.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/recommend-followees \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/recommend-followees\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/recommend-followees\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/recommend-followees\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/recommend-followees\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/recommend-followees\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/recommend-followees\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/recommend-followees\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/recommend-followees\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Recommend Followees" + modelName: "Zhihu Recommended Followees" modelId: "zhihu/web/recommend-followees" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/salt-search-v3.md b/model-api-reference/platform-apis/zhihu/web/salt-search-v3.md index 5f4c4c67..6bf03eb0 100644 --- a/model-api-reference/platform-apis/zhihu/web/salt-search-v3.md +++ b/model-api-reference/platform-apis/zhihu/web/salt-search-v3.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Salt Search V3 API Reference" -description: "SandBase API operation zhihu/web/salt-search-v3." +title: "Zhihu Salt Content Search API Reference" +description: "Zhihu Salt Content Search API reference for SandBase. Use model zhihu/web/salt-search-v3 with /v1/api/zhihu/web/salt-search-v3; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/salt-search-v3" -apiReferenceJson: "{\"title\":\"Get Zhihu Salt Search V3\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/salt-search-v3\",\"description\":\"Get Zhihu Salt Search V3\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search Keywords\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of contents per page\",\"default\":\"20\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"},{\"name\":\"search_hash_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search Hash ID\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/salt-search-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/salt-search-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/salt-search-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/salt-search-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/salt-search-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/salt-search-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/salt-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/salt-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/salt-search-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Salt Content Search\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/salt-search-v3\",\"description\":\"Returns Zhihu Salt column and chapter search results matching a specified keyword. Supports pagination with offset and limit parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search Keywords\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of contents per page\",\"default\":\"20\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"},{\"name\":\"search_hash_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search Hash ID\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/salt-search-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/salt-search-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/salt-search-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/salt-search-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/salt-search-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/salt-search-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/salt-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/salt-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/salt-search-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Salt Search V3" + modelName: "Zhihu Salt Content Search" modelId: "zhihu/web/salt-search-v3" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/scholar-search-v3.md b/model-api-reference/platform-apis/zhihu/web/scholar-search-v3.md index 985b33ab..1c2e08d6 100644 --- a/model-api-reference/platform-apis/zhihu/web/scholar-search-v3.md +++ b/model-api-reference/platform-apis/zhihu/web/scholar-search-v3.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Scholar Search V3 API Reference" -description: "SandBase API operation zhihu/web/scholar-search-v3." +title: "Zhihu Scholar Paper Search API Reference" +description: "Zhihu Scholar Paper Search API reference for SandBase. Use model zhihu/web/scholar-search-v3 with /v1/api/zhihu/web/scholar-search-v3; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/scholar-search-v3" -apiReferenceJson: "{\"title\":\"Get Zhihu Scholar Search V3\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/scholar-search-v3\",\"description\":\"Get Zhihu Scholar Search V3\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"advanced_filter\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"default\":\"keywords,title,authors,abstract\"},{\"name\":\"classification\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"default\":\"\\\"\\\"\"},{\"name\":\"indexed_by\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"default\":\"\\\"\\\"\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search Keywords\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of papers per page\",\"default\":\"25\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/scholar-search-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/scholar-search-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/scholar-search-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/scholar-search-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/scholar-search-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/scholar-search-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/scholar-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/scholar-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/scholar-search-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Scholar Paper Search\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/scholar-search-v3\",\"description\":\"Search Zhihu Scholar papers matching specified keywords and filters. Returns paper details including IDs, titles, highlight snippets, and Zhihu paper URLs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"advanced_filter\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"default\":\"keywords,title,authors,abstract\"},{\"name\":\"classification\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"default\":\"\\\"\\\"\"},{\"name\":\"indexed_by\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this operation.\",\"default\":\"\\\"\\\"\"},{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search Keywords\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of papers per page\",\"default\":\"25\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/scholar-search-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/scholar-search-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/scholar-search-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/scholar-search-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/scholar-search-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/scholar-search-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/scholar-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/scholar-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/scholar-search-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Scholar Search V3" + modelName: "Zhihu Scholar Paper Search" modelId: "zhihu/web/scholar-search-v3" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/search-recommend.md b/model-api-reference/platform-apis/zhihu/web/search-recommend.md index 39561648..269fc92b 100644 --- a/model-api-reference/platform-apis/zhihu/web/search-recommend.md +++ b/model-api-reference/platform-apis/zhihu/web/search-recommend.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Search Recommend API Reference" -description: "SandBase API operation zhihu/web/search-recommend." +title: "Zhihu Search Recommendations API Reference" +description: "Zhihu Search Recommendations API reference for SandBase. Use model zhihu/web/search-recommend with /v1/api/zhihu/web/search-recommend; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/search-recommend" -apiReferenceJson: "{\"title\":\"Get Zhihu Search Recommend\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/search-recommend\",\"description\":\"Get Zhihu Search Recommend\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/search-recommend \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"zhihu/web/search-recommend\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"zhihu/web/search-recommend\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/search-recommend\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"zhihu/web/search-recommend\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/search-recommend\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/search-recommend\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/search-recommend\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/search-recommend\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/search-recommend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/search-recommend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/search-recommend\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Search Recommendations\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/search-recommend\",\"description\":\"Returns recommended search queries and trending suggestions from Zhihu Web. Helps discover popular topics and keywords without providing input search criteria.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/search-recommend \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/search-recommend\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/search-recommend\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/search-recommend\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/search-recommend\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/search-recommend\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/search-recommend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/search-recommend\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/search-recommend\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Search Recommend" + modelName: "Zhihu Search Recommendations" modelId: "zhihu/web/search-recommend" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/search-suggest.md b/model-api-reference/platform-apis/zhihu/web/search-suggest.md index 36a76b1b..282fdfbf 100644 --- a/model-api-reference/platform-apis/zhihu/web/search-suggest.md +++ b/model-api-reference/platform-apis/zhihu/web/search-suggest.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Search Suggest API Reference" -description: "SandBase API operation zhihu/web/search-suggest." +title: "Zhihu Search Suggestions API Reference" +description: "Zhihu Search Suggestions API reference for SandBase. Use model zhihu/web/search-suggest with /v1/api/zhihu/web/search-suggest; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/search-suggest" -apiReferenceJson: "{\"title\":\"Get Zhihu Search Suggest\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/search-suggest\",\"description\":\"Get Zhihu Search Suggest\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search Keywords\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/search-suggest \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/search-suggest\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/search-suggest\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/search-suggest\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/search-suggest\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/search-suggest\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/search-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/search-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/search-suggest\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Search Suggestions\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/search-suggest\",\"description\":\"Returns search query suggestions and related topics from Zhihu based on a specified search keyword.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search Keywords\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/search-suggest \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/search-suggest\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/search-suggest\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/search-suggest\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/search-suggest\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/search-suggest\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/search-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/search-suggest\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/search-suggest\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Search Suggest" + modelName: "Zhihu Search Suggestions" modelId: "zhihu/web/search-suggest" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/sub-comment-v5.md b/model-api-reference/platform-apis/zhihu/web/sub-comment-v5.md index 503da868..ee8d5628 100644 --- a/model-api-reference/platform-apis/zhihu/web/sub-comment-v5.md +++ b/model-api-reference/platform-apis/zhihu/web/sub-comment-v5.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Sub Comment V5 API Reference" -description: "SandBase API operation zhihu/web/sub-comment-v5." +title: "Zhihu Sub Comments API Reference" +description: "Zhihu Sub Comments API reference for SandBase. Use model zhihu/web/sub-comment-v5 with /v1/api/zhihu/web/sub-comment-v5; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/sub-comment-v5" -apiReferenceJson: "{\"title\":\"Get Zhihu Sub Comment V5\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/sub-comment-v5\",\"description\":\"Get Zhihu Sub Comment V5\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"comment_id\",\"type\":\"string\",\"required\":true,\"description\":\"Comment ID\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of comments per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset/Page Number\"},{\"name\":\"order_by\",\"type\":\"string\",\"required\":false,\"description\":\"Sort\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/sub-comment-v5 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/sub-comment-v5\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"comment_id\\\": \\\"comment_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/sub-comment-v5\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/sub-comment-v5\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/sub-comment-v5\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/sub-comment-v5\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/sub-comment-v5\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/sub-comment-v5\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/sub-comment-v5\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Sub Comments\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/sub-comment-v5\",\"description\":\"Returns replies to a specific Zhihu comment. Supports pagination through limit and offset parameters alongside custom sorting options.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"comment_id\",\"type\":\"string\",\"required\":true,\"description\":\"Comment ID\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of comments per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset/Page Number\"},{\"name\":\"order_by\",\"type\":\"string\",\"required\":false,\"description\":\"Sort\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/sub-comment-v5 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"comment_id\\\": \\\"comment_id\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"comment_id\\\": \\\"comment_id\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/sub-comment-v5\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"comment_id\\\": \\\"comment_id\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/sub-comment-v5\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/sub-comment-v5\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/sub-comment-v5\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/sub-comment-v5\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/sub-comment-v5\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/sub-comment-v5\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/sub-comment-v5\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Sub Comment V5" + modelName: "Zhihu Sub Comments" modelId: "zhihu/web/sub-comment-v5" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/topic-search-v3.md b/model-api-reference/platform-apis/zhihu/web/topic-search-v3.md index 85124686..c5fbc139 100644 --- a/model-api-reference/platform-apis/zhihu/web/topic-search-v3.md +++ b/model-api-reference/platform-apis/zhihu/web/topic-search-v3.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Topic Search V3 API Reference" -description: "SandBase API operation zhihu/web/topic-search-v3." +title: "Zhihu Topic Search (V3) API Reference" +description: "Zhihu Topic Search (V3) API reference for SandBase. Use model zhihu/web/topic-search-v3 with /v1/api/zhihu/web/topic-search-v3; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/topic-search-v3" -apiReferenceJson: "{\"title\":\"Get Zhihu Topic Search V3\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/topic-search-v3\",\"description\":\"Get Zhihu Topic Search V3\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search Keywords\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of topics per page\",\"default\":\"25\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/topic-search-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/topic-search-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/topic-search-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/topic-search-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/topic-search-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/topic-search-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/topic-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/topic-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/topic-search-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Topic Search (V3)\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/topic-search-v3\",\"description\":\"Searches Zhihu topics by keyword and returns matching topic profiles, follower metrics, and highlighted text matches with pagination support.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search Keywords\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of topics per page\",\"default\":\"25\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/topic-search-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/topic-search-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/topic-search-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/topic-search-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/topic-search-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/topic-search-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/topic-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/topic-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/topic-search-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Topic Search V3" + modelName: "Zhihu Topic Search (V3)" modelId: "zhihu/web/topic-search-v3" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/user-answers.md b/model-api-reference/platform-apis/zhihu/web/user-answers.md index f69d4bfb..11c2a758 100644 --- a/model-api-reference/platform-apis/zhihu/web/user-answers.md +++ b/model-api-reference/platform-apis/zhihu/web/user-answers.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu User Answers API Reference" -description: "SandBase API operation zhihu/web/user-answers." +title: "Zhihu User Answers API Reference" +description: "Zhihu User Answers API reference for SandBase. Use model zhihu/web/user-answers with /v1/api/zhihu/web/user-answers; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/user-answers" -apiReferenceJson: "{\"title\":\"Get Zhihu User Answers\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-answers\",\"description\":\"Get Zhihu User Answers\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of answers per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sort Type\",\"constraints\":\"Allowed values: created, voteups\"},{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-answers \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-answers\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-answers\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-answers\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-answers\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-answers\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-answers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-answers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-answers\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu User Answers\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-answers\",\"description\":\"Returns answers posted by a specific Zhihu user based on their user token. Supports pagination and sorting results by creation date or upvote count.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of answers per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sort Type\",\"constraints\":\"Allowed values: created, voteups\"},{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-answers \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-answers\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-answers\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-answers\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-answers\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-answers\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-answers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-answers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-answers\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu User Answers" + modelName: "Zhihu User Answers" modelId: "zhihu/web/user-answers" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/user-articles.md b/model-api-reference/platform-apis/zhihu/web/user-articles.md index f28c0466..9921d740 100644 --- a/model-api-reference/platform-apis/zhihu/web/user-articles.md +++ b/model-api-reference/platform-apis/zhihu/web/user-articles.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu User Articles API Reference" -description: "SandBase API operation zhihu/web/user-articles." +title: "Zhihu User Articles API Reference" +description: "Zhihu User Articles API reference for SandBase. Use model zhihu/web/user-articles with /v1/api/zhihu/web/user-articles; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/user-articles" -apiReferenceJson: "{\"title\":\"Get Zhihu User Articles\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-articles\",\"description\":\"Get Zhihu User Articles\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of articles per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sort Type\",\"constraints\":\"Allowed values: created, voteups\"},{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-articles \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-articles\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-articles\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-articles\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-articles\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-articles\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-articles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-articles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-articles\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu User Articles\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-articles\",\"description\":\"Retrieves articles posted by a specific Zhihu author using their user identifier. Supports sorting by post date or upvotes alongside pagination controls.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of articles per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\"},{\"name\":\"sort_type\",\"type\":\"string\",\"required\":false,\"description\":\"Sort Type\",\"constraints\":\"Allowed values: created, voteups\"},{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-articles \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-articles\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-articles\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-articles\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-articles\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-articles\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-articles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-articles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-articles\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu User Articles" + modelName: "Zhihu User Articles" modelId: "zhihu/web/user-articles" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/user-collections.md b/model-api-reference/platform-apis/zhihu/web/user-collections.md index b189b41a..47235636 100644 --- a/model-api-reference/platform-apis/zhihu/web/user-collections.md +++ b/model-api-reference/platform-apis/zhihu/web/user-collections.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu User Created Collections API Reference" -description: "SandBase API operation zhihu/web/user-collections." +title: "Zhihu User Collections API Reference" +description: "Zhihu User Collections API reference for SandBase. Use model zhihu/web/user-collections with /v1/api/zhihu/web/user-collections; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/user-collections" -apiReferenceJson: "{\"title\":\"Get Zhihu User Created Collections\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-collections\",\"description\":\"Get collections created by a Zhihu user (distinct from followed favlists)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of collections per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\"},{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-collections \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-collections\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-collections\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-collections\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-collections\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-collections\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-collections\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-collections\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-collections\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu User Collections\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-collections\",\"description\":\"Returns collections curated by a specific Zhihu user using their user URL token. Supports pagination controls via limit and offset parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of collections per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\"},{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-collections \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-collections\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-collections\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-collections\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-collections\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-collections\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-collections\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-collections\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-collections\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu User Created Collections" + modelName: "Zhihu User Collections" modelId: "zhihu/web/user-collections" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/user-follow-collections.md b/model-api-reference/platform-apis/zhihu/web/user-follow-collections.md index 2e9c93fa..9eb5487b 100644 --- a/model-api-reference/platform-apis/zhihu/web/user-follow-collections.md +++ b/model-api-reference/platform-apis/zhihu/web/user-follow-collections.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu User Follow Collections API Reference" -description: "SandBase API operation zhihu/web/user-follow-collections." +title: "Zhihu User Follow Collections API Reference" +description: "SandBase API reference for model zhihu/web/user-follow-collections. Call /v1/api/zhihu/web/user-follow-collections; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/user-follow-collections" -apiReferenceJson: "{\"title\":\"Get Zhihu User Follow Collections\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-follow-collections\",\"description\":\"Get Zhihu User Follow Collections\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of collections per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\"},{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-follow-collections \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-follow-collections\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-follow-collections\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-follow-collections\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-follow-collections\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-follow-collections\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-follow-collections\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-follow-collections\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-follow-collections\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu User Follow Collections\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-follow-collections\",\"description\":\"Returns collections followed by a specific Zhihu user using their account identifier. Supports pagination to browse through full collection lists.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of collections per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\"},{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-follow-collections \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-follow-collections\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-follow-collections\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-follow-collections\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-follow-collections\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-follow-collections\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-follow-collections\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-follow-collections\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-follow-collections\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu User Follow Collections" + modelName: "Zhihu User Follow Collections" modelId: "zhihu/web/user-follow-collections" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/user-follow-columns.md b/model-api-reference/platform-apis/zhihu/web/user-follow-columns.md index 545c314d..7ae77b66 100644 --- a/model-api-reference/platform-apis/zhihu/web/user-follow-columns.md +++ b/model-api-reference/platform-apis/zhihu/web/user-follow-columns.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu User Columns API Reference" -description: "SandBase API operation zhihu/web/user-follow-columns." +title: "Zhihu User Followed Columns API Reference" +description: "SandBase API reference for model zhihu/web/user-follow-columns. Call /v1/api/zhihu/web/user-follow-columns; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/user-follow-columns" -apiReferenceJson: "{\"title\":\"Get Zhihu User Columns\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-follow-columns\",\"description\":\"Get Zhihu User Columns\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of columns per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\"},{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-follow-columns \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-follow-columns\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-follow-columns\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-follow-columns\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-follow-columns\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-follow-columns\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-follow-columns\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-follow-columns\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-follow-columns\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu User Followed Columns\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-follow-columns\",\"description\":\"Returns the list of columns followed by a specific Zhihu user. Supports pagination controls via limit and offset parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of columns per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\"},{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-follow-columns \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-follow-columns\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-follow-columns\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-follow-columns\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-follow-columns\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-follow-columns\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-follow-columns\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-follow-columns\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-follow-columns\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu User Columns" + modelName: "Zhihu User Followed Columns" modelId: "zhihu/web/user-follow-columns" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/user-follow-questions.md b/model-api-reference/platform-apis/zhihu/web/user-follow-questions.md index 91d5cb82..f87c7c7f 100644 --- a/model-api-reference/platform-apis/zhihu/web/user-follow-questions.md +++ b/model-api-reference/platform-apis/zhihu/web/user-follow-questions.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu User Follow Questions API Reference" -description: "SandBase API operation zhihu/web/user-follow-questions." +title: "Zhihu User Followed Questions API Reference" +description: "SandBase API reference for model zhihu/web/user-follow-questions. Call /v1/api/zhihu/web/user-follow-questions; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/user-follow-questions" -apiReferenceJson: "{\"title\":\"Get Zhihu User Follow Questions\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-follow-questions\",\"description\":\"Get Zhihu User Follow Questions\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of questions per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\"},{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-follow-questions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-follow-questions\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-follow-questions\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-follow-questions\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-follow-questions\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-follow-questions\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-follow-questions\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-follow-questions\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-follow-questions\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu User Followed Questions\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-follow-questions\",\"description\":\"Returns a list of questions followed by a specified Zhihu user. Supports pagination controls through page size and offset parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of questions per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\"},{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-follow-questions \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-follow-questions\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-follow-questions\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-follow-questions\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-follow-questions\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-follow-questions\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-follow-questions\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-follow-questions\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-follow-questions\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu User Follow Questions" + modelName: "Zhihu User Followed Questions" modelId: "zhihu/web/user-follow-questions" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/user-follow-topics.md b/model-api-reference/platform-apis/zhihu/web/user-follow-topics.md index 3e4859e6..19bff521 100644 --- a/model-api-reference/platform-apis/zhihu/web/user-follow-topics.md +++ b/model-api-reference/platform-apis/zhihu/web/user-follow-topics.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu User Follow Topics API Reference" -description: "SandBase API operation zhihu/web/user-follow-topics." +title: "Zhihu User Followed Topics API Reference" +description: "SandBase API reference for model zhihu/web/user-follow-topics. Call /v1/api/zhihu/web/user-follow-topics; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/user-follow-topics" -apiReferenceJson: "{\"title\":\"Get Zhihu User Follow Topics\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-follow-topics\",\"description\":\"Get Zhihu User Follow Topics\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of topics per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\"},{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-follow-topics \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-follow-topics\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-follow-topics\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-follow-topics\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-follow-topics\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-follow-topics\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-follow-topics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-follow-topics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-follow-topics\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu User Followed Topics\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-follow-topics\",\"description\":\"Returns the list of topics followed by a specific Zhihu user. Filter and paginate results using user token, limit, and offset values.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of topics per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\"},{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-follow-topics \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-follow-topics\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-follow-topics\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-follow-topics\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-follow-topics\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-follow-topics\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-follow-topics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-follow-topics\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-follow-topics\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu User Follow Topics" + modelName: "Zhihu User Followed Topics" modelId: "zhihu/web/user-follow-topics" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/user-followees.md b/model-api-reference/platform-apis/zhihu/web/user-followees.md index dadc3973..3a2b8b8a 100644 --- a/model-api-reference/platform-apis/zhihu/web/user-followees.md +++ b/model-api-reference/platform-apis/zhihu/web/user-followees.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu User Following API Reference" -description: "SandBase API operation zhihu/web/user-followees." +title: "Zhihu User Followees API Reference" +description: "Zhihu User Followees API reference for SandBase. Use model zhihu/web/user-followees with /v1/api/zhihu/web/user-followees; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/user-followees" -apiReferenceJson: "{\"title\":\"Get Zhihu User Following\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-followees\",\"description\":\"Get Zhihu User Following\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of users per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\"},{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-followees \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-followees\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-followees\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-followees\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-followees\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-followees\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-followees\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-followees\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-followees\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu User Followees\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-followees\",\"description\":\"Returns the list of accounts that a specific Zhihu user follows. Supports pagination through limit and offset parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of users per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\"},{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-followees \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-followees\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-followees\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-followees\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-followees\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-followees\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-followees\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-followees\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-followees\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu User Following" + modelName: "Zhihu User Followees" modelId: "zhihu/web/user-followees" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/user-followers.md b/model-api-reference/platform-apis/zhihu/web/user-followers.md index 0e644cc2..6087e55e 100644 --- a/model-api-reference/platform-apis/zhihu/web/user-followers.md +++ b/model-api-reference/platform-apis/zhihu/web/user-followers.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu User Followers API Reference" -description: "SandBase API operation zhihu/web/user-followers." +title: "Zhihu User Followers API Reference" +description: "Zhihu User Followers API reference for SandBase. Use model zhihu/web/user-followers with /v1/api/zhihu/web/user-followers; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/user-followers" -apiReferenceJson: "{\"title\":\"Get Zhihu User Followers\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-followers\",\"description\":\"Get Zhihu User Followers\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of users per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\"},{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-followers \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-followers\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-followers\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-followers\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-followers\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-followers\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-followers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-followers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-followers\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu User Followers\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-followers\",\"description\":\"Retrieves a paginated list of followers for a specified Zhihu user profile. Supports offset and limit parameters for browsing through follower lists.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of users per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\"},{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-followers \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-followers\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-followers\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-followers\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-followers\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-followers\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-followers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-followers\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-followers\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu User Followers" + modelName: "Zhihu User Followers" modelId: "zhihu/web/user-followers" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/user-included-articles.md b/model-api-reference/platform-apis/zhihu/web/user-included-articles.md index 01479c50..3f09094c 100644 --- a/model-api-reference/platform-apis/zhihu/web/user-included-articles.md +++ b/model-api-reference/platform-apis/zhihu/web/user-included-articles.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu User Included Articles API Reference" -description: "SandBase API operation zhihu/web/user-included-articles." +title: "Zhihu User Included Articles API Reference" +description: "SandBase API reference for model zhihu/web/user-included-articles. Call /v1/api/zhihu/web/user-included-articles; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/user-included-articles" -apiReferenceJson: "{\"title\":\"Get Zhihu User Included Articles\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-included-articles\",\"description\":\"Get Zhihu User Included Articles\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of articles per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\"},{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-included-articles \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-included-articles\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-included-articles\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-included-articles\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-included-articles\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-included-articles\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-included-articles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-included-articles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-included-articles\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu User Included Articles\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-included-articles\",\"description\":\"Returns articles included or featured by a specific Zhihu user. Filter results using pagination parameters alongside the target user identifier.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of articles per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\"},{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-included-articles \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-included-articles\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-included-articles\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-included-articles\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-included-articles\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-included-articles\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-included-articles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-included-articles\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-included-articles\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu User Included Articles" + modelName: "Zhihu User Included Articles" modelId: "zhihu/web/user-included-articles" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/user-info.md b/model-api-reference/platform-apis/zhihu/web/user-info.md index cc00a4d9..a1617a9c 100644 --- a/model-api-reference/platform-apis/zhihu/web/user-info.md +++ b/model-api-reference/platform-apis/zhihu/web/user-info.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu User Info API Reference" -description: "SandBase API operation zhihu/web/user-info." +title: "Zhihu Web User Profile API Reference" +description: "Zhihu Web User Profile API reference for SandBase. Use model zhihu/web/user-info with /v1/api/zhihu/web/user-info; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/user-info" -apiReferenceJson: "{\"title\":\"Get Zhihu User Info\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-info\",\"description\":\"Get Zhihu User Info\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_url_token\\\": \\\"ming-he-43-93\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_url_token\\\": \\\"ming-he-43-93\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_url_token\\\": \\\"ming-he-43-93\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Web User Profile\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-info\",\"description\":\"Retrieves public profile metrics and details for a Zhihu user. Returns article counts, answer counts, follower totals, and user account metadata.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-info \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_url_token\\\": \\\"ming-he-43-93\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_url_token\\\": \\\"ming-he-43-93\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-info\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_url_token\\\": \\\"ming-he-43-93\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-info\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-info\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-info\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-info\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-info\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-info\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu User Info" + modelName: "Zhihu Web User Profile" modelId: "zhihu/web/user-info" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/user-pins.md b/model-api-reference/platform-apis/zhihu/web/user-pins.md index 49d27f23..c8f53ff8 100644 --- a/model-api-reference/platform-apis/zhihu/web/user-pins.md +++ b/model-api-reference/platform-apis/zhihu/web/user-pins.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu User Pins API Reference" -description: "SandBase API operation zhihu/web/user-pins." +title: "Zhihu User Pins API Reference" +description: "Zhihu User Pins API reference for SandBase. Use model zhihu/web/user-pins with /v1/api/zhihu/web/user-pins; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/user-pins" -apiReferenceJson: "{\"title\":\"Get Zhihu User Pins\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-pins\",\"description\":\"Get a Zhihu user's pins (moments) list\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of pins per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\"},{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-pins \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-pins\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-pins\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-pins\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-pins\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-pins\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-pins\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-pins\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-pins\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu User Pins\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-pins\",\"description\":\"Returns a list of pins or moments posted by a specific Zhihu user. Supports pagination controls using offset and limit parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of pins per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\"},{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"User ID\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-pins \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-pins\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-pins\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-pins\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-pins\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-pins\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-pins\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-pins\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-pins\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu User Pins" + modelName: "Zhihu User Pins" modelId: "zhihu/web/user-pins" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/user-search-v3.md b/model-api-reference/platform-apis/zhihu/web/user-search-v3.md index 74880e48..de13910a 100644 --- a/model-api-reference/platform-apis/zhihu/web/user-search-v3.md +++ b/model-api-reference/platform-apis/zhihu/web/user-search-v3.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu User Search V3 API Reference" -description: "SandBase API operation zhihu/web/user-search-v3." +title: "Zhihu User Search API Reference" +description: "Zhihu User Search API reference for SandBase. Use model zhihu/web/user-search-v3 with /v1/api/zhihu/web/user-search-v3; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/user-search-v3" -apiReferenceJson: "{\"title\":\"Get Zhihu User Search V3\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-search-v3\",\"description\":\"Get Zhihu User Search V3\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search Keywords\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of users per page\",\"default\":\"25\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-search-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"deepseek\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"deepseek\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-search-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"deepseek\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-search-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-search-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-search-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-search-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-search-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu User Search\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-search-v3\",\"description\":\"Search for Zhihu user profiles by query terms. Returns matching accounts along with follower numbers, article counts, and answer statistics.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search Keywords\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of users per page\",\"default\":\"25\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-search-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"deepseek\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"deepseek\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-search-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"deepseek\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-search-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-search-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-search-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-search-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-search-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu User Search V3" + modelName: "Zhihu User Search" modelId: "zhihu/web/user-search-v3" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/user-segments.md b/model-api-reference/platform-apis/zhihu/web/user-segments.md index 22cb919e..7e505f52 100644 --- a/model-api-reference/platform-apis/zhihu/web/user-segments.md +++ b/model-api-reference/platform-apis/zhihu/web/user-segments.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu User Segments API Reference" -description: "SandBase API operation zhihu/web/user-segments." +title: "Zhihu User Highlighted Segments API Reference" +description: "Zhihu User Highlighted Segments API reference for SandBase. Use model zhihu/web/user-segments with /v1/api/zhihu/web/user-segments; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/user-segments" -apiReferenceJson: "{\"title\":\"Get Zhihu User Segments\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-segments\",\"description\":\"Get a Zhihu user's highlighted segments (lineComments)\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Content type, all for all\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\"},{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"MUST be the user's **member hash id** (e.g. c72367...), not the url_token\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-segments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-segments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-segments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-segments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-segments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-segments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-segments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-segments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-segments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu User Highlighted Segments\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/user-segments\",\"description\":\"Returns highlighted text segments and line comments for a specified Zhihu member. Supports filtering by content type along with offset pagination.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"content_type\",\"type\":\"string\",\"required\":false,\"description\":\"Content type, all for all\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number per page\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\"},{\"name\":\"user_url_token\",\"type\":\"string\",\"required\":true,\"description\":\"MUST be the user's **member hash id** (e.g. c72367...), not the url_token\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/user-segments \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-segments\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"user_url_token\\\": \\\"user_url_token\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/user-segments\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/user-segments\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/user-segments\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/user-segments\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/user-segments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/user-segments\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/user-segments\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu User Segments" + modelName: "Zhihu User Highlighted Segments" modelId: "zhihu/web/user-segments" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/video-list.md b/model-api-reference/platform-apis/zhihu/web/video-list.md index c5de36af..846b7a73 100644 --- a/model-api-reference/platform-apis/zhihu/web/video-list.md +++ b/model-api-reference/platform-apis/zhihu/web/video-list.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Video List API Reference" -description: "SandBase API operation zhihu/web/video-list." +title: "Zhihu Video List API Reference" +description: "Zhihu Video List API reference for SandBase. Use model zhihu/web/video-list with /v1/api/zhihu/web/video-list; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/video-list" -apiReferenceJson: "{\"title\":\"Get Zhihu Video List\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/video-list\",\"description\":\"Get Zhihu Video List\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of videos per page\",\"default\":\"12\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/video-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"zhihu/web/video-list\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"model\\\": \\\"zhihu/web/video-list\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/video-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"model\\\": \\\"zhihu/web/video-list\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/video-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/video-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/video-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/video-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/video-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Video List\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/video-list\",\"description\":\"Retrieves a paginated list of videos from the Zhihu web platform. Supports pagination controls through page size and offset index parameters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of videos per page\",\"default\":\"12\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/video-list \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/video-list\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/video-list\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/video-list\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/video-list\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/video-list\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/video-list\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/video-list\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Video List" + modelName: "Zhihu Video List" modelId: "zhihu/web/video-list" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/platform-apis/zhihu/web/video-search-v3.md b/model-api-reference/platform-apis/zhihu/web/video-search-v3.md index 9342f59c..b9f44f4e 100644 --- a/model-api-reference/platform-apis/zhihu/web/video-search-v3.md +++ b/model-api-reference/platform-apis/zhihu/web/video-search-v3.md @@ -1,13 +1,13 @@ --- -title: "Get Zhihu Video Search V3 API Reference" -description: "SandBase API operation zhihu/web/video-search-v3." +title: "Zhihu Video Search (V3) API Reference" +description: "Zhihu Video Search (V3) API reference for SandBase. Use model zhihu/web/video-search-v3 with /v1/api/zhihu/web/video-search-v3; see request and response examples." aside: false outline: false generatedBy: "sandbase-platform-api-reference" apiReferenceKey: "api/zhihu/web/video-search-v3" -apiReferenceJson: "{\"title\":\"Get Zhihu Video Search V3\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/video-search-v3\",\"description\":\"Get Zhihu Video Search V3\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search Keywords\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of videos per page\",\"default\":\"20\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"},{\"name\":\"search_hash_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search Hash ID\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/video-search-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/video-search-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\\\n\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/video-search-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/video-search-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/video-search-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/video-search-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/video-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/video-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/video-search-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" +apiReferenceJson: "{\"title\":\"Zhihu Video Search (V3)\",\"operation\":\"Zhihu API Operation\",\"method\":\"POST\",\"path\":\"/v1/api/zhihu/web/video-search-v3\",\"description\":\"Returns Zhihu video search results matching a specified keyword. Supports pagination using offset and limit parameters, and accepts a search hash ID.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.\",\"fields\":[{\"name\":\"keyword\",\"type\":\"string\",\"required\":true,\"description\":\"Search Keywords\"},{\"name\":\"limit\",\"type\":\"string\",\"required\":false,\"description\":\"Number of videos per page\",\"default\":\"20\"},{\"name\":\"offset\",\"type\":\"string\",\"required\":false,\"description\":\"Offset\",\"default\":\"0\"},{\"name\":\"search_hash_id\",\"type\":\"string\",\"required\":false,\"description\":\"Search Hash ID\",\"default\":\"\\\"\\\"\"}]},{\"title\":\"Response Schema\",\"description\":\"A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Contains exactly one item whose only field is data.\"},{\"name\":\"outputs[0].data\",\"type\":\"object | array\",\"required\":false,\"description\":\"Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"API capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the API registry.\",\"default\":\"api, zhihu\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the API registry.\",\"default\":\"sync\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"curl -X POST https://api.sandbase.ai/v1/api/zhihu/web/video-search-v3 \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}'\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport requests\\n\\nheaders = {\\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\"}\\npayload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n}\\nresponse = requests.post(\\\"https://api.sandbase.ai/v1/api/zhihu/web/video-search-v3\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const payload = {\\n \\\"keyword\\\": \\\"OpenAI\\\"\\n};\\nconst headers = { Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`, \\\"Content-Type\\\": \\\"application/json\\\" };\\nconst response = await fetch(\\\"https://api.sandbase.ai/v1/api/zhihu/web/video-search-v3\\\", { method: \\\"POST\\\", headers, body: JSON.stringify(payload) });\\nif (!response.ok) throw new Error(await response.text());\\nlet result = await response.json();\\nconsole.log(result);\"}],\"notes\":[{\"title\":\"pending response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"pending\\\",\\\"model\\\":\\\"zhihu/web/video-search-v3\\\"}\"},{\"title\":\"running response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"running\\\",\\\"model\\\":\\\"zhihu/web/video-search-v3\\\"}\"},{\"title\":\"completed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"completed\\\",\\\"model\\\":\\\"zhihu/web/video-search-v3\\\",\\\"outputs\\\":[{\\\"data\\\":{}}]}\"},{\"title\":\"failed response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"failed\\\",\\\"model\\\":\\\"zhihu/web/video-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"},{\"title\":\"timeout response\",\"description\":\"{\\\"id\\\":\\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\\"status\\\":\\\"timeout\\\",\\\"model\\\":\\\"zhihu/web/video-search-v3\\\",\\\"error\\\":{\\\"type\\\":\\\"upstream_error\\\",\\\"message\\\":\\\"upstream request failed\\\"}}\"}],\"response\":{\"status\":\"200 OK\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"status\\\": \\\"completed\\\",\\n \\\"model\\\": \\\"zhihu/web/video-search-v3\\\",\\n \\\"outputs\\\": [\\n {\\n \\\"data\\\": {}\\n }\\n ]\\n}\"}}" seo: - modelName: "Get Zhihu Video Search V3" + modelName: "Zhihu Video Search (V3)" modelId: "zhihu/web/video-search-v3" vendor: "Zhihu" vendorSlug: "zhihu" diff --git a/model-api-reference/video-generation.md b/model-api-reference/video-generation.md index f53048f0..c007749c 100644 --- a/model-api-reference/video-generation.md +++ b/model-api-reference/video-generation.md @@ -7,274 +7,145 @@ description: Browse SandBase Video Generation APIs by provider and open a model Browse enabled video generation models by provider in the left navigation. Open an entry for its exact model identifier, supported capabilities, and a working request. -Video Generation models use the SandBase generation protocol declared in each model registry file. Most are asynchronous: submit a request, receive an opaque run ID, then poll `GET /v1/run/{id}` until the generation is completed, failed, or timed out. Check the selected model page's execution mode because synchronous models return their result in the initial response. +Video Generation models use the SandBase generation protocol declared in each model registry file. Most are asynchronous: submit a request, receive an opaque run ID, then poll GET /v1/run/{id} until the generation is completed, failed, or timed out. Check the selected model page's execution mode because synchronous models return their result in the initial response. ## Providers -### OpenAI - -- [Sora 2 Characters](/model-api-reference/video-generation/openai/sora-2/characters) — Sora 2 Characters is OpenAI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [Sora 2 Remix](/model-api-reference/video-generation/openai/sora-2/video-to-video/remix) — Sora 2 Video To Video Remix is OpenAI's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. -- [Sora 2 Image to Video Pro](/model-api-reference/video-generation/openai/sora-2/image-to-video/pro) — Sora 2 Pro is OpenAI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [Sora 2 Text to Video Pro](/model-api-reference/video-generation/openai/sora-2/text-to-video/pro) — Sora 2 Pro by OpenAI - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation. -- [Sora 2 (OpenAI: sora-2 / text-to-video)](/model-api-reference/video-generation/openai/sora-2/text-to-video) — Sora 2 by OpenAI - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation. -- [Sora 2 (OpenAI: sora-2 / image-to-video)](/model-api-reference/video-generation/openai/sora-2/image-to-video) — Sora 2 is OpenAI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. - ### ByteDance +- [Seedance 2.5 Text to Video](/model-api-reference/video-generation/bytedance/seedance/2.5/text-to-video) — ByteDance's next-generation text-to-video model, generating native single-shot clips up to 30 seconds at 720p with coherent motion, native audio, and director-level camera control for professional-grade video creation. - [Seedance 2.5 Image to Video](/model-api-reference/video-generation/bytedance/seedance/2.5/image-to-video) — ByteDance's next-generation image-to-video model, animating a single still into a native clip up to 30 seconds at 720p with continuous, coherent motion, native audio, and director-level camera control. - [Seedance 2.5 Reference to Video](/model-api-reference/video-generation/bytedance/seedance/2.5/reference-to-video) — ByteDance's next-generation reference-to-video model, generating video from multimodal references (images, videos, audio) and locking a character, set, and palette across a full take up to 30 seconds for production-grade consistency. -- [Seedance 2.5 Text to Video](/model-api-reference/video-generation/bytedance/seedance/2.5/text-to-video) — ByteDance's next-generation text-to-video model, generating native single-shot clips up to 30 seconds at 720p with coherent motion, native audio, and director-level camera control for professional-grade video creation. +- [Seedance 2.0 Mini Reference to Video](/model-api-reference/video-generation/bytedance/seedance/2.0/mini/reference-to-video) — Seedance 2.0 Mini by ByteDance - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. +- [Seedance 2.0 Mini Image to Video](/model-api-reference/video-generation/bytedance/seedance/2.0/mini/image-to-video) — Seedance 2.0 Mini by ByteDance - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. +- [Seedance 2.0 Mini Text to Video](/model-api-reference/video-generation/bytedance/seedance/2.0/mini/text-to-video) — Seedance 2.0 Mini is ByteDance's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. - [Seedance 2.0 Text to Video](/model-api-reference/video-generation/bytedance/seedance/2.0/text-to-video) — ByteDance's most advanced text-to-video model delivering cinematic output, native audio, multi-shot editing, and director-level camera control for professional-grade video creation. - [Seedance 2.0 Reference to Video](/model-api-reference/video-generation/bytedance/seedance/2.0/reference-to-video) — ByteDance's most advanced reference-to-video model generating cinematic video guided by reference content, with native audio, multi-shot editing, and director-level camera control for professional-grade video creation. - [Seedance 2.0 Fast Text to Video](/model-api-reference/video-generation/bytedance/seedance/2.0/fast/text-to-video) — ByteDance's most advanced text-to-video model in its fast tier delivering lower latency and cost without compromising on cinematic output, native audio, multi-shot editing, and director-level camera control for professional-grade video creation. - [Seedance 2.0 Image to Video](/model-api-reference/video-generation/bytedance/seedance/2.0/image-to-video) — ByteDance's most advanced image-to-video model transforming still images into cinematic video with native audio, multi-shot editing, and director-level camera control for professional-grade video creation. - [Seedance 2.0 Fast Reference to Video](/model-api-reference/video-generation/bytedance/seedance/2.0/fast/reference-to-video) — ByteDance's most advanced reference-to-video model in its fast tier delivering lower latency and cost without compromising on cinematic output, native audio, multi-shot editing, and director-level camera control for professional-grade video creation. - [Seedance 2.0 Fast Image to Video](/model-api-reference/video-generation/bytedance/seedance/2.0/fast/image-to-video) — ByteDance's most advanced image-to-video model in its fast tier delivering lower latency and cost without compromising on cinematic output, native audio, multi-shot editing, and director-level camera control for professional-grade video creation. -- [DreamActor 2.0](/model-api-reference/video-generation/bytedance/dreamactor/2.0) — DreamActor M2.0 by ByteDance generates videos by animating a reference image using motion from a driving video. It replicates motion, facial expressions, and lip movements from the template video while preserving the subject and background features of the input image. -- [Seedance v1.5 Pro Text to Video](/model-api-reference/video-generation/bytedance/seedance/1.5/pro/text-to-video) — ByteDance Seedance v1.5 Pro text-to-video model generating cinematic video from text prompts with native audio generation, camera control, and professional-grade output quality. -- [Seedance v1.5 Pro Image to Video](/model-api-reference/video-generation/bytedance/seedance/1.5/pro/image-to-video) — ByteDance Seedance v1.5 Pro image-to-video model transforming still images into cinematic video with native audio generation, camera control, and professional-grade output quality. -- [Seedance 2.0 Mini Text to Video](/model-api-reference/video-generation/bytedance/seedance/2.0/mini/text-to-video) — Seedance 2.0 Mini text-to-video generation through the unified `/v1/run` endpoint. -- [Seedance 2.0 Mini Image to Video](/model-api-reference/video-generation/bytedance/seedance/2.0/mini/image-to-video) — Seedance 2.0 Mini image-to-video generation through the unified `/v1/run` endpoint. -- [Seedance 2.0 Mini Reference to Video](/model-api-reference/video-generation/bytedance/seedance/2.0/mini/reference-to-video) — Seedance 2.0 Mini reference-guided video generation through the unified `/v1/run` endpoint. -- …and 10 more models in the sidebar. +- …and 4 more models in the sidebar. ### Google -- [Gemini Omni Flash (Google: gemini-omni-flash / reference-to-video)](/model-api-reference/video-generation/google/gemini-omni-flash/reference-to-video) — Gemini Omni Flash by Google - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [Gemini Omni Flash (Google: gemini-omni-flash / image-to-video)](/model-api-reference/video-generation/google/gemini-omni-flash/image-to-video) — Gemini Omni Flash by Google - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [Gemini Omni Flash (Google: gemini-omni-flash / edit)](/model-api-reference/video-generation/google/gemini-omni-flash/edit) — Gemini Omni Flash Edit by Google - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. -- [Gemini Omni Flash (Google: gemini-omni-flash)](/model-api-reference/video-generation/google/gemini-omni-flash) — Gemini Omni Flash is Google's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. -- [Veo 3.1 Fast (Google: veo3.1 / fast / reference-to-video)](/model-api-reference/video-generation/google/veo3.1/fast/reference-to-video) — Veo3.1 Fast by Google - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [Veo3.1 Lite FLF](/model-api-reference/video-generation/google/veo3.1/lite/first-last-frame-to-video) — Veo3.1 Lite First Last Frame To Video is Google's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [Veo3.1 Lite Image to Video](/model-api-reference/video-generation/google/veo3.1/lite/image-to-video) — Veo3.1 Lite by Google - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [Veo3.1 Lite Text to Video](/model-api-reference/video-generation/google/veo3.1/lite) — Veo3.1 Lite is Google's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. -- [Veo 3.1 Fast (Google: veo3.1 / fast / extend-video)](/model-api-reference/video-generation/google/veo3.1/fast/extend-video) — Veo3.1 Fast Extend Video by Google - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. -- [Veo 3.1 (Google: veo3.1 / extend-video)](/model-api-reference/video-generation/google/veo3.1/extend-video) — Veo3.1 Extend Video is Google's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. -- [Veo 3.1 Fast (Google: veo3.1 / fast / first-last-frame-to-video)](/model-api-reference/video-generation/google/veo3.1/fast/first-last-frame-to-video) — Veo3.1 Fast First Last Frame To Video is Google's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [Veo 3.1 (Google: veo3.1 / first-last-frame-to-video)](/model-api-reference/video-generation/google/veo3.1/first-last-frame-to-video) — Veo3.1 First Last Frame To Video by Google - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- …and 11 more models in the sidebar. +- [Gemini Omni Flash 1.1 Edit](/model-api-reference/video-generation/google/gemini-omni-flash/1.1/edit) — Gemini Omni Flash 1.1 Edit by Google applies natural-language edits to an existing video of up to ten seconds, such as changing style, lighting, or objects, at 360p to 4K output. +- [Gemini Omni Flash 1.1 Text to Video](/model-api-reference/video-generation/google/gemini-omni-flash/1.1/text-to-video) — Gemini Omni Flash 1.1 is Google's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. +- [Gemini Omni Flash 1.1 Image to Video](/model-api-reference/video-generation/google/gemini-omni-flash/1.1/image-to-video) — Gemini Omni Flash 1.1 by Google - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. +- [Gemini Omni Flash 1.1 Reference to Video](/model-api-reference/video-generation/google/gemini-omni-flash/1.1/reference-to-video) — Gemini Omni Flash 1.1 Reference to Video by Google generates a short video with synchronized audio guided by up to ten reference images and up to three short reference videos. +- [Gemini Omni Flash Reference to Video](/model-api-reference/video-generation/google/gemini-omni-flash/reference-to-video) — Gemini Omni Flash Reference to Video by Google generates a short video with synchronized audio that keeps subjects, products, or style consistent with up to ten reference images. +- [Gemini Omni Flash Image to Video](/model-api-reference/video-generation/google/gemini-omni-flash/image-to-video) — Gemini Omni Flash by Google - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. +- [Gemini Omni Flash Edit](/model-api-reference/video-generation/google/gemini-omni-flash/edit) — Gemini Omni Flash Edit by Google applies natural-language edits to an existing short video, such as changing style, lighting, or objects, while keeping the rest of the scene consistent. +- [Gemini Omni Flash Text to Video](/model-api-reference/video-generation/google/gemini-omni-flash/text-to-video) — Gemini Omni Flash is Google's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. +- [Veo 3.1 Fast Reference to Video](/model-api-reference/video-generation/google/veo3.1/fast/reference-to-video) — Veo3.1 Fast by Google - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. +- [Veo 3.1 Lite First-Last Frame to Video](/model-api-reference/video-generation/google/veo3.1/lite/first-last-frame-to-video) — Veo3.1 Lite First Last Frame To Video is Google's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. +- [Veo 3.1 Lite Image to Video](/model-api-reference/video-generation/google/veo3.1/lite/image-to-video) — Veo3.1 Lite by Google - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. +- [Veo 3.1 Lite Text to Video](/model-api-reference/video-generation/google/veo3.1/lite/text-to-video) — Veo3.1 Lite is Google's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. +- …and 9 more models in the sidebar. ### Luma -- [Luma Ray 3.2 Video to Video](/model-api-reference/video-generation/luma/agent/ray/3.2/video-to-video) — Agent Ray 3.2 by Luma - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. -- [Luma Ray 3.2 Reframe](/model-api-reference/video-generation/luma/agent/ray/3.2/reframe) — Agent Ray 3.2 is Luma's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. -- [Luma Ray 3.2 Text to Video](/model-api-reference/video-generation/luma/agent/ray/3.2/text-to-video) — Agent Ray 3.2 is Luma's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. -- [Luma Ray 3.2 Image to Video](/model-api-reference/video-generation/luma/agent/ray/3.2/image-to-video) — Agent Ray 3.2 by Luma - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [Luma Ray Flash 2 Modify](/model-api-reference/video-generation/luma/ray-flash-2/modify) — Ray Flash 2 Modify by Luma - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. -- [Luma Ray 2 Modify](/model-api-reference/video-generation/luma/ray-2/modify) — Ray 2 Modify by Luma - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. -- [Luma Ray Flash 2 Reframe](/model-api-reference/video-generation/luma/ray-flash-2/reframe) — Ray Flash 2 Reframe is Luma's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. -- [Luma Ray 2 Reframe](/model-api-reference/video-generation/luma/ray-2/reframe) — Ray 2 Reframe is Luma's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. -- [Luma Ray Flash 2 Image to Video](/model-api-reference/video-generation/luma/ray-flash-2/image-to-video) — Ray Flash 2 by Luma - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [Luma Ray Flash 2 Text to Video](/model-api-reference/video-generation/luma/ray-flash-2/text-to-video) — Ray Flash 2 is Luma's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. -- [Luma Ray 2 Image to Video](/model-api-reference/video-generation/luma/ray-2/image-to-video) — Ray 2 by Luma - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [Luma Ray 2 Text to Video](/model-api-reference/video-generation/luma/ray-2/text-to-video) — Ray 2 is Luma's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. +- [Luma Ray 3.2 Text to Video](/model-api-reference/video-generation/luma/ray/3.2/text-to-video) — Agent Ray 3.2 is Luma's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. +- [Luma Ray 3.2 Image to Video](/model-api-reference/video-generation/luma/ray/3.2/image-to-video) — Agent Ray 3.2 by Luma - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. ### MiniMax -- [H3 Max Reference to Video](/model-api-reference/video-generation/minimax/h3-max/reference-to-video) — H3 Max is MiniMax's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [H3 Max Image to Video](/model-api-reference/video-generation/minimax/h3-max/image-to-video) — H3 Max is MiniMax's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [MiniMax H3 Max Text to Video](/model-api-reference/video-generation/minimax/h3-max/text-to-video) — H3 Max by MiniMax - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation. -- [MiniMax H3 Video Regeneration](/model-api-reference/video-generation/minimax/h3/video-regeneration) — Regenerate a single base video from a text prompt as a 2K MiniMax H3 video. -- [MiniMax H3 (Text to Video)](/model-api-reference/video-generation/minimax/h3/text-to-video) — Generate native-stereo 2K video from text with MiniMax H3. -- [MiniMax H3 (Image to Video)](/model-api-reference/video-generation/minimax/h3/image-to-video) — Generate native-stereo 2K video from a first frame and optional last frame with MiniMax H3. -- [MiniMax H3 (Reference to Video)](/model-api-reference/video-generation/minimax/h3/reference-to-video) — Generate native-stereo 2K video guided by image, video, and audio references with MiniMax H3. -- [MiniMax Hailuo 2.3 [Pro] (Image to Video)](/model-api-reference/video-generation/minimax/hailuo/2.3/pro/image-to-video) — Hailuo 2.3 Pro is MiniMax's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [MiniMax Hailuo 2.3 Fast [Standard] (Image to Video)](/model-api-reference/video-generation/minimax/hailuo/2.3-fast/standard/image-to-video) — Hailuo 2.3 Fast Standard is MiniMax's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [MiniMax Hailuo 2.3 [Standard] (Image to Video)](/model-api-reference/video-generation/minimax/hailuo/2.3/standard/image-to-video) — Hailuo 2.3 Standard by MiniMax - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [MiniMax Hailuo 2.3 Fast [Pro] (Image to Video)](/model-api-reference/video-generation/minimax/hailuo/2.3-fast/pro/image-to-video) — Hailuo 2.3 Fast Pro by MiniMax - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [MiniMax Hailuo 2.3 [Standard] (Text to Video)](/model-api-reference/video-generation/minimax/hailuo/2.3/standard/text-to-video) — Hailuo 2.3 Standard is MiniMax's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. -- …and 13 more models in the sidebar. - -### Pika - -- [Pika V2.2 Frames](/model-api-reference/video-generation/pika/v2.2/frames) — V2.2 Frames is Pika's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [Pika V2.2 Image to Video](/model-api-reference/video-generation/pika/v2.2/image-to-video) — V2.2 is Pika's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [Pika V2.2 Text to Video](/model-api-reference/video-generation/pika/v2.2/text-to-video) — V2.2 by Pika - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation. -- [Pika V2 Image to Video Turbo](/model-api-reference/video-generation/pika/v2/turbo/image-to-video) — V2 Turbo is Pika's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [Pika V1.5 Effects](/model-api-reference/video-generation/pika/v1.5/effects) — V1.5 Effects by Pika - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [Pika V2.2 Scenes](/model-api-reference/video-generation/pika/v2.2/scenes) — V2.2 Scenes is Pika's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [Pika V2 Additions](/model-api-reference/video-generation/pika/v2/additions) — V2 Additions by Pika - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. -- [Pika V2.1 Text to Video](/model-api-reference/video-generation/pika/v2.1/text-to-video) — V2.1 by Pika - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation. -- [Pika V2 Text to Video Turbo](/model-api-reference/video-generation/pika/v2/turbo/text-to-video) — V2 Turbo by Pika - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation. -- [Pika V2.1 Image to Video](/model-api-reference/video-generation/pika/v2.1/image-to-video) — V2.1 is Pika's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. +- [MiniMax H3 Max Turbo Video Extend](/model-api-reference/video-generation/minimax/h3-max-turbo/video-extend) — MiniMax H3 Max Turbo, the fastest tier of the H3 family post-trained by fal, continues an existing video with 1-15 seconds of new footage with native audio. +- [MiniMax H3 Max Turbo Text to Video](/model-api-reference/video-generation/minimax/h3-max-turbo/text-to-video) — MiniMax H3 Max Turbo, the fastest tier of the H3 family post-trained by fal, turns a text prompt into a 5-15 second video with native audio. +- [MiniMax H3 Max Turbo Image to Video](/model-api-reference/video-generation/minimax/h3-max-turbo/image-to-video) — MiniMax H3 Max Turbo, the fastest tier of the H3 family post-trained by fal, animates a first frame (and optional last frame) into a 5-15 second video with native audio. +- [MiniMax H3 Max Reference to Video](/model-api-reference/video-generation/minimax/h3-max/reference-to-video) — MiniMax H3 Max by MiniMax generates a 5-15 second video with native audio at 480P or 768P that keeps subjects, motion, and voice consistent with reference images, videos, and audio. +- [MiniMax H3 Max Image to Video](/model-api-reference/video-generation/minimax/h3-max/image-to-video) — MiniMax H3 Max by MiniMax animates a first frame, optionally toward a last frame, into a 5-15 second video with native audio at 480P or 768P. +- [MiniMax H3 Max Text to Video](/model-api-reference/video-generation/minimax/h3-max/text-to-video) — MiniMax H3 Max by MiniMax turns a text prompt into a 5-15 second video with native audio at 480P or 768P, generating faster than MiniMax H3. +- [MiniMax H3 Text to Video](/model-api-reference/video-generation/minimax/h3/text-to-video) — Generate native-stereo 2K video from text with MiniMax H3. +- [MiniMax H3 Image to Video](/model-api-reference/video-generation/minimax/h3/image-to-video) — Generate native-stereo 2K video from a first frame and optional last frame with MiniMax H3. +- [MiniMax H3 Reference to Video](/model-api-reference/video-generation/minimax/h3/reference-to-video) — Generate native-stereo 2K video guided by image, video, and audio references with MiniMax H3. +- [MiniMax Hailuo 2.3 Pro Image to Video](/model-api-reference/video-generation/minimax/hailuo/2.3/pro/image-to-video) — MiniMax Hailuo 2.3 Pro by MiniMax animates a still image into a 6-second 1080P video with realistic motion and expressive characters. +- [MiniMax Hailuo 2.3 Fast Standard Image to Video](/model-api-reference/video-generation/minimax/hailuo/2.3-fast/standard/image-to-video) — MiniMax Hailuo 2.3 Fast Standard by MiniMax animates a still image into a 6 or 10 second 768P video at lower cost and latency than Hailuo 2.3 Standard. +- [MiniMax Hailuo 2.3 Standard Image to Video](/model-api-reference/video-generation/minimax/hailuo/2.3/standard/image-to-video) — MiniMax Hailuo 2.3 Standard by MiniMax animates a still image into a 6 or 10 second 768P video with realistic motion. +- …and 3 more models in the sidebar. ### VEED -- [VEED Lipsync (VEED: lipsync / 2.0)](/model-api-reference/video-generation/veed/lipsync/2.0) — Lipsync 2.0 is VEED's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. -- [Subtitles](/model-api-reference/video-generation/veed/subtitles) — Subtitles is VEED's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. -- [VEED Fabric 1.0 Text to Video](/model-api-reference/video-generation/veed/fabric-1.0/text-to-video) — Fabric 1.0 by VEED - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation. -- [VEED Video Background Removal Fast](/model-api-reference/video-generation/veed/video-bg-removal/fast) — Video Bg Removal Fast is VEED's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. -- [VEED Video Background Removal](/model-api-reference/video-generation/veed/video-bg-removal) — Video Bg Removal by VEED - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. -- [VEED Video Background Removal Green Screen](/model-api-reference/video-generation/veed/video-bg-removal/green-screen) — Video Bg Removal Green Screen is VEED's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. -- [VEED Fabric 1.0 Fast Image to Video](/model-api-reference/video-generation/veed/fabric-1.0/fast/image-to-video) — Fabric 1.0 Fast by VEED - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [VEED Fabric 1.0 Image to Video](/model-api-reference/video-generation/veed/fabric-1.0/image-to-video) — Fabric 1.0 is VEED's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [VEED Lipsync (VEED: lipsync)](/model-api-reference/video-generation/veed/lipsync) — Lipsync is VEED's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. -- [VEED Avatars Text to Video](/model-api-reference/video-generation/veed/avatars/text-to-video) — Avatars is VEED's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. -- [VEED Avatars Audio to Video](/model-api-reference/video-generation/veed/avatars/audio-to-video) — Avatars Audio To Video by VEED - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows. +- [VEED Lipsync 2.0](/model-api-reference/video-generation/veed/lipsync/2.0) — VEED Lipsync 2.0 makes the person in a video articulate a new audio track. ### Alibaba -- [Wan 3.0 Prime](/model-api-reference/video-generation/alibaba/wan/3.0/prime/video) — Wan 3.0 Prime by Alibaba - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion and camera movement. -- [Wan 3.0 Video](/model-api-reference/video-generation/alibaba/wan/3.0/video) — Alibaba Wan 3.0 Video generates videos up to 30 seconds from text and unified image, video, audio, file, or link media inputs. -- [Happy Horse 1.1 Image to Video](/model-api-reference/video-generation/alibaba/happy-horse/1.1/image-to-video) — Happy Horse 1.1 by Alibaba - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [Happy Horse 1.1 Reference to Video](/model-api-reference/video-generation/alibaba/happy-horse/1.1/reference-to-video) — Happy Horse 1.1 by Alibaba - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [Happy Horse 1.1 Text to Video](/model-api-reference/video-generation/alibaba/happy-horse/1.1/text-to-video) — Happy Horse 1.1 is Alibaba's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. -- [Happy Horse Video Edit](/model-api-reference/video-generation/alibaba/happy-horse/video-edit) — Happy Horse Video Edit by Alibaba - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. -- [Happy Horse Reference to Video](/model-api-reference/video-generation/alibaba/happy-horse/reference-to-video) — Alibaba's #1-ranked Happy Horse 1.0 generates stunning 1080p videos with synchronized native audio and multilingual lip-sync, transforming text prompts or images into cinematic, true-to-life motion content for next-generation AIGC creation. -- [Happy Horse Image to Video](/model-api-reference/video-generation/alibaba/happy-horse/image-to-video) — Alibaba's #1-ranked Happy Horse 1.0 generates stunning 1080p videos with synchronized native audio and multilingual lip-sync, transforming text prompts or images into cinematic, true-to-life motion content for next-generation AIGC creation. -- [Happy Horse Text to Video](/model-api-reference/video-generation/alibaba/happy-horse/text-to-video) — Alibaba's #1-ranked Happy Horse 1.0 generates stunning 1080p videos with synchronized native audio and multilingual lip-sync, transforming text prompts or images into cinematic, true-to-life motion content for next-generation AIGC creation. -- [Wan 2.7 Text to Video](/model-api-reference/video-generation/alibaba/wan/2.7/text-to-video) — Alibaba Wan 2.7 text-to-video model with cinematic visuals, native audio generation, and configurable duration and resolution. -- [Wan 2.7 Reference to Video](/model-api-reference/video-generation/alibaba/wan/2.7/reference-to-video) — Alibaba Wan 2.7 reference-to-video model generating video guided by reference content. -- [Wan 2.7 Edit Video](/model-api-reference/video-generation/alibaba/wan/2.7/edit-video) — Alibaba Wan 2.7 video editing model. -- …and 53 more models in the sidebar. - -### Bria - -- [Bria's VRMBG 3.0](/model-api-reference/video-generation/bria/video/background-removal/3.0) — Video Background Removal 3.0 by Bria - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. -- [Bria's VRMBG 3.0 Realtime](/model-api-reference/video-generation/bria/video/background-removal/realtime) — Video Background Removal Realtime is Bria's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. - -### Creatify - -- [Creatify Aurora](/model-api-reference/video-generation/creatify/aurora) — Aurora by Creatify - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. +- [Wan 2.7 Video Edit](/model-api-reference/video-generation/alibaba/wan/2.7/video-edit) — Alibaba Wan 2.7 video editing model. +- [Wan 2.7 Video Extend](/model-api-reference/video-generation/alibaba/wan/2.7/video-extend) — Alibaba Wan 2.7 Video Extend continues an input clip from a text instruction, optionally ending on a chosen last frame, for a total length of up to 15 seconds. +- [Wan 3.0 Video Edit](/model-api-reference/video-generation/alibaba/wan/3.0/video-edit) — Wan 3.0 Video Edit by Alibaba restyles or modifies an input video from a text instruction, optionally guided by reference images and audio, keeping the original length. +- [Wan 3.0 Video Extend](/model-api-reference/video-generation/alibaba/wan/3.0/video-extend) — Wan 3.0 Video Extend by Alibaba continues an input video forward from a text instruction, optionally guided by reference images and audio, with native audio. +- [Wan 3.0 Prime Video Edit](/model-api-reference/video-generation/alibaba/wan/3.0/prime/video-edit) — Wan 3.0 Prime Video Edit by Alibaba restyles or modifies an input video from a text instruction, optionally guided by reference images and audio, keeping the original length. +- [Wan 3.0 Prime Video Extend](/model-api-reference/video-generation/alibaba/wan/3.0/prime/video-extend) — Wan 3.0 Prime Video Extend by Alibaba continues an input video forward from a text instruction, optionally guided by reference images and audio, with native audio. +- [Wan 3.0 Prime Text to Video](/model-api-reference/video-generation/alibaba/wan/3.0/prime/text-to-video) — Wan 3.0 Prime by Alibaba turns a text prompt into a video of up to 30 seconds at 30fps, with native dialogue, music, and sound effects. +- [Wan 3.0 Prime Reference to Video](/model-api-reference/video-generation/alibaba/wan/3.0/prime/reference-to-video) — Wan 3.0 Prime by Alibaba generates up to 30-second videos with native audio from reference images, videos, and audio, keeping subjects, motion, and voice consistent with the references. +- [Wan 3.0 Prime Video](/model-api-reference/video-generation/alibaba/wan/3.0/prime/video) — Alibaba Wan 3.0 Prime Video generates videos up to 30 seconds with native audio from text, a first/last frame, or reference images, videos, and audio. +- [Wan 3.0 Prime Image to Video](/model-api-reference/video-generation/alibaba/wan/3.0/prime/image-to-video) — Wan 3.0 Prime by Alibaba - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. +- [Wan 3.0 Reference to Video](/model-api-reference/video-generation/alibaba/wan/3.0/reference-to-video) — Wan 3.0 by Alibaba generates up to 30-second videos with native audio from reference images, videos, and audio, keeping subjects, motion, and voice consistent with the references. +- [Wan 3.0 Image to Video](/model-api-reference/video-generation/alibaba/wan/3.0/image-to-video) — Wan 3.0 by Alibaba - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. +- …and 23 more models in the sidebar. + +### BFL + +- [Flux 3 Text to Video](/model-api-reference/video-generation/bfl/flux-3/text-to-video) — Flux 3 by BFL - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation. +- [Flux 3 Image to Video](/model-api-reference/video-generation/bfl/flux-3/image-to-video) — Flux 3 is BFL's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. ### ElevenLabs -- [ElevenLabs Dubbing](/model-api-reference/video-generation/elevenlabs/dubbing) — Dubbing by ElevenLabs - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows. +- [ElevenLabs Dubbing](/model-api-reference/video-generation/elevenlabs/dubbing) — ElevenLabs Dubbing translates the speech in a video into another language while preserving each speaker's voice, timing, and background audio. ### HeyGen -- [Heygen v5 Digital Twin](/model-api-reference/video-generation/heygen/avatar5/digital-twin) — Avatar5 Digital Twin by HeyGen - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation. -- [HeyGen Video Agent V3](/model-api-reference/video-generation/heygen/heygen/video-agent/v3) — Heygen Video Agent V3 is HeyGen's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. -- [HeyGen Lipsync Precision](/model-api-reference/video-generation/heygen/heygen/lipsync/precision) — Heygen Lipsync Precision by HeyGen - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. -- [HeyGen Lipsync Speed](/model-api-reference/video-generation/heygen/heygen/lipsync/speed) — Heygen Lipsync Speed by HeyGen - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. -- [HeyGen Translate Speed](/model-api-reference/video-generation/heygen/heygen/translate/speed) — Heygen Translate Speed by HeyGen - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. -- [HeyGen Translate Precision](/model-api-reference/video-generation/heygen/heygen/translate/precision) — Heygen Translate Precision by HeyGen - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. +- [HeyGen Avatar 5 Digital Twin](/model-api-reference/video-generation/heygen/avatar5/digital-twin) — Avatar5 Digital Twin by HeyGen - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation. +- [HeyGen Video Agent V3](/model-api-reference/video-generation/heygen/video-agent/v3) — Heygen Video Agent V3 is HeyGen's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. +- [HeyGen Lipsync Precision](/model-api-reference/video-generation/heygen/lipsync/precision) — HeyGen v3 Lipsync (precision) replaces the speech in a video and re-syncs the speaker's lips to the new audio. +- [HeyGen Lipsync Speed](/model-api-reference/video-generation/heygen/lipsync/speed) — HeyGen v3 Lipsync (speed) replaces the speech in a video and re-syncs the speaker's lips to the new audio. - [HeyGen Avatar 4 Image to Video](/model-api-reference/video-generation/heygen/heygen-avatar4/image-to-video) — Heygen Avatar4 is HeyGen's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [HeyGen Avatar 4 Digital Twin](/model-api-reference/video-generation/heygen/heygen-avatar4/digital-twin) — Heygen Avatar4 Digital Twin is HeyGen's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. -- [HeyGen Avatar 3 Digital Twin](/model-api-reference/video-generation/heygen/heygen-avatar3/digital-twin) — Heygen Avatar3 Digital Twin is HeyGen's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. -- [HeyGen Video Agent V2](/model-api-reference/video-generation/heygen/heygen/video-agent/v2) — Heygen Video Agent V2 is HeyGen's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. - -### krea - -- [Krea Wan 14b- Text to Video](/model-api-reference/video-generation/krea/krea-wan/text-to-video) — Krea Wan by krea - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation. -- [Krea Wan 14B](/model-api-reference/video-generation/krea/krea-wan/video-to-video) — Krea Wan Video To Video is krea's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. ### KwaiVGI -- [Kling 3.0 Turbo Standard Image to Video](/model-api-reference/video-generation/kwaivgi/kling-video/3.0/turbo/standard/image-to-video) — Kling Video 3.0 Turbo is KwaiVGI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [Kling 3.0 Turbo Pro Text to Video](/model-api-reference/video-generation/kwaivgi/kling-video/3.0/turbo/pro/text-to-video) — Kling Video 3.0 Turbo is KwaiVGI's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. -- [Kling 3.0 Turbo Pro Image to Video](/model-api-reference/video-generation/kwaivgi/kling-video/3.0/turbo/pro/image-to-video) — Kling Video 3.0 Turbo by KwaiVGI - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [Kling 3.0 Turbo Standard Text to Video](/model-api-reference/video-generation/kwaivgi/kling-video/3.0/turbo/standard/text-to-video) — Kling Video 3.0 Turbo by KwaiVGI - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation. -- [Kling Video O3 4k (KwaiVGI: kling-video / o3 / 4k / reference-to-video)](/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/reference-to-video) — Kling Video O3 4k by KwaiVGI - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [Kling Video O3 4k (KwaiVGI: kling-video / o3 / 4k / image-to-video)](/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/image-to-video) — Kling Video O3 4k by KwaiVGI - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [Kling Video O3 4k (KwaiVGI: kling-video / o3 / 4k / text-to-video)](/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/text-to-video) — Kling Video O3 4k is KwaiVGI's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. -- [Kling Video V3 4k (KwaiVGI: kling-video / v3 / 4k / image-to-video)](/model-api-reference/video-generation/kwaivgi/kling-video/v3/4k/image-to-video) — Kling Video V3 4k by KwaiVGI - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [Kling Video V3 4k (KwaiVGI: kling-video / v3 / 4k / text-to-video)](/model-api-reference/video-generation/kwaivgi/kling-video/v3/4k/text-to-video) — Kling Video V3 4k is KwaiVGI's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. -- [Kling Video V3 Standard (KwaiVGI: kling-video / v3 / standard / motion-control)](/model-api-reference/video-generation/kwaivgi/kling-video/v3/standard/motion-control) — Kling Video V3 Standard by KwaiVGI - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. -- [Kling Video V3 Pro (KwaiVGI: kling-video / v3 / pro / motion-control)](/model-api-reference/video-generation/kwaivgi/kling-video/v3/pro/motion-control) — Kling Video V3 Pro is KwaiVGI's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. -- [Kling Video V3 Pro (KwaiVGI: kling-video / v3 / pro / image-to-video)](/model-api-reference/video-generation/kwaivgi/kling-video/v3/pro/image-to-video) — Kling Video V3 Pro is KwaiVGI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- …and 61 more models in the sidebar. +- [Kling O3 4K Video Edit](/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/edit) — Kling O3 4K Video Edit by Kuaishou edits an input video from a text instruction, optionally guided by reference images, at native 4K. +- [Kling O3 4K Video Reference](/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/video-to-video) — Kling O3 4K Video Reference by Kuaishou generates a new native 4K shot that follows the style and camera motion of a reference video, optionally guided by reference images. +- [Kling O3 4K Reference to Video](/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/reference-to-video) — Kling O3 4K Reference to Video by Kuaishou generates a 3-15 second native 4K video that keeps characters and objects from reference images consistent with optional native audio. +- [Kling O3 4K Image to Video](/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/image-to-video) — Kling O3 4K Image to Video by Kuaishou animates a start image, optionally toward an end image, into a 3-15 second native 4K video with optional native audio. +- [Kling O3 4K Text to Video](/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/text-to-video) — Kling O3 4K Text to Video by Kuaishou turns a text prompt into a 3-15 second native 4K video with optional native audio. +- [Kling V3 4K Image to Video](/model-api-reference/video-generation/kwaivgi/kling-video/v3/4k/image-to-video) — Kling V3 4K Image to Video by Kuaishou animates a start image, optionally toward an end image, into a 3-15 second native 4K video with optional native audio. +- [Kling V3 4K Text to Video](/model-api-reference/video-generation/kwaivgi/kling-video/v3/4k/text-to-video) — Kling V3 4K Text to Video by Kuaishou turns a text prompt into a 3-15 second native 4K video with optional native audio. +- [Kling V3 Standard Motion Control](/model-api-reference/video-generation/kwaivgi/kling-video/v3/standard/motion-control) — Kling V3 Standard Motion Control by Kuaishou transfers the motion, expressions, and camera movement of a reference video onto the character in an image, producing a 720p video up to 30 seconds. +- [Kling V3 Pro Motion Control](/model-api-reference/video-generation/kwaivgi/kling-video/v3/pro/motion-control) — Kling V3 Pro Motion Control by Kuaishou transfers the motion, expressions, and camera movement of a reference video onto the character in an image, producing a 1080p video up to 30 seconds. +- [Kling O3 Pro Text to Video](/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/text-to-video) — Kling O3 Pro Text to Video by Kuaishou turns a text prompt into a 3-15 second 1080p video with optional native audio. +- [Kling O3 Standard Text to Video](/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/text-to-video) — Kling O3 Standard Text to Video by Kuaishou turns a text prompt into a 3-15 second 720p video with optional native audio. +- [Kling O3 Pro Image to Video](/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/image-to-video) — Kling O3 Pro Image to Video by Kuaishou animates a start image, optionally toward an end image, into a 3-15 second 1080p video with optional native audio. +- …and 26 more models in the sidebar. ### Lightricks -- [Ltx 2.3](/model-api-reference/video-generation/lightricks/ltx-2.3/reframe) — Ltx 2.3 Reframe is Lightricks's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. -- [Ltx 2.3 Quality (Lightricks: ltx-2.3-quality / extend-video)](/model-api-reference/video-generation/lightricks/ltx-2.3-quality/extend-video) — Ltx 2.3 Quality Extend Video by Lightricks - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. -- [Ltx 2.3 Quality (Lightricks: ltx-2.3-quality / hdr)](/model-api-reference/video-generation/lightricks/ltx-2.3-quality/hdr) — Ltx 2.3 Quality Hdr is Lightricks's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. -- [Ltx 2.3 Quality (Lightricks: ltx-2.3-quality / audio-to-video)](/model-api-reference/video-generation/lightricks/ltx-2.3-quality/audio-to-video) — Ltx 2.3 Quality Audio To Video by Lightricks - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows. -- [Ltx 2.3 Quality (Lightricks: ltx-2.3-quality / image-to-video)](/model-api-reference/video-generation/lightricks/ltx-2.3-quality/image-to-video) — Ltx 2.3 Quality by Lightricks - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [Ltx 2.3 Quality (Lightricks: ltx-2.3-quality / text-to-video)](/model-api-reference/video-generation/lightricks/ltx-2.3-quality/text-to-video) — Ltx 2.3 Quality is Lightricks's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. -- [LTX-2.3 22B Distilled (Lightricks: ltx-2.3-22b / distilled / reference-video-to-video / lora)](/model-api-reference/video-generation/lightricks/ltx-2.3-22b/distilled/reference-video-to-video/lora) — Ltx 2.3 22b Distilled Reference Video To Video is Lightricks's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. -- [LTX 2.3 22B Distilled Reference to Video](/model-api-reference/video-generation/lightricks/ltx-2.3-22b-distilled/reference-to-video) — Ltx 2.3 22b Distilled by Lightricks - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. -- [LTX 2.3 22B](/model-api-reference/video-generation/lightricks/ltx-2.3-22b/reference-video-to-video/lora) — Ltx 2.3 22b Reference Video To Video Lora is Lightricks's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. -- [LTX 2.3 22B Reference to Video](/model-api-reference/video-generation/lightricks/ltx-2.3-22b/reference-to-video) — Ltx 2.3 22b by Lightricks - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. -- [LTX-2.3 22B (Lightricks: ltx-2.3-22b / extend-video / lora)](/model-api-reference/video-generation/lightricks/ltx-2.3-22b/extend-video/lora) — Ltx 2.3 22b Extend Video Lora is Lightricks's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. -- [LTX 2.3 22B Extend](/model-api-reference/video-generation/lightricks/ltx-2.3-22b/extend) — Ltx 2.3 22b Extend by Lightricks - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. -- …and 60 more models in the sidebar. - -### meituan +- [LTX 2.3 Fast Image to Video](/model-api-reference/video-generation/lightricks/ltx-2.3-fast/image-to-video) — Ltx 2.3 Fast is Lightricks's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. +- [LTX 2.3 Fast Text to Video](/model-api-reference/video-generation/lightricks/ltx-2.3-fast/text-to-video) — Ltx 2.3 Fast by Lightricks - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation. +- [LTX 2.3 Pro Image to Video](/model-api-reference/video-generation/lightricks/ltx-2.3-pro/image-to-video) — Ltx 2.3 Pro by Lightricks - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. +- [LTX 2.3 Pro Text to Video](/model-api-reference/video-generation/lightricks/ltx-2.3-pro/text-to-video) — Ltx 2.3 Pro is Lightricks's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. +- [LTX 2.3 Pro Retake](/model-api-reference/video-generation/lightricks/ltx-2.3-pro/retake) — Ltx 2.3 Pro Retake by Lightricks - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. +- [LTX 2.3 Pro Audio to Video](/model-api-reference/video-generation/lightricks/ltx-2.3-pro/audio-to-video) — Ltx 2.3 Pro Audio To Video by Lightricks - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows. +- [LTX 2.3 Pro Video Extend](/model-api-reference/video-generation/lightricks/ltx-2.3-pro/video-extend) — Ltx 2.3 Pro Extend by Lightricks - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. -- [Longcat Multi Avatar](/model-api-reference/video-generation/meituan/longcat-multi-avatar/image-audio-to-video) — Longcat Multi Avatar Image Audio To Video by meituan - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows. -- [LongCat Single Avatar](/model-api-reference/video-generation/meituan/longcat-single-avatar/image-audio-to-video) — Longcat Single Avatar Image Audio To Video by sandbase-ai - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows. -- [Longcat Single Avatar](/model-api-reference/video-generation/meituan/longcat-single-avatar/audio-to-video) — Longcat Single Avatar Audio To Video by meituan - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows. -- [LongCat Video (meituan: longcat-video / text-to-video / 720p)](/model-api-reference/video-generation/meituan/longcat-video/text-to-video/720p) — Longcat Video 720p by meituan - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation. -- [LongCat Video (meituan: longcat-video / image-to-video)](/model-api-reference/video-generation/meituan/longcat-video/image-to-video) — Longcat Video is meituan's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [LongCat Video (meituan: longcat-video / image-to-video-480p)](/model-api-reference/video-generation/meituan/longcat-video/image-to-video-480p) — Longcat Video Image To Video 480p is meituan's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [LongCat Video (meituan: longcat-video / text-to-video / 480p)](/model-api-reference/video-generation/meituan/longcat-video/text-to-video/480p) — Longcat Video 480p by meituan - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation. -- [LongCat Video Distilled (meituan: longcat-video / distilled / image-to-video)](/model-api-reference/video-generation/meituan/longcat-video/distilled/image-to-video) — Longcat Video Distilled is meituan's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [LongCat Video Distilled (meituan: longcat-video / distilled / text-to-video-720p)](/model-api-reference/video-generation/meituan/longcat-video/distilled/text-to-video-720p) — Longcat Video Distilled Text To Video 720p by sandbase-ai - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation. -- [LongCat Video Distilled (meituan: longcat-video / distilled / image-to-video-480p)](/model-api-reference/video-generation/meituan/longcat-video/distilled/image-to-video-480p) — Longcat Video Distilled Image To Video 480p is meituan's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [LongCat Video Distilled (meituan: longcat-video / distilled / text-to-video / 480p)](/model-api-reference/video-generation/meituan/longcat-video/distilled/text-to-video/480p) — Longcat Video Distilled 480p by meituan - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation. +### MeiGen-AI -### Meta - -- [SAM 3.1 Video](/model-api-reference/video-generation/meta/sam-3-1/video-rle) — Sam 3 1 Video Rle is Meta's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. -- [Sam 3 1](/model-api-reference/video-generation/meta/sam-3-1/video) — Sam 3 1 Video is Meta's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. -- [Sam 3 (Meta: sam-3 / video-rle)](/model-api-reference/video-generation/meta/sam-3/video-rle) — Sam 3 Video Rle is Meta's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. -- [Sam 3](/model-api-reference/video-generation/meta/sam-3/video) — Sam 3 Video is Meta's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. - -### Mirelo - -- [Mirelo SFX1.6](/model-api-reference/video-generation/mirelo/sfx1.6/video-to-video) — Sfx1.6 Video To Video is Mirelo's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. - -### NVIDIA - -- [Cosmos 3 Super Image to Video](/model-api-reference/video-generation/nvidia/cosmos-3-super/image-to-video) — Cosmos 3 Super is NVIDIA's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [Nemotron 3 Nano Omni](/model-api-reference/video-generation/nvidia/nemotron-3-nano-omni/video) — Nemotron 3 Nano Omni Video by NVIDIA - advanced AI model for video-to-text. Delivers high-quality results with fast inference, suitable for both creative and production workflows. - -### Pixelcut - -- [Pixelcut Video Background Removal](/model-api-reference/video-generation/pixelcut/video-background-removal) — Video Background Removal by Pixelcut - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. +- [InfiniteTalk Video to Video](/model-api-reference/video-generation/meigen/infinitetalk/video-to-video) — InfiniteTalk dubs an existing video: it re-animates lips, face and body to match new speech audio. +- [InfiniteTalk Text to Video](/model-api-reference/video-generation/meigen/infinitetalk/text-to-video) — InfiniteTalk speaks the given text with a chosen voice and animates the portrait into a talking video. +- [InfiniteTalk Image to Video](/model-api-reference/video-generation/meigen/infinitetalk/image-to-video) — InfiniteTalk turns a portrait image and speech audio into a long-form talking video with natural lip sync, head and body motion. ### PixVerse -- [PixVerse C1 Reference to Video](/model-api-reference/video-generation/pixverse/c1/reference-to-video) — C1 is PixVerse's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [PixVerse C1 Text to Video](/model-api-reference/video-generation/pixverse/c1/text-to-video) — C1 by PixVerse - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation. - [PixVerse C1 Image to Video](/model-api-reference/video-generation/pixverse/c1/image-to-video) — C1 is PixVerse's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [PixVerse C1 Transition](/model-api-reference/video-generation/pixverse/c1/transition) — C1 Transition is PixVerse's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [PixVerse V6 Transition](/model-api-reference/video-generation/pixverse/v6/transition) — V6 Transition is PixVerse's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [PixVerse V6 Extend](/model-api-reference/video-generation/pixverse/v6/extend) — V6 Extend is PixVerse's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. - [PixVerse V6 Image to Video](/model-api-reference/video-generation/pixverse/v6/image-to-video) — V6 is PixVerse's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [PixVerse V6 Text to Video](/model-api-reference/video-generation/pixverse/v6/text-to-video) — V6 by PixVerse - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation. -- [PixVerse V5.6 Transition](/model-api-reference/video-generation/pixverse/v5.6/transition) — V5.6 Transition is PixVerse's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [PixVerse V5.6 Image to Video](/model-api-reference/video-generation/pixverse/v5.6/image-to-video) — V5.6 is PixVerse's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [PixVerse V5.6 Text to Video](/model-api-reference/video-generation/pixverse/v5.6/text-to-video) — V5.6 by PixVerse - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation. -- [PixVerse V5.5 Effects](/model-api-reference/video-generation/pixverse/v5.5/effects) — V5.5 Effects by PixVerse - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- …and 29 more models in the sidebar. - -### Sonilo - -- [V1.1 Video to Video Music](/model-api-reference/video-generation/sonilo/1.1/video-to-video-music) — 1.1 Video To Video Music by Sonilo - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. -- [V1.1 Video to Sound Effects](/model-api-reference/video-generation/sonilo/1.1/video-to-sound-effects) — 1.1 Video To Sound Effects by Sonilo - advanced AI model for video-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows. -- [V1.1 Video to Video Sound Effects](/model-api-reference/video-generation/sonilo/1.1/video-to-video-sound-effects) — 1.1 Video To Video Sound Effects by Sonilo - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. -- [V1.1](/model-api-reference/video-generation/sonilo/1.1/video-to-music) — 1.1 Video To Music by Sonilo - advanced AI model for video-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows. - -### Stability AI - -- [Stable Avatar](/model-api-reference/video-generation/stability-ai/stable-avatar) — Stable Avatar by stability-ai - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows. -- [High Quality Stable Video Diffusion](/model-api-reference/video-generation/stability-ai/stable-video) — Stable Video by Stability AI - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. ### Sync Labs -- [sync-3 Avatar Image to Video](/model-api-reference/video-generation/sync/sync-lipsync/3.0/image-to-video) — Sync Lipsync 3.0 is Sync Labs's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [sync-3 Lipsync](/model-api-reference/video-generation/sync/lipsync/v3) — Lipsync V3 by Sync Labs - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. -- [Sync React-1](/model-api-reference/video-generation/sync/lipsync/react-1) — Lipsync React 1 is Sync Labs's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. -- [Sync Lipsync](/model-api-reference/video-generation/sync/lipsync/v2/pro) — Lipsync V2 Pro by Sync Labs - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. -- [Sync Lipsync 2.0](/model-api-reference/video-generation/sync/lipsync/v2) — Lipsync V2 by Sync Labs - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. -- [sync.so -- lipsync 1.9.0-beta](/model-api-reference/video-generation/sync/sync-lipsync) — Sync Lipsync by Sync Labs - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. +- [Sync 3 Avatar Image to Video](/model-api-reference/video-generation/sync/lipsync/3.0/image-to-video) — Sync 3 animates the face in a still image so it speaks the provided audio; the output matches the audio length. +- [Sync 3 Lipsync](/model-api-reference/video-generation/sync/lipsync/3.0/video-to-video) — Sync 3 by sync. re-animates the speaker's lips in an existing video to match new audio, with studio-grade identity preservation. ### Tencent -- [Hunyuan Video 1.5 Image to Video](/model-api-reference/video-generation/tencent/hunyuan-video/1.5/image-to-video) — Hunyuan Video 1.5 by Tencent - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. - [Hunyuan Video 1.5 Text to Video](/model-api-reference/video-generation/tencent/hunyuan-video/1.5/text-to-video) — Hunyuan Video 1.5 is Tencent's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. -- [Hunyuan Video Foley](/model-api-reference/video-generation/tencent/hunyuan-video/foley) — Hunyuan Video Foley is Tencent's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. -- [Hunyuan Avatar](/model-api-reference/video-generation/tencent/hunyuan-avatar) — Hunyuan Avatar by Tencent - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [Hunyuan Portrait](/model-api-reference/video-generation/tencent/hunyuan-portrait) — Hunyuan Portrait by Tencent - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [Hunyuan Custom](/model-api-reference/video-generation/tencent/hunyuan-custom) — Hunyuan Custom by Tencent - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [Hunyuan Video Image to Video](/model-api-reference/video-generation/tencent/hunyuan-video/image-to-video) — Hunyuan Video by Tencent - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [Hunyuan Video to Video](/model-api-reference/video-generation/tencent/hunyuan-video/video-to-video) — Hunyuan Video Video To Video by Tencent - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions. -- [Hunyuan Video LoRA Inference](/model-api-reference/video-generation/tencent/hunyuan-video-lora) — Hunyuan Video Lora by Tencent - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation. -- [Hunyuan Video Text to Video](/model-api-reference/video-generation/tencent/hunyuan-video/text-to-video) — Hunyuan Video is Tencent's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. ### Topaz Labs @@ -282,29 +153,27 @@ Video Generation models use the SandBase generation protocol declared in each mo ### Vidu +- [Vidu Q4 Image to Video](/model-api-reference/video-generation/vidu/q4/image-to-video) — Vidu Q4 Preview by Shengshu animates a first-frame image into a 3 to 16 second video at up to 4K. Prompts can direct motion, camera cuts, and spoken dialogue, with native speech and sound effects. +- [Vidu Q4 Reference to Video](/model-api-reference/video-generation/vidu/q4/reference-to-video) — Vidu Q4 Preview by Shengshu builds a 3 to 16 second video at up to 4K from up to 12 reference images and 3 voice clips, keeping characters, products, and voices consistent across the clip. - [Vidu Q3 Reference to Video Mix](/model-api-reference/video-generation/vidu/q3/reference-to-video/mix) — Vidu Q3 Mix by Shengshu - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. - [Vidu Q3 Image to Video Turbo](/model-api-reference/video-generation/vidu/q3/image-to-video/turbo) — Vidu Q3 Turbo by Shengshu - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. - [Vidu Q3 Text to Video Turbo](/model-api-reference/video-generation/vidu/q3/text-to-video/turbo) — Vidu Q3 Turbo is Shengshu's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. - [Vidu Q3 Image to Video](/model-api-reference/video-generation/vidu/q3/image-to-video) — Vidu Q3 by Shengshu - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. - [Vidu Q3 Text to Video](/model-api-reference/video-generation/vidu/q3/text-to-video) — Vidu Q3 is Shengshu's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. -- [Vidu Q2 Reference to Video Pro](/model-api-reference/video-generation/vidu/q2/reference-to-video/pro) — Vidu Q2 Pro by Shengshu - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [Vidu Q2 Video Extension Pro](/model-api-reference/video-generation/vidu/q2/video-extension/pro) — Vidu Q2 Video Extension is Shengshu's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. -- [Vidu Q2 Image to Video Turbo](/model-api-reference/video-generation/vidu/q2/image-to-video/turbo) — Vidu Q2 Turbo by Shengshu - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [Vidu Q2 Image to Video Pro](/model-api-reference/video-generation/vidu/q2/image-to-video/pro) — Vidu Q2 Pro by Shengshu - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [Vidu Q2 Text to Video](/model-api-reference/video-generation/vidu/q2/text-to-video) — Vidu Q2 is Shengshu's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition. -- [Vidu Q1 Reference to Video](/model-api-reference/video-generation/vidu/q1/reference-to-video) — Vidu Q1 by Shengshu - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- [Vidu Q1 Start-End to Video](/model-api-reference/video-generation/vidu/q1/start-end-to-video) — Vidu Q1 Start End To Video by Shengshu - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation. -- …and 6 more models in the sidebar. ### xAI -- [Grok Imagine Video 1.5](/model-api-reference/video-generation/xai/grok-imagine-video/1.5/image-to-video) — Grok Imagine Video 1.5 is xAI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. +- [Grok Imagine Video 1.5 Lite Image to Video](/model-api-reference/video-generation/xai/grok-imagine-video/1.5/lite/image-to-video) — Grok Imagine Video 1.5 Lite, the low-cost tier of xAI's video model, animates an image into a 1-15 second video with native audio. +- [Grok Imagine Video 1.5 Lite Text to Video](/model-api-reference/video-generation/xai/grok-imagine-video/1.5/lite/text-to-video) — Grok Imagine Video 1.5 Lite, the low-cost tier of xAI's video model, turns a text prompt into a 1-15 second video with native audio. +- [Grok Imagine Video 1.5 Reference to Video](/model-api-reference/video-generation/xai/grok-imagine-video/1.5/reference-to-video) — Grok Imagine Video 1.5 is xAI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. +- [Grok Imagine Video 1.5 Text to Video](/model-api-reference/video-generation/xai/grok-imagine-video/1.5/text-to-video) — Grok Imagine Video 1.5 by xAI - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation. +- [Grok Imagine Video 1.5 Image to Video](/model-api-reference/video-generation/xai/grok-imagine-video/1.5/image-to-video) — Grok Imagine Video 1.5 is xAI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. - [Grok Imagine Video Reference to Video](/model-api-reference/video-generation/xai/grok-imagine-video/reference-to-video) — Grok Imagine Video is xAI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [Grok Imagine Video Extend](/model-api-reference/video-generation/xai/grok-imagine-video/extend) — Grok Imagine Video Extend is xAI's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. -- [Grok Imagine Video Edit](/model-api-reference/video-generation/xai/grok-imagine-video/edit) — Grok Imagine Video Edit is xAI's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. -- [Grok Imagine Video (xAI: grok-imagine-video / image-to-video)](/model-api-reference/video-generation/xai/grok-imagine-video/image-to-video) — Grok Imagine Video is xAI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. -- [Grok Imagine Video (xAI: grok-imagine-video / text-to-video)](/model-api-reference/video-generation/xai/grok-imagine-video/text-to-video) — Grok Imagine Video by xAI - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation. +- [Grok Imagine Video Extend](/model-api-reference/video-generation/xai/grok-imagine-video/video-extend) — Grok Imagine Video Extend is xAI's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. +- [Grok Imagine Video Edit](/model-api-reference/video-generation/xai/grok-imagine-video/video-edit) — Grok Imagine Video Edit is xAI's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. +- [Grok Imagine Video Image to Video](/model-api-reference/video-generation/xai/grok-imagine-video/image-to-video) — Grok Imagine Video is xAI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output. +- [Grok Imagine Video Text to Video](/model-api-reference/video-generation/xai/grok-imagine-video/text-to-video) — Grok Imagine Video by xAI - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation. ## Capability coverage -`audio-to-video`, `edit-video`, `first-last-frame-to-video`, `image-to-video`, `reference-to-video`, `text-to-video`, `video-regeneration`, `video-to-video` +`audio-to-video`, `coming-soon`, `first-last-frame-to-video`, `image-to-video`, `reference-to-video`, `text-to-video`, `video-to-video` diff --git a/model-api-reference/video-generation/alibaba/happy-horse/1.1/image-to-video.md b/model-api-reference/video-generation/alibaba/happy-horse/1.1/image-to-video.md index d2f62567..66fa42e2 100644 --- a/model-api-reference/video-generation/alibaba/happy-horse/1.1/image-to-video.md +++ b/model-api-reference/video-generation/alibaba/happy-horse/1.1/image-to-video.md @@ -4,7 +4,7 @@ description: "Happy Horse 1.1 Image to Video API reference for SandBase. Use mod aside: false outline: false apiReferenceKey: "video/alibaba/happy-horse/1.1/image-to-video" -apiReferenceJson: "{\"title\":\"Happy Horse 1.1 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Happy Horse 1.1 by Alibaba - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/happy-horse/1.1/image-to-video.\",\"default\":\"alibaba/happy-horse/1.1/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Optional text prompt guiding the animation. Max 2500 characters.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the first frame image. Formats: JPEG, JPG, PNG, BMP, WEBP. Dimensions must be at least 300px. Aspect ratio must be between 1:2.5 and 2.5:1. Max 20 MB.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution tier.\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Output video duration in seconds (3-15).\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility (0-2147483647).\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/happy-horse/1.1/image-to-video\\\",\\n \\\"prompt\\\": \\\"Bring the scene in the image to life.\\\",\\n \\\"image\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/wpimhv/rap.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/happy-horse/1.1/image-to-video\\\",\\n \\\"prompt\\\": \\\"Bring the scene in the image to life.\\\",\\n \\\"image\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/wpimhv/rap.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/happy-horse/1.1/image-to-video\\\",\\n \\\"prompt\\\": \\\"Bring the scene in the image to life.\\\",\\n \\\"image\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/wpimhv/rap.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/happy-horse/1.1/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Happy Horse 1.1 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Happy Horse 1.1 by Alibaba - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/happy-horse/1.1/image-to-video.\",\"default\":\"alibaba/happy-horse/1.1/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Optional text prompt guiding the animation. Max 2500 characters.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the first frame image. Formats: JPEG, JPG, PNG, BMP, WEBP. Dimensions must be at least 300px. Aspect ratio must be between 1:2.5 and 2.5:1. Max 20 MB.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution tier.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Output video duration in seconds (3-15).\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility (0-2147483647).\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/happy-horse/1.1/image-to-video\\\",\\n \\\"prompt\\\": \\\"Bring the scene in the image to life.\\\",\\n \\\"image\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/wpimhv/rap.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/happy-horse/1.1/image-to-video\\\",\\n \\\"prompt\\\": \\\"Bring the scene in the image to life.\\\",\\n \\\"image\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/wpimhv/rap.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/happy-horse/1.1/image-to-video\\\",\\n \\\"prompt\\\": \\\"Bring the scene in the image to life.\\\",\\n \\\"image\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/wpimhv/rap.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/happy-horse/1.1/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Happy Horse 1.1 Image to Video" modelId: "alibaba/happy-horse/1.1/image-to-video" diff --git a/model-api-reference/video-generation/alibaba/happy-horse/1.1/reference-to-video.md b/model-api-reference/video-generation/alibaba/happy-horse/1.1/reference-to-video.md index 306a60d0..2ed6369a 100644 --- a/model-api-reference/video-generation/alibaba/happy-horse/1.1/reference-to-video.md +++ b/model-api-reference/video-generation/alibaba/happy-horse/1.1/reference-to-video.md @@ -4,7 +4,7 @@ description: "Happy Horse 1.1 Reference to Video API reference for SandBase. Use aside: false outline: false apiReferenceKey: "video/alibaba/happy-horse/1.1/reference-to-video" -apiReferenceJson: "{\"title\":\"Happy Horse 1.1 Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Happy Horse 1.1 by Alibaba - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/happy-horse/1.1/reference-to-video.\",\"default\":\"alibaba/happy-horse/1.1/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the desired video. Reference subjects from your images using ``character1``, ``character2``, ... up to ``character9`` (the order matches the order of ``image_urls``). Max 2500 characters.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for subject consistency (1-9 images). Formats: JPEG, JPG, PNG, WEBP. Shortest side must be at least 400 px (720P or higher recommended). Max 20 MB each.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution tier.\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Output video duration in seconds (3-15).\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility (0-2147483647).\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/happy-horse/1.1/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A dance battle between character1 and character2, cinematic lighting, smooth camera movement.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/happy-horse/1.1/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A dance battle between character1 and character2, cinematic lighting, smooth camera movement.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/happy-horse/1.1/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A dance battle between character1 and character2, cinematic lighting, smooth camera movement.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/happy-horse/1.1/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Happy Horse 1.1 Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Happy Horse 1.1 by Alibaba - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/happy-horse/1.1/reference-to-video.\",\"default\":\"alibaba/happy-horse/1.1/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the desired video. Reference subjects from your images using ``character1``, ``character2``, ... up to ``character9`` (the order matches the order of ``image_urls``). Max 2500 characters.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"Reference images for subject consistency (1-9 images). Formats: JPEG, JPG, PNG, WEBP. Shortest side must be at least 400 px (720P or higher recommended). Max 20 MB each.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution tier.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Output video duration in seconds (3-15).\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility (0-2147483647).\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/happy-horse/1.1/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A dance battle between character1 and character2, cinematic lighting, smooth camera movement.\\\",\\n \\\"images\\\": [\\n \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/wpimhv/rap.png\\\"\\n ],\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/happy-horse/1.1/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A dance battle between character1 and character2, cinematic lighting, smooth camera movement.\\\",\\n \\\"images\\\": [\\n \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/wpimhv/rap.png\\\"\\n ],\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/happy-horse/1.1/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A dance battle between character1 and character2, cinematic lighting, smooth camera movement.\\\",\\n \\\"images\\\": [\\n \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/wpimhv/rap.png\\\"\\n ],\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/happy-horse/1.1/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Happy Horse 1.1 Reference to Video" modelId: "alibaba/happy-horse/1.1/reference-to-video" @@ -14,7 +14,7 @@ seo: protocol: "Video Generation Reference" endpoint: "/v1/run" publishedAt: "2026-06-22T06:14:49.115Z" - capabilities: ["image-to-video"] + capabilities: ["reference-to-video"] category: "Video Generation" --- diff --git a/model-api-reference/video-generation/alibaba/happy-horse/1.1/text-to-video.md b/model-api-reference/video-generation/alibaba/happy-horse/1.1/text-to-video.md index bada170a..8d8c4c91 100644 --- a/model-api-reference/video-generation/alibaba/happy-horse/1.1/text-to-video.md +++ b/model-api-reference/video-generation/alibaba/happy-horse/1.1/text-to-video.md @@ -4,7 +4,7 @@ description: "Happy Horse 1.1 Text to Video API reference for SandBase. Use mode aside: false outline: false apiReferenceKey: "video/alibaba/happy-horse/1.1/text-to-video" -apiReferenceJson: "{\"title\":\"Happy Horse 1.1 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Happy Horse 1.1 is Alibaba's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/happy-horse/1.1/text-to-video.\",\"default\":\"alibaba/happy-horse/1.1/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the desired video. Max 2500 characters.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution tier.\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Output video duration in seconds (3-15).\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility (0-2147483647).\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/happy-horse/1.1/text-to-video\\\",\\n \\\"prompt\\\": \\\"A little girl walking on the road at sunset, cinematic lighting, smooth camera movement.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/happy-horse/1.1/text-to-video\\\",\\n \\\"prompt\\\": \\\"A little girl walking on the road at sunset, cinematic lighting, smooth camera movement.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/happy-horse/1.1/text-to-video\\\",\\n \\\"prompt\\\": \\\"A little girl walking on the road at sunset, cinematic lighting, smooth camera movement.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/happy-horse/1.1/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Happy Horse 1.1 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Happy Horse 1.1 is Alibaba's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/happy-horse/1.1/text-to-video.\",\"default\":\"alibaba/happy-horse/1.1/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the desired video. Max 2500 characters.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution tier.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Output video duration in seconds (3-15).\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility (0-2147483647).\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/happy-horse/1.1/text-to-video\\\",\\n \\\"prompt\\\": \\\"A little girl walking on the road at sunset, cinematic lighting, smooth camera movement.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/happy-horse/1.1/text-to-video\\\",\\n \\\"prompt\\\": \\\"A little girl walking on the road at sunset, cinematic lighting, smooth camera movement.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/happy-horse/1.1/text-to-video\\\",\\n \\\"prompt\\\": \\\"A little girl walking on the road at sunset, cinematic lighting, smooth camera movement.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/happy-horse/1.1/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Happy Horse 1.1 Text to Video" modelId: "alibaba/happy-horse/1.1/text-to-video" diff --git a/model-api-reference/video-generation/alibaba/happy-horse/image-to-video.md b/model-api-reference/video-generation/alibaba/happy-horse/image-to-video.md index 39a2125e..3e39ff65 100644 --- a/model-api-reference/video-generation/alibaba/happy-horse/image-to-video.md +++ b/model-api-reference/video-generation/alibaba/happy-horse/image-to-video.md @@ -4,7 +4,7 @@ description: "Happy Horse Image to Video API reference for SandBase. Use model a aside: false outline: false apiReferenceKey: "video/alibaba/happy-horse/image-to-video" -apiReferenceJson: "{\"title\":\"Happy Horse Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba's #1-ranked Happy Horse 1.0 generates stunning 1080p videos with synchronized native audio and multilingual lip-sync, transforming text prompts or images into cinematic, true-to-life motion content for next-generation AIGC creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/happy-horse/image-to-video.\",\"default\":\"alibaba/happy-horse/image-to-video\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the source image to animate into a video.\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Optional text prompt to guide the video generation.\",\"default\":\"Bring the scene in the image to life.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1, 4:3, 3:4\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results. Set to -1 for random seed.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/happy-horse/image-to-video\\\",\\n \\\"image\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/wpimhv/rap.png\\\",\\n \\\"prompt\\\": \\\"Bring the scene in the image to life.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/happy-horse/image-to-video\\\",\\n \\\"image\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/wpimhv/rap.png\\\",\\n \\\"prompt\\\": \\\"Bring the scene in the image to life.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/happy-horse/image-to-video\\\",\\n \\\"image\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/wpimhv/rap.png\\\",\\n \\\"prompt\\\": \\\"Bring the scene in the image to life.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/happy-horse/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Happy Horse Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba's #1-ranked Happy Horse 1.0 generates stunning 1080p videos with synchronized native audio and multilingual lip-sync, transforming text prompts or images into cinematic, true-to-life motion content for next-generation AIGC creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/happy-horse/image-to-video.\",\"default\":\"alibaba/happy-horse/image-to-video\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the source image to animate into a video.\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Optional text prompt to guide the video generation.\",\"default\":\"Bring the scene in the image to life.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results. Set to -1 for random seed.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/happy-horse/image-to-video\\\",\\n \\\"image\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/wpimhv/rap.png\\\",\\n \\\"prompt\\\": \\\"Bring the scene in the image to life.\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/happy-horse/image-to-video\\\",\\n \\\"image\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/wpimhv/rap.png\\\",\\n \\\"prompt\\\": \\\"Bring the scene in the image to life.\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/happy-horse/image-to-video\\\",\\n \\\"image\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/wpimhv/rap.png\\\",\\n \\\"prompt\\\": \\\"Bring the scene in the image to life.\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/happy-horse/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Happy Horse Image to Video" modelId: "alibaba/happy-horse/image-to-video" diff --git a/model-api-reference/video-generation/alibaba/happy-horse/video-edit.md b/model-api-reference/video-generation/alibaba/happy-horse/video-edit.md index e25ac5d7..21f7d332 100644 --- a/model-api-reference/video-generation/alibaba/happy-horse/video-edit.md +++ b/model-api-reference/video-generation/alibaba/happy-horse/video-edit.md @@ -4,7 +4,7 @@ description: "Happy Horse Video Edit API reference for SandBase. Use model aliba aside: false outline: false apiReferenceKey: "video/alibaba/happy-horse/video-edit" -apiReferenceJson: "{\"title\":\"Happy Horse Video Edit\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Happy Horse Video Edit by Alibaba - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/happy-horse/video-edit.\",\"default\":\"alibaba/happy-horse/video-edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the desired edit. Reference any supplied reference images using @Image1, @Image2, ... up to @Image5. Max 2500 characters.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the source video to edit. Formats: MP4, MOV (H.264 recommended). Duration: 3-60 s. Longer side ≤ 2160 px, shorter side ≥ 320 px. Aspect ratio between 1:2.5 and 2.5:1. Frame rate > 8 fps. Max 100 MB. The output video preserves the source aspect ratio. Output duration matches the input video, capped at 15 s (longer inputs are truncated to the first 15 s). Max file size: 100.0MB, Min duration: 3s, Max duration: 60s, Timeout: 30.0s\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution tier.\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility (0-2147483647).\"},{\"name\":\"reference_image_urls\",\"type\":\"array\",\"required\":false,\"description\":\"Optional reference images used to guide the edit (up to 5). Formats: JPEG, JPG, PNG, WEBP. Dimensions must be at least 300px. Aspect ratio between 1:2.5 and 2.5:1. Max 10 MB each.\"},{\"name\":\"audio_setting\",\"type\":\"string\",\"required\":false,\"description\":\"Audio handling. 'auto': model decides whether to regenerate audio. 'origin': preserve the original audio from the input video.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, origin\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/happy-horse/video-edit\\\",\\n \\\"prompt\\\": \\\"Recolor the sky to a deep purple sunset.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/happy-horse/video-edit/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/happy-horse/video-edit\\\",\\n \\\"prompt\\\": \\\"Recolor the sky to a deep purple sunset.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/happy-horse/video-edit/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/happy-horse/video-edit\\\",\\n \\\"prompt\\\": \\\"Recolor the sky to a deep purple sunset.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/happy-horse/video-edit/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/happy-horse/video-edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Happy Horse Video Edit\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Happy Horse Video Edit by Alibaba - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/happy-horse/video-edit.\",\"default\":\"alibaba/happy-horse/video-edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the desired edit. Reference any supplied reference images using @Image1, @Image2, ... up to @Image5. Max 2500 characters.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the source video to edit. Formats: MP4, MOV (H.264 recommended). Duration: 3-60 s. Longer side ≤ 2160 px, shorter side ≥ 320 px. Aspect ratio between 1:2.5 and 2.5:1. Frame rate > 8 fps. Max 100 MB. The output video preserves the source aspect ratio. Output duration matches the input video, capped at 15 s (longer inputs are truncated to the first 15 s). Max file size: 100.0MB, Min duration: 3s, Max duration: 60s, Timeout: 30.0s\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution tier.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility (0-2147483647).\"},{\"name\":\"reference_image_urls\",\"type\":\"array\",\"required\":false,\"description\":\"Optional reference images used to guide the edit (up to 5). Formats: JPEG, JPG, PNG, WEBP. Dimensions must be at least 300px. Aspect ratio between 1:2.5 and 2.5:1. Max 10 MB each.\"},{\"name\":\"audio_setting\",\"type\":\"string\",\"required\":false,\"description\":\"Audio handling. 'auto': model decides whether to regenerate audio. 'origin': preserve the original audio from the input video.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, origin\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/happy-horse/video-edit\\\",\\n \\\"prompt\\\": \\\"Recolor the sky to a deep purple sunset.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/happy-horse/video-edit/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/happy-horse/video-edit\\\",\\n \\\"prompt\\\": \\\"Recolor the sky to a deep purple sunset.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/happy-horse/video-edit/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/happy-horse/video-edit\\\",\\n \\\"prompt\\\": \\\"Recolor the sky to a deep purple sunset.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/happy-horse/video-edit/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/happy-horse/video-edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Happy Horse Video Edit" modelId: "alibaba/happy-horse/video-edit" diff --git a/model-api-reference/video-generation/alibaba/wan-animate.md b/model-api-reference/video-generation/alibaba/wan-animate.md deleted file mode 100644 index c7d73aa7..00000000 --- a/model-api-reference/video-generation/alibaba/wan-animate.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan-Animate API Reference" -description: "Wan-Animate API reference for SandBase. Use model alibaba/wan-animate with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan-animate" -apiReferenceJson: "{\"title\":\"Wan-Animate\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan-Animate generates an animated video from an input image and a driving video, transferring motion onto the image subject.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan-animate.\",\"default\":\"alibaba/wan-animate\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image (URL or Base64-encoded string). Maximum file size is 50 MB.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Input driving video URL. Maximum file size is 200 MB.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Optional text prompt to guide animation style and content.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed. Omit for an auto-generated seed.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video, video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan-animate\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan-animate\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan-animate\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan-animate\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan-Animate" - modelId: "alibaba/wan-animate" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan-animate" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "" - capabilities: ["image-to-video","video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan-vace.md b/model-api-reference/video-generation/alibaba/wan-vace.md deleted file mode 100644 index b48cfdef..00000000 --- a/model-api-reference/video-generation/alibaba/wan-vace.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Vace API Reference" -description: "Vace API reference for SandBase. Use model alibaba/wan-vace with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan-vace" -apiReferenceJson: "{\"title\":\"Vace\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan Vace by Alibaba - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan-vace.\",\"default\":\"alibaba/wan-vace\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"URL to the guiding mask file. If provided, the model will use this mask as a reference to create masked video. If provided mask video url will be ignored.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL to the source video file. If provided, the model will use this video as a reference.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (480p,580p, or 720p).\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 580p, 720p\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of inference steps for sampling. Higher values give better quality but take longer.\",\"default\":\"30\",\"constraints\":\"Range: 2 to 40\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"},{\"name\":\"preprocess\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to preprocess the input video.\",\"default\":\"false\"},{\"name\":\"shift\",\"type\":\"number\",\"required\":false,\"description\":\"Shift parameter for video generation.\",\"default\":\"5\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"mask_video_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL to the source mask file. If provided, the model will use this mask as a reference.\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of frames to generate. Must be between 81 to 100 (inclusive). Works only with only reference images as input if source video or mask video is provided output len would be same as source up to 241 frames\",\"default\":\"81\",\"constraints\":\"Range: 81 to 240\"},{\"name\":\"task\",\"type\":\"string\",\"required\":false,\"description\":\"Task type for the model.\",\"default\":\"depth\",\"constraints\":\"Allowed values: depth, inpainting\"},{\"name\":\"ref_image_urls\",\"type\":\"array\",\"required\":false,\"description\":\"Urls to source reference image. If provided, the model will use this image as reference.\"},{\"name\":\"frames_per_second\",\"type\":\"integer\",\"required\":false,\"description\":\"Frames per second of the generated video. Must be between 5 to 24.\",\"default\":\"16\",\"constraints\":\"Range: 5 to 24\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan-vace\\\",\\n \\\"prompt\\\": \\\"The video shows a man riding a horse on a vast grassland. He has long lavender hair and wears a traditional dress of a white top and black pants. The animation style makes him look like he is doing some kind of outdoor activity or performing. The background is a spectacular mountain range and cloud sky, giving a sense of tranquility and vastness. The entire video is shot from a fixed angle, focusing on the rider and his horse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan-vace/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan-vace\\\",\\n \\\"prompt\\\": \\\"The video shows a man riding a horse on a vast grassland. He has long lavender hair and wears a traditional dress of a white top and black pants. The animation style makes him look like he is doing some kind of outdoor activity or performing. The background is a spectacular mountain range and cloud sky, giving a sense of tranquility and vastness. The entire video is shot from a fixed angle, focusing on the rider and his horse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan-vace/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan-vace\\\",\\n \\\"prompt\\\": \\\"The video shows a man riding a horse on a vast grassland. He has long lavender hair and wears a traditional dress of a white top and black pants. The animation style makes him look like he is doing some kind of outdoor activity or performing. The background is a spectacular mountain range and cloud sky, giving a sense of tranquility and vastness. The entire video is shot from a fixed angle, focusing on the rider and his horse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan-vace/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan-vace\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Vace" - modelId: "alibaba/wan-vace" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan-vace" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-04-11T20:48:26.011Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.1/flf-to-video.md b/model-api-reference/video-generation/alibaba/wan/2.1/flf-to-video.md deleted file mode 100644 index 055e6506..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.1/flf-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan-2.1 First-Last-Frame-to-Video API Reference" -description: "Wan-2.1 First-Last-Frame-to-Video API reference for SandBase. Use model alibaba/wan/2.1/flf-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.1/flf-to-video" -apiReferenceJson: "{\"title\":\"Wan-2.1 First-Last-Frame-to-Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.1 Flf To Video by Alibaba - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.1/flf-to-video.\",\"default\":\"alibaba/wan/2.1/flf-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the starting image. If the input image does not match the chosen aspect ratio, it is resized and center cropped.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the ending image. If the input image does not match the chosen aspect ratio, it is resized and center cropped.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (480p or 720p). 480p is 0.5 billing units, and 720p is 1 billing unit.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"guide_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Classifier-free guidance scale. Higher values give better adherence to the prompt but may decrease quality.\",\"default\":\"5\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.1/flf-to-video\\\",\\n \\\"prompt\\\": \\\"A tabby cat is confidely strolling toward the camera, when it spins and with a flash of magic reveals itself to be a cat-dragon hybrid with glistening amber scales.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/flf-to-video/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/flf-to-video\\\",\\n \\\"prompt\\\": \\\"A tabby cat is confidely strolling toward the camera, when it spins and with a flash of magic reveals itself to be a cat-dragon hybrid with glistening amber scales.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/flf-to-video/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/flf-to-video\\\",\\n \\\"prompt\\\": \\\"A tabby cat is confidely strolling toward the camera, when it spins and with a flash of magic reveals itself to be a cat-dragon hybrid with glistening amber scales.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/flf-to-video/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.1/flf-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan-2.1 First-Last-Frame-to-Video" - modelId: "alibaba/wan/2.1/flf-to-video" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.1/flf-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-04-17T22:26:51.565Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.1/image-to-video.md b/model-api-reference/video-generation/alibaba/wan/2.1/image-to-video.md deleted file mode 100644 index 0d2318d0..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.1/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan-2.1 Image-to-Video API Reference" -description: "Wan-2.1 Image-to-Video API reference for SandBase. Use model alibaba/wan/2.1/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.1/image-to-video" -apiReferenceJson: "{\"title\":\"Wan-2.1 Image-to-Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.1 by Alibaba - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.1/image-to-video.\",\"default\":\"alibaba/wan/2.1/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image. If the input image does not match the chosen aspect ratio, it is resized and center cropped.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (480p or 720p). 480p is 0.5 billing units, and 720p is 1 billing unit.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"guide_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Classifier-free guidance scale. Higher values give better adherence to the prompt but may decrease quality.\",\"default\":\"5\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.1/image-to-video\\\",\\n \\\"prompt\\\": \\\"Cars racing in slow motion\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/image-to-video/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/image-to-video\\\",\\n \\\"prompt\\\": \\\"Cars racing in slow motion\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/image-to-video/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/image-to-video\\\",\\n \\\"prompt\\\": \\\"Cars racing in slow motion\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/image-to-video/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.1/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan-2.1 Image-to-Video" - modelId: "alibaba/wan/2.1/image-to-video" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.1/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-02-25T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.1/image-to-video/lora.md b/model-api-reference/video-generation/alibaba/wan/2.1/image-to-video/lora.md deleted file mode 100644 index 695b6774..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.1/image-to-video/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan-2.1 Image-to-Video with LoRAs API Reference" -description: "Wan-2.1 Image-to-Video with LoRAs API reference for SandBase. Use model alibaba/wan/2.1/image-to-video/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.1/image-to-video/lora" -apiReferenceJson: "{\"title\":\"Wan-2.1 Image-to-Video with LoRAs\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.1 Lora is Alibaba's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.1/image-to-video/lora.\",\"default\":\"alibaba/wan/2.1/image-to-video/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image. If the input image does not match the chosen aspect ratio, it is resized and center cropped.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (480p or 720p). 480p is 0.5 billing units, and 720p is 1 billing unit.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"turbo_mode\",\"type\":\"boolean\",\"required\":false,\"description\":\"If true, the video will be generated faster with no noticeable degradation in the visual quality.\",\"default\":\"true\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA weights to be used in the inference.\",\"default\":\"\"},{\"name\":\"reverse_video\",\"type\":\"boolean\",\"required\":false,\"description\":\"If true, the video will be reversed.\",\"default\":\"false\"},{\"name\":\"guide_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Classifier-free guidance scale. Higher values give better adherence to the prompt but may decrease quality.\",\"default\":\"5\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.1/image-to-video/lora\\\",\\n \\\"prompt\\\": \\\"Cars race in slow motion.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/image-to-video/lora/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/image-to-video/lora\\\",\\n \\\"prompt\\\": \\\"Cars race in slow motion.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/image-to-video/lora/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/image-to-video/lora\\\",\\n \\\"prompt\\\": \\\"Cars race in slow motion.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/image-to-video/lora/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.1/image-to-video/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan-2.1 Image-to-Video with LoRAs" - modelId: "alibaba/wan/2.1/image-to-video/lora" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.1/image-to-video/lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-08T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.1/text-to-video.md b/model-api-reference/video-generation/alibaba/wan/2.1/text-to-video.md deleted file mode 100644 index 8c212c63..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.1/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan-2.1 Text-to-Video API Reference" -description: "Wan-2.1 Text-to-Video API reference for SandBase. Use model alibaba/wan/2.1/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.1/text-to-video" -apiReferenceJson: "{\"title\":\"Wan-2.1 Text-to-Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.1 is Alibaba's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.1/text-to-video.\",\"default\":\"alibaba/wan/2.1/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (480p, 580p, or 720p).\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"},{\"name\":\"turbo_mode\",\"type\":\"boolean\",\"required\":false,\"description\":\"If true, the video will be generated faster with no noticeable degradation in the visual quality.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.1/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.1/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan-2.1 Text-to-Video" - modelId: "alibaba/wan/2.1/text-to-video" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.1/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-02-25T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.1/text-to-video/lora.md b/model-api-reference/video-generation/alibaba/wan/2.1/text-to-video/lora.md deleted file mode 100644 index ddaaa22f..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.1/text-to-video/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan-2.1 Text-to-Video with LoRAs API Reference" -description: "Wan-2.1 Text-to-Video with LoRAs API reference for SandBase. Use model alibaba/wan/2.1/text-to-video/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.1/text-to-video/lora" -apiReferenceJson: "{\"title\":\"Wan-2.1 Text-to-Video with LoRAs\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.1 Lora by Alibaba - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.1/text-to-video/lora.\",\"default\":\"alibaba/wan/2.1/text-to-video/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (480p, 580p, or 720p).\",\"default\":\"480p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA weights to be used in the inference.\",\"default\":\"\"},{\"name\":\"turbo_mode\",\"type\":\"boolean\",\"required\":false,\"description\":\"If true, the video will be generated faster with no noticeable degradation in the visual quality.\",\"default\":\"true\"},{\"name\":\"reverse_video\",\"type\":\"boolean\",\"required\":false,\"description\":\"If true, the video will be reversed.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.1/text-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/text-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/text-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.1/text-to-video/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan-2.1 Text-to-Video with LoRAs" - modelId: "alibaba/wan/2.1/text-to-video/lora" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.1/text-to-video/lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-25T06:02:53.703Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.1/vace.md b/model-api-reference/video-generation/alibaba/wan/2.1/vace.md deleted file mode 100644 index 121a6f8b..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.1/vace.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.1 VACE API Reference" -description: "Wan 2.1 VACE API reference for SandBase. Use model alibaba/wan/2.1/vace with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.1/vace" -apiReferenceJson: "{\"title\":\"Wan 2.1 VACE\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.1 Vace by Alibaba - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.1/vace.\",\"default\":\"alibaba/wan/2.1/vace\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"URL to the guiding mask file. If provided, the model will use this mask as a reference to create masked video. If provided mask video url will be ignored.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL to the source video file. If provided, the model will use this video as a reference.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, 240p, 360p, 480p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"},{\"name\":\"task\",\"type\":\"string\",\"required\":false,\"description\":\"Task type for the model.\",\"default\":\"depth\",\"constraints\":\"Allowed values: depth, pose, inpainting, outpainting, reframe\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace\\\",\\n \\\"prompt\\\": \\\"The video shows a man riding a horse on a vast grassland. He has long lavender hair and wears a traditional dress of a white top and black pants. The animation style makes him look like he is doing some kind of outdoor activity or performing. The background is a spectacular mountain range and cloud sky, giving a sense of tranquility and vastness. The entire video is shot from a fixed angle, focusing on the rider and his horse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace\\\",\\n \\\"prompt\\\": \\\"The video shows a man riding a horse on a vast grassland. He has long lavender hair and wears a traditional dress of a white top and black pants. The animation style makes him look like he is doing some kind of outdoor activity or performing. The background is a spectacular mountain range and cloud sky, giving a sense of tranquility and vastness. The entire video is shot from a fixed angle, focusing on the rider and his horse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace\\\",\\n \\\"prompt\\\": \\\"The video shows a man riding a horse on a vast grassland. He has long lavender hair and wears a traditional dress of a white top and black pants. The animation style makes him look like he is doing some kind of outdoor activity or performing. The background is a spectacular mountain range and cloud sky, giving a sense of tranquility and vastness. The entire video is shot from a fixed angle, focusing on the rider and his horse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.1 VACE" - modelId: "alibaba/wan/2.1/vace" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.1/vace" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-27T07:26:55.366Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.1/vace/depth.md b/model-api-reference/video-generation/alibaba/wan/2.1/vace/depth.md deleted file mode 100644 index 6d5f9b40..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.1/vace/depth.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.1 VACE Depth API Reference" -description: "Wan 2.1 VACE Depth API reference for SandBase. Use model alibaba/wan/2.1/vace/depth with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.1/vace/depth" -apiReferenceJson: "{\"title\":\"Wan 2.1 VACE Depth\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.1 Vace by Alibaba - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.1/vace/depth.\",\"default\":\"alibaba/wan/2.1/vace/depth\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL to the source video file. Required for depth task.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, 240p, 360p, 480p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/depth\\\",\\n \\\"prompt\\\": \\\"A confident woman strides toward the camera down a sun-drenched, empty street. Her vibrant summer dress, a flowing emerald green with delicate white floral embroidery, billows slightly in the gentle breeze. She carries a stylish, woven straw bag, its natural tan contrasting beautifully with the dress. The dress's fabric shimmers subtly, catching the light. The white embroidery is intricate, each tiny flower meticulously detailed. Her expression is focused, yet relaxed, radiating self-assuredness. Her auburn hair, partially pulled back in a loose braid, catches the sunlight, creating warm highlights. The street itself is paved with warm, grey cobblestones, reflecting the bright sun. The mood is optimistic and serene, emphasizing the woman's independence and carefree spirit. High resolution 4k\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/vace/depth/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/depth\\\",\\n \\\"prompt\\\": \\\"A confident woman strides toward the camera down a sun-drenched, empty street. Her vibrant summer dress, a flowing emerald green with delicate white floral embroidery, billows slightly in the gentle breeze. She carries a stylish, woven straw bag, its natural tan contrasting beautifully with the dress. The dress's fabric shimmers subtly, catching the light. The white embroidery is intricate, each tiny flower meticulously detailed. Her expression is focused, yet relaxed, radiating self-assuredness. Her auburn hair, partially pulled back in a loose braid, catches the sunlight, creating warm highlights. The street itself is paved with warm, grey cobblestones, reflecting the bright sun. The mood is optimistic and serene, emphasizing the woman's independence and carefree spirit. High resolution 4k\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/vace/depth/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/depth\\\",\\n \\\"prompt\\\": \\\"A confident woman strides toward the camera down a sun-drenched, empty street. Her vibrant summer dress, a flowing emerald green with delicate white floral embroidery, billows slightly in the gentle breeze. She carries a stylish, woven straw bag, its natural tan contrasting beautifully with the dress. The dress's fabric shimmers subtly, catching the light. The white embroidery is intricate, each tiny flower meticulously detailed. Her expression is focused, yet relaxed, radiating self-assuredness. Her auburn hair, partially pulled back in a loose braid, catches the sunlight, creating warm highlights. The street itself is paved with warm, grey cobblestones, reflecting the bright sun. The mood is optimistic and serene, emphasizing the woman's independence and carefree spirit. High resolution 4k\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/vace/depth/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/depth\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.1 VACE Depth" - modelId: "alibaba/wan/2.1/vace/depth" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.1/vace/depth" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-18T19:17:12.449Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.1/vace/inpainting.md b/model-api-reference/video-generation/alibaba/wan/2.1/vace/inpainting.md deleted file mode 100644 index f2283823..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.1/vace/inpainting.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.1 VACE Inpainting API Reference" -description: "Wan 2.1 VACE Inpainting API reference for SandBase. Use model alibaba/wan/2.1/vace/inpainting with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.1/vace/inpainting" -apiReferenceJson: "{\"title\":\"Wan 2.1 VACE Inpainting\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.1 Vace is Alibaba's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.1/vace/inpainting.\",\"default\":\"alibaba/wan/2.1/vace/inpainting\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"URL to the guiding mask file. If provided, the model will use this mask as a reference to create masked video using salient mask tracking. Will be ignored if mask_video_url is provided.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL to the source video file. Required for inpainting.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, 240p, 360p, 480p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/inpainting\\\",\\n \\\"prompt\\\": \\\"The video shows a man riding a horse on a vast grassland. He has long lavender hair and wears a traditional dress of a white top and black pants. The animation style makes him look like he is doing some kind of outdoor activity or performing. The background is a spectacular mountain range and cloud sky, giving a sense of tranquility and vastness. The entire video is shot from a fixed angle, focusing on the rider and his horse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/vace/inpainting/input_video_1.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/inpainting\\\",\\n \\\"prompt\\\": \\\"The video shows a man riding a horse on a vast grassland. He has long lavender hair and wears a traditional dress of a white top and black pants. The animation style makes him look like he is doing some kind of outdoor activity or performing. The background is a spectacular mountain range and cloud sky, giving a sense of tranquility and vastness. The entire video is shot from a fixed angle, focusing on the rider and his horse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/vace/inpainting/input_video_1.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/inpainting\\\",\\n \\\"prompt\\\": \\\"The video shows a man riding a horse on a vast grassland. He has long lavender hair and wears a traditional dress of a white top and black pants. The animation style makes him look like he is doing some kind of outdoor activity or performing. The background is a spectacular mountain range and cloud sky, giving a sense of tranquility and vastness. The entire video is shot from a fixed angle, focusing on the rider and his horse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/vace/inpainting/input_video_1.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/inpainting\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.1 VACE Inpainting" - modelId: "alibaba/wan/2.1/vace/inpainting" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.1/vace/inpainting" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-18T19:20:48.15Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.1/vace/long-reframe.md b/model-api-reference/video-generation/alibaba/wan/2.1/vace/long-reframe.md deleted file mode 100644 index 79c78f72..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.1/vace/long-reframe.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.1 VACE Long Reframe API Reference" -description: "Wan 2.1 VACE Long Reframe API reference for SandBase. Use model alibaba/wan/2.1/vace/long-reframe with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.1/vace/long-reframe" -apiReferenceJson: "{\"title\":\"Wan 2.1 VACE Long Reframe\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.1 Vace is Alibaba's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.1/vace/long-reframe.\",\"default\":\"alibaba/wan/2.1/vace/long-reframe\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation. Optional for reframing.\",\"default\":\"\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL to the source video file. This video will be used as a reference for the reframe task.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, 240p, 360p, 480p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"},{\"name\":\"paste_back\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to paste back the reframed scene to the original video.\",\"default\":\"true\"},{\"name\":\"scene_threshold\",\"type\":\"number\",\"required\":false,\"description\":\"Threshold for scene detection sensitivity (0-100). Lower values detect more scenes.\",\"default\":\"30\",\"constraints\":\"Range: 0 to 100\"},{\"name\":\"zoom_factor\",\"type\":\"number\",\"required\":false,\"description\":\"Zoom factor for the video. When this value is greater than 0, the video will be zoomed in by this factor (in relation to the canvas size,) cutting off the edges of the video. A value of 0 means no zoom.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 0.9\"},{\"name\":\"trim_borders\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to trim borders from the video.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/long-reframe\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/vace/long-reframe/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/long-reframe\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/vace/long-reframe/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/long-reframe\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/vace/long-reframe/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/long-reframe\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.1 VACE Long Reframe" - modelId: "alibaba/wan/2.1/vace/long-reframe" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.1/vace/long-reframe" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-07T23:30:40.266Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.1/vace/outpainting.md b/model-api-reference/video-generation/alibaba/wan/2.1/vace/outpainting.md deleted file mode 100644 index 3122a8b4..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.1/vace/outpainting.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.1 VACE Outpainting API Reference" -description: "Wan 2.1 VACE Outpainting API reference for SandBase. Use model alibaba/wan/2.1/vace/outpainting with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.1/vace/outpainting" -apiReferenceJson: "{\"title\":\"Wan 2.1 VACE Outpainting\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.1 Vace by Alibaba - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.1/vace/outpainting.\",\"default\":\"alibaba/wan/2.1/vace/outpainting\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL to the source video file. Required for outpainting.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, 240p, 360p, 480p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"},{\"name\":\"expand_left\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to expand the video to the left.\",\"default\":\"false\"},{\"name\":\"expand_top\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to expand the video to the top.\",\"default\":\"false\"},{\"name\":\"expand_right\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to expand the video to the right.\",\"default\":\"false\"},{\"name\":\"expand_ratio\",\"type\":\"number\",\"required\":false,\"description\":\"Amount of expansion. This is a float value between 0 and 1, where 0.25 adds 25% to the original video size on the specified sides.\",\"default\":\"0.25\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"expand_bottom\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to expand the video to the bottom.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/outpainting\\\",\\n \\\"prompt\\\": \\\"A lone woman strides through the neon-drenched streets of Tokyo at night. Her crimson dress, a vibrant splash of color against the deep blues and blacks of the cityscape, flows slightly with each step. A tailored black jacket, crisp and elegant, contrasts sharply with the dress's rich texture. Medium shot: The city hums around her, blurred lights creating streaks of color in the background. Close-up: The fabric of her dress catches the streetlight's glow, revealing a subtle silk sheen and the intricate stitching at the hem. Her black jacket’s subtle texture is visible – a fine wool perhaps, with a matte finish. The overall mood is one of quiet confidence and mystery, a vibrant woman navigating a bustling, nocturnal landscape. High resolution 4k.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/vace/outpainting/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/outpainting\\\",\\n \\\"prompt\\\": \\\"A lone woman strides through the neon-drenched streets of Tokyo at night. Her crimson dress, a vibrant splash of color against the deep blues and blacks of the cityscape, flows slightly with each step. A tailored black jacket, crisp and elegant, contrasts sharply with the dress's rich texture. Medium shot: The city hums around her, blurred lights creating streaks of color in the background. Close-up: The fabric of her dress catches the streetlight's glow, revealing a subtle silk sheen and the intricate stitching at the hem. Her black jacket’s subtle texture is visible – a fine wool perhaps, with a matte finish. The overall mood is one of quiet confidence and mystery, a vibrant woman navigating a bustling, nocturnal landscape. High resolution 4k.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/vace/outpainting/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/outpainting\\\",\\n \\\"prompt\\\": \\\"A lone woman strides through the neon-drenched streets of Tokyo at night. Her crimson dress, a vibrant splash of color against the deep blues and blacks of the cityscape, flows slightly with each step. A tailored black jacket, crisp and elegant, contrasts sharply with the dress's rich texture. Medium shot: The city hums around her, blurred lights creating streaks of color in the background. Close-up: The fabric of her dress catches the streetlight's glow, revealing a subtle silk sheen and the intricate stitching at the hem. Her black jacket’s subtle texture is visible – a fine wool perhaps, with a matte finish. The overall mood is one of quiet confidence and mystery, a vibrant woman navigating a bustling, nocturnal landscape. High resolution 4k.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/vace/outpainting/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/outpainting\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.1 VACE Outpainting" - modelId: "alibaba/wan/2.1/vace/outpainting" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.1/vace/outpainting" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-18T19:21:35.546Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.1/vace/pose.md b/model-api-reference/video-generation/alibaba/wan/2.1/vace/pose.md deleted file mode 100644 index 7ed18887..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.1/vace/pose.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.1 VACE Pose API Reference" -description: "Wan 2.1 VACE Pose API reference for SandBase. Use model alibaba/wan/2.1/vace/pose with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.1/vace/pose" -apiReferenceJson: "{\"title\":\"Wan 2.1 VACE Pose\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.1 Vace is Alibaba's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.1/vace/pose.\",\"default\":\"alibaba/wan/2.1/vace/pose\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation. For pose task, the prompt should describe the desired pose and action of the subject in the video.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL to the source video file. Required for pose task.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, 240p, 360p, 480p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/pose\\\",\\n \\\"prompt\\\": \\\"A sharply dressed man walks toward the camera down a sun-drenched hallway. Medium shot: He's framed from the knees up, his confident stride filling the frame. His navy blue business suit is impeccably tailored, the fabric subtly shimmering under the light streaming through the tall, arched windows lining the hallway. Close-up: The rich texture of the suit's wool is visible, each thread reflecting the light. His crisp white shirt contrasts beautifully with the deep crimson of his silk tie, the knot perfectly formed. The sunlight highlights the subtle sheen of his polished shoes. The windows cast long shadows, highlighting the architectural detail of the hallway, creating a sense of both elegance and movement. High resolution 4k.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/vace/pose/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/pose\\\",\\n \\\"prompt\\\": \\\"A sharply dressed man walks toward the camera down a sun-drenched hallway. Medium shot: He's framed from the knees up, his confident stride filling the frame. His navy blue business suit is impeccably tailored, the fabric subtly shimmering under the light streaming through the tall, arched windows lining the hallway. Close-up: The rich texture of the suit's wool is visible, each thread reflecting the light. His crisp white shirt contrasts beautifully with the deep crimson of his silk tie, the knot perfectly formed. The sunlight highlights the subtle sheen of his polished shoes. The windows cast long shadows, highlighting the architectural detail of the hallway, creating a sense of both elegance and movement. High resolution 4k.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/vace/pose/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/pose\\\",\\n \\\"prompt\\\": \\\"A sharply dressed man walks toward the camera down a sun-drenched hallway. Medium shot: He's framed from the knees up, his confident stride filling the frame. His navy blue business suit is impeccably tailored, the fabric subtly shimmering under the light streaming through the tall, arched windows lining the hallway. Close-up: The rich texture of the suit's wool is visible, each thread reflecting the light. His crisp white shirt contrasts beautifully with the deep crimson of his silk tie, the knot perfectly formed. The sunlight highlights the subtle sheen of his polished shoes. The windows cast long shadows, highlighting the architectural detail of the hallway, creating a sense of both elegance and movement. High resolution 4k.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/vace/pose/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/pose\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.1 VACE Pose" - modelId: "alibaba/wan/2.1/vace/pose" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.1/vace/pose" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-18T19:19:07.684Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.1/vace/reframe.md b/model-api-reference/video-generation/alibaba/wan/2.1/vace/reframe.md deleted file mode 100644 index f9bc65ae..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.1/vace/reframe.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.1 VACE Reframe API Reference" -description: "Wan 2.1 VACE Reframe API reference for SandBase. Use model alibaba/wan/2.1/vace/reframe with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.1/vace/reframe" -apiReferenceJson: "{\"title\":\"Wan 2.1 VACE Reframe\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.1 Vace by Alibaba - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.1/vace/reframe.\",\"default\":\"alibaba/wan/2.1/vace/reframe\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation. Optional for reframing.\",\"default\":\"\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL to the source video file. This video will be used as a reference for the reframe task.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, 240p, 360p, 480p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"},{\"name\":\"trim_borders\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to trim borders from the video.\",\"default\":\"true\"},{\"name\":\"zoom_factor\",\"type\":\"number\",\"required\":false,\"description\":\"Zoom factor for the video. When this value is greater than 0, the video will be zoomed in by this factor (in relation to the canvas size,) cutting off the edges of the video. A value of 0 means no zoom.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 0.9\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/reframe\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/vace/reframe/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/reframe\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/vace/reframe/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/reframe\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/vace/reframe/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/reframe\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.1 VACE Reframe" - modelId: "alibaba/wan/2.1/vace/reframe" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.1/vace/reframe" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-18T19:22:46.388Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.1/vace/video-edit.md b/model-api-reference/video-generation/alibaba/wan/2.1/vace/video-edit.md deleted file mode 100644 index d257a9b1..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.1/vace/video-edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.1 VACE Video Edit API Reference" -description: "Wan 2.1 VACE Video Edit API reference for SandBase. Use model alibaba/wan/2.1/vace/video-edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.1/vace/video-edit" -apiReferenceJson: "{\"title\":\"Wan 2.1 VACE Video Edit\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.1 Vace is Alibaba's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.1/vace/video-edit.\",\"default\":\"alibaba/wan/2.1/vace/video-edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Prompt to edit the video.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"URLs of the input images to use as a reference for the generation.\",\"default\":\"\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input video.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the edited video.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, 240p, 360p, 480p, 720p\"},{\"name\":\"video_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of video you're editing. Use 'general' for most videos, and 'human' for videos emphasizing human subjects and motions. The default value 'auto' means the model will guess based on the first frame of the video.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, general, human\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/video-edit\\\",\\n \\\"prompt\\\": \\\"replace him with a large anthropomorphic polar bear\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/vace/video-edit/input_video_0.mp4\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/video-edit\\\",\\n \\\"prompt\\\": \\\"replace him with a large anthropomorphic polar bear\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/vace/video-edit/input_video_0.mp4\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/video-edit\\\",\\n \\\"prompt\\\": \\\"replace him with a large anthropomorphic polar bear\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.1/vace/video-edit/input_video_0.mp4\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.1/vace/video-edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.1 VACE Video Edit" - modelId: "alibaba/wan/2.1/vace/video-edit" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.1/vace/video-edit" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-22T03:14:28.55Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.2/5b/fast/text-to-video.md b/model-api-reference/video-generation/alibaba/wan/2.2/5b/fast/text-to-video.md deleted file mode 100644 index 34b2f8df..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.2/5b/fast/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan API Reference" -description: "Wan API reference for SandBase. Use model alibaba/wan/2.2/5b/fast/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.2/5b/fast/text-to-video" -apiReferenceJson: "{\"title\":\"Wan\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 5b is Alibaba's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/5b/fast/text-to-video.\",\"default\":\"alibaba/wan/2.2/5b/fast/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (580p or 720p).\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 580p, 720p\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Classifier-free guidance scale. Higher values give better adherence to the prompt but may decrease quality.\",\"default\":\"3.5\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"},{\"name\":\"num_interpolated_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of frames to interpolate between each pair of generated frames. Must be between 0 and 4.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 4\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of frames to generate. Must be between 17 to 161 (inclusive).\",\"default\":\"81\",\"constraints\":\"Range: 17 to 161\"},{\"name\":\"adjust_fps_for_interpolation\",\"type\":\"boolean\",\"required\":false,\"description\":\"If true, the number of frames per second will be multiplied by the number of interpolated frames plus one. For example, if the generated frames per second is 16 and the number of interpolated frames is 1, the final frames per second will be 32. If false, the passed frames per second will be used as-is.\",\"default\":\"true\"},{\"name\":\"video_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality of the output video. Higher quality means better visual quality but larger file size.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"},{\"name\":\"frames_per_second\",\"type\":\"integer\",\"required\":false,\"description\":\"Frames per second of the generated video. Must be between 4 to 60. When using interpolation and `adjust_fps_for_interpolation` is set to true (default true,) the final FPS will be multiplied by the number of interpolated frames plus one. For example, if the generated frames per second is 16 and the number of interpolated frames is 1, the final frames per second will be 32. If `adjust_fps_for_interpolation` is set to false, this value will be used as-is.\",\"default\":\"24\",\"constraints\":\"Range: 4 to 60\"},{\"name\":\"enable_output_safety_checker\",\"type\":\"boolean\",\"required\":false,\"description\":\"If set to true, output video will be checked for safety after generation.\",\"default\":\"false\"},{\"name\":\"interpolator_model\",\"type\":\"string\",\"required\":false,\"description\":\"The model to use for frame interpolation. If None, no interpolation is applied.\",\"default\":\"film\",\"constraints\":\"Allowed values: none, film, rife\"},{\"name\":\"video_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the output video. Faster write mode means faster results but larger file size, balanced write mode is a good compromise between speed and quality, and small write mode is the slowest but produces the smallest file size.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/5b/fast/text-to-video\\\",\\n \\\"prompt\\\": \\\"A medium shot establishes a modern, minimalist office setting: clean lines, muted grey walls, and polished wood surfaces. The focus shifts to a close-up on a woman in sharp, navy blue business attire. Her crisp white blouse contrasts with the deep blue of her tailored suit jacket. The subtle texture of the fabric is visible—a fine weave with a slight sheen. Her expression is serious, yet engaging, as she speaks to someone unseen just beyond the frame. Close-up on her eyes, showing the intensity of her gaze and the fine lines around them that hint at experience and focus. Her lips are slightly parted, as if mid-sentence. The light catches the subtle highlights in her auburn hair, meticulously styled. Note the slight catch of light on the silver band of her watch. High resolution 4k\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/5b/fast/text-to-video\\\",\\n \\\"prompt\\\": \\\"A medium shot establishes a modern, minimalist office setting: clean lines, muted grey walls, and polished wood surfaces. The focus shifts to a close-up on a woman in sharp, navy blue business attire. Her crisp white blouse contrasts with the deep blue of her tailored suit jacket. The subtle texture of the fabric is visible—a fine weave with a slight sheen. Her expression is serious, yet engaging, as she speaks to someone unseen just beyond the frame. Close-up on her eyes, showing the intensity of her gaze and the fine lines around them that hint at experience and focus. Her lips are slightly parted, as if mid-sentence. The light catches the subtle highlights in her auburn hair, meticulously styled. Note the slight catch of light on the silver band of her watch. High resolution 4k\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/5b/fast/text-to-video\\\",\\n \\\"prompt\\\": \\\"A medium shot establishes a modern, minimalist office setting: clean lines, muted grey walls, and polished wood surfaces. The focus shifts to a close-up on a woman in sharp, navy blue business attire. Her crisp white blouse contrasts with the deep blue of her tailored suit jacket. The subtle texture of the fabric is visible—a fine weave with a slight sheen. Her expression is serious, yet engaging, as she speaks to someone unseen just beyond the frame. Close-up on her eyes, showing the intensity of her gaze and the fine lines around them that hint at experience and focus. Her lips are slightly parted, as if mid-sentence. The light catches the subtle highlights in her auburn hair, meticulously styled. Note the slight catch of light on the silver band of her watch. High resolution 4k\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/5b/fast/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan" - modelId: "alibaba/wan/2.2/5b/fast/text-to-video" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.2/5b/fast/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-05T23:59:17.192Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.2/5b/image-to-video.md b/model-api-reference/video-generation/alibaba/wan/2.2/5b/image-to-video.md deleted file mode 100644 index 93feb182..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.2/5b/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.2 5B Image to Video API Reference" -description: "Wan 2.2 5B Image to Video API reference for SandBase. Use model alibaba/wan/2.2/5b/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.2/5b/image-to-video" -apiReferenceJson: "{\"title\":\"Wan 2.2 5B Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 5b is Alibaba's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/5b/image-to-video.\",\"default\":\"alibaba/wan/2.2/5b/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image. If the input image does not match the chosen aspect ratio, it is resized and center cropped.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (580p or 720p).\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/5b/image-to-video\\\",\\n \\\"prompt\\\": \\\"The white dragon warrior stands still, eyes full of determination and strength. The camera slowly moves closer or circles around the warrior, highlighting the powerful presence and heroic spirit of the character.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/5b/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/5b/image-to-video\\\",\\n \\\"prompt\\\": \\\"The white dragon warrior stands still, eyes full of determination and strength. The camera slowly moves closer or circles around the warrior, highlighting the powerful presence and heroic spirit of the character.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/5b/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/5b/image-to-video\\\",\\n \\\"prompt\\\": \\\"The white dragon warrior stands still, eyes full of determination and strength. The camera slowly moves closer or circles around the warrior, highlighting the powerful presence and heroic spirit of the character.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/5b/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/5b/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.2 5B Image to Video" - modelId: "alibaba/wan/2.2/5b/image-to-video" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.2/5b/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-07-30T06:39:13.161Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.2/5b/text-to-video.md b/model-api-reference/video-generation/alibaba/wan/2.2/5b/text-to-video.md deleted file mode 100644 index b60b1986..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.2/5b/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.2 5B Text to Video API Reference" -description: "Wan 2.2 5B Text to Video API reference for SandBase. Use model alibaba/wan/2.2/5b/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.2/5b/text-to-video" -apiReferenceJson: "{\"title\":\"Wan 2.2 5B Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 5b by Alibaba - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/5b/text-to-video.\",\"default\":\"alibaba/wan/2.2/5b/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (580p or 720p).\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/5b/text-to-video\\\",\\n \\\"prompt\\\": \\\"A medium shot establishes a modern, minimalist office setting: clean lines, muted grey walls, and polished wood surfaces. The focus shifts to a close-up on a woman in sharp, navy blue business attire. Her crisp white blouse contrasts with the deep blue of her tailored suit jacket. The subtle texture of the fabric is visible—a fine weave with a slight sheen. Her expression is serious, yet engaging, as she speaks to someone unseen just beyond the frame. Close-up on her eyes, showing the intensity of her gaze and the fine lines around them that hint at experience and focus. Her lips are slightly parted, as if mid-sentence. The light catches the subtle highlights in her auburn hair, meticulously styled. Note the slight catch of light on the silver band of her watch. High resolution 4k\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/5b/text-to-video\\\",\\n \\\"prompt\\\": \\\"A medium shot establishes a modern, minimalist office setting: clean lines, muted grey walls, and polished wood surfaces. The focus shifts to a close-up on a woman in sharp, navy blue business attire. Her crisp white blouse contrasts with the deep blue of her tailored suit jacket. The subtle texture of the fabric is visible—a fine weave with a slight sheen. Her expression is serious, yet engaging, as she speaks to someone unseen just beyond the frame. Close-up on her eyes, showing the intensity of her gaze and the fine lines around them that hint at experience and focus. Her lips are slightly parted, as if mid-sentence. The light catches the subtle highlights in her auburn hair, meticulously styled. Note the slight catch of light on the silver band of her watch. High resolution 4k\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/5b/text-to-video\\\",\\n \\\"prompt\\\": \\\"A medium shot establishes a modern, minimalist office setting: clean lines, muted grey walls, and polished wood surfaces. The focus shifts to a close-up on a woman in sharp, navy blue business attire. Her crisp white blouse contrasts with the deep blue of her tailored suit jacket. The subtle texture of the fabric is visible—a fine weave with a slight sheen. Her expression is serious, yet engaging, as she speaks to someone unseen just beyond the frame. Close-up on her eyes, showing the intensity of her gaze and the fine lines around them that hint at experience and focus. Her lips are slightly parted, as if mid-sentence. The light catches the subtle highlights in her auburn hair, meticulously styled. Note the slight catch of light on the silver band of her watch. High resolution 4k\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/5b/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.2 5B Text to Video" - modelId: "alibaba/wan/2.2/5b/text-to-video" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.2/5b/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-07-28T20:48:02.539Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.2/animate/move.md b/model-api-reference/video-generation/alibaba/wan/2.2/animate/move.md index f4c364cf..62ec5b6c 100644 --- a/model-api-reference/video-generation/alibaba/wan/2.2/animate/move.md +++ b/model-api-reference/video-generation/alibaba/wan/2.2/animate/move.md @@ -4,7 +4,7 @@ description: "Wan 2.2 Animate Move API reference for SandBase. Use model alibaba aside: false outline: false apiReferenceKey: "video/alibaba/wan/2.2/animate/move" -apiReferenceJson: "{\"title\":\"Wan 2.2 Animate Move\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 Animate by Alibaba - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/animate/move.\",\"default\":\"alibaba/wan/2.2/animate/move\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image. If the input image does not match the chosen aspect ratio, it is resized and center cropped.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input video.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (480p, 580p, or 720p).\",\"default\":\"480p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"use_turbo\",\"type\":\"boolean\",\"required\":false,\"description\":\"If true, applies quality enhancement for faster generation with improved quality. When enabled, parameters are automatically optimized for best results.\",\"default\":\"false\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/animate/move\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/move/input_image_1.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/move/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/animate/move\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/move/input_image_1.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/move/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/animate/move\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/move/input_image_1.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/move/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/animate/move\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Wan 2.2 Animate Move\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 Animate Move animates the character in the image with the motion of the reference video.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/animate/move.\",\"default\":\"alibaba/wan/2.2/animate/move\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image URL (face / character).\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility.\",\"constraints\":\"Range: 0 to 2147483647\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 580p, 720p\"},{\"name\":\"use_turbo\",\"type\":\"boolean\",\"required\":false,\"description\":\"Faster generation with quality enhancement.\",\"default\":\"false\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Reference video.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/animate/move\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/move/input_image_1.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/move/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/animate/move\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/move/input_image_1.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/move/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/animate/move\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/move/input_image_1.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/move/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/animate/move\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Wan 2.2 Animate Move" modelId: "alibaba/wan/2.2/animate/move" diff --git a/model-api-reference/video-generation/alibaba/wan/2.2/animate/replace.md b/model-api-reference/video-generation/alibaba/wan/2.2/animate/replace.md index cee06ca3..ab50f606 100644 --- a/model-api-reference/video-generation/alibaba/wan/2.2/animate/replace.md +++ b/model-api-reference/video-generation/alibaba/wan/2.2/animate/replace.md @@ -4,7 +4,7 @@ description: "Wan 2.2 Animate Replace API reference for SandBase. Use model alib aside: false outline: false apiReferenceKey: "video/alibaba/wan/2.2/animate/replace" -apiReferenceJson: "{\"title\":\"Wan 2.2 Animate Replace\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 Animate is Alibaba's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/animate/replace.\",\"default\":\"alibaba/wan/2.2/animate/replace\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image. If the input image does not match the chosen aspect ratio, it is resized and center cropped.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input video.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (480p, 580p, or 720p).\",\"default\":\"480p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"use_turbo\",\"type\":\"boolean\",\"required\":false,\"description\":\"If true, applies quality enhancement for faster generation with improved quality. When enabled, parameters are automatically optimized for best results.\",\"default\":\"false\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/animate/replace\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/replace/input_image_0.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/replace/input_video_1.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/animate/replace\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/replace/input_image_0.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/replace/input_video_1.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/animate/replace\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/replace/input_image_0.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/replace/input_video_1.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/animate/replace\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Wan 2.2 Animate Replace\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 Animate Replace replaces the person in the reference video with the character from the image.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/animate/replace.\",\"default\":\"alibaba/wan/2.2/animate/replace\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image URL (face / character).\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility.\",\"constraints\":\"Range: 0 to 2147483647\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 580p, 720p\"},{\"name\":\"use_turbo\",\"type\":\"boolean\",\"required\":false,\"description\":\"Faster generation with quality enhancement.\",\"default\":\"false\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Reference video.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/animate/replace\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/replace/input_image_0.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/replace/input_video_1.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/animate/replace\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/replace/input_image_0.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/replace/input_video_1.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/animate/replace\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/replace/input_image_0.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/replace/input_video_1.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/animate/replace\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Wan 2.2 Animate Replace" modelId: "alibaba/wan/2.2/animate/replace" diff --git a/model-api-reference/video-generation/alibaba/wan/2.2/fun-control.md b/model-api-reference/video-generation/alibaba/wan/2.2/fun-control.md deleted file mode 100644 index cdedf524..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.2/fun-control.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.2 Fun Control API Reference" -description: "Wan 2.2 Fun Control API reference for SandBase. Use model alibaba/wan/2.2/fun-control with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.2/fun-control" -apiReferenceJson: "{\"title\":\"Wan 2.2 Fun Control\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 Fun Control is Alibaba's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/fun-control.\",\"default\":\"alibaba/wan/2.2/fun-control\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"fps\",\"type\":\"integer\",\"required\":false,\"description\":\"The fps to generate. Only used when match_input_fps is False.\",\"default\":\"16\",\"constraints\":\"Range: 4 to 60\"},{\"name\":\"control_video_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the control video to use as a reference for the video generation.\"},{\"name\":\"preprocess_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of preprocess to apply to the video. Only used when preprocess_video is True.\",\"default\":\"depth\",\"constraints\":\"Allowed values: depth, pose\"},{\"name\":\"preprocess_video\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to preprocess the video. If True, the video will be preprocessed to depth or pose.\",\"default\":\"false\"},{\"name\":\"reference_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the reference image to use as a reference for the video generation.\"},{\"name\":\"match_input_fps\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to match the fps in the input video.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/fun-control\\\",\\n \\\"prompt\\\": \\\"A woman wearing a lavender floral dress spins around in a circle.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/fun-control\\\",\\n \\\"prompt\\\": \\\"A woman wearing a lavender floral dress spins around in a circle.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/fun-control\\\",\\n \\\"prompt\\\": \\\"A woman wearing a lavender floral dress spins around in a circle.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/fun-control\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.2 Fun Control" - modelId: "alibaba/wan/2.2/fun-control" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.2/fun-control" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-28T15:51:00.277Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.2/i2v-480p-lora.md b/model-api-reference/video-generation/alibaba/wan/2.2/i2v-480p-lora.md deleted file mode 100644 index 15712ae9..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.2/i2v-480p-lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.2 I2V 480p LoRA API Reference" -description: "Wan 2.2 I2V 480p LoRA API reference for SandBase. Use model alibaba/wan/2.2/i2v-480p-lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.2/i2v-480p-lora" -apiReferenceJson: "{\"title\":\"Wan 2.2 I2V 480p LoRA\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 image-to-video LoRA generation with fixed 480p output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/i2v-480p-lora.\",\"default\":\"alibaba/wan/2.2/i2v-480p-lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt that guides video generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the starting image.\"},{\"name\":\"negative_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Content to avoid in the generated video.\"},{\"name\":\"last_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional ending frame image URL.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\",\"default\":\"[]\",\"constraints\":\"Items: 0 to 3\"},{\"name\":\"loras[].path\",\"type\":\"string\",\"required\":true,\"description\":\"URL or path of the LoRA weights.\"},{\"name\":\"loras[].scale\",\"type\":\"number\",\"required\":false,\"description\":\"LoRA weight multiplier.\",\"default\":\"1\"},{\"name\":\"high_noise_loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the high-noise transformer. At most three items are accepted.\",\"default\":\"[]\",\"constraints\":\"Items: 0 to 3\"},{\"name\":\"high_noise_loras[].path\",\"type\":\"string\",\"required\":true,\"description\":\"URL or path of the LoRA weights.\"},{\"name\":\"high_noise_loras[].scale\",\"type\":\"number\",\"required\":false,\"description\":\"LoRA weight multiplier.\",\"default\":\"1\"},{\"name\":\"low_noise_loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the low-noise transformer. At most three items are accepted.\",\"default\":\"[]\",\"constraints\":\"Items: 0 to 3\"},{\"name\":\"low_noise_loras[].path\",\"type\":\"string\",\"required\":true,\"description\":\"URL or path of the LoRA weights.\"},{\"name\":\"low_noise_loras[].scale\",\"type\":\"number\",\"required\":false,\"description\":\"LoRA weight multiplier.\",\"default\":\"1\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"enable_safety_checker\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to request the provider safety checker. The provider may still enforce mandatory moderation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/i2v-480p-lora\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/i2v-480p-lora\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/i2v-480p-lora\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/i2v-480p-lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.2 I2V 480p LoRA" - modelId: "alibaba/wan/2.2/i2v-480p-lora" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.2/i2v-480p-lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-07T12:44:59.464Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.2/i2v-720p-lora.md b/model-api-reference/video-generation/alibaba/wan/2.2/i2v-720p-lora.md deleted file mode 100644 index 1ab34b40..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.2/i2v-720p-lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.2 I2V 720p LoRA API Reference" -description: "Wan 2.2 I2V 720p LoRA API reference for SandBase. Use model alibaba/wan/2.2/i2v-720p-lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.2/i2v-720p-lora" -apiReferenceJson: "{\"title\":\"Wan 2.2 I2V 720p LoRA\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 image-to-video LoRA generation with fixed 720p output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/i2v-720p-lora.\",\"default\":\"alibaba/wan/2.2/i2v-720p-lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt that guides video generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the starting image.\"},{\"name\":\"negative_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Content to avoid in the generated video.\"},{\"name\":\"last_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional ending frame image URL.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\",\"default\":\"[]\",\"constraints\":\"Items: 0 to 3\"},{\"name\":\"loras[].path\",\"type\":\"string\",\"required\":true,\"description\":\"URL or path of the LoRA weights.\"},{\"name\":\"loras[].scale\",\"type\":\"number\",\"required\":false,\"description\":\"LoRA weight multiplier.\",\"default\":\"1\"},{\"name\":\"high_noise_loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the high-noise transformer. At most three items are accepted.\",\"default\":\"[]\",\"constraints\":\"Items: 0 to 3\"},{\"name\":\"high_noise_loras[].path\",\"type\":\"string\",\"required\":true,\"description\":\"URL or path of the LoRA weights.\"},{\"name\":\"high_noise_loras[].scale\",\"type\":\"number\",\"required\":false,\"description\":\"LoRA weight multiplier.\",\"default\":\"1\"},{\"name\":\"low_noise_loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the low-noise transformer. At most three items are accepted.\",\"default\":\"[]\",\"constraints\":\"Items: 0 to 3\"},{\"name\":\"low_noise_loras[].path\",\"type\":\"string\",\"required\":true,\"description\":\"URL or path of the LoRA weights.\"},{\"name\":\"low_noise_loras[].scale\",\"type\":\"number\",\"required\":false,\"description\":\"LoRA weight multiplier.\",\"default\":\"1\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\"},{\"name\":\"enable_safety_checker\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to request the provider safety checker. The provider may still enforce mandatory moderation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/i2v-720p-lora\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/i2v-720p-lora\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/i2v-720p-lora\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/i2v-720p-lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.2 I2V 720p LoRA" - modelId: "alibaba/wan/2.2/i2v-720p-lora" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.2/i2v-720p-lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-07T12:44:59.464Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.2/image-to-video.md b/model-api-reference/video-generation/alibaba/wan/2.2/image-to-video.md deleted file mode 100644 index 00ccaac2..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.2/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.2 Image to Video API Reference" -description: "Wan 2.2 Image to Video API reference for SandBase. Use model alibaba/wan/2.2/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.2/image-to-video" -apiReferenceJson: "{\"title\":\"Wan 2.2 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 by Alibaba - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/image-to-video.\",\"default\":\"alibaba/wan/2.2/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image. If the input image does not match the chosen aspect ratio, it is resized and center cropped.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the end image.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (480p, 580p, or 720p).\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/image-to-video\\\",\\n \\\"prompt\\\": \\\"The white dragon warrior stands still, eyes full of determination and strength. The camera slowly moves closer or circles around the warrior, highlighting the powerful presence and heroic spirit of the character.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/image-to-video\\\",\\n \\\"prompt\\\": \\\"The white dragon warrior stands still, eyes full of determination and strength. The camera slowly moves closer or circles around the warrior, highlighting the powerful presence and heroic spirit of the character.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/image-to-video\\\",\\n \\\"prompt\\\": \\\"The white dragon warrior stands still, eyes full of determination and strength. The camera slowly moves closer or circles around the warrior, highlighting the powerful presence and heroic spirit of the character.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.2 Image to Video" - modelId: "alibaba/wan/2.2/image-to-video" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.2/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-07-28T15:58:39.979Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.2/image-to-video/lora.md b/model-api-reference/video-generation/alibaba/wan/2.2/image-to-video/lora.md deleted file mode 100644 index ddcacfba..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.2/image-to-video/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.2 Image to Video LoRA API Reference" -description: "Wan 2.2 Image to Video LoRA API reference for SandBase. Use model alibaba/wan/2.2/image-to-video/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.2/image-to-video/lora" -apiReferenceJson: "{\"title\":\"Wan 2.2 Image to Video LoRA\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 Lora is Alibaba's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/image-to-video/lora.\",\"default\":\"alibaba/wan/2.2/image-to-video/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image. If the input image does not match the chosen aspect ratio, it is resized and center cropped.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the end image.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (480p, 580p, or 720p).\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA weights to be used in the inference.\",\"default\":\"\"},{\"name\":\"reverse_video\",\"type\":\"boolean\",\"required\":false,\"description\":\"If true, the video will be reversed.\",\"default\":\"false\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/image-to-video/lora\\\",\\n \\\"prompt\\\": \\\"Cars racing in slow motion\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/image-to-video/lora/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/image-to-video/lora\\\",\\n \\\"prompt\\\": \\\"Cars racing in slow motion\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/image-to-video/lora/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/image-to-video/lora\\\",\\n \\\"prompt\\\": \\\"Cars racing in slow motion\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/image-to-video/lora/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/image-to-video/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.2 Image to Video LoRA" - modelId: "alibaba/wan/2.2/image-to-video/lora" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.2/image-to-video/lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-07T12:44:59.464Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.2/image-to-video/turbo.md b/model-api-reference/video-generation/alibaba/wan/2.2/image-to-video/turbo.md deleted file mode 100644 index 7a671472..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.2/image-to-video/turbo.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.2 Image to Video Turbo API Reference" -description: "Wan 2.2 Image to Video Turbo API reference for SandBase. Use model alibaba/wan/2.2/image-to-video/turbo with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.2/image-to-video/turbo" -apiReferenceJson: "{\"title\":\"Wan 2.2 Image to Video Turbo\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 Turbo by Alibaba - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/image-to-video/turbo.\",\"default\":\"alibaba/wan/2.2/image-to-video/turbo\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image. If the input image does not match the chosen aspect ratio, it is resized and center cropped.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the end image.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (480p, 580p, or 720p).\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/image-to-video/turbo\\\",\\n \\\"prompt\\\": \\\"The white dragon warrior stands still, eyes full of determination and strength. The camera slowly moves closer or circles around the warrior, highlighting the powerful presence and heroic spirit of the character.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/image-to-video/turbo/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/image-to-video/turbo\\\",\\n \\\"prompt\\\": \\\"The white dragon warrior stands still, eyes full of determination and strength. The camera slowly moves closer or circles around the warrior, highlighting the powerful presence and heroic spirit of the character.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/image-to-video/turbo/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/image-to-video/turbo\\\",\\n \\\"prompt\\\": \\\"The white dragon warrior stands still, eyes full of determination and strength. The camera slowly moves closer or circles around the warrior, highlighting the powerful presence and heroic spirit of the character.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/image-to-video/turbo/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/image-to-video/turbo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.2 Image to Video Turbo" - modelId: "alibaba/wan/2.2/image-to-video/turbo" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.2/image-to-video/turbo" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-07-31T18:03:47.684Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.2/speech-to-video.md b/model-api-reference/video-generation/alibaba/wan/2.2/speech-to-video.md index b2a453f1..35b5ef4a 100644 --- a/model-api-reference/video-generation/alibaba/wan/2.2/speech-to-video.md +++ b/model-api-reference/video-generation/alibaba/wan/2.2/speech-to-video.md @@ -4,7 +4,7 @@ description: "Wan 2.2 Speech to Video API reference for SandBase. Use model alib aside: false outline: false apiReferenceKey: "video/alibaba/wan/2.2/speech-to-video" -apiReferenceJson: "{\"title\":\"Wan 2.2 Speech to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 Speech To Video by Alibaba - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/speech-to-video.\",\"default\":\"alibaba/wan/2.2/speech-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt used for video generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image. If the input image does not match the chosen aspect ratio, it is resized and center cropped.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the audio file.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (480p, 580p, or 720p).\",\"default\":\"480p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/speech-to-video\\\",\\n \\\"prompt\\\": \\\"Summer beach vacation style, a white cat wearing sunglasses sits on a surfboard.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/speech-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/speech-to-video/input_audio_1.wav\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/speech-to-video\\\",\\n \\\"prompt\\\": \\\"Summer beach vacation style, a white cat wearing sunglasses sits on a surfboard.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/speech-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/speech-to-video/input_audio_1.wav\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/speech-to-video\\\",\\n \\\"prompt\\\": \\\"Summer beach vacation style, a white cat wearing sunglasses sits on a surfboard.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/speech-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/speech-to-video/input_audio_1.wav\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/speech-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Wan 2.2 Speech to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 Speech to Video turns a portrait image and a speech audio into a talking video guided by a prompt.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/speech-to-video.\",\"default\":\"alibaba/wan/2.2/speech-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt guiding the generation.\"},{\"name\":\"negative_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Content to avoid.\",\"default\":\"\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image URL (face / character).\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility.\",\"constraints\":\"Range: 0 to 2147483647\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":true,\"description\":\"Input audio URL.\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"Frames to generate (40–120, multiple of 4) at 16 fps.\",\"default\":\"80\",\"constraints\":\"Range: 40 to 120\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 580p, 720p\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/speech-to-video\\\",\\n \\\"prompt\\\": \\\"Summer beach vacation style, a white cat wearing sunglasses sits on a surfboard.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/speech-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/speech-to-video/input_audio_1.wav\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/speech-to-video\\\",\\n \\\"prompt\\\": \\\"Summer beach vacation style, a white cat wearing sunglasses sits on a surfboard.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/speech-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/speech-to-video/input_audio_1.wav\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/speech-to-video\\\",\\n \\\"prompt\\\": \\\"Summer beach vacation style, a white cat wearing sunglasses sits on a surfboard.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/speech-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/speech-to-video/input_audio_1.wav\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/speech-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Wan 2.2 Speech to Video" modelId: "alibaba/wan/2.2/speech-to-video" diff --git a/model-api-reference/video-generation/alibaba/wan/2.2/text-to-video.md b/model-api-reference/video-generation/alibaba/wan/2.2/text-to-video.md deleted file mode 100644 index 4619e1cc..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.2/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.2 Text to Video API Reference" -description: "Wan 2.2 Text to Video API reference for SandBase. Use model alibaba/wan/2.2/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.2/text-to-video" -apiReferenceJson: "{\"title\":\"Wan 2.2 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 is Alibaba's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/text-to-video.\",\"default\":\"alibaba/wan/2.2/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (480p, 580p, or 720p).\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/text-to-video\\\",\\n \\\"prompt\\\": \\\"A close-up of a young woman smiling gently in the rain, raindrops glistening on her face and eyelashes. The video captures the delicate details of her expression and the water droplets, with soft light reflecting off her skin in the rainy atmosphere.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/text-to-video\\\",\\n \\\"prompt\\\": \\\"A close-up of a young woman smiling gently in the rain, raindrops glistening on her face and eyelashes. The video captures the delicate details of her expression and the water droplets, with soft light reflecting off her skin in the rainy atmosphere.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/text-to-video\\\",\\n \\\"prompt\\\": \\\"A close-up of a young woman smiling gently in the rain, raindrops glistening on her face and eyelashes. The video captures the delicate details of her expression and the water droplets, with soft light reflecting off her skin in the rainy atmosphere.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.2 Text to Video" - modelId: "alibaba/wan/2.2/text-to-video" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.2/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-07-28T16:14:33.355Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.2/text-to-video/lora.md b/model-api-reference/video-generation/alibaba/wan/2.2/text-to-video/lora.md deleted file mode 100644 index 2a6dcc51..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.2/text-to-video/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.2 Text to Video LoRA API Reference" -description: "Wan 2.2 Text to Video LoRA API reference for SandBase. Use model alibaba/wan/2.2/text-to-video/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.2/text-to-video/lora" -apiReferenceJson: "{\"title\":\"Wan 2.2 Text to Video LoRA\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 Lora by Alibaba - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/text-to-video/lora.\",\"default\":\"alibaba/wan/2.2/text-to-video/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (480p, 580p, or 720p).\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"},{\"name\":\"reverse_video\",\"type\":\"boolean\",\"required\":false,\"description\":\"If true, the video will be reversed.\",\"default\":\"false\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA weights to be used in the inference.\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/text-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A close-up of a young woman smiling gently in the rain, raindrops glistening on her face and eyelashes. The video captures the delicate details of her expression and the water droplets, with soft light reflecting off her skin in the rainy atmosphere.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/text-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A close-up of a young woman smiling gently in the rain, raindrops glistening on her face and eyelashes. The video captures the delicate details of her expression and the water droplets, with soft light reflecting off her skin in the rainy atmosphere.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/text-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A close-up of a young woman smiling gently in the rain, raindrops glistening on her face and eyelashes. The video captures the delicate details of her expression and the water droplets, with soft light reflecting off her skin in the rainy atmosphere.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/text-to-video/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.2 Text to Video LoRA" - modelId: "alibaba/wan/2.2/text-to-video/lora" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.2/text-to-video/lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-07T12:45:10.109Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.2/text-to-video/turbo.md b/model-api-reference/video-generation/alibaba/wan/2.2/text-to-video/turbo.md deleted file mode 100644 index 11807b7f..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.2/text-to-video/turbo.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.2 Text to Video Turbo API Reference" -description: "Wan 2.2 Text to Video Turbo API reference for SandBase. Use model alibaba/wan/2.2/text-to-video/turbo with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.2/text-to-video/turbo" -apiReferenceJson: "{\"title\":\"Wan 2.2 Text to Video Turbo\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 Turbo is Alibaba's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/text-to-video/turbo.\",\"default\":\"alibaba/wan/2.2/text-to-video/turbo\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (480p, 580p, or 720p).\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/text-to-video/turbo\\\",\\n \\\"prompt\\\": \\\"A medium shot establishes a modern, minimalist office setting: clean lines, muted grey walls, and polished wood surfaces. The focus shifts to a close-up on a woman in sharp, navy blue business attire. Her crisp white blouse contrasts with the deep blue of her tailored suit jacket. The subtle texture of the fabric is visible—a fine weave with a slight sheen. Her expression is serious, yet engaging, as she speaks to someone unseen just beyond the frame. Close-up on her eyes, showing the intensity of her gaze and the fine lines around them that hint at experience and focus. Her lips are slightly parted, as if mid-sentence. The light catches the subtle highlights in her auburn hair, meticulously styled. Note the slight catch of light on the silver band of her watch. High resolution 4k\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/text-to-video/turbo\\\",\\n \\\"prompt\\\": \\\"A medium shot establishes a modern, minimalist office setting: clean lines, muted grey walls, and polished wood surfaces. The focus shifts to a close-up on a woman in sharp, navy blue business attire. Her crisp white blouse contrasts with the deep blue of her tailored suit jacket. The subtle texture of the fabric is visible—a fine weave with a slight sheen. Her expression is serious, yet engaging, as she speaks to someone unseen just beyond the frame. Close-up on her eyes, showing the intensity of her gaze and the fine lines around them that hint at experience and focus. Her lips are slightly parted, as if mid-sentence. The light catches the subtle highlights in her auburn hair, meticulously styled. Note the slight catch of light on the silver band of her watch. High resolution 4k\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/text-to-video/turbo\\\",\\n \\\"prompt\\\": \\\"A medium shot establishes a modern, minimalist office setting: clean lines, muted grey walls, and polished wood surfaces. The focus shifts to a close-up on a woman in sharp, navy blue business attire. Her crisp white blouse contrasts with the deep blue of her tailored suit jacket. The subtle texture of the fabric is visible—a fine weave with a slight sheen. Her expression is serious, yet engaging, as she speaks to someone unseen just beyond the frame. Close-up on her eyes, showing the intensity of her gaze and the fine lines around them that hint at experience and focus. Her lips are slightly parted, as if mid-sentence. The light catches the subtle highlights in her auburn hair, meticulously styled. Note the slight catch of light on the silver band of her watch. High resolution 4k\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/text-to-video/turbo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.2 Text to Video Turbo" - modelId: "alibaba/wan/2.2/text-to-video/turbo" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.2/text-to-video/turbo" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-07-31T18:01:55.359Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.2/vace-fun/depth.md b/model-api-reference/video-generation/alibaba/wan/2.2/vace-fun/depth.md deleted file mode 100644 index 30307aab..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.2/vace-fun/depth.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.2 VACE Fun Depth API Reference" -description: "Wan 2.2 VACE Fun Depth API reference for SandBase. Use model alibaba/wan/2.2/vace-fun/depth with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.2/vace-fun/depth" -apiReferenceJson: "{\"title\":\"Wan 2.2 VACE Fun Depth\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 Vace Fun by Alibaba - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/vace-fun/depth.\",\"default\":\"alibaba/wan/2.2/vace-fun/depth\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL to the source video file. Required for depth task.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, 240p, 360p, 480p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/vace-fun/depth\\\",\\n \\\"prompt\\\": \\\"A confident woman strides toward the camera down a sun-drenched, empty street. Her vibrant summer dress, a flowing emerald green with delicate white floral embroidery, billows slightly in the gentle breeze. She carries a stylish, woven straw bag, its natural tan contrasting beautifully with the dress. The dress's fabric shimmers subtly, catching the light. The white embroidery is intricate, each tiny flower meticulously detailed. Her expression is focused, yet relaxed, radiating self-assuredness. Her auburn hair, partially pulled back in a loose braid, catches the sunlight, creating warm highlights. The street itself is paved with warm, grey cobblestones, reflecting the bright sun. The mood is optimistic and serene, emphasizing the woman's independence and carefree spirit. High resolution 4k\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/vace-fun/depth/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/vace-fun/depth\\\",\\n \\\"prompt\\\": \\\"A confident woman strides toward the camera down a sun-drenched, empty street. Her vibrant summer dress, a flowing emerald green with delicate white floral embroidery, billows slightly in the gentle breeze. She carries a stylish, woven straw bag, its natural tan contrasting beautifully with the dress. The dress's fabric shimmers subtly, catching the light. The white embroidery is intricate, each tiny flower meticulously detailed. Her expression is focused, yet relaxed, radiating self-assuredness. Her auburn hair, partially pulled back in a loose braid, catches the sunlight, creating warm highlights. The street itself is paved with warm, grey cobblestones, reflecting the bright sun. The mood is optimistic and serene, emphasizing the woman's independence and carefree spirit. High resolution 4k\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/vace-fun/depth/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/vace-fun/depth\\\",\\n \\\"prompt\\\": \\\"A confident woman strides toward the camera down a sun-drenched, empty street. Her vibrant summer dress, a flowing emerald green with delicate white floral embroidery, billows slightly in the gentle breeze. She carries a stylish, woven straw bag, its natural tan contrasting beautifully with the dress. The dress's fabric shimmers subtly, catching the light. The white embroidery is intricate, each tiny flower meticulously detailed. Her expression is focused, yet relaxed, radiating self-assuredness. Her auburn hair, partially pulled back in a loose braid, catches the sunlight, creating warm highlights. The street itself is paved with warm, grey cobblestones, reflecting the bright sun. The mood is optimistic and serene, emphasizing the woman's independence and carefree spirit. High resolution 4k\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/vace-fun/depth/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/vace-fun/depth\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.2 VACE Fun Depth" - modelId: "alibaba/wan/2.2/vace-fun/depth" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.2/vace-fun/depth" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-17T20:52:28.123Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.2/vace-fun/inpainting.md b/model-api-reference/video-generation/alibaba/wan/2.2/vace-fun/inpainting.md deleted file mode 100644 index 58880563..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.2/vace-fun/inpainting.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.2 VACE Fun Inpainting API Reference" -description: "Wan 2.2 VACE Fun Inpainting API reference for SandBase. Use model alibaba/wan/2.2/vace-fun/inpainting with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.2/vace-fun/inpainting" -apiReferenceJson: "{\"title\":\"Wan 2.2 VACE Fun Inpainting\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 Vace Fun is Alibaba's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/vace-fun/inpainting.\",\"default\":\"alibaba/wan/2.2/vace-fun/inpainting\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"URL to the guiding mask file. If provided, the model will use this mask as a reference to create masked video using salient mask tracking. Will be ignored if mask_video_url is provided.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL to the source video file. Required for inpainting.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, 240p, 360p, 480p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/vace-fun/inpainting\\\",\\n \\\"prompt\\\": \\\"The video shows a man riding a horse on a vast grassland. He has long lavender hair and wears a traditional dress of a white top and black pants. The animation style makes him look like he is doing some kind of outdoor activity or performing. The background is a spectacular mountain range and cloud sky, giving a sense of tranquility and vastness. The entire video is shot from a fixed angle, focusing on the rider and his horse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/vace-fun/inpainting/input_video_1.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/vace-fun/inpainting\\\",\\n \\\"prompt\\\": \\\"The video shows a man riding a horse on a vast grassland. He has long lavender hair and wears a traditional dress of a white top and black pants. The animation style makes him look like he is doing some kind of outdoor activity or performing. The background is a spectacular mountain range and cloud sky, giving a sense of tranquility and vastness. The entire video is shot from a fixed angle, focusing on the rider and his horse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/vace-fun/inpainting/input_video_1.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/vace-fun/inpainting\\\",\\n \\\"prompt\\\": \\\"The video shows a man riding a horse on a vast grassland. He has long lavender hair and wears a traditional dress of a white top and black pants. The animation style makes him look like he is doing some kind of outdoor activity or performing. The background is a spectacular mountain range and cloud sky, giving a sense of tranquility and vastness. The entire video is shot from a fixed angle, focusing on the rider and his horse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/vace-fun/inpainting/input_video_1.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/vace-fun/inpainting\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.2 VACE Fun Inpainting" - modelId: "alibaba/wan/2.2/vace-fun/inpainting" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.2/vace-fun/inpainting" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-17T21:00:02.58Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.2/vace-fun/outpainting.md b/model-api-reference/video-generation/alibaba/wan/2.2/vace-fun/outpainting.md deleted file mode 100644 index eea5fc05..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.2/vace-fun/outpainting.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.2 VACE Fun Outpainting API Reference" -description: "Wan 2.2 VACE Fun Outpainting API reference for SandBase. Use model alibaba/wan/2.2/vace-fun/outpainting with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.2/vace-fun/outpainting" -apiReferenceJson: "{\"title\":\"Wan 2.2 VACE Fun Outpainting\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 Vace Fun by Alibaba - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/vace-fun/outpainting.\",\"default\":\"alibaba/wan/2.2/vace-fun/outpainting\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL to the source video file. Required for outpainting.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, 240p, 360p, 480p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"},{\"name\":\"expand_left\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to expand the video to the left.\",\"default\":\"false\"},{\"name\":\"expand_right\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to expand the video to the right.\",\"default\":\"false\"},{\"name\":\"expand_bottom\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to expand the video to the bottom.\",\"default\":\"false\"},{\"name\":\"expand_top\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to expand the video to the top.\",\"default\":\"false\"},{\"name\":\"expand_ratio\",\"type\":\"number\",\"required\":false,\"description\":\"Amount of expansion. This is a float value between 0 and 1, where 0.25 adds 25% to the original video size on the specified sides.\",\"default\":\"0.25\",\"constraints\":\"Range: 0 to 1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/vace-fun/outpainting\\\",\\n \\\"prompt\\\": \\\"A lone woman strides through the neon-drenched streets of Tokyo at night. Her crimson dress, a vibrant splash of color against the deep blues and blacks of the cityscape, flows slightly with each step. A tailored black jacket, crisp and elegant, contrasts sharply with the dress's rich texture. Medium shot: The city hums around her, blurred lights creating streaks of color in the background. Close-up: The fabric of her dress catches the streetlight's glow, revealing a subtle silk sheen and the intricate stitching at the hem. Her black jacket’s subtle texture is visible – a fine wool perhaps, with a matte finish. The overall mood is one of quiet confidence and mystery, a vibrant woman navigating a bustling, nocturnal landscape. High resolution 4k.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/vace-fun/outpainting/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/vace-fun/outpainting\\\",\\n \\\"prompt\\\": \\\"A lone woman strides through the neon-drenched streets of Tokyo at night. Her crimson dress, a vibrant splash of color against the deep blues and blacks of the cityscape, flows slightly with each step. A tailored black jacket, crisp and elegant, contrasts sharply with the dress's rich texture. Medium shot: The city hums around her, blurred lights creating streaks of color in the background. Close-up: The fabric of her dress catches the streetlight's glow, revealing a subtle silk sheen and the intricate stitching at the hem. Her black jacket’s subtle texture is visible – a fine wool perhaps, with a matte finish. The overall mood is one of quiet confidence and mystery, a vibrant woman navigating a bustling, nocturnal landscape. High resolution 4k.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/vace-fun/outpainting/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/vace-fun/outpainting\\\",\\n \\\"prompt\\\": \\\"A lone woman strides through the neon-drenched streets of Tokyo at night. Her crimson dress, a vibrant splash of color against the deep blues and blacks of the cityscape, flows slightly with each step. A tailored black jacket, crisp and elegant, contrasts sharply with the dress's rich texture. Medium shot: The city hums around her, blurred lights creating streaks of color in the background. Close-up: The fabric of her dress catches the streetlight's glow, revealing a subtle silk sheen and the intricate stitching at the hem. Her black jacket’s subtle texture is visible – a fine wool perhaps, with a matte finish. The overall mood is one of quiet confidence and mystery, a vibrant woman navigating a bustling, nocturnal landscape. High resolution 4k.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/vace-fun/outpainting/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/vace-fun/outpainting\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.2 VACE Fun Outpainting" - modelId: "alibaba/wan/2.2/vace-fun/outpainting" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.2/vace-fun/outpainting" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-17T21:03:36.437Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.2/vace-fun/reframe.md b/model-api-reference/video-generation/alibaba/wan/2.2/vace-fun/reframe.md deleted file mode 100644 index 0f250d8b..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.2/vace-fun/reframe.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.2 VACE Fun Reframe API Reference" -description: "Wan 2.2 VACE Fun Reframe API reference for SandBase. Use model alibaba/wan/2.2/vace-fun/reframe with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.2/vace-fun/reframe" -apiReferenceJson: "{\"title\":\"Wan 2.2 VACE Fun Reframe\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 Vace Fun by Alibaba - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/vace-fun/reframe.\",\"default\":\"alibaba/wan/2.2/vace-fun/reframe\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation. Optional for reframing.\",\"default\":\"\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL to the source video file. This video will be used as a reference for the reframe task.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, 240p, 360p, 480p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"},{\"name\":\"trim_borders\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to trim borders from the video.\",\"default\":\"true\"},{\"name\":\"zoom_factor\",\"type\":\"number\",\"required\":false,\"description\":\"Zoom factor for the video. When this value is greater than 0, the video will be zoomed in by this factor (in relation to the canvas size,) cutting off the edges of the video. A value of 0 means no zoom.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 0.9\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/vace-fun/reframe\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/vace-fun/reframe/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/vace-fun/reframe\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/vace-fun/reframe/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/vace-fun/reframe\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/vace-fun/reframe/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/vace-fun/reframe\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.2 VACE Fun Reframe" - modelId: "alibaba/wan/2.2/vace-fun/reframe" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.2/vace-fun/reframe" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-17T21:20:15.056Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.2/video-to-video.md b/model-api-reference/video-generation/alibaba/wan/2.2/video-to-video.md deleted file mode 100644 index e05f2199..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.2/video-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.2 Video to Video API Reference" -description: "Wan 2.2 Video to Video API reference for SandBase. Use model alibaba/wan/2.2/video-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.2/video-to-video" -apiReferenceJson: "{\"title\":\"Wan 2.2 Video to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 Video To Video by Alibaba - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.2/video-to-video.\",\"default\":\"alibaba/wan/2.2/video-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input video.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (480p, 580p, or 720p).\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"Strength of the video transformation. A value of 1.0 means the output will be completely based on the prompt, while a value of 0.0 means the output will be identical to the input video.\",\"default\":\"0.9\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"},{\"name\":\"resample_fps\",\"type\":\"boolean\",\"required\":false,\"description\":\"If true, the video will be resampled to the passed frames per second. If false, the video will not be resampled.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.2/video-to-video\\\",\\n \\\"prompt\\\": \\\"A low-angle medium shot captures a domestic white cat with brown and black patches and a blue bandana sitting on a light-colored tiled floor indoors, meticulously grooming itself by licking its paw and then rubbing its face with it, against a soft-focused background of wooden kitchen cabinets and a reflective metallic appliance.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/video-to-video/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/video-to-video\\\",\\n \\\"prompt\\\": \\\"A low-angle medium shot captures a domestic white cat with brown and black patches and a blue bandana sitting on a light-colored tiled floor indoors, meticulously grooming itself by licking its paw and then rubbing its face with it, against a soft-focused background of wooden kitchen cabinets and a reflective metallic appliance.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/video-to-video/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.2/video-to-video\\\",\\n \\\"prompt\\\": \\\"A low-angle medium shot captures a domestic white cat with brown and black patches and a blue bandana sitting on a light-colored tiled floor indoors, meticulously grooming itself by licking its paw and then rubbing its face with it, against a soft-focused background of wooden kitchen cabinets and a reflective metallic appliance.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/video-to-video/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.2/video-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.2 Video to Video" - modelId: "alibaba/wan/2.2/video-to-video" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.2/video-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-02T02:30:21.079Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.5/image-to-video.md b/model-api-reference/video-generation/alibaba/wan/2.5/image-to-video.md index cb30738c..13523ffd 100644 --- a/model-api-reference/video-generation/alibaba/wan/2.5/image-to-video.md +++ b/model-api-reference/video-generation/alibaba/wan/2.5/image-to-video.md @@ -4,7 +4,7 @@ description: "Wan 2.5 Image to Video API reference for SandBase. Use model aliba aside: false outline: false apiReferenceKey: "video/alibaba/wan/2.5/image-to-video" -apiReferenceJson: "{\"title\":\"Wan 2.5 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.5 by Alibaba - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.5/image-to-video.\",\"default\":\"alibaba/wan/2.5/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the desired video motion. Max 800 characters.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame. Must be publicly accessible or base64 data URI.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the audio to use as the background music. Must be publicly accessible. Limit handling: If the audio duration exceeds the duration value (5 or 10 seconds), the audio is truncated to the first 5 or 10 seconds, and the rest is discarded. If the audio is shorter than the video, the remaining part of the video will be silent. For example, if the audio is 3 seconds long and the video duration is 5 seconds, the first 3 seconds of the output video will have sound, and the last 2 seconds will be silent. - Format: WAV, MP3. - Duration: 3 to 30 s. - File size: Up to 15 MB.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Video resolution. Valid values: 480p, 720p, 1080p\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated video in seconds. Choose between 5 or 10 seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"The white dragon warrior stands still, eyes full of determination and strength. The camera slowly moves closer or circles around the warrior, highlighting the powerful presence and heroic spirit of the character.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.5/image-to-video/input_image_0.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"The white dragon warrior stands still, eyes full of determination and strength. The camera slowly moves closer or circles around the warrior, highlighting the powerful presence and heroic spirit of the character.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.5/image-to-video/input_image_0.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"The white dragon warrior stands still, eyes full of determination and strength. The camera slowly moves closer or circles around the warrior, highlighting the powerful presence and heroic spirit of the character.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.5/image-to-video/input_image_0.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.5/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Wan 2.5 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.5 by Alibaba - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.5/image-to-video.\",\"default\":\"alibaba/wan/2.5/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the desired video motion. Max 800 characters.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame. Must be publicly accessible or base64 data URI.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the audio to use as the background music. Must be publicly accessible. Limit handling: If the audio duration exceeds the duration value (5 or 10 seconds), the audio is truncated to the first 5 or 10 seconds, and the rest is discarded. If the audio is shorter than the video, the remaining part of the video will be silent. For example, if the audio is 3 seconds long and the video duration is 5 seconds, the first 3 seconds of the output video will have sound, and the last 2 seconds will be silent. - Format: WAV, MP3. - Duration: 3 to 30 s. - File size: Up to 15 MB.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Video resolution. Valid values: 480p, 720p, 1080p\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated video in seconds. Choose between 5 or 10 seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"The white dragon warrior stands still, eyes full of determination and strength. The camera slowly moves closer or circles around the warrior, highlighting the powerful presence and heroic spirit of the character.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.5/image-to-video/input_image_0.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"The white dragon warrior stands still, eyes full of determination and strength. The camera slowly moves closer or circles around the warrior, highlighting the powerful presence and heroic spirit of the character.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.5/image-to-video/input_image_0.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"The white dragon warrior stands still, eyes full of determination and strength. The camera slowly moves closer or circles around the warrior, highlighting the powerful presence and heroic spirit of the character.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.5/image-to-video/input_image_0.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.5/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Wan 2.5 Image to Video" modelId: "alibaba/wan/2.5/image-to-video" diff --git a/model-api-reference/video-generation/alibaba/wan/2.5/text-to-video.md b/model-api-reference/video-generation/alibaba/wan/2.5/text-to-video.md index 1d16758e..6f04d018 100644 --- a/model-api-reference/video-generation/alibaba/wan/2.5/text-to-video.md +++ b/model-api-reference/video-generation/alibaba/wan/2.5/text-to-video.md @@ -4,7 +4,7 @@ description: "Wan 2.5 Text to Video API reference for SandBase. Use model alibab aside: false outline: false apiReferenceKey: "video/alibaba/wan/2.5/text-to-video" -apiReferenceJson: "{\"title\":\"Wan 2.5 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.5 is Alibaba's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.5/text-to-video.\",\"default\":\"alibaba/wan/2.5/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt for video generation. Supports Chinese and English, max 800 characters.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the audio to use as the background music. Must be publicly accessible. Limit handling: If the audio duration exceeds the duration value (5 or 10 seconds), the audio is truncated to the first 5 or 10 seconds, and the rest is discarded. If the audio is shorter than the video, the remaining part of the video will be silent. For example, if the audio is 3 seconds long and the video duration is 5 seconds, the first 3 seconds of the output video will have sound, and the last 2 seconds will be silent. - Format: WAV, MP3. - Duration: 3 to 30 s. - File size: Up to 15 MB.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Video resolution tier\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated video in seconds. Choose between 5 or 10 seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"The white dragon warrior stands still, eyes full of determination and strength. The camera slowly moves closer or circles around the warrior, highlighting the powerful presence and heroic spirit of the character.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"The white dragon warrior stands still, eyes full of determination and strength. The camera slowly moves closer or circles around the warrior, highlighting the powerful presence and heroic spirit of the character.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"The white dragon warrior stands still, eyes full of determination and strength. The camera slowly moves closer or circles around the warrior, highlighting the powerful presence and heroic spirit of the character.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.5/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Wan 2.5 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.5 is Alibaba's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.5/text-to-video.\",\"default\":\"alibaba/wan/2.5/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt for video generation. Supports Chinese and English, max 800 characters.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1, 4:3, 3:4\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the audio to use as the background music. Must be publicly accessible. Limit handling: If the audio duration exceeds the duration value (5 or 10 seconds), the audio is truncated to the first 5 or 10 seconds, and the rest is discarded. If the audio is shorter than the video, the remaining part of the video will be silent. For example, if the audio is 3 seconds long and the video duration is 5 seconds, the first 3 seconds of the output video will have sound, and the last 2 seconds will be silent. - Format: WAV, MP3. - Duration: 3 to 30 s. - File size: Up to 15 MB.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Video resolution tier\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated video in seconds. Choose between 5 or 10 seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"The white dragon warrior stands still, eyes full of determination and strength. The camera slowly moves closer or circles around the warrior, highlighting the powerful presence and heroic spirit of the character.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"The white dragon warrior stands still, eyes full of determination and strength. The camera slowly moves closer or circles around the warrior, highlighting the powerful presence and heroic spirit of the character.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"The white dragon warrior stands still, eyes full of determination and strength. The camera slowly moves closer or circles around the warrior, highlighting the powerful presence and heroic spirit of the character.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.5/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Wan 2.5 Text to Video" modelId: "alibaba/wan/2.5/text-to-video" diff --git a/model-api-reference/video-generation/alibaba/wan/2.6/flash/image-to-video.md b/model-api-reference/video-generation/alibaba/wan/2.6/flash/image-to-video.md new file mode 100644 index 00000000..91963882 --- /dev/null +++ b/model-api-reference/video-generation/alibaba/wan/2.6/flash/image-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Wan 2.6 Flash Image to Video API Reference" +description: "Wan 2.6 Flash Image to Video API reference for SandBase. Use model alibaba/wan/2.6/flash/image-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/alibaba/wan/2.6/flash/image-to-video" +apiReferenceJson: "{\"title\":\"Wan 2.6 Flash Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.6 Flash by Alibaba - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.6/flash/image-to-video.\",\"default\":\"alibaba/wan/2.6/flash/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the desired video motion. Max 800 characters.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame. Must be publicly accessible or base64 data URI. Image dimensions must be between 240 and 7680.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the audio to use as the background music. Must be publicly accessible. Limit handling: If the audio duration exceeds the duration value (5, 10, or 15 seconds), the audio is truncated to the first N seconds, and the rest is discarded. If the audio is shorter than the video, the remaining part of the video will be silent. For example, if the audio is 3 seconds long and the video duration is 5 seconds, the first 3 seconds of the output video will have sound, and the last 2 seconds will be silent. - Format: WAV, MP3. - Duration: 3 to 30 s. - File size: Up to 15 MB.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Video resolution. Valid values: 720p, 1080p\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated video in seconds. Choose between 5, 10 or 15 seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10, 15\"},{\"name\":\"multi_shots\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, enables intelligent multi-shot segmentation. Only active when enable_prompt_expansion is True. Set to false for single-shot generation.\",\"default\":\"false\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.6/flash/image-to-video\\\",\\n \\\"prompt\\\": \\\"A comedic cinematic demo where typed prompts physically transform reality. Photoreal, strong match cuts, coherent main character, no subtitles.\\\\n\\\\nShot 1 [0-4s] Continue from first frame. The creator presses \\\\\\\"PRINT\\\\\\\". The machine clunks like a spaceship. Creator whispers: \\\\\\\"Okay… I'm pressing enter.\\\\\\\"\\\\nShot 2 [4-8s] Smash cut: the printed paper flies into the air and unfolds into a full desert canyon scene around the desk, like reality is being unrolled. Creator says: \\\\\\\"Wait—my prompt has physics?\\\\\\\"\\\\nShot 3 [8-12s] Hard cut: the paper tears and reveals a tropical jungle behind it, perfectly lit, cinematic sun. Creator laughs: \\\\\\\"This is exactly why we do AI.\\\\\\\"\\\\nShot 4 [12-15s] Hard cut back to studio. The printer prints a final line (not shown clearly). Creator looks to camera: \\\\\\\"Multi-scene. Single prompt.\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-2/dev/edit/input_images_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/flash/image-to-video\\\",\\n \\\"prompt\\\": \\\"A comedic cinematic demo where typed prompts physically transform reality. Photoreal, strong match cuts, coherent main character, no subtitles.\\\\n\\\\nShot 1 [0-4s] Continue from first frame. The creator presses \\\\\\\"PRINT\\\\\\\". The machine clunks like a spaceship. Creator whispers: \\\\\\\"Okay… I'm pressing enter.\\\\\\\"\\\\nShot 2 [4-8s] Smash cut: the printed paper flies into the air and unfolds into a full desert canyon scene around the desk, like reality is being unrolled. Creator says: \\\\\\\"Wait—my prompt has physics?\\\\\\\"\\\\nShot 3 [8-12s] Hard cut: the paper tears and reveals a tropical jungle behind it, perfectly lit, cinematic sun. Creator laughs: \\\\\\\"This is exactly why we do AI.\\\\\\\"\\\\nShot 4 [12-15s] Hard cut back to studio. The printer prints a final line (not shown clearly). Creator looks to camera: \\\\\\\"Multi-scene. Single prompt.\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-2/dev/edit/input_images_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/flash/image-to-video\\\",\\n \\\"prompt\\\": \\\"A comedic cinematic demo where typed prompts physically transform reality. Photoreal, strong match cuts, coherent main character, no subtitles.\\\\n\\\\nShot 1 [0-4s] Continue from first frame. The creator presses \\\\\\\"PRINT\\\\\\\". The machine clunks like a spaceship. Creator whispers: \\\\\\\"Okay… I'm pressing enter.\\\\\\\"\\\\nShot 2 [4-8s] Smash cut: the printed paper flies into the air and unfolds into a full desert canyon scene around the desk, like reality is being unrolled. Creator says: \\\\\\\"Wait—my prompt has physics?\\\\\\\"\\\\nShot 3 [8-12s] Hard cut: the paper tears and reveals a tropical jungle behind it, perfectly lit, cinematic sun. Creator laughs: \\\\\\\"This is exactly why we do AI.\\\\\\\"\\\\nShot 4 [12-15s] Hard cut back to studio. The printer prints a final line (not shown clearly). Creator looks to camera: \\\\\\\"Multi-scene. Single prompt.\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-2/dev/edit/input_images_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.6/flash/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Wan 2.6 Flash Image to Video" + modelId: "alibaba/wan/2.6/flash/image-to-video" + vendor: "Alibaba" + vendorSlug: "alibaba" + modelSlug: "wan/2.6/flash/image-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-01-18T08:06:36.211Z" + capabilities: ["image-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/alibaba/wan/2.6/flash/reference-to-video.md b/model-api-reference/video-generation/alibaba/wan/2.6/flash/reference-to-video.md new file mode 100644 index 00000000..ae876010 --- /dev/null +++ b/model-api-reference/video-generation/alibaba/wan/2.6/flash/reference-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Wan 2.6 Flash Reference to Video API Reference" +description: "Wan 2.6 Flash Reference to Video API reference for SandBase. Use model alibaba/wan/2.6/flash/reference-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/alibaba/wan/2.6/flash/reference-to-video" +apiReferenceJson: "{\"title\":\"Wan 2.6 Flash Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.6 Flash reference-to-video model that places characters from reference images or videos into a new scene, with optional generated audio and multi-shot control.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.6/flash/reference-to-video.\",\"default\":\"alibaba/wan/2.6/flash/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Use Character1, Character2, etc. to reference subjects from your reference files. Works for people, animals, or objects. For multi-shot prompts: '[0-3s] Shot 1. [3-6s] Shot 2.' Max 1500 characters. Reference order: video_urls first, then image_urls.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for subject consistency (0-5 images). Combined with video_urls, total references cannot exceed 5. Formats: JPEG, JPG, PNG (no alpha), BMP, WEBP. Resolution: 240-5000px. Max 10MB each. Reference order: image_urls continue numbering after video_urls.\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"Reference videos for subject consistency (0-3 videos). Videos' FPS must be at least 16 FPS. Combined with image_urls, total references cannot exceed 5. Reference order: video_urls are numbered first (Character1, Character2...), then image_urls continue the sequence.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Video resolution tier. R2V Flash only supports 720p and 1080p.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated video in seconds. R2V Flash supports only 5 or 10 seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"multi_shots\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true (default), enables intelligent multi-shot segmentation for coherent narrative videos with multiple shots. When false, generates single continuous shot. Only active when enable_prompt_expansion is True.\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1, 4:3, 3:4\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate a video with audio. Set to false for silent video generation. Silent videos are faster and cost half of the audio version price.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.6/flash/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Dance battle between Character1 and Character2.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/flash/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Dance battle between Character1 and Character2.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/flash/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Dance battle between Character1 and Character2.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.6/flash/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Wan 2.6 Flash Reference to Video" + modelId: "alibaba/wan/2.6/flash/reference-to-video" + vendor: "Alibaba" + vendorSlug: "alibaba" + modelSlug: "wan/2.6/flash/reference-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-02-06T18:01:37.773Z" + capabilities: ["reference-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/alibaba/wan/2.6/image-to-video.md b/model-api-reference/video-generation/alibaba/wan/2.6/image-to-video.md index 8b8dfe2b..7b358597 100644 --- a/model-api-reference/video-generation/alibaba/wan/2.6/image-to-video.md +++ b/model-api-reference/video-generation/alibaba/wan/2.6/image-to-video.md @@ -4,7 +4,7 @@ description: "Wan 2.6 Image to Video API reference for SandBase. Use model aliba aside: false outline: false apiReferenceKey: "video/alibaba/wan/2.6/image-to-video" -apiReferenceJson: "{\"title\":\"Wan 2.6 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.6 image-to-video model transforming still images into video. Supports first-frame-to-video only.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.6/image-to-video.\",\"default\":\"alibaba/wan/2.6/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"Realistic style, a small black cat curiously gazes up at the sky. The camera gradually rises from eye level, ending with an overhead angle capturing its curious eyes.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the starting image for video generation (first-frame-to-video only).\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of an audio file to guide video generation.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. Valid values are 5 and 10.\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"constraints\":\"Allowed values: 1:1, 4:3, 3:4, 16:9, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.6/image-to-video\\\",\\n \\\"prompt\\\": \\\"Realistic style, a small black cat curiously gazes up at the sky. The camera gradually rises from eye level, ending with an overhead angle capturing its curious eyes.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/samples/image-to-video/i2v-black-cat-sky-img0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"1:1\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/image-to-video\\\",\\n \\\"prompt\\\": \\\"Realistic style, a small black cat curiously gazes up at the sky. The camera gradually rises from eye level, ending with an overhead angle capturing its curious eyes.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/samples/image-to-video/i2v-black-cat-sky-img0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"1:1\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/image-to-video\\\",\\n \\\"prompt\\\": \\\"Realistic style, a small black cat curiously gazes up at the sky. The camera gradually rises from eye level, ending with an overhead angle capturing its curious eyes.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/samples/image-to-video/i2v-black-cat-sky-img0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"1:1\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.6/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Wan 2.6 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.6 image-to-video model transforming still images into video. Supports first-frame-to-video only.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.6/image-to-video.\",\"default\":\"alibaba/wan/2.6/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"Realistic style, a small black cat curiously gazes up at the sky. The camera gradually rises from eye level, ending with an overhead angle capturing its curious eyes.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the starting image for video generation (first-frame-to-video only).\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of an audio file to guide video generation.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. Valid values are 5 and 10.\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed (0-2147483647) for reproducible results. Omit for a random seed.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.6/image-to-video\\\",\\n \\\"prompt\\\": \\\"Realistic style, a small black cat curiously gazes up at the sky. The camera gradually rises from eye level, ending with an overhead angle capturing its curious eyes.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/samples/image-to-video/i2v-black-cat-sky-img0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/image-to-video\\\",\\n \\\"prompt\\\": \\\"Realistic style, a small black cat curiously gazes up at the sky. The camera gradually rises from eye level, ending with an overhead angle capturing its curious eyes.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/samples/image-to-video/i2v-black-cat-sky-img0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/image-to-video\\\",\\n \\\"prompt\\\": \\\"Realistic style, a small black cat curiously gazes up at the sky. The camera gradually rises from eye level, ending with an overhead angle capturing its curious eyes.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/samples/image-to-video/i2v-black-cat-sky-img0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.6/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Wan 2.6 Image to Video" modelId: "alibaba/wan/2.6/image-to-video" diff --git a/model-api-reference/video-generation/alibaba/wan/2.6/image-to-video/flash.md b/model-api-reference/video-generation/alibaba/wan/2.6/image-to-video/flash.md deleted file mode 100644 index 10ed5eb5..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.6/image-to-video/flash.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.6 Image to Video Flash API Reference" -description: "Wan 2.6 Image to Video Flash API reference for SandBase. Use model alibaba/wan/2.6/image-to-video/flash with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.6/image-to-video/flash" -apiReferenceJson: "{\"title\":\"Wan 2.6 Image to Video Flash\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.6 Flash by Alibaba - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.6/image-to-video/flash.\",\"default\":\"alibaba/wan/2.6/image-to-video/flash\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the desired video motion. Max 800 characters.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame. Must be publicly accessible or base64 data URI. Image dimensions must be between 240 and 7680.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the audio to use as the background music. Must be publicly accessible. Limit handling: If the audio duration exceeds the duration value (5, 10, or 15 seconds), the audio is truncated to the first N seconds, and the rest is discarded. If the audio is shorter than the video, the remaining part of the video will be silent. For example, if the audio is 3 seconds long and the video duration is 5 seconds, the first 3 seconds of the output video will have sound, and the last 2 seconds will be silent. - Format: WAV, MP3. - Duration: 3 to 30 s. - File size: Up to 15 MB.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Video resolution. Valid values: 720p, 1080p\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated video in seconds. Choose between 5, 10 or 15 seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10, 15\"},{\"name\":\"multi_shots\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, enables intelligent multi-shot segmentation. Only active when enable_prompt_expansion is True. Set to false for single-shot generation.\",\"default\":\"false\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.6/image-to-video/flash\\\",\\n \\\"prompt\\\": \\\"A comedic cinematic demo where typed prompts physically transform reality. Photoreal, strong match cuts, coherent main character, no subtitles.\\\\n\\\\nShot 1 [0-4s] Continue from first frame. The creator presses \\\\\\\"PRINT\\\\\\\". The machine clunks like a spaceship. Creator whispers: \\\\\\\"Okay… I'm pressing enter.\\\\\\\"\\\\nShot 2 [4-8s] Smash cut: the printed paper flies into the air and unfolds into a full desert canyon scene around the desk, like reality is being unrolled. Creator says: \\\\\\\"Wait—my prompt has physics?\\\\\\\"\\\\nShot 3 [8-12s] Hard cut: the paper tears and reveals a tropical jungle behind it, perfectly lit, cinematic sun. Creator laughs: \\\\\\\"This is exactly why we do AI.\\\\\\\"\\\\nShot 4 [12-15s] Hard cut back to studio. The printer prints a final line (not shown clearly). Creator looks to camera: \\\\\\\"Multi-scene. Single prompt.\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-2/dev/edit/input_images_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/image-to-video/flash\\\",\\n \\\"prompt\\\": \\\"A comedic cinematic demo where typed prompts physically transform reality. Photoreal, strong match cuts, coherent main character, no subtitles.\\\\n\\\\nShot 1 [0-4s] Continue from first frame. The creator presses \\\\\\\"PRINT\\\\\\\". The machine clunks like a spaceship. Creator whispers: \\\\\\\"Okay… I'm pressing enter.\\\\\\\"\\\\nShot 2 [4-8s] Smash cut: the printed paper flies into the air and unfolds into a full desert canyon scene around the desk, like reality is being unrolled. Creator says: \\\\\\\"Wait—my prompt has physics?\\\\\\\"\\\\nShot 3 [8-12s] Hard cut: the paper tears and reveals a tropical jungle behind it, perfectly lit, cinematic sun. Creator laughs: \\\\\\\"This is exactly why we do AI.\\\\\\\"\\\\nShot 4 [12-15s] Hard cut back to studio. The printer prints a final line (not shown clearly). Creator looks to camera: \\\\\\\"Multi-scene. Single prompt.\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-2/dev/edit/input_images_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/image-to-video/flash\\\",\\n \\\"prompt\\\": \\\"A comedic cinematic demo where typed prompts physically transform reality. Photoreal, strong match cuts, coherent main character, no subtitles.\\\\n\\\\nShot 1 [0-4s] Continue from first frame. The creator presses \\\\\\\"PRINT\\\\\\\". The machine clunks like a spaceship. Creator whispers: \\\\\\\"Okay… I'm pressing enter.\\\\\\\"\\\\nShot 2 [4-8s] Smash cut: the printed paper flies into the air and unfolds into a full desert canyon scene around the desk, like reality is being unrolled. Creator says: \\\\\\\"Wait—my prompt has physics?\\\\\\\"\\\\nShot 3 [8-12s] Hard cut: the paper tears and reveals a tropical jungle behind it, perfectly lit, cinematic sun. Creator laughs: \\\\\\\"This is exactly why we do AI.\\\\\\\"\\\\nShot 4 [12-15s] Hard cut back to studio. The printer prints a final line (not shown clearly). Creator looks to camera: \\\\\\\"Multi-scene. Single prompt.\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bfl/flux-2/dev/edit/input_images_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.6/image-to-video/flash\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.6 Image to Video Flash" - modelId: "alibaba/wan/2.6/image-to-video/flash" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.6/image-to-video/flash" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-18T08:06:36.211Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.6/reference-to-video.md b/model-api-reference/video-generation/alibaba/wan/2.6/reference-to-video.md index 8199b877..912da573 100644 --- a/model-api-reference/video-generation/alibaba/wan/2.6/reference-to-video.md +++ b/model-api-reference/video-generation/alibaba/wan/2.6/reference-to-video.md @@ -4,7 +4,7 @@ description: "Wan 2.6 Reference to Video API reference for SandBase. Use model a aside: false outline: false apiReferenceKey: "video/alibaba/wan/2.6/reference-to-video" -apiReferenceJson: "{\"title\":\"Wan 2.6 Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.6 reference-to-video model generating video guided by reference content.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.6/reference-to-video.\",\"default\":\"alibaba/wan/2.6/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"Video1 holds Image2 and plays a soothing country folk song on the chair from Image3, saying: 'The sunshine is so nice today.' Image1 holds a bouquet of sunflowers, walks past Video1, places the flowers on the table next to Video1, and says: 'That sounds lovely, could you sing it again?'\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of reference videos to guide video generation.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. Valid values are 5 and 10.\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"constraints\":\"Allowed values: 1:1, 4:3, 3:4, 16:9, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.6/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Video1 holds Image2 and plays a soothing country folk song on the chair from Image3, saying: 'The sunshine is so nice today.' Image1 holds a bouquet of sunflowers, walks past Video1, places the flowers on the table next to Video1, and says: 'That sounds lovely, could you sing it again?'\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"1:1\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Video1 holds Image2 and plays a soothing country folk song on the chair from Image3, saying: 'The sunshine is so nice today.' Image1 holds a bouquet of sunflowers, walks past Video1, places the flowers on the table next to Video1, and says: 'That sounds lovely, could you sing it again?'\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"1:1\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Video1 holds Image2 and plays a soothing country folk song on the chair from Image3, saying: 'The sunshine is so nice today.' Image1 holds a bouquet of sunflowers, walks past Video1, places the flowers on the table next to Video1, and says: 'That sounds lovely, could you sing it again?'\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"1:1\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.6/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Wan 2.6 Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.6 reference-to-video model generating video guided by reference content.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.6/reference-to-video.\",\"default\":\"alibaba/wan/2.6/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"Video1 holds Image2 and plays a soothing country folk song on the chair from Image3, saying: 'The sunshine is so nice today.' Image1 holds a bouquet of sunflowers, walks past Video1, places the flowers on the table next to Video1, and says: 'That sounds lovely, could you sing it again?'\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of reference videos to guide video generation.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. Valid values are 5 and 10.\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 1:1, 4:3, 3:4, 16:9, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed (0-2147483647) for reproducible results. Omit for a random seed.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images, referred to in the prompt as Image1, Image2, ... Combined with videos, up to 5 references in total.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.6/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Video1 holds Image2 and plays a soothing country folk song on the chair from Image3, saying: 'The sunshine is so nice today.' Image1 holds a bouquet of sunflowers, walks past Video1, places the flowers on the table next to Video1, and says: 'That sounds lovely, could you sing it again?'\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Video1 holds Image2 and plays a soothing country folk song on the chair from Image3, saying: 'The sunshine is so nice today.' Image1 holds a bouquet of sunflowers, walks past Video1, places the flowers on the table next to Video1, and says: 'That sounds lovely, could you sing it again?'\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Video1 holds Image2 and plays a soothing country folk song on the chair from Image3, saying: 'The sunshine is so nice today.' Image1 holds a bouquet of sunflowers, walks past Video1, places the flowers on the table next to Video1, and says: 'That sounds lovely, could you sing it again?'\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.6/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Wan 2.6 Reference to Video" modelId: "alibaba/wan/2.6/reference-to-video" diff --git a/model-api-reference/video-generation/alibaba/wan/2.6/reference-to-video/flash.md b/model-api-reference/video-generation/alibaba/wan/2.6/reference-to-video/flash.md deleted file mode 100644 index 56d287e8..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.6/reference-to-video/flash.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.6 Reference to Video Flash API Reference" -description: "Wan 2.6 Reference to Video Flash API reference for SandBase. Use model alibaba/wan/2.6/reference-to-video/flash with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.6/reference-to-video/flash" -apiReferenceJson: "{\"title\":\"Wan 2.6 Reference to Video Flash\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.6 Flash by Alibaba - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.6/reference-to-video/flash.\",\"default\":\"alibaba/wan/2.6/reference-to-video/flash\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Use Character1, Character2, etc. to reference subjects from your reference files. Works for people, animals, or objects. For multi-shot prompts: '[0-3s] Shot 1. [3-6s] Shot 2.' Max 1500 characters. Reference order: video_urls first, then image_urls.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for subject consistency (0-5 images). Combined with video_urls, total references cannot exceed 5. Formats: JPEG, JPG, PNG (no alpha), BMP, WEBP. Resolution: 240-5000px. Max 10MB each. Reference order: image_urls continue numbering after video_urls.\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"Reference videos for subject consistency (0-3 videos). Videos' FPS must be at least 16 FPS. Combined with image_urls, total references cannot exceed 5. Reference order: video_urls are numbered first (Character1, Character2...), then image_urls continue the sequence.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Video resolution tier. R2V Flash only supports 720p and 1080p.\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated video in seconds. R2V Flash supports only 5 or 10 seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"multi_shots\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true (default), enables intelligent multi-shot segmentation for coherent narrative videos with multiple shots. When false, generates single continuous shot. Only active when enable_prompt_expansion is True.\",\"default\":\"true\"},{\"name\":\"enable_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate a video with audio. Set to false for silent video generation. Silent videos are faster and cost 25% of the audio version price.\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.6/reference-to-video/flash\\\",\\n \\\"prompt\\\": \\\"Dance battle between Character1 and Character2.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/reference-to-video/flash\\\",\\n \\\"prompt\\\": \\\"Dance battle between Character1 and Character2.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/reference-to-video/flash\\\",\\n \\\"prompt\\\": \\\"Dance battle between Character1 and Character2.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.6/reference-to-video/flash\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.6 Reference to Video Flash" - modelId: "alibaba/wan/2.6/reference-to-video/flash" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.6/reference-to-video/flash" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-02-06T18:01:37.773Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.6/text-to-video.md b/model-api-reference/video-generation/alibaba/wan/2.6/text-to-video.md index 1fbb88bb..1591d23e 100644 --- a/model-api-reference/video-generation/alibaba/wan/2.6/text-to-video.md +++ b/model-api-reference/video-generation/alibaba/wan/2.6/text-to-video.md @@ -4,7 +4,7 @@ description: "Wan 2.6 Text to Video API reference for SandBase. Use model alibab aside: false outline: false apiReferenceKey: "video/alibaba/wan/2.6/text-to-video" -apiReferenceJson: "{\"title\":\"Wan 2.6 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.6 text-to-video model with cinematic visuals, configurable duration (5 or 10 seconds) and resolution.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.6/text-to-video.\",\"default\":\"alibaba/wan/2.6/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"Rim light, low contrast, medium close-up, daylight, left-weighted composition, clean single-person shot, warm tones, soft light, sunny day, side light, daytime. A young girl sits in a field of tall grass, with two fluffy little donkeys standing behind her. The girl is about eleven or twelve, wearing a simple floral dress, hair in two braids, with an innocent smile. She sits cross-legged, gently playing with wildflowers beside her. The donkeys are sturdy with perked ears, curiously looking toward the camera. Sunlight bathes the field, creating a warm and natural atmosphere.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. Valid values are 5 and 10.\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of an audio file to guide video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 1:1, 4:3, 3:4, 16:9, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.6/text-to-video\\\",\\n \\\"prompt\\\": \\\"Rim light, low contrast, medium close-up, daylight, left-weighted composition, clean single-person shot, warm tones, soft light, sunny day, side light, daytime. A young girl sits in a field of tall grass, with two fluffy little donkeys standing behind her. The girl is about eleven or twelve, wearing a simple floral dress, hair in two braids, with an innocent smile. She sits cross-legged, gently playing with wildflowers beside her. The donkeys are sturdy with perked ears, curiously looking toward the camera. Sunlight bathes the field, creating a warm and natural atmosphere.\\\",\\n \\\"duration\\\": 5,\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/text-to-video\\\",\\n \\\"prompt\\\": \\\"Rim light, low contrast, medium close-up, daylight, left-weighted composition, clean single-person shot, warm tones, soft light, sunny day, side light, daytime. A young girl sits in a field of tall grass, with two fluffy little donkeys standing behind her. The girl is about eleven or twelve, wearing a simple floral dress, hair in two braids, with an innocent smile. She sits cross-legged, gently playing with wildflowers beside her. The donkeys are sturdy with perked ears, curiously looking toward the camera. Sunlight bathes the field, creating a warm and natural atmosphere.\\\",\\n \\\"duration\\\": 5,\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/text-to-video\\\",\\n \\\"prompt\\\": \\\"Rim light, low contrast, medium close-up, daylight, left-weighted composition, clean single-person shot, warm tones, soft light, sunny day, side light, daytime. A young girl sits in a field of tall grass, with two fluffy little donkeys standing behind her. The girl is about eleven or twelve, wearing a simple floral dress, hair in two braids, with an innocent smile. She sits cross-legged, gently playing with wildflowers beside her. The donkeys are sturdy with perked ears, curiously looking toward the camera. Sunlight bathes the field, creating a warm and natural atmosphere.\\\",\\n \\\"duration\\\": 5,\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.6/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Wan 2.6 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.6 text-to-video model with cinematic visuals, configurable duration (5 or 10 seconds) and resolution.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.6/text-to-video.\",\"default\":\"alibaba/wan/2.6/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"Rim light, low contrast, medium close-up, daylight, left-weighted composition, clean single-person shot, warm tones, soft light, sunny day, side light, daytime. A young girl sits in a field of tall grass, with two fluffy little donkeys standing behind her. The girl is about eleven or twelve, wearing a simple floral dress, hair in two braids, with an innocent smile. She sits cross-legged, gently playing with wildflowers beside her. The donkeys are sturdy with perked ears, curiously looking toward the camera. Sunlight bathes the field, creating a warm and natural atmosphere.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. Valid values are 5 and 10.\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of an audio file to guide video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 1:1, 4:3, 3:4, 16:9, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed (0-2147483647) for reproducible results. Omit for a random seed.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.6/text-to-video\\\",\\n \\\"prompt\\\": \\\"Rim light, low contrast, medium close-up, daylight, left-weighted composition, clean single-person shot, warm tones, soft light, sunny day, side light, daytime. A young girl sits in a field of tall grass, with two fluffy little donkeys standing behind her. The girl is about eleven or twelve, wearing a simple floral dress, hair in two braids, with an innocent smile. She sits cross-legged, gently playing with wildflowers beside her. The donkeys are sturdy with perked ears, curiously looking toward the camera. Sunlight bathes the field, creating a warm and natural atmosphere.\\\",\\n \\\"duration\\\": 5,\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/text-to-video\\\",\\n \\\"prompt\\\": \\\"Rim light, low contrast, medium close-up, daylight, left-weighted composition, clean single-person shot, warm tones, soft light, sunny day, side light, daytime. A young girl sits in a field of tall grass, with two fluffy little donkeys standing behind her. The girl is about eleven or twelve, wearing a simple floral dress, hair in two braids, with an innocent smile. She sits cross-legged, gently playing with wildflowers beside her. The donkeys are sturdy with perked ears, curiously looking toward the camera. Sunlight bathes the field, creating a warm and natural atmosphere.\\\",\\n \\\"duration\\\": 5,\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.6/text-to-video\\\",\\n \\\"prompt\\\": \\\"Rim light, low contrast, medium close-up, daylight, left-weighted composition, clean single-person shot, warm tones, soft light, sunny day, side light, daytime. A young girl sits in a field of tall grass, with two fluffy little donkeys standing behind her. The girl is about eleven or twelve, wearing a simple floral dress, hair in two braids, with an innocent smile. She sits cross-legged, gently playing with wildflowers beside her. The donkeys are sturdy with perked ears, curiously looking toward the camera. Sunlight bathes the field, creating a warm and natural atmosphere.\\\",\\n \\\"duration\\\": 5,\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.6/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Wan 2.6 Text to Video" modelId: "alibaba/wan/2.6/text-to-video" diff --git a/model-api-reference/video-generation/alibaba/wan/2.7/edit-video.md b/model-api-reference/video-generation/alibaba/wan/2.7/edit-video.md deleted file mode 100644 index ad9cf583..00000000 --- a/model-api-reference/video-generation/alibaba/wan/2.7/edit-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.7 Edit Video API Reference" -description: "Wan 2.7 Edit Video API reference for SandBase. Use model alibaba/wan/2.7/edit-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/2.7/edit-video" -apiReferenceJson: "{\"title\":\"Wan 2.7 Edit Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.7 video editing model.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.7/edit-video.\",\"default\":\"alibaba/wan/2.7/edit-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The editing instruction describing what changes to make.\",\"default\":\"\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the input video to edit.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images to guide the video editing.\"},{\"name\":\"audio_setting\",\"type\":\"string\",\"required\":false,\"description\":\"Audio handling. 'auto': model decides whether to regenerate audio. 'origin': preserve original audio from input video.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, origin\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Output video duration in seconds. 0 means match input video duration. When set (2-10), truncates from the start.\",\"default\":\"0\",\"constraints\":\"Allowed values: 0, 2, 3, 4, 5, 6, 7, 8, 9, 10\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the output video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"edit-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.7/edit-video\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\",\\n \\\"duration\\\": 0\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/edit-video\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\",\\n \\\"duration\\\": 0\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/edit-video\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\",\\n \\\"duration\\\": 0\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.7/edit-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.7 Edit Video" - modelId: "alibaba/wan/2.7/edit-video" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/2.7/edit-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-28T20:00:01.187Z" - capabilities: ["edit-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/2.7/image-to-video.md b/model-api-reference/video-generation/alibaba/wan/2.7/image-to-video.md index 715b27ca..11c5aee3 100644 --- a/model-api-reference/video-generation/alibaba/wan/2.7/image-to-video.md +++ b/model-api-reference/video-generation/alibaba/wan/2.7/image-to-video.md @@ -4,7 +4,7 @@ description: "Wan 2.7 Image to Video API reference for SandBase. Use model aliba aside: false outline: false apiReferenceKey: "video/alibaba/wan/2.7/image-to-video" -apiReferenceJson: "{\"title\":\"Wan 2.7 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.7 image-to-video model transforming still images into video with native audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.7/image-to-video.\",\"default\":\"alibaba/wan/2.7/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"The bus starts moving slowly down the street, rain begins to fall, pedestrians open umbrellas, camera follows the bus\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the starting image for video generation.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the ending image for video generation.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of an audio file to guide video generation.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1, 4:3, 3:4\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.7/image-to-video\\\",\\n \\\"prompt\\\": \\\"The bus starts moving slowly down the street, rain begins to fall, pedestrians open umbrellas, camera follows the bus\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/samples/image-to-video/i2v-urban-source.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/image-to-video\\\",\\n \\\"prompt\\\": \\\"The bus starts moving slowly down the street, rain begins to fall, pedestrians open umbrellas, camera follows the bus\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/samples/image-to-video/i2v-urban-source.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/image-to-video\\\",\\n \\\"prompt\\\": \\\"The bus starts moving slowly down the street, rain begins to fall, pedestrians open umbrellas, camera follows the bus\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/samples/image-to-video/i2v-urban-source.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.7/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Wan 2.7 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.7 image-to-video model transforming still images into video with native audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.7/image-to-video.\",\"default\":\"alibaba/wan/2.7/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"The bus starts moving slowly down the street, rain begins to fall, pedestrians open umbrellas, camera follows the bus\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the starting image for video generation.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the ending image for video generation.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of an audio file to guide video generation.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1, 4:3, 3:4\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed (0-2147483647) for reproducible results. Omit for a random seed.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.7/image-to-video\\\",\\n \\\"prompt\\\": \\\"The bus starts moving slowly down the street, rain begins to fall, pedestrians open umbrellas, camera follows the bus\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/samples/image-to-video/i2v-urban-source.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/image-to-video\\\",\\n \\\"prompt\\\": \\\"The bus starts moving slowly down the street, rain begins to fall, pedestrians open umbrellas, camera follows the bus\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/samples/image-to-video/i2v-urban-source.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/image-to-video\\\",\\n \\\"prompt\\\": \\\"The bus starts moving slowly down the street, rain begins to fall, pedestrians open umbrellas, camera follows the bus\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/samples/image-to-video/i2v-urban-source.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.7/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Wan 2.7 Image to Video" modelId: "alibaba/wan/2.7/image-to-video" diff --git a/model-api-reference/video-generation/alibaba/wan/2.7/reference-to-video.md b/model-api-reference/video-generation/alibaba/wan/2.7/reference-to-video.md index f51d8c93..b3708029 100644 --- a/model-api-reference/video-generation/alibaba/wan/2.7/reference-to-video.md +++ b/model-api-reference/video-generation/alibaba/wan/2.7/reference-to-video.md @@ -4,7 +4,7 @@ description: "Wan 2.7 Reference to Video API reference for SandBase. Use model a aside: false outline: false apiReferenceKey: "video/alibaba/wan/2.7/reference-to-video" -apiReferenceJson: "{\"title\":\"Wan 2.7 Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.7 reference-to-video model generating video guided by reference content.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.7/reference-to-video.\",\"default\":\"alibaba/wan/2.7/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"A golden retriever puppy running through a field of wildflowers in slow motion, ears flapping, tongue out, soft backlight\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"The URLs of reference images to guide video generation. Provide at least one reference image or video.\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of reference videos to guide video generation.\"},{\"name\":\"audios\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of reference audio files to guide video generation.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1, 4:3, 3:4\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.7/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A golden retriever puppy running through a field of wildflowers in slow motion, ears flapping, tongue out, soft backlight\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/alibaba/wan/2.6/reference-to-video/flash/input_images_0.png\\\"\\n ],\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A golden retriever puppy running through a field of wildflowers in slow motion, ears flapping, tongue out, soft backlight\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/alibaba/wan/2.6/reference-to-video/flash/input_images_0.png\\\"\\n ],\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A golden retriever puppy running through a field of wildflowers in slow motion, ears flapping, tongue out, soft backlight\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/alibaba/wan/2.6/reference-to-video/flash/input_images_0.png\\\"\\n ],\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.7/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Wan 2.7 Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.7 reference-to-video model generating video guided by reference content.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.7/reference-to-video.\",\"default\":\"alibaba/wan/2.7/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"A golden retriever puppy running through a field of wildflowers in slow motion, ears flapping, tongue out, soft backlight\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"The URLs of reference images to guide video generation. Provide at least one reference image or video.\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of reference videos to guide video generation.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1, 4:3, 3:4\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed (0-2147483647) for reproducible results. Omit for a random seed.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.7/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A golden retriever puppy running through a field of wildflowers in slow motion, ears flapping, tongue out, soft backlight\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/alibaba/wan/2.6/reference-to-video/flash/input_images_0.png\\\"\\n ],\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A golden retriever puppy running through a field of wildflowers in slow motion, ears flapping, tongue out, soft backlight\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/alibaba/wan/2.6/reference-to-video/flash/input_images_0.png\\\"\\n ],\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A golden retriever puppy running through a field of wildflowers in slow motion, ears flapping, tongue out, soft backlight\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/alibaba/wan/2.6/reference-to-video/flash/input_images_0.png\\\"\\n ],\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.7/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Wan 2.7 Reference to Video" modelId: "alibaba/wan/2.7/reference-to-video" diff --git a/model-api-reference/video-generation/alibaba/wan/2.7/text-to-video.md b/model-api-reference/video-generation/alibaba/wan/2.7/text-to-video.md index 9dd03c84..cb5bd884 100644 --- a/model-api-reference/video-generation/alibaba/wan/2.7/text-to-video.md +++ b/model-api-reference/video-generation/alibaba/wan/2.7/text-to-video.md @@ -4,7 +4,7 @@ description: "Wan 2.7 Text to Video API reference for SandBase. Use model alibab aside: false outline: false apiReferenceKey: "video/alibaba/wan/2.7/text-to-video" -apiReferenceJson: "{\"title\":\"Wan 2.7 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.7 text-to-video model with cinematic visuals, native audio generation, and configurable duration and resolution.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.7/text-to-video.\",\"default\":\"alibaba/wan/2.7/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"A young woman sitting by a rain-streaked window in a café, slowly turning to look at the camera with a gentle smile, warm interior lighting\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of an audio file to guide video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1, 4:3, 3:4\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.7/text-to-video\\\",\\n \\\"prompt\\\": \\\"A young woman sitting by a rain-streaked window in a café, slowly turning to look at the camera with a gentle smile, warm interior lighting\\\",\\n \\\"duration\\\": 5,\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/text-to-video\\\",\\n \\\"prompt\\\": \\\"A young woman sitting by a rain-streaked window in a café, slowly turning to look at the camera with a gentle smile, warm interior lighting\\\",\\n \\\"duration\\\": 5,\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/text-to-video\\\",\\n \\\"prompt\\\": \\\"A young woman sitting by a rain-streaked window in a café, slowly turning to look at the camera with a gentle smile, warm interior lighting\\\",\\n \\\"duration\\\": 5,\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.7/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Wan 2.7 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.7 text-to-video model with cinematic visuals, native audio generation, and configurable duration and resolution.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.7/text-to-video.\",\"default\":\"alibaba/wan/2.7/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"A young woman sitting by a rain-streaked window in a café, slowly turning to look at the camera with a gentle smile, warm interior lighting\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of an audio file to guide video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1, 4:3, 3:4\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed (0-2147483647) for reproducible results. Omit for a random seed.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.7/text-to-video\\\",\\n \\\"prompt\\\": \\\"A young woman sitting by a rain-streaked window in a café, slowly turning to look at the camera with a gentle smile, warm interior lighting\\\",\\n \\\"duration\\\": 5,\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/text-to-video\\\",\\n \\\"prompt\\\": \\\"A young woman sitting by a rain-streaked window in a café, slowly turning to look at the camera with a gentle smile, warm interior lighting\\\",\\n \\\"duration\\\": 5,\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/text-to-video\\\",\\n \\\"prompt\\\": \\\"A young woman sitting by a rain-streaked window in a café, slowly turning to look at the camera with a gentle smile, warm interior lighting\\\",\\n \\\"duration\\\": 5,\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.7/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Wan 2.7 Text to Video" modelId: "alibaba/wan/2.7/text-to-video" diff --git a/model-api-reference/video-generation/alibaba/wan/2.7/video-edit.md b/model-api-reference/video-generation/alibaba/wan/2.7/video-edit.md new file mode 100644 index 00000000..d5fcdcbc --- /dev/null +++ b/model-api-reference/video-generation/alibaba/wan/2.7/video-edit.md @@ -0,0 +1,21 @@ +--- +title: "Wan 2.7 Video Edit API Reference" +description: "Wan 2.7 Video Edit API reference for SandBase. Use model alibaba/wan/2.7/video-edit with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/alibaba/wan/2.7/video-edit" +apiReferenceJson: "{\"title\":\"Wan 2.7 Video Edit\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.7 video editing model.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.7/video-edit.\",\"default\":\"alibaba/wan/2.7/video-edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The editing instruction describing what changes to make.\",\"default\":\"\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the input video to edit.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images to guide the video editing.\"},{\"name\":\"audio_setting\",\"type\":\"string\",\"required\":false,\"description\":\"Audio handling. 'auto': model decides whether to regenerate audio. 'origin': preserve original audio from input video.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, origin\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Output video duration in seconds. 0 means match input video duration. When set (2-10), truncates from the start.\",\"default\":\"0\",\"constraints\":\"Allowed values: 0, 2, 3, 4, 5, 6, 7, 8, 9, 10\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the output video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed (0-2147483647) for reproducible results. Omit for a random seed.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.7/video-edit\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\",\\n \\\"duration\\\": 0\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/video-edit\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\",\\n \\\"duration\\\": 0\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/video-edit\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\",\\n \\\"duration\\\": 0\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.7/video-edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Wan 2.7 Video Edit" + modelId: "alibaba/wan/2.7/video-edit" + vendor: "Alibaba" + vendorSlug: "alibaba" + modelSlug: "wan/2.7/video-edit" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-10-05T00:00:00Z" + capabilities: ["video-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/alibaba/wan/2.7/video-extend.md b/model-api-reference/video-generation/alibaba/wan/2.7/video-extend.md new file mode 100644 index 00000000..14058014 --- /dev/null +++ b/model-api-reference/video-generation/alibaba/wan/2.7/video-extend.md @@ -0,0 +1,21 @@ +--- +title: "Wan 2.7 Video Extend API Reference" +description: "Wan 2.7 Video Extend API reference for SandBase. Use model alibaba/wan/2.7/video-extend with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/alibaba/wan/2.7/video-extend" +apiReferenceJson: "{\"title\":\"Wan 2.7 Video Extend\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 2.7 Video Extend continues an input clip from a text instruction, optionally ending on a chosen last frame, for a total length of up to 15 seconds.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/2.7/video-extend.\",\"default\":\"alibaba/wan/2.7/video-extend\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"What happens after the source clip ends: action, camera movement, scene progression, and sound. Up to 5,000 characters.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the source clip to continue (MP4 or MOV, 2-10 seconds, 240-4096px per side, up to 100MB).\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional last frame the continuation should end on (JPEG, PNG, BMP, or WebP; 240-8000px per side, up to 20MB).\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Total length of the output in seconds, including the source clip (2-15). For a 3-second source and duration 10, the model adds 7 seconds. Must be longer than the source clip.\",\"default\":\"5\",\"constraints\":\"Allowed values: 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed (0-2147483647) for reproducible results. Omit for a random seed.\",\"constraints\":\"Range: 0 to 2147483647\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/2.7/video-extend\\\",\\n \\\"prompt\\\": \\\"A girl takes a selfie in the mirror, then picks up her backpack and walks out of the room.\\\",\\n \\\"video\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/hfugmr/wan-r2v-role1.mp4\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/video-extend\\\",\\n \\\"prompt\\\": \\\"A girl takes a selfie in the mirror, then picks up her backpack and walks out of the room.\\\",\\n \\\"video\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/hfugmr/wan-r2v-role1.mp4\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/2.7/video-extend\\\",\\n \\\"prompt\\\": \\\"A girl takes a selfie in the mirror, then picks up her backpack and walks out of the room.\\\",\\n \\\"video\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/hfugmr/wan-r2v-role1.mp4\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/2.7/video-extend\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Wan 2.7 Video Extend" + modelId: "alibaba/wan/2.7/video-extend" + vendor: "Alibaba" + vendorSlug: "alibaba" + modelSlug: "wan/2.7/video-extend" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-10-05T00:00:00Z" + capabilities: ["video-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/alibaba/wan/3.0/image-to-video.md b/model-api-reference/video-generation/alibaba/wan/3.0/image-to-video.md new file mode 100644 index 00000000..20594e63 --- /dev/null +++ b/model-api-reference/video-generation/alibaba/wan/3.0/image-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Wan 3.0 Image to Video API Reference" +description: "Wan 3.0 Image to Video API reference for SandBase. Use model alibaba/wan/3.0/image-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/alibaba/wan/3.0/image-to-video" +apiReferenceJson: "{\"title\":\"Wan 3.0 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 3.0 by Alibaba - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/3.0/image-to-video.\",\"default\":\"alibaba/wan/3.0/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the motion to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image used as the first frame (JPEG, PNG, BMP, or WebP). Cannot be combined with `images`, `videos`, or `audios`.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image used as the last frame (JPEG, PNG, BMP, or WebP). Cannot be combined with `images`, `videos`, or `audios`.\"},{\"name\":\"duration\",\"type\":\"object\",\"required\":false,\"description\":\"Output duration in seconds (2-30), or `auto` to let the model pick a length from the prompt and inputs. `auto` is pre-authorized at 30 seconds and billed on the actual output length.\",\"default\":\"5\",\"constraints\":\"Allowed values: auto, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to match the input image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution tier.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a synchronized audio track. Pricing is the same either way.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed (0-2147483647) for reproducible results. Omit for a random seed; the same seed may still produce slightly different results.\",\"constraints\":\"Range: 0 to 2147483647\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/3.0/image-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/samples/image-to-video/i2v-black-cat-sky-img0.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/image-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/samples/image-to-video/i2v-black-cat-sky-img0.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/image-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/samples/image-to-video/i2v-black-cat-sky-img0.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/3.0/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Wan 3.0 Image to Video" + modelId: "alibaba/wan/3.0/image-to-video" + vendor: "Alibaba" + vendorSlug: "alibaba" + modelSlug: "wan/3.0/image-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-08-24T03:15:15.282Z" + capabilities: ["image-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/alibaba/wan/3.0/prime/image-to-video.md b/model-api-reference/video-generation/alibaba/wan/3.0/prime/image-to-video.md new file mode 100644 index 00000000..2819a7dc --- /dev/null +++ b/model-api-reference/video-generation/alibaba/wan/3.0/prime/image-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Wan 3.0 Prime Image to Video API Reference" +description: "Wan 3.0 Prime Image to Video API reference for SandBase. Use model alibaba/wan/3.0/prime/image-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/alibaba/wan/3.0/prime/image-to-video" +apiReferenceJson: "{\"title\":\"Wan 3.0 Prime Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 3.0 Prime by Alibaba - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/3.0/prime/image-to-video.\",\"default\":\"alibaba/wan/3.0/prime/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the motion to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image used as the first frame (JPEG, PNG, BMP, or WebP). Cannot be combined with `images`, `videos`, or `audios`.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image used as the last frame (JPEG, PNG, BMP, or WebP). Cannot be combined with `images`, `videos`, or `audios`.\"},{\"name\":\"duration\",\"type\":\"object\",\"required\":false,\"description\":\"Output duration in seconds (2-30), or `auto` to let the model pick a length from the prompt and inputs. `auto` is pre-authorized at 30 seconds and billed on the actual output length.\",\"default\":\"5\",\"constraints\":\"Allowed values: auto, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to match the input image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution tier.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a synchronized audio track. Pricing is the same either way.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed (0-2147483647) for reproducible results. Omit for a random seed; the same seed may still produce slightly different results.\",\"constraints\":\"Range: 0 to 2147483647\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/image-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/samples/image-to-video/i2v-black-cat-sky-img0.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/image-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/samples/image-to-video/i2v-black-cat-sky-img0.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/image-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/samples/image-to-video/i2v-black-cat-sky-img0.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Wan 3.0 Prime Image to Video" + modelId: "alibaba/wan/3.0/prime/image-to-video" + vendor: "Alibaba" + vendorSlug: "alibaba" + modelSlug: "wan/3.0/prime/image-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-08-24T06:03:16.474Z" + capabilities: ["image-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/alibaba/wan/3.0/prime/reference-to-video.md b/model-api-reference/video-generation/alibaba/wan/3.0/prime/reference-to-video.md new file mode 100644 index 00000000..989907ad --- /dev/null +++ b/model-api-reference/video-generation/alibaba/wan/3.0/prime/reference-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Wan 3.0 Prime Reference to Video API Reference" +description: "Wan 3.0 Prime Reference to Video API reference for SandBase. Use model alibaba/wan/3.0/prime/reference-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/alibaba/wan/3.0/prime/reference-to-video" +apiReferenceJson: "{\"title\":\"Wan 3.0 Prime Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 3.0 Prime by Alibaba generates up to 30-second videos with native audio from reference images, videos, and audio, keeping subjects, motion, and voice consistent with the references.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/3.0/prime/reference-to-video.\",\"default\":\"alibaba/wan/3.0/prime/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt directing how the reference media is used. Reference media can be addressed positionally, e.g. 'the subject in Image 1 walks past Video 1'.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Up to 10 reference image URLs (JPEG, PNG, BMP, or WebP; up to 20MB each, 240-8000px per side). Refer to them in the prompt as Image 1, Image 2, and so on. Provide at least one of `images`, `videos`, or `audios`.\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"Up to 5 reference video URLs (MP4 or MOV; 1-15s each, 15s total, under 100MB each). Cannot be combined with `image` or `end_image`.\"},{\"name\":\"audios\",\"type\":\"array\",\"required\":false,\"description\":\"Up to 5 reference audio URLs (WAV or MP3; 1-15s each, 15s total, under 15MB each). Cannot be combined with `image` or `end_image`.\"},{\"name\":\"duration\",\"type\":\"object\",\"required\":false,\"description\":\"Output duration in seconds (2-30), or `auto` to let the model pick a length from the prompt and inputs. `auto` is pre-authorized at 30 seconds and billed on the actual output length.\",\"default\":\"5\",\"constraints\":\"Allowed values: auto, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to let the model choose from the prompt and reference inputs.\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution tier.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a synchronized audio track. Pricing is the same either way.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed (0-2147483647) for reproducible results. Omit for a random seed; the same seed may still produce slightly different results.\",\"constraints\":\"Range: 0 to 2147483647\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Wan 3.0 Prime Reference to Video" + modelId: "alibaba/wan/3.0/prime/reference-to-video" + vendor: "Alibaba" + vendorSlug: "alibaba" + modelSlug: "wan/3.0/prime/reference-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-08-24T06:03:21.673Z" + capabilities: ["reference-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/alibaba/wan/3.0/prime/text-to-video.md b/model-api-reference/video-generation/alibaba/wan/3.0/prime/text-to-video.md new file mode 100644 index 00000000..0c9f6593 --- /dev/null +++ b/model-api-reference/video-generation/alibaba/wan/3.0/prime/text-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Wan 3.0 Prime Text to Video API Reference" +description: "Wan 3.0 Prime Text to Video API reference for SandBase. Use model alibaba/wan/3.0/prime/text-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/alibaba/wan/3.0/prime/text-to-video" +apiReferenceJson: "{\"title\":\"Wan 3.0 Prime Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 3.0 Prime by Alibaba turns a text prompt into a video of up to 30 seconds at 30fps, with native dialogue, music, and sound effects.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/3.0/prime/text-to-video.\",\"default\":\"alibaba/wan/3.0/prime/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for the generated video.\"},{\"name\":\"duration\",\"type\":\"object\",\"required\":false,\"description\":\"Output duration in seconds (2-30), or `auto` to let the model pick a length from the prompt and inputs. `auto` is pre-authorized at 30 seconds and billed on the actual output length.\",\"default\":\"5\",\"constraints\":\"Allowed values: auto, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Defaults to 16:9.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution tier.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a synchronized audio track. Pricing is the same either way.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed (0-2147483647) for reproducible results. Omit for a random seed; the same seed may still produce slightly different results.\",\"constraints\":\"Range: 0 to 2147483647\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/text-to-video\\\",\\n \\\"prompt\\\": \\\"A red panda walking through a bamboo forest at sunrise\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/text-to-video\\\",\\n \\\"prompt\\\": \\\"A red panda walking through a bamboo forest at sunrise\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/text-to-video\\\",\\n \\\"prompt\\\": \\\"A red panda walking through a bamboo forest at sunrise\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Wan 3.0 Prime Text to Video" + modelId: "alibaba/wan/3.0/prime/text-to-video" + vendor: "Alibaba" + vendorSlug: "alibaba" + modelSlug: "wan/3.0/prime/text-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-08-24T06:03:26.646Z" + capabilities: ["text-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/alibaba/wan/3.0/prime/video-edit.md b/model-api-reference/video-generation/alibaba/wan/3.0/prime/video-edit.md new file mode 100644 index 00000000..978913dd --- /dev/null +++ b/model-api-reference/video-generation/alibaba/wan/3.0/prime/video-edit.md @@ -0,0 +1,21 @@ +--- +title: "Wan 3.0 Prime Video Edit API Reference" +description: "Wan 3.0 Prime Video Edit API reference for SandBase. Use model alibaba/wan/3.0/prime/video-edit with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/alibaba/wan/3.0/prime/video-edit" +apiReferenceJson: "{\"title\":\"Wan 3.0 Prime Video Edit\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 3.0 Prime Video Edit by Alibaba restyles or modifies an input video from a text instruction, optionally guided by reference images and audio, keeping the original length.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/3.0/prime/video-edit.\",\"default\":\"alibaba/wan/3.0/prime/video-edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text instruction describing the editing. Refer to the input video as Video 1 and to reference images or audio as Image 1, Audio 1, and so on.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input video (MP4 or MOV; 1-15 seconds, at least 16 fps, 240-4096px per side, under 100MB).\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Up to 10 optional reference image URLs (JPEG, PNG, BMP, or WebP; up to 20MB each). Refer to them in the prompt as Image 1, Image 2, and so on.\"},{\"name\":\"audios\",\"type\":\"array\",\"required\":false,\"description\":\"Up to 5 optional reference audio URLs (WAV or MP3; 1-15s each, 15s total, under 15MB each).\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution tier.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a synchronized audio track. Pricing is the same either way.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed (0-2147483647) for reproducible results. Omit for a random seed; the same seed may still produce slightly different results.\",\"constraints\":\"Range: 0 to 2147483647\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/video-edit\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260402/ldnfdf/wan2.7-videoedit-style-change.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/video-edit\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260402/ldnfdf/wan2.7-videoedit-style-change.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/video-edit\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260402/ldnfdf/wan2.7-videoedit-style-change.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/video-edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Wan 3.0 Prime Video Edit" + modelId: "alibaba/wan/3.0/prime/video-edit" + vendor: "Alibaba" + vendorSlug: "alibaba" + modelSlug: "wan/3.0/prime/video-edit" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-10-04T00:00:00Z" + capabilities: ["video-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/alibaba/wan/3.0/prime/video-extend.md b/model-api-reference/video-generation/alibaba/wan/3.0/prime/video-extend.md new file mode 100644 index 00000000..8cd89d7c --- /dev/null +++ b/model-api-reference/video-generation/alibaba/wan/3.0/prime/video-extend.md @@ -0,0 +1,21 @@ +--- +title: "Wan 3.0 Prime Video Extend API Reference" +description: "Wan 3.0 Prime Video Extend API reference for SandBase. Use model alibaba/wan/3.0/prime/video-extend with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/alibaba/wan/3.0/prime/video-extend" +apiReferenceJson: "{\"title\":\"Wan 3.0 Prime Video Extend\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 3.0 Prime Video Extend by Alibaba continues an input video forward from a text instruction, optionally guided by reference images and audio, with native audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/3.0/prime/video-extend.\",\"default\":\"alibaba/wan/3.0/prime/video-extend\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text instruction describing the extension. Refer to the input video as Video 1 and to reference images or audio as Image 1, Audio 1, and so on.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input video (MP4 or MOV; 1-15 seconds, at least 16 fps, 240-4096px per side, under 100MB).\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Up to 10 optional reference image URLs (JPEG, PNG, BMP, or WebP; up to 20MB each). Refer to them in the prompt as Image 1, Image 2, and so on.\"},{\"name\":\"audios\",\"type\":\"array\",\"required\":false,\"description\":\"Up to 5 optional reference audio URLs (WAV or MP3; 1-15s each, 15s total, under 15MB each).\"},{\"name\":\"duration\",\"type\":\"object\",\"required\":false,\"description\":\"Duration of the extension in seconds (2-30), or `auto` to let the model choose. The input video length plus this duration must not exceed 30 seconds. `auto` is pre-authorized at 30 seconds and billed on the actual output length.\",\"default\":\"5\",\"constraints\":\"Allowed values: auto, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution tier.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a synchronized audio track. Pricing is the same either way.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed (0-2147483647) for reproducible results. Omit for a random seed; the same seed may still produce slightly different results.\",\"constraints\":\"Range: 0 to 2147483647\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/video-extend\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260402/ldnfdf/wan2.7-videoedit-style-change.mp4\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/video-extend\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260402/ldnfdf/wan2.7-videoedit-style-change.mp4\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/video-extend\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260402/ldnfdf/wan2.7-videoedit-style-change.mp4\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/video-extend\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Wan 3.0 Prime Video Extend" + modelId: "alibaba/wan/3.0/prime/video-extend" + vendor: "Alibaba" + vendorSlug: "alibaba" + modelSlug: "wan/3.0/prime/video-extend" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-10-04T00:00:00Z" + capabilities: ["video-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/alibaba/wan/3.0/prime/video.md b/model-api-reference/video-generation/alibaba/wan/3.0/prime/video.md index 5b7bad8a..638ddeba 100644 --- a/model-api-reference/video-generation/alibaba/wan/3.0/prime/video.md +++ b/model-api-reference/video-generation/alibaba/wan/3.0/prime/video.md @@ -1,12 +1,12 @@ --- -title: "Wan 3.0 Prime API Reference" -description: "Wan 3.0 Prime API reference for SandBase. Use model alibaba/wan/3.0/prime/video with /v1/run; see request and response examples." +title: "Wan 3.0 Prime Video API Reference" +description: "Wan 3.0 Prime Video API reference for SandBase. Use model alibaba/wan/3.0/prime/video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/alibaba/wan/3.0/prime/video" -apiReferenceJson: "{\"title\":\"Wan 3.0 Prime\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 3.0 Prime by Alibaba - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion and camera movement.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/3.0/prime/video.\",\"default\":\"alibaba/wan/3.0/prime/video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the motion to generate.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution tier.\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Output duration in seconds. Set to null for smart duration, which lets the model pick a length from the prompt and reference media.\",\"default\":\"5\",\"constraints\":\"Range: 2 to 30\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed used to make sampling more reproducible when the provider supports it.\",\"constraints\":\"Range: 0 to 2147483647\"},{\"name\":\"media\",\"type\":\"array\",\"required\":true,\"description\":\"Request parameter supported by this model.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/video\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/video\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/video\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Wan 3.0 Prime Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 3.0 Prime Video generates videos up to 30 seconds with native audio from text, a first/last frame, or reference images, videos, and audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/3.0/prime/video.\",\"default\":\"alibaba/wan/3.0/prime/video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text instruction for the generated video.\",\"default\":\"A cinematic tracking shot of a sailboat crossing a glowing sea at sunset\"},{\"name\":\"image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image used as the first frame (JPEG, PNG, BMP, or WebP). Cannot be combined with `images`, `videos`, or `audios`.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image used as the last frame (JPEG, PNG, BMP, or WebP). Cannot be combined with `images`, `videos`, or `audios`.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Up to 10 reference image URLs (JPEG, PNG, BMP, or WebP; up to 20MB each, 240-8000px per side). Refer to them in the prompt as Image 1, Image 2, and so on. Cannot be combined with `image` or `end_image`.\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"Up to 5 reference video URLs (MP4 or MOV; 1-15s each, 15s total, under 100MB each). Cannot be combined with `image` or `end_image`.\"},{\"name\":\"audios\",\"type\":\"array\",\"required\":false,\"description\":\"Up to 5 reference audio URLs (WAV or MP3; 1-15s each, 15s total, under 15MB each). Cannot be combined with `image` or `end_image`.\"},{\"name\":\"duration\",\"type\":\"object\",\"required\":false,\"description\":\"Output duration in seconds (2-30), or `auto` to let the model pick a length from the prompt and inputs. `auto` is pre-authorized at 30 seconds and billed on the actual output length.\",\"default\":\"5\",\"constraints\":\"Allowed values: auto, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to let the model choose: 16:9 for text-only requests, otherwise matching the input image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a synchronized audio track. Pricing is the same either way.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed (0-2147483647) for reproducible results. Omit for a random seed; the same seed may still produce slightly different results.\",\"constraints\":\"Range: 0 to 2147483647\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video, image-to-video, reference-to-video, video-to-video, audio-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/video\\\",\\n \\\"prompt\\\": \\\"A cinematic tracking shot of a sailboat crossing a glowing sea at sunset\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/samples/image-to-video/i2v-black-cat-sky-img0.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/video\\\",\\n \\\"prompt\\\": \\\"A cinematic tracking shot of a sailboat crossing a glowing sea at sunset\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/samples/image-to-video/i2v-black-cat-sky-img0.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/video\\\",\\n \\\"prompt\\\": \\\"A cinematic tracking shot of a sailboat crossing a glowing sea at sunset\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/samples/image-to-video/i2v-black-cat-sky-img0.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/3.0/prime/video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Wan 3.0 Prime" + modelName: "Wan 3.0 Prime Video" modelId: "alibaba/wan/3.0/prime/video" vendor: "Alibaba" vendorSlug: "alibaba" @@ -14,7 +14,7 @@ seo: protocol: "Video Generation Reference" endpoint: "/v1/run" publishedAt: "2026-08-24T06:03:16.474Z" - capabilities: ["image-to-video"] + capabilities: ["text-to-video","image-to-video","reference-to-video","video-to-video","audio-to-video"] category: "Video Generation" --- diff --git a/model-api-reference/video-generation/alibaba/wan/3.0/reference-to-video.md b/model-api-reference/video-generation/alibaba/wan/3.0/reference-to-video.md new file mode 100644 index 00000000..8fbd09ca --- /dev/null +++ b/model-api-reference/video-generation/alibaba/wan/3.0/reference-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Wan 3.0 Reference to Video API Reference" +description: "Wan 3.0 Reference to Video API reference for SandBase. Use model alibaba/wan/3.0/reference-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/alibaba/wan/3.0/reference-to-video" +apiReferenceJson: "{\"title\":\"Wan 3.0 Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 3.0 by Alibaba generates up to 30-second videos with native audio from reference images, videos, and audio, keeping subjects, motion, and voice consistent with the references.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/3.0/reference-to-video.\",\"default\":\"alibaba/wan/3.0/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt directing how the reference media is used. Reference media can be addressed positionally, e.g. 'the subject in Image 1 walks past Video 1'.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Up to 10 reference image URLs (JPEG, PNG, BMP, or WebP; up to 20MB each, 240-8000px per side). Refer to them in the prompt as Image 1, Image 2, and so on. Provide at least one of `images`, `videos`, or `audios`.\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"Up to 5 reference video URLs (MP4 or MOV; 1-15s each, 15s total, under 100MB each). Cannot be combined with `image` or `end_image`.\"},{\"name\":\"audios\",\"type\":\"array\",\"required\":false,\"description\":\"Up to 5 reference audio URLs (WAV or MP3; 1-15s each, 15s total, under 15MB each). Cannot be combined with `image` or `end_image`.\"},{\"name\":\"duration\",\"type\":\"object\",\"required\":false,\"description\":\"Output duration in seconds (2-30), or `auto` to let the model pick a length from the prompt and inputs. `auto` is pre-authorized at 30 seconds and billed on the actual output length.\",\"default\":\"5\",\"constraints\":\"Allowed values: auto, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to let the model choose from the prompt and reference inputs.\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution tier.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a synchronized audio track. Pricing is the same either way.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed (0-2147483647) for reproducible results. Omit for a random seed; the same seed may still produce slightly different results.\",\"constraints\":\"Range: 0 to 2147483647\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/3.0/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/3.0/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Wan 3.0 Reference to Video" + modelId: "alibaba/wan/3.0/reference-to-video" + vendor: "Alibaba" + vendorSlug: "alibaba" + modelSlug: "wan/3.0/reference-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-08-24T03:15:20.439Z" + capabilities: ["reference-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/alibaba/wan/3.0/text-to-video.md b/model-api-reference/video-generation/alibaba/wan/3.0/text-to-video.md new file mode 100644 index 00000000..e8f5b6ac --- /dev/null +++ b/model-api-reference/video-generation/alibaba/wan/3.0/text-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Wan 3.0 Text to Video API Reference" +description: "Wan 3.0 Text to Video API reference for SandBase. Use model alibaba/wan/3.0/text-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/alibaba/wan/3.0/text-to-video" +apiReferenceJson: "{\"title\":\"Wan 3.0 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 3.0 by Alibaba turns a text prompt into a video of up to 30 seconds at 30fps, with native dialogue, music, and sound effects.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/3.0/text-to-video.\",\"default\":\"alibaba/wan/3.0/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for the generated video.\"},{\"name\":\"duration\",\"type\":\"object\",\"required\":false,\"description\":\"Output duration in seconds (2-30), or `auto` to let the model pick a length from the prompt and inputs. `auto` is pre-authorized at 30 seconds and billed on the actual output length.\",\"default\":\"5\",\"constraints\":\"Allowed values: auto, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Defaults to 16:9.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution tier.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a synchronized audio track. Pricing is the same either way.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed (0-2147483647) for reproducible results. Omit for a random seed; the same seed may still produce slightly different results.\",\"constraints\":\"Range: 0 to 2147483647\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/3.0/text-to-video\\\",\\n \\\"prompt\\\": \\\"A red panda walking through a bamboo forest at sunrise\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/text-to-video\\\",\\n \\\"prompt\\\": \\\"A red panda walking through a bamboo forest at sunrise\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/text-to-video\\\",\\n \\\"prompt\\\": \\\"A red panda walking through a bamboo forest at sunrise\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/3.0/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Wan 3.0 Text to Video" + modelId: "alibaba/wan/3.0/text-to-video" + vendor: "Alibaba" + vendorSlug: "alibaba" + modelSlug: "wan/3.0/text-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-08-24T03:15:09.574Z" + capabilities: ["text-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/alibaba/wan/3.0/video-edit.md b/model-api-reference/video-generation/alibaba/wan/3.0/video-edit.md new file mode 100644 index 00000000..1b97c274 --- /dev/null +++ b/model-api-reference/video-generation/alibaba/wan/3.0/video-edit.md @@ -0,0 +1,21 @@ +--- +title: "Wan 3.0 Video Edit API Reference" +description: "Wan 3.0 Video Edit API reference for SandBase. Use model alibaba/wan/3.0/video-edit with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/alibaba/wan/3.0/video-edit" +apiReferenceJson: "{\"title\":\"Wan 3.0 Video Edit\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 3.0 Video Edit by Alibaba restyles or modifies an input video from a text instruction, optionally guided by reference images and audio, keeping the original length.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/3.0/video-edit.\",\"default\":\"alibaba/wan/3.0/video-edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text instruction describing the editing. Refer to the input video as Video 1 and to reference images or audio as Image 1, Audio 1, and so on.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input video (MP4 or MOV; 1-15 seconds, at least 16 fps, 240-4096px per side, under 100MB).\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Up to 10 optional reference image URLs (JPEG, PNG, BMP, or WebP; up to 20MB each). Refer to them in the prompt as Image 1, Image 2, and so on.\"},{\"name\":\"audios\",\"type\":\"array\",\"required\":false,\"description\":\"Up to 5 optional reference audio URLs (WAV or MP3; 1-15s each, 15s total, under 15MB each).\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution tier.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a synchronized audio track. Pricing is the same either way.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed (0-2147483647) for reproducible results. Omit for a random seed; the same seed may still produce slightly different results.\",\"constraints\":\"Range: 0 to 2147483647\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/3.0/video-edit\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260402/ldnfdf/wan2.7-videoedit-style-change.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/video-edit\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260402/ldnfdf/wan2.7-videoedit-style-change.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/video-edit\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260402/ldnfdf/wan2.7-videoedit-style-change.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/3.0/video-edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Wan 3.0 Video Edit" + modelId: "alibaba/wan/3.0/video-edit" + vendor: "Alibaba" + vendorSlug: "alibaba" + modelSlug: "wan/3.0/video-edit" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-10-04T00:00:00Z" + capabilities: ["video-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/alibaba/wan/3.0/video-extend.md b/model-api-reference/video-generation/alibaba/wan/3.0/video-extend.md new file mode 100644 index 00000000..44c5bac5 --- /dev/null +++ b/model-api-reference/video-generation/alibaba/wan/3.0/video-extend.md @@ -0,0 +1,21 @@ +--- +title: "Wan 3.0 Video Extend API Reference" +description: "Wan 3.0 Video Extend API reference for SandBase. Use model alibaba/wan/3.0/video-extend with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/alibaba/wan/3.0/video-extend" +apiReferenceJson: "{\"title\":\"Wan 3.0 Video Extend\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 3.0 Video Extend by Alibaba continues an input video forward from a text instruction, optionally guided by reference images and audio, with native audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/3.0/video-extend.\",\"default\":\"alibaba/wan/3.0/video-extend\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text instruction describing the extension. Refer to the input video as Video 1 and to reference images or audio as Image 1, Audio 1, and so on.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input video (MP4 or MOV; 1-15 seconds, at least 16 fps, 240-4096px per side, under 100MB).\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Up to 10 optional reference image URLs (JPEG, PNG, BMP, or WebP; up to 20MB each). Refer to them in the prompt as Image 1, Image 2, and so on.\"},{\"name\":\"audios\",\"type\":\"array\",\"required\":false,\"description\":\"Up to 5 optional reference audio URLs (WAV or MP3; 1-15s each, 15s total, under 15MB each).\"},{\"name\":\"duration\",\"type\":\"object\",\"required\":false,\"description\":\"Duration of the extension in seconds (2-30), or `auto` to let the model choose. The input video length plus this duration must not exceed 30 seconds. `auto` is pre-authorized at 30 seconds and billed on the actual output length.\",\"default\":\"5\",\"constraints\":\"Allowed values: auto, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution tier.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a synchronized audio track. Pricing is the same either way.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed (0-2147483647) for reproducible results. Omit for a random seed; the same seed may still produce slightly different results.\",\"constraints\":\"Range: 0 to 2147483647\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/3.0/video-extend\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260402/ldnfdf/wan2.7-videoedit-style-change.mp4\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/video-extend\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260402/ldnfdf/wan2.7-videoedit-style-change.mp4\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/video-extend\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260402/ldnfdf/wan2.7-videoedit-style-change.mp4\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/3.0/video-extend\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Wan 3.0 Video Extend" + modelId: "alibaba/wan/3.0/video-extend" + vendor: "Alibaba" + vendorSlug: "alibaba" + modelSlug: "wan/3.0/video-extend" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-10-04T00:00:00Z" + capabilities: ["video-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/alibaba/wan/3.0/video.md b/model-api-reference/video-generation/alibaba/wan/3.0/video.md index e2cb027a..2b0db793 100644 --- a/model-api-reference/video-generation/alibaba/wan/3.0/video.md +++ b/model-api-reference/video-generation/alibaba/wan/3.0/video.md @@ -4,7 +4,7 @@ description: "Wan 3.0 Video API reference for SandBase. Use model alibaba/wan/3. aside: false outline: false apiReferenceKey: "video/alibaba/wan/3.0/video" -apiReferenceJson: "{\"title\":\"Wan 3.0 Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 3.0 Video generates videos up to 30 seconds from text and unified image, video, audio, file, or link media inputs.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/3.0/video.\",\"default\":\"alibaba/wan/3.0/video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text instruction for the generated video.\",\"default\":\"A cinematic tracking shot of a sailboat crossing a glowing sea at sunset\"},{\"name\":\"media\",\"type\":\"array\",\"required\":false,\"description\":\"Optional unified media inputs. Alibaba accepts prompt or media; prompt remains required in this schema for compatibility.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Output duration in seconds, from 2 to 30 seconds.\",\"default\":\"5\",\"constraints\":\"Range: 2 to 30\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output ratio; adaptive lets the model choose from the inputs.\",\"default\":\"adaptive\",\"constraints\":\"Allowed values: adaptive, 16:9, 9:16, 1:1, 4:3, 3:4\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate synchronized audio with the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible generation.\",\"constraints\":\"Range: 0 to 2147483647\"},{\"name\":\"watermark\",\"type\":\"boolean\",\"required\":false,\"description\":\"Add an Alibaba watermark to the output.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video, image-to-video, video-to-video, audio-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/3.0/video\\\",\\n \\\"prompt\\\": \\\"A cinematic tracking shot of a sailboat crossing a glowing sea at sunset\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"adaptive\\\",\\n \\\"audio\\\": true\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/video\\\",\\n \\\"prompt\\\": \\\"A cinematic tracking shot of a sailboat crossing a glowing sea at sunset\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"adaptive\\\",\\n \\\"audio\\\": True\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/video\\\",\\n \\\"prompt\\\": \\\"A cinematic tracking shot of a sailboat crossing a glowing sea at sunset\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"adaptive\\\",\\n \\\"audio\\\": true\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/3.0/video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Wan 3.0 Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Alibaba Wan 3.0 Video generates videos up to 30 seconds with native audio from text, a first/last frame, or reference images, videos, and audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/3.0/video.\",\"default\":\"alibaba/wan/3.0/video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text instruction for the generated video.\",\"default\":\"A cinematic tracking shot of a sailboat crossing a glowing sea at sunset\"},{\"name\":\"image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image used as the first frame (JPEG, PNG, BMP, or WebP). Cannot be combined with `images`, `videos`, or `audios`.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image used as the last frame (JPEG, PNG, BMP, or WebP). Cannot be combined with `images`, `videos`, or `audios`.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Up to 10 reference image URLs (JPEG, PNG, BMP, or WebP; up to 20MB each, 240-8000px per side). Refer to them in the prompt as Image 1, Image 2, and so on. Cannot be combined with `image` or `end_image`.\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"Up to 5 reference video URLs (MP4 or MOV; 1-15s each, 15s total, under 100MB each). Cannot be combined with `image` or `end_image`.\"},{\"name\":\"audios\",\"type\":\"array\",\"required\":false,\"description\":\"Up to 5 reference audio URLs (WAV or MP3; 1-15s each, 15s total, under 15MB each). Cannot be combined with `image` or `end_image`.\"},{\"name\":\"duration\",\"type\":\"object\",\"required\":false,\"description\":\"Output duration in seconds (2-30), or `auto` to let the model pick a length from the prompt and inputs. `auto` is pre-authorized at 30 seconds and billed on the actual output length.\",\"default\":\"5\",\"constraints\":\"Allowed values: auto, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to let the model choose: 16:9 for text-only requests, otherwise matching the input image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a synchronized audio track. Pricing is the same either way.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed (0-2147483647) for reproducible results. Omit for a random seed; the same seed may still produce slightly different results.\",\"constraints\":\"Range: 0 to 2147483647\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video, image-to-video, reference-to-video, video-to-video, audio-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/3.0/video\\\",\\n \\\"prompt\\\": \\\"A cinematic tracking shot of a sailboat crossing a glowing sea at sunset\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/samples/image-to-video/i2v-black-cat-sky-img0.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/video\\\",\\n \\\"prompt\\\": \\\"A cinematic tracking shot of a sailboat crossing a glowing sea at sunset\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/samples/image-to-video/i2v-black-cat-sky-img0.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/3.0/video\\\",\\n \\\"prompt\\\": \\\"A cinematic tracking shot of a sailboat crossing a glowing sea at sunset\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/samples/image-to-video/i2v-black-cat-sky-img0.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/3.0/video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Wan 3.0 Video" modelId: "alibaba/wan/3.0/video" @@ -14,7 +14,7 @@ seo: protocol: "Video Generation Reference" endpoint: "/v1/run" publishedAt: "2026-08-20T00:00:00Z" - capabilities: ["text-to-video","image-to-video","video-to-video","audio-to-video"] + capabilities: ["text-to-video","image-to-video","reference-to-video","video-to-video","audio-to-video"] category: "Video Generation" --- diff --git a/model-api-reference/video-generation/alibaba/wan/alpha.md b/model-api-reference/video-generation/alibaba/wan/alpha.md deleted file mode 100644 index d853e789..00000000 --- a/model-api-reference/video-generation/alibaba/wan/alpha.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan Alpha API Reference" -description: "Wan Alpha API reference for SandBase. Use model alibaba/wan/alpha with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/alpha" -apiReferenceJson: "{\"title\":\"Wan Alpha\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan Alpha is Alibaba's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/alpha.\",\"default\":\"alibaba/wan/alpha\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to guide the video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"480p\",\"constraints\":\"Allowed values: 240p, 360p, 480p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"video_output_type\",\"type\":\"string\",\"required\":false,\"description\":\"The output type of the generated video.\",\"default\":\"VP9 (.webm)\",\"constraints\":\"Allowed values: X264 (.mp4), VP9 (.webm), PRORES4444 (.mov), GIF (.gif)\"},{\"name\":\"binarize_mask\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to binarize the mask.\",\"default\":\"false\"},{\"name\":\"fps\",\"type\":\"integer\",\"required\":false,\"description\":\"The frame rate of the generated video.\",\"default\":\"16\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"mask_binarization_threshold\",\"type\":\"number\",\"required\":false,\"description\":\"The threshold for mask binarization. When binarize_mask is True, this threshold will be used to binarize the mask. This will also be used for transparency when the output type is `.webm`.\",\"default\":\"0.8\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"mask_clamp_upper\",\"type\":\"number\",\"required\":false,\"description\":\"The upper bound of the mask clamping.\",\"default\":\"0.75\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"mask_clamp_lower\",\"type\":\"number\",\"required\":false,\"description\":\"The lower bound of the mask clamping.\",\"default\":\"0.1\",\"constraints\":\"Range: 0 to 1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/alpha\\\",\\n \\\"prompt\\\": \\\"Medium shot. A little girl holds a bubble wand and blows out colorful bubbles that float and pop in the air. The background of this video is transparent. Realistic style.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/alpha\\\",\\n \\\"prompt\\\": \\\"Medium shot. A little girl holds a bubble wand and blows out colorful bubbles that float and pop in the air. The background of this video is transparent. Realistic style.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/alpha\\\",\\n \\\"prompt\\\": \\\"Medium shot. A little girl holds a bubble wand and blows out colorful bubbles that float and pop in the air. The background of this video is transparent. Realistic style.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/alpha\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan Alpha" - modelId: "alibaba/wan/alpha" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/alpha" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-16T02:14:54.924Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/ati.md b/model-api-reference/video-generation/alibaba/wan/ati.md deleted file mode 100644 index 6bde1302..00000000 --- a/model-api-reference/video-generation/alibaba/wan/ati.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan Ati API Reference" -description: "Wan Ati API reference for SandBase. Use model alibaba/wan/ati with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/ati" -apiReferenceJson: "{\"title\":\"Wan Ati\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan Ati is Alibaba's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/ati.\",\"default\":\"alibaba/wan/ati\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (480p, 580p, 720p).\",\"default\":\"480p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"track\",\"type\":\"array\",\"required\":false,\"description\":\"Motion tracks to guide video generation. Each track is a sequence of points defining a motion trajectory. Multiple tracks can control different elements or objects in the video. Expected format: array of tracks, where each track is an array of points with 'x' and 'y' coordinates (up to 121 points per track). Points will be automatically padded to 121 if fewer are provided. Coordinates should be within the image dimensions.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/ati\\\",\\n \\\"prompt\\\": \\\"An human facing the camera in an cyberbank style dress.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/ati/input_image_0.jpg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/ati\\\",\\n \\\"prompt\\\": \\\"An human facing the camera in an cyberbank style dress.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/ati/input_image_0.jpg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/ati\\\",\\n \\\"prompt\\\": \\\"An human facing the camera in an cyberbank style dress.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/ati/input_image_0.jpg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/ati\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan Ati" - modelId: "alibaba/wan/ati" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/ati" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-29T23:23:18.962Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/effects.md b/model-api-reference/video-generation/alibaba/wan/effects.md deleted file mode 100644 index 6a72804c..00000000 --- a/model-api-reference/video-generation/alibaba/wan/effects.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan Effects API Reference" -description: "Wan Effects API reference for SandBase. Use model alibaba/wan/effects with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/effects" -apiReferenceJson: "{\"title\":\"Wan Effects\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan Effects is Alibaba's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/effects.\",\"default\":\"alibaba/wan/effects\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image.\"},{\"name\":\"turbo_mode\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use turbo mode. If True, the video will be generated faster but with lower quality.\",\"default\":\"false\"},{\"name\":\"effect_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of effect to apply to the video.\",\"default\":\"cakeify\",\"constraints\":\"Allowed values: squish, muscle, inflate, crush, rotate, gun-shooting, deflate, cakeify, hulk, baby, bride, classy, puppy, snow-white, disney-princess, mona-lisa, painting, pirate-captain, princess, jungle, samurai, vip, warrior, zen, assassin, timelapse, tsunami, fire, zoom-call, doom-fps, fus-ro-dah, hug-jesus, robot-face-reveal, super-saiyan, jumpscare, laughing, cartoon-jaw-drop, crying, kissing, angry-face, selfie-younger-self, animeify, blast\"},{\"name\":\"lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the LoRA weight. Used to adjust effect intensity.\",\"default\":\"1\",\"constraints\":\"Range: 0.1 to 2\"},{\"name\":\"subject\",\"type\":\"string\",\"required\":false,\"description\":\"The subject to insert into the predefined prompt template for the selected effect.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/effects\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/effects/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/effects\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/effects/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/effects\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/effects/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/effects\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan Effects" - modelId: "alibaba/wan/effects" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/effects" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-13T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/motion.md b/model-api-reference/video-generation/alibaba/wan/motion.md deleted file mode 100644 index 98ac23be..00000000 --- a/model-api-reference/video-generation/alibaba/wan/motion.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan Motion API Reference" -description: "Wan Motion API reference for SandBase. Use model alibaba/wan/motion with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/motion" -apiReferenceJson: "{\"title\":\"Wan Motion\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan Motion by Alibaba - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/motion.\",\"default\":\"alibaba/wan/motion\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Optional text prompt to guide the generation.\",\"default\":\"\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the reference image (provides the character appearance).\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the driving video (provides the motion).\"},{\"name\":\"enhance_identity\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enhances identity preservation by preprocessing the reference image with Flux Kontext Edit before animation. Produces more faithful face and appearance transfer at the cost of slightly longer processing time.\",\"default\":\"false\"},{\"name\":\"adapt_motion\",\"type\":\"boolean\",\"required\":false,\"description\":\"Adapts the driving video's motion to match the reference image's body proportions. Recommended when the driving video subject and reference image have different body shapes or sizes.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/motion\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/motion/input_image_0.jpg\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/motion/input_video_1.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/motion\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/motion/input_image_0.jpg\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/motion/input_video_1.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/motion\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/motion/input_image_0.jpg\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/motion/input_video_1.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/motion\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan Motion" - modelId: "alibaba/wan/motion" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/motion" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-02-19T01:00:51.825Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/move.md b/model-api-reference/video-generation/alibaba/wan/move.md deleted file mode 100644 index fb018140..00000000 --- a/model-api-reference/video-generation/alibaba/wan/move.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan Move API Reference" -description: "Wan Move API reference for SandBase. Use model alibaba/wan/move with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/move" -apiReferenceJson: "{\"title\":\"Wan Move\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan Move by Alibaba - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/move.\",\"default\":\"alibaba/wan/move\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt to guide the video generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image. If the input image does not match the chosen aspect ratio, it is resized and center cropped.\"},{\"name\":\"trajectories\",\"type\":\"array\",\"required\":false,\"description\":\"A list of trajectories. Each trajectory list means the movement of one object.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/move\\\",\\n \\\"prompt\\\": \\\"In a boxing gym, the camera captures a half-body view of a single man practicing shadow boxing inside the ring. The camera sways slightly, emphasizing movement and intensity. He wears black boxing gloves, black shorts, and boxing shoes. With no opponent present, he throws a controlled straight punch into the air, his lead arm fully extended while the other hand stays tight near his face in a defensive guard. His body rotates subtly through the hips and shoulders, and his feet shift lightly across the mat to maintain balance and rhythm. Sweat highlights his muscular form as he focuses forward, fully immersed in his training. The background features blurred gym equipment and hanging heavy bags, reinforcing the sense of motion and concentration.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/move/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/move\\\",\\n \\\"prompt\\\": \\\"In a boxing gym, the camera captures a half-body view of a single man practicing shadow boxing inside the ring. The camera sways slightly, emphasizing movement and intensity. He wears black boxing gloves, black shorts, and boxing shoes. With no opponent present, he throws a controlled straight punch into the air, his lead arm fully extended while the other hand stays tight near his face in a defensive guard. His body rotates subtly through the hips and shoulders, and his feet shift lightly across the mat to maintain balance and rhythm. Sweat highlights his muscular form as he focuses forward, fully immersed in his training. The background features blurred gym equipment and hanging heavy bags, reinforcing the sense of motion and concentration.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/move/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/move\\\",\\n \\\"prompt\\\": \\\"In a boxing gym, the camera captures a half-body view of a single man practicing shadow boxing inside the ring. The camera sways slightly, emphasizing movement and intensity. He wears black boxing gloves, black shorts, and boxing shoes. With no opponent present, he throws a controlled straight punch into the air, his lead arm fully extended while the other hand stays tight near his face in a defensive guard. His body rotates subtly through the hips and shoulders, and his feet shift lightly across the mat to maintain balance and rhythm. Sweat highlights his muscular form as he focuses forward, fully immersed in his training. The background features blurred gym equipment and hanging heavy bags, reinforcing the sense of motion and concentration.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/move/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/move\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan Move" - modelId: "alibaba/wan/move" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/move" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-24T21:24:00.028Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/v2.2-5b/text-to-video/distill.md b/model-api-reference/video-generation/alibaba/wan/v2.2-5b/text-to-video/distill.md deleted file mode 100644 index 35ead075..00000000 --- a/model-api-reference/video-generation/alibaba/wan/v2.2-5b/text-to-video/distill.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.2 5B Distilled API Reference" -description: "Wan 2.2 5B Distilled API reference for SandBase. Use model alibaba/wan/v2.2-5b/text-to-video/distill with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/v2.2-5b/text-to-video/distill" -apiReferenceJson: "{\"title\":\"Wan 2.2 5B Distilled\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan V2.2 5b Distill is Alibaba's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/v2.2-5b/text-to-video/distill.\",\"default\":\"alibaba/wan/v2.2-5b/text-to-video/distill\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to guide video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (580p or 720p).\",\"default\":\"720p\",\"constraints\":\"Allowed values: 580p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"},{\"name\":\"interpolator_model\",\"type\":\"string\",\"required\":false,\"description\":\"The model to use for frame interpolation. If None, no interpolation is applied.\",\"default\":\"film\",\"constraints\":\"Allowed values: none, film, rife\"},{\"name\":\"num_interpolated_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of frames to interpolate between each pair of generated frames. Must be between 0 and 4.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 4\"},{\"name\":\"adjust_fps_for_interpolation\",\"type\":\"boolean\",\"required\":false,\"description\":\"If true, the number of frames per second will be multiplied by the number of interpolated frames plus one. For example, if the generated frames per second is 16 and the number of interpolated frames is 1, the final frames per second will be 32. If false, the passed frames per second will be used as-is.\",\"default\":\"true\"},{\"name\":\"shift\",\"type\":\"number\",\"required\":false,\"description\":\"Shift value for the video. Must be between 1.0 and 10.0.\",\"default\":\"5\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"40\",\"constraints\":\"Range: 2 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/v2.2-5b/text-to-video/distill\\\",\\n \\\"prompt\\\": \\\"A medium shot establishes a modern, minimalist office setting: clean lines, muted grey walls, and polished wood surfaces. The focus shifts to a close-up on a woman in sharp, navy blue business attire. Her crisp white blouse contrasts with the deep blue of her tailored suit jacket. The subtle texture of the fabric is visible—a fine weave with a slight sheen. Her expression is serious, yet engaging, as she speaks to someone unseen just beyond the frame. Close-up on her eyes, showing the intensity of her gaze and the fine lines around them that hint at experience and focus. Her lips are slightly parted, as if mid-sentence. The light catches the subtle highlights in her auburn hair, meticulously styled. Note the slight catch of light on the silver band of her watch. High resolution 4k\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/v2.2-5b/text-to-video/distill\\\",\\n \\\"prompt\\\": \\\"A medium shot establishes a modern, minimalist office setting: clean lines, muted grey walls, and polished wood surfaces. The focus shifts to a close-up on a woman in sharp, navy blue business attire. Her crisp white blouse contrasts with the deep blue of her tailored suit jacket. The subtle texture of the fabric is visible—a fine weave with a slight sheen. Her expression is serious, yet engaging, as she speaks to someone unseen just beyond the frame. Close-up on her eyes, showing the intensity of her gaze and the fine lines around them that hint at experience and focus. Her lips are slightly parted, as if mid-sentence. The light catches the subtle highlights in her auburn hair, meticulously styled. Note the slight catch of light on the silver band of her watch. High resolution 4k\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/v2.2-5b/text-to-video/distill\\\",\\n \\\"prompt\\\": \\\"A medium shot establishes a modern, minimalist office setting: clean lines, muted grey walls, and polished wood surfaces. The focus shifts to a close-up on a woman in sharp, navy blue business attire. Her crisp white blouse contrasts with the deep blue of her tailored suit jacket. The subtle texture of the fabric is visible—a fine weave with a slight sheen. Her expression is serious, yet engaging, as she speaks to someone unseen just beyond the frame. Close-up on her eyes, showing the intensity of her gaze and the fine lines around them that hint at experience and focus. Her lips are slightly parted, as if mid-sentence. The light catches the subtle highlights in her auburn hair, meticulously styled. Note the slight catch of light on the silver band of her watch. High resolution 4k\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/v2.2-5b/text-to-video/distill\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.2 5B Distilled" - modelId: "alibaba/wan/v2.2-5b/text-to-video/distill" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/v2.2-5b/text-to-video/distill" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-06T17:34:42.197Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan/vision-enhancer.md b/model-api-reference/video-generation/alibaba/wan/vision-enhancer.md deleted file mode 100644 index f7dd16af..00000000 --- a/model-api-reference/video-generation/alibaba/wan/vision-enhancer.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan Vision Enhancer API Reference" -description: "Wan Vision Enhancer API reference for SandBase. Use model alibaba/wan/vision-enhancer with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan/vision-enhancer" -apiReferenceJson: "{\"title\":\"Wan Vision Enhancer\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan Vision Enhancer is Alibaba's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan/vision-enhancer.\",\"default\":\"alibaba/wan/vision-enhancer\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Optional prompt to prepend to the VLM-generated description. Leave empty to use only the auto-generated description from the video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to enhance with Wan Video. Maximum 200MB file size. Videos longer than 500 frames will have only the first 500 frames processed (~8-21 seconds depending on fps).\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If not provided, a random seed will be used.\"},{\"name\":\"creativity\",\"type\":\"integer\",\"required\":false,\"description\":\"Controls how much the model enhances/changes the video. 0 = Minimal change (preserves original), 1 = Subtle enhancement (default), 2 = Medium enhancement, 3 = Strong enhancement, 4 = Maximum enhancement.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 4\"},{\"name\":\"target_resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Target output resolution for the enhanced video. 720p (native, fast) or 1080p (upscaled, slower). Processing is always done at 720p, then upscaled if 1080p selected.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan/vision-enhancer\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/vision-enhancer/output_url_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan/vision-enhancer\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/vision-enhancer/output_url_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan/vision-enhancer\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/vision-enhancer/output_url_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan/vision-enhancer\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan Vision Enhancer" - modelId: "alibaba/wan/vision-enhancer" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan/vision-enhancer" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-10T23:51:05.247Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan2.2-i2v-exp0622.md b/model-api-reference/video-generation/alibaba/wan2.2-i2v-exp0622.md deleted file mode 100644 index dd3faa03..00000000 --- a/model-api-reference/video-generation/alibaba/wan2.2-i2v-exp0622.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.2 Exp0622 API Reference" -description: "Wan 2.2 Exp0622 API reference for SandBase. Use model alibaba/wan2.2-i2v-exp0622 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan2.2-i2v-exp0622" -apiReferenceJson: "{\"title\":\"Wan 2.2 Exp0622\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.2 Exp0622 generates short videos from a single input image. Supports 5s or 8s durations at 480p or 720p resolution, optimized for high-volume production.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan2.2-i2v-exp0622.\",\"default\":\"alibaba/wan2.2-i2v-exp0622\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image to animate (URL or Base64-encoded string). Maximum file size is 50 MB.\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt to guide the video generation.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds. Supported values: 5 or 8.\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution.\",\"default\":\"480p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable built-in prompt optimization to enhance generation quality.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed. Omit for an auto-generated seed.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan2.2-i2v-exp0622\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan2.2-i2v-exp0622\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan2.2-i2v-exp0622\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan2.2-i2v-exp0622\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.2 Exp0622" - modelId: "alibaba/wan2.2-i2v-exp0622" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan2.2-i2v-exp0622" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/alibaba/wan2.7-i2v-exp0622.md b/model-api-reference/video-generation/alibaba/wan2.7-i2v-exp0622.md deleted file mode 100644 index 8912096f..00000000 --- a/model-api-reference/video-generation/alibaba/wan2.7-i2v-exp0622.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Wan 2.7 Exp0622 API Reference" -description: "Wan 2.7 Exp0622 API reference for SandBase. Use model alibaba/wan2.7-i2v-exp0622 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/alibaba/wan2.7-i2v-exp0622" -apiReferenceJson: "{\"title\":\"Wan 2.7 Exp0622\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Wan 2.7 Exp0622 generates premium videos from a single input image with native audio, flexible 2–15 second durations, and built-in prompt optimization. Supports 720p and 1080p output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to alibaba/wan2.7-i2v-exp0622.\",\"default\":\"alibaba/wan2.7-i2v-exp0622\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image to animate (URL or Base64-encoded string). Maximum file size is 50 MB.\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt to guide the video generation. Built-in prompt optimization is applied automatically.\"},{\"name\":\"negative_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Text description of elements to exclude from the generated video.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds. Range: 2–15 seconds.\",\"default\":\"5\",\"constraints\":\"Range: 2 to 15\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution.\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"Optional URL of an audio file to include in the generated video.\"},{\"name\":\"generate_auto\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable native audio generation in the output video.\",\"default\":\"true\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable built-in prompt optimization to enhance generation quality.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed. Omit for an auto-generated seed.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"alibaba/wan2.7-i2v-exp0622\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"duration\\\": 5,\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"alibaba/wan2.7-i2v-exp0622\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"duration\\\": 5,\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"alibaba/wan2.7-i2v-exp0622\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"duration\\\": 5,\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"alibaba/wan2.7-i2v-exp0622\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Wan 2.7 Exp0622" - modelId: "alibaba/wan2.7-i2v-exp0622" - vendor: "Alibaba" - vendorSlug: "alibaba" - modelSlug: "wan2.7-i2v-exp0622" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/bfl/flux-3/image-to-video.md b/model-api-reference/video-generation/bfl/flux-3/image-to-video.md new file mode 100644 index 00000000..2424cb8c --- /dev/null +++ b/model-api-reference/video-generation/bfl/flux-3/image-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Flux 3 Image to Video API Reference" +description: "Flux 3 Image to Video API reference for SandBase. Use model bfl/flux-3/image-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/bfl/flux-3/image-to-video" +apiReferenceJson: "{\"title\":\"Flux 3 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 3 is BFL's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-3/image-to-video.\",\"default\":\"bfl/flux-3/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image the video starts from (PNG, JPEG, or WebP).\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (5-20).\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Follows the input when omitted.\",\"constraints\":\"Allowed values: 21:9, 2:1, 16:9, 4:3, 1:1, 3:4, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-3/image-to-video\\\",\\n \\\"prompt\\\": \\\"A red panda walks along a mossy log in a sunlit forest, one continuous unbroken shot. Ambient birdsong and rustling leaves.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/veo31_i2v_input.jpg\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-3/image-to-video\\\",\\n \\\"prompt\\\": \\\"A red panda walks along a mossy log in a sunlit forest, one continuous unbroken shot. Ambient birdsong and rustling leaves.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/Falserverless/example_inputs/veo31_i2v_input.jpg\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-3/image-to-video\\\",\\n \\\"prompt\\\": \\\"A red panda walks along a mossy log in a sunlit forest, one continuous unbroken shot. Ambient birdsong and rustling leaves.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/veo31_i2v_input.jpg\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-3/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Flux 3 Image to Video" + modelId: "bfl/flux-3/image-to-video" + vendor: "BFL" + vendorSlug: "bfl" + modelSlug: "flux-3/image-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-08-04T17:34:49.82Z" + capabilities: ["image-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/bfl/flux-3/text-to-video.md b/model-api-reference/video-generation/bfl/flux-3/text-to-video.md new file mode 100644 index 00000000..2699ac6b --- /dev/null +++ b/model-api-reference/video-generation/bfl/flux-3/text-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Flux 3 Text to Video API Reference" +description: "Flux 3 Text to Video API reference for SandBase. Use model bfl/flux-3/text-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/bfl/flux-3/text-to-video" +apiReferenceJson: "{\"title\":\"Flux 3 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Flux 3 by BFL - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bfl/flux-3/text-to-video.\",\"default\":\"bfl/flux-3/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 2:1, 16:9, 4:3, 1:1, 3:4, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (5-20).\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bfl/flux-3/text-to-video\\\",\\n \\\"prompt\\\": \\\"A red panda walks along a mossy log in a sunlit forest, one continuous unbroken shot. Ambient birdsong and rustling leaves.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bfl/flux-3/text-to-video\\\",\\n \\\"prompt\\\": \\\"A red panda walks along a mossy log in a sunlit forest, one continuous unbroken shot. Ambient birdsong and rustling leaves.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bfl/flux-3/text-to-video\\\",\\n \\\"prompt\\\": \\\"A red panda walks along a mossy log in a sunlit forest, one continuous unbroken shot. Ambient birdsong and rustling leaves.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bfl/flux-3/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Flux 3 Text to Video" + modelId: "bfl/flux-3/text-to-video" + vendor: "BFL" + vendorSlug: "bfl" + modelSlug: "flux-3/text-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-08-04T17:34:53.02Z" + capabilities: ["text-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/bria/video/background-removal/3.0.md b/model-api-reference/video-generation/bria/video/background-removal/3.0.md deleted file mode 100644 index 444f4dcf..00000000 --- a/model-api-reference/video-generation/bria/video/background-removal/3.0.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Bria's VRMBG 3.0 API Reference" -description: "Bria's VRMBG 3.0 API reference for SandBase. Use model bria/video/background-removal/3.0 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/bria/video/background-removal/3.0" -apiReferenceJson: "{\"title\":\"Bria's VRMBG 3.0\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Video Background Removal 3.0 by Bria - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bria/video/background-removal/3.0.\",\"default\":\"bria/video/background-removal/3.0\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Input video to remove background from.\"},{\"name\":\"preserve_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"If true, audio will be preserved in the output video.\",\"default\":\"true\"},{\"name\":\"background_color\",\"type\":\"string\",\"required\":false,\"description\":\"Background color. Options: Transparent, Black, White, Gray, Red, Green, Blue, Yellow, Cyan, Magenta, Orange.\",\"default\":\"Black\",\"constraints\":\"Allowed values: Transparent, Black, White, Gray, Red, Green, Blue, Yellow, Cyan, Magenta, Orange\"},{\"name\":\"auto_zoom\",\"type\":\"boolean\",\"required\":false,\"description\":\"If true, crop the output to the smallest rectangle the subject stays inside for the whole video.\",\"default\":\"false\"},{\"name\":\"output_container_and_codec\",\"type\":\"string\",\"required\":false,\"description\":\"Output container and codec. Options: mp4_h265, mp4_h264, webm_vp9, mov_h265, mov_proresks, mkv_h265, mkv_h264, mkv_vp9, gif.\",\"default\":\"webm_vp9\",\"constraints\":\"Allowed values: mp4_h265, mp4_h264, webm_vp9, mov_h265, mov_proresks, mkv_h265, mkv_h264, mkv_vp9, gif\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bria/video/background-removal/3.0\\\",\\n \\\"video\\\": \\\"https://bria-datasets.s3.us-east-1.amazonaws.com/rmbg_tests/videos/video.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bria/video/background-removal/3.0\\\",\\n \\\"video\\\": \\\"https://bria-datasets.s3.us-east-1.amazonaws.com/rmbg_tests/videos/video.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bria/video/background-removal/3.0\\\",\\n \\\"video\\\": \\\"https://bria-datasets.s3.us-east-1.amazonaws.com/rmbg_tests/videos/video.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bria/video/background-removal/3.0\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Bria's VRMBG 3.0" - modelId: "bria/video/background-removal/3.0" - vendor: "Bria" - vendorSlug: "bria" - modelSlug: "video/background-removal/3.0" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-10T13:41:05.678Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/bria/video/background-removal/realtime.md b/model-api-reference/video-generation/bria/video/background-removal/realtime.md deleted file mode 100644 index 12cb4acd..00000000 --- a/model-api-reference/video-generation/bria/video/background-removal/realtime.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Bria's VRMBG 3.0 Realtime API Reference" -description: "Bria's VRMBG 3.0 Realtime API reference for SandBase. Use model bria/video/background-removal/realtime with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/bria/video/background-removal/realtime" -apiReferenceJson: "{\"title\":\"Bria's VRMBG 3.0 Realtime\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Video Background Removal Realtime is Bria's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bria/video/background-removal/realtime.\",\"default\":\"bria/video/background-removal/realtime\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Playground webcam/video source. Media is sent over WebRTC.\",\"default\":\"\"},{\"name\":\"blur_strength\",\"type\":\"integer\",\"required\":false,\"description\":\"Background blur strength, 0-100 (used when background_type is 'blur').\",\"default\":\"50\",\"constraints\":\"Range: 0 to 100\"},{\"name\":\"background_color\",\"type\":\"string\",\"required\":false,\"description\":\"Solid background colour (used when background_type is 'color').\",\"default\":\"Black\",\"constraints\":\"Allowed values: Black, White, Gray, Red, Green, Blue, Yellow, Cyan, Magenta, Orange\"},{\"name\":\"background_type\",\"type\":\"string\",\"required\":false,\"description\":\"How to replace the background: 'color', 'image', or 'blur'.\",\"default\":\"color\",\"constraints\":\"Allowed values: color, image, blur\"},{\"name\":\"background_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"Background image URL or data URI (used when background_type is 'image').\",\"default\":\"null\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bria/video/background-removal/realtime\\\",\\n \\\"image\\\": \\\"\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bria/video/background-removal/realtime\\\",\\n \\\"image\\\": \\\"\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bria/video/background-removal/realtime\\\",\\n \\\"image\\\": \\\"\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bria/video/background-removal/realtime\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Bria's VRMBG 3.0 Realtime" - modelId: "bria/video/background-removal/realtime" - vendor: "Bria" - vendorSlug: "bria" - modelSlug: "video/background-removal/realtime" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-10T13:40:59.435Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/bytedance/dreamactor/2.0.md b/model-api-reference/video-generation/bytedance/dreamactor/2.0.md index 467faef2..c600f19d 100644 --- a/model-api-reference/video-generation/bytedance/dreamactor/2.0.md +++ b/model-api-reference/video-generation/bytedance/dreamactor/2.0.md @@ -1,14 +1,14 @@ --- -title: "DreamActor 2.0 API Reference" -description: "DreamActor 2.0 API reference for SandBase. Use model bytedance/dreamactor/2.0 with /v1/run; see request and response examples." +title: "ByteDance DreamActor 2.0 API Reference" +description: "ByteDance DreamActor 2.0 API reference for SandBase. Use model bytedance/dreamactor/2.0 with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/bytedance/dreamactor/2.0" -apiReferenceJson: "{\"title\":\"DreamActor 2.0\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"DreamActor M2.0 by ByteDance generates videos by animating a reference image using motion from a driving video. It replicates motion, facial expressions, and lip movements from the template video while preserving the subject and background features of the input image.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/dreamactor/2.0.\",\"default\":\"bytedance/dreamactor/2.0\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the reference image to animate. Supports real people, animation, pets, etc. Format: jpeg, jpg or png. Max size: 4.7 MB. Resolution: between 480x480 and 1920x1080 (larger images will be proportionally reduced).\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the driving template video providing motion, facial expressions, and lip movement reference. Max duration: 30 seconds. Format: mp4, mov or webm. Resolution: between 200x200 and 2048x1440. Supports full face and body driving.\"},{\"name\":\"trim_first_second\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to crop the first second of the output video. The output has a 1-second transition at the beginning; enable this to remove it.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/dreamactor/2.0\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/dreamactor/2.0/input_image_0.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/bytedance/dreamactor/2.0/input_video_1.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/dreamactor/2.0\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/dreamactor/2.0/input_image_0.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/bytedance/dreamactor/2.0/input_video_1.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/dreamactor/2.0\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/dreamactor/2.0/input_image_0.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/bytedance/dreamactor/2.0/input_video_1.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/dreamactor/2.0\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"ByteDance DreamActor 2.0\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"DreamActor 2.0 by ByteDance transfers motion, facial expressions and lip movement from a driving video to the character in a reference image.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/dreamactor/2.0.\",\"default\":\"bytedance/dreamactor/2.0\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image URL (face / character).\"},{\"name\":\"trim_first_second\",\"type\":\"boolean\",\"required\":false,\"description\":\"Crop the 1-second transition at the start of the output.\",\"default\":\"true\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Driving video providing motion, expressions and lip movement.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/dreamactor/2.0\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/move/input_image_1.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/move/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/dreamactor/2.0\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/move/input_image_1.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/move/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/dreamactor/2.0\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/move/input_image_1.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/animate/move/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/dreamactor/2.0\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "DreamActor 2.0" + modelName: "ByteDance DreamActor 2.0" modelId: "bytedance/dreamactor/2.0" - vendor: "ByteDance" + vendor: "Bytedance" vendorSlug: "bytedance" modelSlug: "dreamactor/2.0" protocol: "Video Generation Reference" diff --git a/model-api-reference/video-generation/bytedance/lynx.md b/model-api-reference/video-generation/bytedance/lynx.md deleted file mode 100644 index 731e1818..00000000 --- a/model-api-reference/video-generation/bytedance/lynx.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Lynx API Reference" -description: "Lynx API reference for SandBase. Use model bytedance/lynx with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/bytedance/lynx" -apiReferenceJson: "{\"title\":\"Lynx\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Lynx by ByteDance - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/lynx.\",\"default\":\"bytedance/lynx\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt to guide video generation\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the subject image to be used for video generation\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (480p, 580p, or 720p)\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 580p, 720p\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/lynx\\\",\\n \\\"prompt\\\": \\\"A person carves a pumpkin on a porch in the evening. The camera captures their upper body as they draw a face with a marker, carefully cut along the lines, then lift the lid with both hands. Their face lights up with excitement as they peek inside\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/lynx/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/lynx\\\",\\n \\\"prompt\\\": \\\"A person carves a pumpkin on a porch in the evening. The camera captures their upper body as they draw a face with a marker, carefully cut along the lines, then lift the lid with both hands. Their face lights up with excitement as they peek inside\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/lynx/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/lynx\\\",\\n \\\"prompt\\\": \\\"A person carves a pumpkin on a porch in the evening. The camera captures their upper body as they draw a face with a marker, carefully cut along the lines, then lift the lid with both hands. Their face lights up with excitement as they peek inside\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/lynx/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/lynx\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Lynx" - modelId: "bytedance/lynx" - vendor: "ByteDance" - vendorSlug: "bytedance" - modelSlug: "lynx" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-18T01:53:22.544Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/bytedance/omnihuman/1.0.md b/model-api-reference/video-generation/bytedance/omnihuman/1.0.md deleted file mode 100644 index 6840ff37..00000000 --- a/model-api-reference/video-generation/bytedance/omnihuman/1.0.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "OmniHuman 1.0 API Reference" -description: "OmniHuman 1.0 API reference for SandBase. Use model bytedance/omnihuman/1.0 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/bytedance/omnihuman/1.0" -apiReferenceJson: "{\"title\":\"OmniHuman 1.0\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Omnihuman 1.0 is ByteDance's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/omnihuman/1.0.\",\"default\":\"bytedance/omnihuman/1.0\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image used to generate the video\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the audio file to generate the video. Audio must be under 30s long.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/omnihuman/1.0\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/omnihuman/1.0/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/bytedance/omnihuman/1.0/input_audio_1.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/omnihuman/1.0\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/omnihuman/1.0/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/bytedance/omnihuman/1.0/input_audio_1.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/omnihuman/1.0\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/omnihuman/1.0/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/bytedance/omnihuman/1.0/input_audio_1.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/omnihuman/1.0\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "OmniHuman 1.0" - modelId: "bytedance/omnihuman/1.0" - vendor: "ByteDance" - vendorSlug: "bytedance" - modelSlug: "omnihuman/1.0" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-07-27T12:18:13.247Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/bytedance/omnihuman/1.5.md b/model-api-reference/video-generation/bytedance/omnihuman/1.5.md index 38d5530f..9ff56ed2 100644 --- a/model-api-reference/video-generation/bytedance/omnihuman/1.5.md +++ b/model-api-reference/video-generation/bytedance/omnihuman/1.5.md @@ -1,14 +1,14 @@ --- -title: "ByteDance OmniHuman v1.5 API Reference" -description: "ByteDance OmniHuman v1.5 API reference for SandBase. Use model bytedance/omnihuman/1.5 with /v1/run; see request and response examples." +title: "ByteDance OmniHuman 1.5 API Reference" +description: "ByteDance OmniHuman 1.5 API reference for SandBase. Use model bytedance/omnihuman/1.5 with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/bytedance/omnihuman/1.5" -apiReferenceJson: "{\"title\":\"ByteDance OmniHuman v1.5\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Omnihuman 1.5 is ByteDance's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/omnihuman/1.5.\",\"default\":\"bytedance/omnihuman/1.5\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt used to guide the video generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image used to generate the video\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the mask image to apply to the image. Only the person in the white area of the mask will speak.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the audio file to generate the video. Audio must be under 30s long for 1080p generation and under 60s long for 720p generation.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video. Defaults to 1080p. 720p generation is faster and higher in quality. 1080p generation is limited to 30s audio and 720p generation is limited to 60s audio.\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"turbo_mode\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a video at a faster rate with a slight quality trade-off.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/omnihuman/1.5\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/omnihuman/1.5/input_image_1.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/bytedance/omnihuman/1.5/input_audio_0.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/omnihuman/1.5\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/omnihuman/1.5/input_image_1.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/bytedance/omnihuman/1.5/input_audio_0.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/omnihuman/1.5\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/omnihuman/1.5/input_image_1.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/bytedance/omnihuman/1.5/input_audio_0.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/omnihuman/1.5\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"ByteDance OmniHuman 1.5\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Omnihuman 1.5 is ByteDance's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/omnihuman/1.5.\",\"default\":\"bytedance/omnihuman/1.5\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt used to guide the video generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image used to generate the video\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the mask image to apply to the image. Only the person in the white area of the mask will speak.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the audio file to generate the video. Audio must be under 30s long for 1080p generation and under 60s long for 720p generation.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video. Defaults to 1080p. 720p generation is faster and higher in quality. 1080p generation is limited to 30s audio and 720p generation is limited to 60s audio.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"turbo_mode\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a video at a faster rate with a slight quality trade-off.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/omnihuman/1.5\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/omnihuman/1.5/input_image_1.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/bytedance/omnihuman/1.5/input_audio_0.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/omnihuman/1.5\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/omnihuman/1.5/input_image_1.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/bytedance/omnihuman/1.5/input_audio_0.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/omnihuman/1.5\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/omnihuman/1.5/input_image_1.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/bytedance/omnihuman/1.5/input_audio_0.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/omnihuman/1.5\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "ByteDance OmniHuman v1.5" + modelName: "ByteDance OmniHuman 1.5" modelId: "bytedance/omnihuman/1.5" - vendor: "ByteDance" + vendor: "Bytedance" vendorSlug: "bytedance" modelSlug: "omnihuman/1.5" protocol: "Video Generation Reference" diff --git a/model-api-reference/video-generation/bytedance/seedance/1.0/pro/fast/image-to-video.md b/model-api-reference/video-generation/bytedance/seedance/1.0/pro/fast/image-to-video.md deleted file mode 100644 index 36482bd2..00000000 --- a/model-api-reference/video-generation/bytedance/seedance/1.0/pro/fast/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Seedance 1.0 Pro Fast I2V API Reference" -description: "Seedance 1.0 Pro Fast I2V API reference for SandBase. Use model bytedance/seedance/1.0/pro/fast/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/bytedance/seedance/1.0/pro/fast/image-to-video" -apiReferenceJson: "{\"title\":\"Seedance 1.0 Pro Fast I2V\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedance 1.0 Pro by ByteDance - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/1.0/pro/fast/image-to-video.\",\"default\":\"bytedance/seedance/1.0/pro/fast/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt used to generate the video\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image used to generate video\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Video resolution - 480p for faster generation, 720p for balance, 1080p for higher quality\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate. If provided, will override duration.\",\"constraints\":\"Range: 29 to 289\"},{\"name\":\"camera_fixed\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to fix the camera position\",\"default\":\"false\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed to control video generation. Use -1 for random.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/1.0/pro/fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"Bathed in a stark spotlight, a lone ballet dancer takes center stage. Her movements, precise and graceful, tell a story of passion and dedication against the velvet darkness. The scene evokes a sense of intimacy, highlighting the raw emotion and artistry of her performance.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/seedance/1.0/pro/fast/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/1.0/pro/fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"Bathed in a stark spotlight, a lone ballet dancer takes center stage. Her movements, precise and graceful, tell a story of passion and dedication against the velvet darkness. The scene evokes a sense of intimacy, highlighting the raw emotion and artistry of her performance.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/seedance/1.0/pro/fast/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/1.0/pro/fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"Bathed in a stark spotlight, a lone ballet dancer takes center stage. Her movements, precise and graceful, tell a story of passion and dedication against the velvet darkness. The scene evokes a sense of intimacy, highlighting the raw emotion and artistry of her performance.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/seedance/1.0/pro/fast/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/1.0/pro/fast/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Seedance 1.0 Pro Fast I2V" - modelId: "bytedance/seedance/1.0/pro/fast/image-to-video" - vendor: "ByteDance" - vendorSlug: "bytedance" - modelSlug: "seedance/1.0/pro/fast/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-24T11:57:48.061Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/bytedance/seedance/1.0/pro/fast/text-to-video.md b/model-api-reference/video-generation/bytedance/seedance/1.0/pro/fast/text-to-video.md deleted file mode 100644 index 146e4ebd..00000000 --- a/model-api-reference/video-generation/bytedance/seedance/1.0/pro/fast/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Seedance 1.0 Pro Fast T2V API Reference" -description: "Seedance 1.0 Pro Fast T2V API reference for SandBase. Use model bytedance/seedance/1.0/pro/fast/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/bytedance/seedance/1.0/pro/fast/text-to-video" -apiReferenceJson: "{\"title\":\"Seedance 1.0 Pro Fast T2V\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedance 1.0 Pro is ByteDance's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/1.0/pro/fast/text-to-video.\",\"default\":\"bytedance/seedance/1.0/pro/fast/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt used to generate the video\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Video resolution - 480p for faster generation, 720p for balance, 1080p for higher quality\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed to control video generation. Use -1 for random.\"},{\"name\":\"camera_fixed\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to fix the camera position\",\"default\":\"false\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate. If provided, will override duration.\",\"constraints\":\"Range: 29 to 289\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/1.0/pro/fast/text-to-video\\\",\\n \\\"prompt\\\": \\\"Inside a quiet dojo, a martial artist moves with precision and grace. The performance highlights the beauty and discipline inherent in the ancient practice. Each form unfolds clearly, a testament to dedication and skill.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/1.0/pro/fast/text-to-video\\\",\\n \\\"prompt\\\": \\\"Inside a quiet dojo, a martial artist moves with precision and grace. The performance highlights the beauty and discipline inherent in the ancient practice. Each form unfolds clearly, a testament to dedication and skill.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/1.0/pro/fast/text-to-video\\\",\\n \\\"prompt\\\": \\\"Inside a quiet dojo, a martial artist moves with precision and grace. The performance highlights the beauty and discipline inherent in the ancient practice. Each form unfolds clearly, a testament to dedication and skill.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/1.0/pro/fast/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Seedance 1.0 Pro Fast T2V" - modelId: "bytedance/seedance/1.0/pro/fast/text-to-video" - vendor: "ByteDance" - vendorSlug: "bytedance" - modelSlug: "seedance/1.0/pro/fast/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-24T11:54:23.14Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/bytedance/seedance/1.0/pro/image-to-video.md b/model-api-reference/video-generation/bytedance/seedance/1.0/pro/image-to-video.md deleted file mode 100644 index b586b2e1..00000000 --- a/model-api-reference/video-generation/bytedance/seedance/1.0/pro/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Seedance 1.0 Pro API Reference — ByteDance / Pro / Image To Video" -description: "Seedance 1.0 Pro API reference for SandBase. Use model bytedance/seedance/1.0/pro/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/bytedance/seedance/1.0/pro/image-to-video" -apiReferenceJson: "{\"title\":\"Seedance 1.0 Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedance 1.0 Pro is ByteDance's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/1.0/pro/image-to-video.\",\"default\":\"bytedance/seedance/1.0/pro/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt used to generate the video\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image used to generate video\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image the video ends with. Defaults to None.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Video resolution - 480p for faster generation, 720p for balance, 1080p for higher quality\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12\"},{\"name\":\"camera_fixed\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to fix the camera position\",\"default\":\"false\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed to control video generation. Use -1 for random.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/1.0/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"A skier glides over fresh snow, joyously smiling while kicking up large clouds of snow as he turns. Accelerating gradually down the slope, the camera moves smoothly alongside.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/seedance/1.0/pro/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/1.0/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"A skier glides over fresh snow, joyously smiling while kicking up large clouds of snow as he turns. Accelerating gradually down the slope, the camera moves smoothly alongside.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/seedance/1.0/pro/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/1.0/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"A skier glides over fresh snow, joyously smiling while kicking up large clouds of snow as he turns. Accelerating gradually down the slope, the camera moves smoothly alongside.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/seedance/1.0/pro/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/1.0/pro/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Seedance 1.0 Pro" - modelId: "bytedance/seedance/1.0/pro/image-to-video" - vendor: "ByteDance" - vendorSlug: "bytedance" - modelSlug: "seedance/1.0/pro/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-16T16:19:27.807Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/bytedance/seedance/1.0/pro/text-to-video.md b/model-api-reference/video-generation/bytedance/seedance/1.0/pro/text-to-video.md deleted file mode 100644 index 7ec90266..00000000 --- a/model-api-reference/video-generation/bytedance/seedance/1.0/pro/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Seedance 1.0 Pro API Reference — ByteDance / Pro / Text To Video" -description: "Seedance 1.0 Pro API reference for SandBase. Use model bytedance/seedance/1.0/pro/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/bytedance/seedance/1.0/pro/text-to-video" -apiReferenceJson: "{\"title\":\"Seedance 1.0 Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedance 1.0 Pro by ByteDance - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/1.0/pro/text-to-video.\",\"default\":\"bytedance/seedance/1.0/pro/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt used to generate the video\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Video resolution - 480p for faster generation, 720p for balance, 1080p for higher quality\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed to control video generation. Use -1 for random.\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate. If provided, will override duration.\",\"constraints\":\"Range: 29 to 289\"},{\"name\":\"camera_fixed\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to fix the camera position\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/1.0/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A bright blue race car speeds along a snowy racetrack. [Low-angle shot] Captures several cars speeding along the racetrack through a harsh snowstorm. [Overhead shot] The camera gradually pulls upward, revealing the full race scene illuminated by storm lights\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/1.0/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A bright blue race car speeds along a snowy racetrack. [Low-angle shot] Captures several cars speeding along the racetrack through a harsh snowstorm. [Overhead shot] The camera gradually pulls upward, revealing the full race scene illuminated by storm lights\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/1.0/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A bright blue race car speeds along a snowy racetrack. [Low-angle shot] Captures several cars speeding along the racetrack through a harsh snowstorm. [Overhead shot] The camera gradually pulls upward, revealing the full race scene illuminated by storm lights\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/1.0/pro/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Seedance 1.0 Pro" - modelId: "bytedance/seedance/1.0/pro/text-to-video" - vendor: "ByteDance" - vendorSlug: "bytedance" - modelSlug: "seedance/1.0/pro/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-16T16:22:01.447Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/bytedance/seedance/1.5/pro/image-to-video.md b/model-api-reference/video-generation/bytedance/seedance/1.5/pro/image-to-video.md deleted file mode 100644 index e54b700d..00000000 --- a/model-api-reference/video-generation/bytedance/seedance/1.5/pro/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Seedance v1.5 Pro Image to Video API Reference" -description: "Seedance v1.5 Pro Image to Video API reference for SandBase. Use model bytedance/seedance/1.5/pro/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/bytedance/seedance/1.5/pro/image-to-video" -apiReferenceJson: "{\"title\":\"Seedance v1.5 Pro Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"ByteDance Seedance v1.5 Pro image-to-video model transforming still images into cinematic video with native audio generation, camera control, and professional-grade output quality.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/1.5/pro/image-to-video.\",\"default\":\"bytedance/seedance/1.5/pro/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"A girl holding a fox, the girl opens her eyes and gently looks at the camera, the fox is held gently, the camera slowly pulls back, the girl's hair is blown by the wind, and the sound of the wind can be heard.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the starting image for video generation.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the ending image for video generation.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the video in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 4, 5, 6, 7, 8, 9, 10, 11, 12\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"camera_fixed\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to fix the camera position.\",\"default\":\"false\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The random seed used for generation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/1.5/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"A girl holding a fox, the girl opens her eyes and gently looks at the camera, the fox is held gently, the camera slowly pulls back, the girl's hair is blown by the wind, and the sound of the wind can be heard.\\\",\\n \\\"image\\\": \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/a28ec84ff9fc4287a0d98191020a3218~tplv-goo7wpa0wc-image.image\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/1.5/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"A girl holding a fox, the girl opens her eyes and gently looks at the camera, the fox is held gently, the camera slowly pulls back, the girl's hair is blown by the wind, and the sound of the wind can be heard.\\\",\\n \\\"image\\\": \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/a28ec84ff9fc4287a0d98191020a3218~tplv-goo7wpa0wc-image.image\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/1.5/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"A girl holding a fox, the girl opens her eyes and gently looks at the camera, the fox is held gently, the camera slowly pulls back, the girl's hair is blown by the wind, and the sound of the wind can be heard.\\\",\\n \\\"image\\\": \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/a28ec84ff9fc4287a0d98191020a3218~tplv-goo7wpa0wc-image.image\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/1.5/pro/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Seedance v1.5 Pro Image to Video" - modelId: "bytedance/seedance/1.5/pro/image-to-video" - vendor: "ByteDance" - vendorSlug: "bytedance" - modelSlug: "seedance/1.5/pro/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-23T06:56:11.614Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/bytedance/seedance/1.5/pro/text-to-video.md b/model-api-reference/video-generation/bytedance/seedance/1.5/pro/text-to-video.md deleted file mode 100644 index e33b28ae..00000000 --- a/model-api-reference/video-generation/bytedance/seedance/1.5/pro/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Seedance v1.5 Pro Text to Video API Reference" -description: "Seedance v1.5 Pro Text to Video API reference for SandBase. Use model bytedance/seedance/1.5/pro/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/bytedance/seedance/1.5/pro/text-to-video" -apiReferenceJson: "{\"title\":\"Seedance v1.5 Pro Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"ByteDance Seedance v1.5 Pro text-to-video model generating cinematic video from text prompts with native audio generation, camera control, and professional-grade output quality.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/1.5/pro/text-to-video.\",\"default\":\"bytedance/seedance/1.5/pro/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the video in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 4, 5, 6, 7, 8, 9, 10, 11, 12\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"camera_fixed\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to fix the camera position.\",\"default\":\"false\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results. Set to -1 for random seed.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/1.5/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/1.5/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/1.5/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/1.5/pro/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Seedance v1.5 Pro Text to Video" - modelId: "bytedance/seedance/1.5/pro/text-to-video" - vendor: "ByteDance" - vendorSlug: "bytedance" - modelSlug: "seedance/1.5/pro/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-23T06:59:34.673Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/bytedance/seedance/2.0/fast/image-to-video.md b/model-api-reference/video-generation/bytedance/seedance/2.0/fast/image-to-video.md index c1270442..9c3e809f 100644 --- a/model-api-reference/video-generation/bytedance/seedance/2.0/fast/image-to-video.md +++ b/model-api-reference/video-generation/bytedance/seedance/2.0/fast/image-to-video.md @@ -4,11 +4,11 @@ description: "Seedance 2.0 Fast Image to Video API reference for SandBase. Use m aside: false outline: false apiReferenceKey: "video/bytedance/seedance/2.0/fast/image-to-video" -apiReferenceJson: "{\"title\":\"Seedance 2.0 Fast Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"ByteDance's most advanced image-to-video model in its fast tier delivering lower latency and cost without compromising on cinematic output, native audio, multi-shot editing, and director-level camera control for professional-grade video creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/2.0/fast/image-to-video.\",\"default\":\"bytedance/seedance/2.0/fast/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"Create a 360-degree orbiting camera shot based on this photo.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the starting image for video generation.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the ending image for video generation.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1, 4:3, 3:4\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/2.0/fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a 360-degree orbiting camera shot based on this photo.\\\",\\n \\\"image\\\": \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/f8fc1008f23a4908b7c897e8b7eb87df~tplv-goo7wpa0wc-image.image\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a 360-degree orbiting camera shot based on this photo.\\\",\\n \\\"image\\\": \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/f8fc1008f23a4908b7c897e8b7eb87df~tplv-goo7wpa0wc-image.image\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a 360-degree orbiting camera shot based on this photo.\\\",\\n \\\"image\\\": \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/f8fc1008f23a4908b7c897e8b7eb87df~tplv-goo7wpa0wc-image.image\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/2.0/fast/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Seedance 2.0 Fast Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"ByteDance's most advanced image-to-video model in its fast tier delivering lower latency and cost without compromising on cinematic output, native audio, multi-shot editing, and director-level camera control for professional-grade video creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/2.0/fast/image-to-video.\",\"default\":\"bytedance/seedance/2.0/fast/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"Create a 360-degree orbiting camera shot based on this photo.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the starting image for video generation.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the ending image for video generation.\"},{\"name\":\"duration\",\"type\":\"object\",\"required\":false,\"description\":\"Output duration in seconds (4-15), or `auto` to let the model pick a length from the prompt and inputs. `auto` is pre-authorized at 15 seconds and billed on the actual output length.\",\"default\":\"5\",\"constraints\":\"Allowed values: auto, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to match the input image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1, 4:3, 3:4\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a synchronized audio track. Pricing is the same either way.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results. Omit or use -1 for a random seed.\",\"constraints\":\"Range: -1 to 4294967295\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/2.0/fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a 360-degree orbiting camera shot based on this photo.\\\",\\n \\\"image\\\": \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/f8fc1008f23a4908b7c897e8b7eb87df~tplv-goo7wpa0wc-image.image\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a 360-degree orbiting camera shot based on this photo.\\\",\\n \\\"image\\\": \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/f8fc1008f23a4908b7c897e8b7eb87df~tplv-goo7wpa0wc-image.image\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a 360-degree orbiting camera shot based on this photo.\\\",\\n \\\"image\\\": \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/f8fc1008f23a4908b7c897e8b7eb87df~tplv-goo7wpa0wc-image.image\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/2.0/fast/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Seedance 2.0 Fast Image to Video" modelId: "bytedance/seedance/2.0/fast/image-to-video" - vendor: "ByteDance" + vendor: "Bytedance" vendorSlug: "bytedance" modelSlug: "seedance/2.0/fast/image-to-video" protocol: "Video Generation Reference" diff --git a/model-api-reference/video-generation/bytedance/seedance/2.0/fast/reference-to-video.md b/model-api-reference/video-generation/bytedance/seedance/2.0/fast/reference-to-video.md index aadd27d0..5481f734 100644 --- a/model-api-reference/video-generation/bytedance/seedance/2.0/fast/reference-to-video.md +++ b/model-api-reference/video-generation/bytedance/seedance/2.0/fast/reference-to-video.md @@ -4,11 +4,11 @@ description: "Seedance 2.0 Fast Reference to Video API reference for SandBase. U aside: false outline: false apiReferenceKey: "video/bytedance/seedance/2.0/fast/reference-to-video" -apiReferenceJson: "{\"title\":\"Seedance 2.0 Fast Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"ByteDance's most advanced reference-to-video model in its fast tier delivering lower latency and cost without compromising on cinematic output, native audio, multi-shot editing, and director-level camera control for professional-grade video creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/2.0/fast/reference-to-video.\",\"default\":\"bytedance/seedance/2.0/fast/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"Room is slowly getting filled from empty state to fully organized with furnitures. Camera is fixed timelapse.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of reference images to guide video generation.\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of reference videos to guide video generation. Up to 3 MP4 or MOV files, 2-15 seconds combined duration, under 50 MB total.\"},{\"name\":\"audios\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of reference audio files to guide video generation.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1, 4:3, 3:4\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/2.0/fast/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Room is slowly getting filled from empty state to fully organized with furnitures. Camera is fixed timelapse.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/fast/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Room is slowly getting filled from empty state to fully organized with furnitures. Camera is fixed timelapse.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/fast/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Room is slowly getting filled from empty state to fully organized with furnitures. Camera is fixed timelapse.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/2.0/fast/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Seedance 2.0 Fast Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"ByteDance's most advanced reference-to-video model in its fast tier delivering lower latency and cost without compromising on cinematic output, native audio, multi-shot editing, and director-level camera control for professional-grade video creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/2.0/fast/reference-to-video.\",\"default\":\"bytedance/seedance/2.0/fast/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"Room is slowly getting filled from empty state to fully organized with furnitures. Camera is fixed timelapse.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of reference images to guide video generation.\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of reference videos to guide video generation. Up to 3 MP4 or MOV files, 2-15 seconds combined duration, under 50 MB total.\"},{\"name\":\"audios\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of reference audio files to guide video generation.\"},{\"name\":\"duration\",\"type\":\"object\",\"required\":false,\"description\":\"Output duration in seconds (4-15), or `auto` to let the model pick a length from the prompt and inputs. `auto` is pre-authorized at 15 seconds and billed on the actual output length. When a reference video is edited or extended, use `auto` with `adaptive` aspect ratio so the output follows the source clip.\",\"default\":\"5\",\"constraints\":\"Allowed values: auto, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to let the model choose from the prompt and reference inputs.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1, 4:3, 3:4\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a synchronized audio track. Pricing is the same either way.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results. Omit or use -1 for a random seed.\",\"constraints\":\"Range: -1 to 4294967295\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/2.0/fast/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Room is slowly getting filled from empty state to fully organized with furnitures. Camera is fixed timelapse.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/fast/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Room is slowly getting filled from empty state to fully organized with furnitures. Camera is fixed timelapse.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/fast/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Room is slowly getting filled from empty state to fully organized with furnitures. Camera is fixed timelapse.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/2.0/fast/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Seedance 2.0 Fast Reference to Video" modelId: "bytedance/seedance/2.0/fast/reference-to-video" - vendor: "ByteDance" + vendor: "Bytedance" vendorSlug: "bytedance" modelSlug: "seedance/2.0/fast/reference-to-video" protocol: "Video Generation Reference" diff --git a/model-api-reference/video-generation/bytedance/seedance/2.0/fast/text-to-video.md b/model-api-reference/video-generation/bytedance/seedance/2.0/fast/text-to-video.md index e8d60729..91cde809 100644 --- a/model-api-reference/video-generation/bytedance/seedance/2.0/fast/text-to-video.md +++ b/model-api-reference/video-generation/bytedance/seedance/2.0/fast/text-to-video.md @@ -4,11 +4,11 @@ description: "Seedance 2.0 Fast Text to Video API reference for SandBase. Use mo aside: false outline: false apiReferenceKey: "video/bytedance/seedance/2.0/fast/text-to-video" -apiReferenceJson: "{\"title\":\"Seedance 2.0 Fast Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"ByteDance's most advanced text-to-video model in its fast tier delivering lower latency and cost without compromising on cinematic output, native audio, multi-shot editing, and director-level camera control for professional-grade video creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/2.0/fast/text-to-video.\",\"default\":\"bytedance/seedance/2.0/fast/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1, 4:3, 3:4\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/2.0/fast/text-to-video\\\",\\n \\\"prompt\\\": \\\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/fast/text-to-video\\\",\\n \\\"prompt\\\": \\\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/fast/text-to-video\\\",\\n \\\"prompt\\\": \\\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/2.0/fast/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Seedance 2.0 Fast Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"ByteDance's most advanced text-to-video model in its fast tier delivering lower latency and cost without compromising on cinematic output, native audio, multi-shot editing, and director-level camera control for professional-grade video creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/2.0/fast/text-to-video.\",\"default\":\"bytedance/seedance/2.0/fast/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\"},{\"name\":\"duration\",\"type\":\"object\",\"required\":false,\"description\":\"Output duration in seconds (4-15), or `auto` to let the model pick a length from the prompt and inputs. `auto` is pre-authorized at 15 seconds and billed on the actual output length.\",\"default\":\"5\",\"constraints\":\"Allowed values: auto, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Defaults to 16:9.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1, 4:3, 3:4\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a synchronized audio track. Pricing is the same either way.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results. Omit or use -1 for a random seed.\",\"constraints\":\"Range: -1 to 4294967295\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/2.0/fast/text-to-video\\\",\\n \\\"prompt\\\": \\\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/fast/text-to-video\\\",\\n \\\"prompt\\\": \\\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/fast/text-to-video\\\",\\n \\\"prompt\\\": \\\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/2.0/fast/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Seedance 2.0 Fast Text to Video" modelId: "bytedance/seedance/2.0/fast/text-to-video" - vendor: "ByteDance" + vendor: "Bytedance" vendorSlug: "bytedance" modelSlug: "seedance/2.0/fast/text-to-video" protocol: "Video Generation Reference" diff --git a/model-api-reference/video-generation/bytedance/seedance/2.0/image-to-video.md b/model-api-reference/video-generation/bytedance/seedance/2.0/image-to-video.md index d7738d8c..e9b6c960 100644 --- a/model-api-reference/video-generation/bytedance/seedance/2.0/image-to-video.md +++ b/model-api-reference/video-generation/bytedance/seedance/2.0/image-to-video.md @@ -4,11 +4,11 @@ description: "Seedance 2.0 Image to Video API reference for SandBase. Use model aside: false outline: false apiReferenceKey: "video/bytedance/seedance/2.0/image-to-video" -apiReferenceJson: "{\"title\":\"Seedance 2.0 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"ByteDance's most advanced image-to-video model transforming still images into cinematic video with native audio, multi-shot editing, and director-level camera control for professional-grade video creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/2.0/image-to-video.\",\"default\":\"bytedance/seedance/2.0/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"Create a 360-degree orbiting camera shot based on this photo.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the starting image for video generation.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the ending image for video generation.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1, 4:3, 3:4, 21:9\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p, 4k\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate synchronized audio (voice, SFX, BGM) for the video.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/2.0/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a 360-degree orbiting camera shot based on this photo.\\\",\\n \\\"image\\\": \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/f8fc1008f23a4908b7c897e8b7eb87df~tplv-goo7wpa0wc-image.image\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a 360-degree orbiting camera shot based on this photo.\\\",\\n \\\"image\\\": \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/f8fc1008f23a4908b7c897e8b7eb87df~tplv-goo7wpa0wc-image.image\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a 360-degree orbiting camera shot based on this photo.\\\",\\n \\\"image\\\": \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/f8fc1008f23a4908b7c897e8b7eb87df~tplv-goo7wpa0wc-image.image\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/2.0/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Seedance 2.0 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"ByteDance's most advanced image-to-video model transforming still images into cinematic video with native audio, multi-shot editing, and director-level camera control for professional-grade video creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/2.0/image-to-video.\",\"default\":\"bytedance/seedance/2.0/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"Create a 360-degree orbiting camera shot based on this photo.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the starting image for video generation.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the ending image for video generation.\"},{\"name\":\"duration\",\"type\":\"object\",\"required\":false,\"description\":\"Output duration in seconds (4-15), or `auto` to let the model pick a length from the prompt and inputs. `auto` is pre-authorized at 15 seconds and billed on the actual output length.\",\"default\":\"5\",\"constraints\":\"Allowed values: auto, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to match the input image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1, 4:3, 3:4, 21:9\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p, 4k\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate synchronized audio (voice, SFX, BGM) for the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results. Omit or use -1 for a random seed.\",\"constraints\":\"Range: -1 to 4294967295\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/2.0/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a 360-degree orbiting camera shot based on this photo.\\\",\\n \\\"image\\\": \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/f8fc1008f23a4908b7c897e8b7eb87df~tplv-goo7wpa0wc-image.image\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a 360-degree orbiting camera shot based on this photo.\\\",\\n \\\"image\\\": \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/f8fc1008f23a4908b7c897e8b7eb87df~tplv-goo7wpa0wc-image.image\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a 360-degree orbiting camera shot based on this photo.\\\",\\n \\\"image\\\": \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/f8fc1008f23a4908b7c897e8b7eb87df~tplv-goo7wpa0wc-image.image\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/2.0/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Seedance 2.0 Image to Video" modelId: "bytedance/seedance/2.0/image-to-video" - vendor: "ByteDance" + vendor: "Bytedance" vendorSlug: "bytedance" modelSlug: "seedance/2.0/image-to-video" protocol: "Video Generation Reference" diff --git a/model-api-reference/video-generation/bytedance/seedance/2.0/mini/image-to-video.md b/model-api-reference/video-generation/bytedance/seedance/2.0/mini/image-to-video.md index 600bfe73..b784ce7d 100644 --- a/model-api-reference/video-generation/bytedance/seedance/2.0/mini/image-to-video.md +++ b/model-api-reference/video-generation/bytedance/seedance/2.0/mini/image-to-video.md @@ -4,11 +4,11 @@ description: "Seedance 2.0 Mini Image to Video API reference for SandBase. Use m aside: false outline: false apiReferenceKey: "video/bytedance/seedance/2.0/mini/image-to-video" -apiReferenceJson: "{\"title\":\"Seedance 2.0 Mini Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedance 2.0 Mini by ByteDance - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/2.0/mini/image-to-video.\",\"default\":\"bytedance/seedance/2.0/mini/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the desired motion and action for the video.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the starting frame image to animate. Supported formats: JPEG, PNG, WebP. Max 30 MB.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the last frame of the video. When provided, the generated video will transition from the starting image to this ending image. Supported formats: JPEG, PNG, WebP. Max 30 MB.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Video resolution - 480p for faster generation, 720p for balance.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the video in seconds. Supports 4 to 15 seconds, or auto to let the model decide based on the prompt.\",\"default\":\"auto\",\"constraints\":\"Allowed values: 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate synchronized audio for the video, including sound effects, ambient sounds, and lip-synced speech. The cost of video generation is the same regardless of whether audio is generated or not.\",\"default\":\"true\"},{\"name\":\"end_user_id\",\"type\":\"string\",\"required\":false,\"description\":\"The unique user ID of the end user.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The 202 submit response is pending or running and contains only id, status, and model. Poll GET /v1/run/{id} for the same public status envelope.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/2.0/mini/image-to-video\\\",\\n \\\"prompt\\\": \\\"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea.\\\",\\n \\\"image\\\": \\\"https://v3b.fal.media/files/b/0a8eba37/Cqg-4Uwzyz4DELfceT1CF_a17e588773ec45b1a9e6f100a787b80b.jpg\\\",\\n \\\"duration\\\": \\\"auto\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/mini/image-to-video\\\",\\n \\\"prompt\\\": \\\"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea.\\\",\\n \\\"image\\\": \\\"https://v3b.fal.media/files/b/0a8eba37/Cqg-4Uwzyz4DELfceT1CF_a17e588773ec45b1a9e6f100a787b80b.jpg\\\",\\n \\\"duration\\\": \\\"auto\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/mini/image-to-video\\\",\\n \\\"prompt\\\": \\\"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea.\\\",\\n \\\"image\\\": \\\"https://v3b.fal.media/files/b/0a8eba37/Cqg-4Uwzyz4DELfceT1CF_a17e588773ec45b1a9e6f100a787b80b.jpg\\\",\\n \\\"duration\\\": \\\"auto\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/2.0/mini/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Seedance 2.0 Mini Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedance 2.0 Mini by ByteDance - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/2.0/mini/image-to-video.\",\"default\":\"bytedance/seedance/2.0/mini/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the desired motion and action for the video.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the starting frame image to animate. Supported formats: JPEG, PNG, WebP. Max 30 MB.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the last frame of the video. When provided, the generated video will transition from the starting image to this ending image. Supported formats: JPEG, PNG, WebP. Max 30 MB.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Video resolution - 480p for faster generation, 720p for balance.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"duration\",\"type\":\"object\",\"required\":false,\"description\":\"Output duration in seconds (4-15), or `auto` to let the model pick a length from the prompt and inputs. `auto` is pre-authorized at 15 seconds and billed on the actual output length.\",\"default\":\"5\",\"constraints\":\"Allowed values: auto, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate synchronized audio for the video, including sound effects, ambient sounds, and lip-synced speech. The cost of video generation is the same regardless of whether audio is generated or not.\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to match the input image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results. Omit or use -1 for a random seed.\",\"constraints\":\"Range: -1 to 4294967295\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/2.0/mini/image-to-video\\\",\\n \\\"prompt\\\": \\\"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea.\\\",\\n \\\"image\\\": \\\"https://v3b.fal.media/files/b/0a8eba37/Cqg-4Uwzyz4DELfceT1CF_a17e588773ec45b1a9e6f100a787b80b.jpg\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/mini/image-to-video\\\",\\n \\\"prompt\\\": \\\"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea.\\\",\\n \\\"image\\\": \\\"https://v3b.fal.media/files/b/0a8eba37/Cqg-4Uwzyz4DELfceT1CF_a17e588773ec45b1a9e6f100a787b80b.jpg\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/mini/image-to-video\\\",\\n \\\"prompt\\\": \\\"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea.\\\",\\n \\\"image\\\": \\\"https://v3b.fal.media/files/b/0a8eba37/Cqg-4Uwzyz4DELfceT1CF_a17e588773ec45b1a9e6f100a787b80b.jpg\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/2.0/mini/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Seedance 2.0 Mini Image to Video" modelId: "bytedance/seedance/2.0/mini/image-to-video" - vendor: "ByteDance" + vendor: "Bytedance" vendorSlug: "bytedance" modelSlug: "seedance/2.0/mini/image-to-video" protocol: "Video Generation Reference" diff --git a/model-api-reference/video-generation/bytedance/seedance/2.0/mini/reference-to-video.md b/model-api-reference/video-generation/bytedance/seedance/2.0/mini/reference-to-video.md index 73b0af24..1b31a190 100644 --- a/model-api-reference/video-generation/bytedance/seedance/2.0/mini/reference-to-video.md +++ b/model-api-reference/video-generation/bytedance/seedance/2.0/mini/reference-to-video.md @@ -1,20 +1,20 @@ --- -title: "Seedance 2.0 Mini API Reference" -description: "Seedance 2.0 Mini API reference for SandBase. Use model bytedance/seedance/2.0/mini/reference-to-video with /v1/run; see request and response examples." +title: "Seedance 2.0 Mini Reference to Video API Reference" +description: "Seedance 2.0 Mini Reference to Video API reference for SandBase. Use model bytedance/seedance/2.0/mini/reference-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/bytedance/seedance/2.0/mini/reference-to-video" -apiReferenceJson: "{\"title\":\"Seedance 2.0 Mini\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedance 2.0 Mini by ByteDance - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/2.0/mini/reference-to-video.\",\"default\":\"bytedance/seedance/2.0/mini/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt used to generate the video.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images to guide video generation. Refer to them in the prompt as @Image1, @Image2, etc. Supported formats: JPEG, PNG, WebP. Max 30 MB per image. Up to 9 images. Total files across all modalities must not exceed 12.\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"Reference videos to guide video generation. Refer to them in the prompt as @Video1, @Video2, etc. Supported formats: MP4, MOV. Up to 3 videos, combined duration must be between 2 and 15 seconds, total size under 50 MB. Each video must be between ~480p (640x640) and ~720p (834x1112) in resolution.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Video resolution - 480p for faster generation, 720p for balance.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the video in seconds. Supports 4 to 15 seconds, or auto to let the model decide based on the prompt.\",\"default\":\"auto\",\"constraints\":\"Allowed values: 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate synchronized audio for the video, including sound effects, ambient sounds, and lip-synced speech. The cost of video generation is the same regardless of whether audio is generated or not.\",\"default\":\"true\"},{\"name\":\"end_user_id\",\"type\":\"string\",\"required\":false,\"description\":\"The unique user ID of the end user.\"},{\"name\":\"audio_urls\",\"type\":\"array\",\"required\":false,\"description\":\"Reference audio to guide video generation. Refer to them in the prompt as @Audio1, @Audio2, etc. Supported formats: MP3, WAV. Up to 3 files, combined duration must not exceed 15 seconds. Max 15 MB per file.If audio is provided, at least one reference image or video is required.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The 202 submit response is pending or running and contains only id, status, and model. Poll GET /v1/run/{id} for the same public status envelope.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/2.0/mini/reference-to-video\\\",\\n \\\"prompt\\\": \\\"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea.\\\",\\n \\\"duration\\\": \\\"auto\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/mini/reference-to-video\\\",\\n \\\"prompt\\\": \\\"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea.\\\",\\n \\\"duration\\\": \\\"auto\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/mini/reference-to-video\\\",\\n \\\"prompt\\\": \\\"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea.\\\",\\n \\\"duration\\\": \\\"auto\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/2.0/mini/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Seedance 2.0 Mini Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedance 2.0 Mini by ByteDance - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/2.0/mini/reference-to-video.\",\"default\":\"bytedance/seedance/2.0/mini/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt used to generate the video.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images to guide video generation. Refer to them in the prompt as @Image1, @Image2, etc. Supported formats: JPEG, PNG, WebP. Max 30 MB per image. Up to 9 images. Total files across all modalities must not exceed 12.\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"Reference videos to guide video generation. Refer to them in the prompt as @Video1, @Video2, etc. Supported formats: MP4, MOV. Up to 3 videos, combined duration must be between 2 and 15 seconds, total size under 50 MB. Each video must be between ~480p (640x640) and ~720p (834x1112) in resolution.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Video resolution - 480p for faster generation, 720p for balance.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"duration\",\"type\":\"object\",\"required\":false,\"description\":\"Output duration in seconds (4-15), or `auto` to let the model pick a length from the prompt and inputs. `auto` is pre-authorized at 15 seconds and billed on the actual output length. When a reference video is edited or extended, use `auto` with `adaptive` aspect ratio so the output follows the source clip.\",\"default\":\"5\",\"constraints\":\"Allowed values: auto, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate synchronized audio for the video, including sound effects, ambient sounds, and lip-synced speech. The cost of video generation is the same regardless of whether audio is generated or not.\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to let the model choose from the prompt and reference inputs.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"audios\",\"type\":\"array\",\"required\":false,\"description\":\"Reference audio URLs (voice or music) for the generated video.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results. Omit or use -1 for a random seed.\",\"constraints\":\"Range: -1 to 4294967295\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/2.0/mini/reference-to-video\\\",\\n \\\"prompt\\\": \\\"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/mini/reference-to-video\\\",\\n \\\"prompt\\\": \\\"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/mini/reference-to-video\\\",\\n \\\"prompt\\\": \\\"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/2.0/mini/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Seedance 2.0 Mini" + modelName: "Seedance 2.0 Mini Reference to Video" modelId: "bytedance/seedance/2.0/mini/reference-to-video" - vendor: "ByteDance" + vendor: "Bytedance" vendorSlug: "bytedance" modelSlug: "seedance/2.0/mini/reference-to-video" protocol: "Video Generation Reference" endpoint: "/v1/run" publishedAt: "2026-06-24T11:19:25.749Z" - capabilities: ["image-to-video"] + capabilities: ["reference-to-video"] category: "Video Generation" --- diff --git a/model-api-reference/video-generation/bytedance/seedance/2.0/mini/text-to-video.md b/model-api-reference/video-generation/bytedance/seedance/2.0/mini/text-to-video.md index 6ebb0079..6f7bc672 100644 --- a/model-api-reference/video-generation/bytedance/seedance/2.0/mini/text-to-video.md +++ b/model-api-reference/video-generation/bytedance/seedance/2.0/mini/text-to-video.md @@ -4,11 +4,11 @@ description: "Seedance 2.0 Mini Text to Video API reference for SandBase. Use mo aside: false outline: false apiReferenceKey: "video/bytedance/seedance/2.0/mini/text-to-video" -apiReferenceJson: "{\"title\":\"Seedance 2.0 Mini Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedance 2.0 Mini is ByteDance's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/2.0/mini/text-to-video.\",\"default\":\"bytedance/seedance/2.0/mini/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt used to generate the video\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Video resolution - 480p for faster generation, 720p for balance.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the video in seconds. Supports 4 to 15 seconds, or auto to let the model decide based on the prompt.\",\"default\":\"auto\",\"constraints\":\"Allowed values: 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate synchronized audio for the video, including sound effects, ambient sounds, and lip-synced speech. The cost of video generation is the same regardless of whether audio is generated or not.\",\"default\":\"true\"},{\"name\":\"end_user_id\",\"type\":\"string\",\"required\":false,\"description\":\"The unique user ID of the end user.\"}]},{\"title\":\"Response Schema\",\"description\":\"The 202 submit response is pending or running and contains only id, status, and model. Poll GET /v1/run/{id} for the same public status envelope.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/2.0/mini/text-to-video\\\",\\n \\\"prompt\\\": \\\"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": \\\"auto\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/mini/text-to-video\\\",\\n \\\"prompt\\\": \\\"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": \\\"auto\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/mini/text-to-video\\\",\\n \\\"prompt\\\": \\\"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": \\\"auto\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/2.0/mini/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Seedance 2.0 Mini Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedance 2.0 Mini is ByteDance's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/2.0/mini/text-to-video.\",\"default\":\"bytedance/seedance/2.0/mini/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt used to generate the video\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Defaults to 16:9.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Video resolution - 480p for faster generation, 720p for balance.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"duration\",\"type\":\"object\",\"required\":false,\"description\":\"Output duration in seconds (4-15), or `auto` to let the model pick a length from the prompt and inputs. `auto` is pre-authorized at 15 seconds and billed on the actual output length.\",\"default\":\"5\",\"constraints\":\"Allowed values: auto, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate synchronized audio for the video, including sound effects, ambient sounds, and lip-synced speech. The cost of video generation is the same regardless of whether audio is generated or not.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results. Omit or use -1 for a random seed.\",\"constraints\":\"Range: -1 to 4294967295\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/2.0/mini/text-to-video\\\",\\n \\\"prompt\\\": \\\"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/mini/text-to-video\\\",\\n \\\"prompt\\\": \\\"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/mini/text-to-video\\\",\\n \\\"prompt\\\": \\\"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/2.0/mini/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Seedance 2.0 Mini Text to Video" modelId: "bytedance/seedance/2.0/mini/text-to-video" - vendor: "ByteDance" + vendor: "Bytedance" vendorSlug: "bytedance" modelSlug: "seedance/2.0/mini/text-to-video" protocol: "Video Generation Reference" diff --git a/model-api-reference/video-generation/bytedance/seedance/2.0/reference-to-video.md b/model-api-reference/video-generation/bytedance/seedance/2.0/reference-to-video.md index b0b4e400..88e88e10 100644 --- a/model-api-reference/video-generation/bytedance/seedance/2.0/reference-to-video.md +++ b/model-api-reference/video-generation/bytedance/seedance/2.0/reference-to-video.md @@ -4,11 +4,11 @@ description: "Seedance 2.0 Reference to Video API reference for SandBase. Use mo aside: false outline: false apiReferenceKey: "video/bytedance/seedance/2.0/reference-to-video" -apiReferenceJson: "{\"title\":\"Seedance 2.0 Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"ByteDance's most advanced reference-to-video model generating cinematic video guided by reference content, with native audio, multi-shot editing, and director-level camera control for professional-grade video creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/2.0/reference-to-video.\",\"default\":\"bytedance/seedance/2.0/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"Use Image1 as the visual reference and Video1 as the motion reference. Create a peaceful cinematic shoreline scene with rolling ocean waves at golden hour, soft foam, natural water movement, and no people.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of reference images to guide video generation.\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of reference videos to guide video generation. Up to 3 MP4 or MOV files, 2-15 seconds combined duration, under 50 MB total.\"},{\"name\":\"audios\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of reference audio files to guide video generation.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1, 4:3, 3:4, 21:9\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p, 4k\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/2.0/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Use Image1 as the visual reference and Video1 as the motion reference. Create a peaceful cinematic shoreline scene with rolling ocean waves at golden hour, soft foam, natural water movement, and no people.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Use Image1 as the visual reference and Video1 as the motion reference. Create a peaceful cinematic shoreline scene with rolling ocean waves at golden hour, soft foam, natural water movement, and no people.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Use Image1 as the visual reference and Video1 as the motion reference. Create a peaceful cinematic shoreline scene with rolling ocean waves at golden hour, soft foam, natural water movement, and no people.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/2.0/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Seedance 2.0 Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"ByteDance's most advanced reference-to-video model generating cinematic video guided by reference content, with native audio, multi-shot editing, and director-level camera control for professional-grade video creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/2.0/reference-to-video.\",\"default\":\"bytedance/seedance/2.0/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"Use Image1 as the visual reference and Video1 as the motion reference. Create a peaceful cinematic shoreline scene with rolling ocean waves at golden hour, soft foam, natural water movement, and no people.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of reference images to guide video generation.\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of reference videos to guide video generation. Up to 3 MP4 or MOV files, 2-15 seconds combined duration, under 50 MB total.\"},{\"name\":\"audios\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of reference audio files to guide video generation.\"},{\"name\":\"duration\",\"type\":\"object\",\"required\":false,\"description\":\"Output duration in seconds (4-15), or `auto` to let the model pick a length from the prompt and inputs. `auto` is pre-authorized at 15 seconds and billed on the actual output length. When a reference video is edited or extended, use `auto` with `adaptive` aspect ratio so the output follows the source clip.\",\"default\":\"5\",\"constraints\":\"Allowed values: auto, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to let the model choose from the prompt and reference inputs.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1, 4:3, 3:4, 21:9\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p, 4k\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a synchronized audio track. Pricing is the same either way.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results. Omit or use -1 for a random seed.\",\"constraints\":\"Range: -1 to 4294967295\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/2.0/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Use Image1 as the visual reference and Video1 as the motion reference. Create a peaceful cinematic shoreline scene with rolling ocean waves at golden hour, soft foam, natural water movement, and no people.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Use Image1 as the visual reference and Video1 as the motion reference. Create a peaceful cinematic shoreline scene with rolling ocean waves at golden hour, soft foam, natural water movement, and no people.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Use Image1 as the visual reference and Video1 as the motion reference. Create a peaceful cinematic shoreline scene with rolling ocean waves at golden hour, soft foam, natural water movement, and no people.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/2.0/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Seedance 2.0 Reference to Video" modelId: "bytedance/seedance/2.0/reference-to-video" - vendor: "ByteDance" + vendor: "Bytedance" vendorSlug: "bytedance" modelSlug: "seedance/2.0/reference-to-video" protocol: "Video Generation Reference" diff --git a/model-api-reference/video-generation/bytedance/seedance/2.0/text-to-video.md b/model-api-reference/video-generation/bytedance/seedance/2.0/text-to-video.md index 2da31e45..2620e5d7 100644 --- a/model-api-reference/video-generation/bytedance/seedance/2.0/text-to-video.md +++ b/model-api-reference/video-generation/bytedance/seedance/2.0/text-to-video.md @@ -4,11 +4,11 @@ description: "Seedance 2.0 Text to Video API reference for SandBase. Use model b aside: false outline: false apiReferenceKey: "video/bytedance/seedance/2.0/text-to-video" -apiReferenceJson: "{\"title\":\"Seedance 2.0 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"ByteDance's most advanced text-to-video model delivering cinematic output, native audio, multi-shot editing, and director-level camera control for professional-grade video creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/2.0/text-to-video.\",\"default\":\"bytedance/seedance/2.0/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1, 4:3, 3:4, 21:9\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p, 4k\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/2.0/text-to-video\\\",\\n \\\"prompt\\\": \\\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/text-to-video\\\",\\n \\\"prompt\\\": \\\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/text-to-video\\\",\\n \\\"prompt\\\": \\\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/2.0/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Seedance 2.0 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"ByteDance's most advanced text-to-video model delivering cinematic output, native audio, multi-shot editing, and director-level camera control for professional-grade video creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/2.0/text-to-video.\",\"default\":\"bytedance/seedance/2.0/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\"},{\"name\":\"duration\",\"type\":\"object\",\"required\":false,\"description\":\"Output duration in seconds (4-15), or `auto` to let the model pick a length from the prompt and inputs. `auto` is pre-authorized at 15 seconds and billed on the actual output length.\",\"default\":\"5\",\"constraints\":\"Allowed values: auto, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Defaults to 16:9.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1, 4:3, 3:4, 21:9\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p, 4k\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a synchronized audio track. Pricing is the same either way.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results. Omit or use -1 for a random seed.\",\"constraints\":\"Range: -1 to 4294967295\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/2.0/text-to-video\\\",\\n \\\"prompt\\\": \\\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/text-to-video\\\",\\n \\\"prompt\\\": \\\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.0/text-to-video\\\",\\n \\\"prompt\\\": \\\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/2.0/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Seedance 2.0 Text to Video" modelId: "bytedance/seedance/2.0/text-to-video" - vendor: "ByteDance" + vendor: "Bytedance" vendorSlug: "bytedance" modelSlug: "seedance/2.0/text-to-video" protocol: "Video Generation Reference" diff --git a/model-api-reference/video-generation/bytedance/seedance/2.5/image-to-video.md b/model-api-reference/video-generation/bytedance/seedance/2.5/image-to-video.md index f7d07e21..6f4dbdc0 100644 --- a/model-api-reference/video-generation/bytedance/seedance/2.5/image-to-video.md +++ b/model-api-reference/video-generation/bytedance/seedance/2.5/image-to-video.md @@ -4,11 +4,11 @@ description: "Seedance 2.5 Image to Video API reference for SandBase. Use model aside: false outline: false apiReferenceKey: "video/bytedance/seedance/2.5/image-to-video" -apiReferenceJson: "{\"title\":\"Seedance 2.5 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"ByteDance's next-generation image-to-video model, animating a single still into a native clip up to 30 seconds at 720p with continuous, coherent motion, native audio, and director-level camera control.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/2.5/image-to-video.\",\"default\":\"bytedance/seedance/2.5/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"Create a 360-degree orbiting camera shot based on this photo.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the starting image for video generation.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the ending image for video generation.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds (4-30).\",\"default\":\"5\",\"constraints\":\"Allowed values: 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p, 4K\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate synchronized audio (voice, SFX, BGM) for the video.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/2.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a 360-degree orbiting camera shot based on this photo.\\\",\\n \\\"image\\\": \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/f8fc1008f23a4908b7c897e8b7eb87df~tplv-goo7wpa0wc-image.image\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a 360-degree orbiting camera shot based on this photo.\\\",\\n \\\"image\\\": \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/f8fc1008f23a4908b7c897e8b7eb87df~tplv-goo7wpa0wc-image.image\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a 360-degree orbiting camera shot based on this photo.\\\",\\n \\\"image\\\": \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/f8fc1008f23a4908b7c897e8b7eb87df~tplv-goo7wpa0wc-image.image\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/2.5/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Seedance 2.5 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"ByteDance's next-generation image-to-video model, animating a single still into a native clip up to 30 seconds at 720p with continuous, coherent motion, native audio, and director-level camera control.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/2.5/image-to-video.\",\"default\":\"bytedance/seedance/2.5/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":false,\"description\":\"The text prompt to generate a video from.\",\"default\":\"Create a 360-degree orbiting camera shot based on this photo.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the starting image for video generation.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the ending image for video generation.\"},{\"name\":\"duration\",\"type\":\"object\",\"required\":false,\"description\":\"Output duration in seconds (4-30), or `auto` to let the model pick a length from the prompt and inputs. `auto` is pre-authorized at 30 seconds and billed on the actual output length.\",\"default\":\"5\",\"constraints\":\"Allowed values: auto, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate synchronized audio (voice, SFX, BGM) for the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results. Omit or use -1 for a random seed.\",\"constraints\":\"Range: -1 to 4294967295\"},{\"name\":\"draft\",\"type\":\"boolean\",\"required\":false,\"description\":\"Draft mode step 1: render a fast, low-cost 480p draft (overrides `resolution`, billed at the 480p rate). Pass the result's `outputs[0].draft_id` back as `draft_id` within 7 days to render the same shot at 1080p.\",\"default\":\"false\"},{\"name\":\"draft_id\",\"type\":\"string\",\"required\":false,\"description\":\"Draft mode step 2: the `outputs[0].draft_id` of a succeeded draft from this same model (created with `draft: true` in the last 7 days). Renders the same shot at 1080p, billed at the 1080p rate for the actual output length. The prompt, media, duration, aspect ratio, seed, audio setting and task type are reused from the draft; any such fields sent with `draft_id` are ignored.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/2.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a 360-degree orbiting camera shot based on this photo.\\\",\\n \\\"image\\\": \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/f8fc1008f23a4908b7c897e8b7eb87df~tplv-goo7wpa0wc-image.image\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a 360-degree orbiting camera shot based on this photo.\\\",\\n \\\"image\\\": \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/f8fc1008f23a4908b7c897e8b7eb87df~tplv-goo7wpa0wc-image.image\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a 360-degree orbiting camera shot based on this photo.\\\",\\n \\\"image\\\": \\\"https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/f8fc1008f23a4908b7c897e8b7eb87df~tplv-goo7wpa0wc-image.image\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/2.5/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Seedance 2.5 Image to Video" modelId: "bytedance/seedance/2.5/image-to-video" - vendor: "ByteDance" + vendor: "Bytedance" vendorSlug: "bytedance" modelSlug: "seedance/2.5/image-to-video" protocol: "Video Generation Reference" diff --git a/model-api-reference/video-generation/bytedance/seedance/2.5/reference-to-video.md b/model-api-reference/video-generation/bytedance/seedance/2.5/reference-to-video.md index 3c9bb0d8..2b38c243 100644 --- a/model-api-reference/video-generation/bytedance/seedance/2.5/reference-to-video.md +++ b/model-api-reference/video-generation/bytedance/seedance/2.5/reference-to-video.md @@ -4,11 +4,11 @@ description: "Seedance 2.5 Reference to Video API reference for SandBase. Use mo aside: false outline: false apiReferenceKey: "video/bytedance/seedance/2.5/reference-to-video" -apiReferenceJson: "{\"title\":\"Seedance 2.5 Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"ByteDance's next-generation reference-to-video model, generating video from multimodal references (images, videos, audio) and locking a character, set, and palette across a full take up to 30 seconds for production-grade consistency.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/2.5/reference-to-video.\",\"default\":\"bytedance/seedance/2.5/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"Use Image1 as the visual reference and Video1 as the motion reference. Create a peaceful cinematic shoreline scene with rolling ocean waves at golden hour, soft foam, natural water movement, and no people.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of reference images to guide video generation. Refer to them in the prompt as @Image1, @Image2, etc.\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of reference videos to guide video generation. Up to 10 MP4 or MOV files; combined duration must not exceed 30 seconds.\"},{\"name\":\"audios\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of reference audio files to guide video generation.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds (4-30).\",\"default\":\"5\",\"constraints\":\"Allowed values: 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1, 4:3, 3:4, 21:9\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p, 4K\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate synchronized audio (voice, SFX, BGM) for the video.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/2.5/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Use Image1 as the visual reference and Video1 as the motion reference. Create a peaceful cinematic shoreline scene with rolling ocean waves at golden hour, soft foam, natural water movement, and no people.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.5/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Use Image1 as the visual reference and Video1 as the motion reference. Create a peaceful cinematic shoreline scene with rolling ocean waves at golden hour, soft foam, natural water movement, and no people.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.5/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Use Image1 as the visual reference and Video1 as the motion reference. Create a peaceful cinematic shoreline scene with rolling ocean waves at golden hour, soft foam, natural water movement, and no people.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/2.5/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Seedance 2.5 Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"ByteDance's next-generation reference-to-video model, generating video from multimodal references (images, videos, audio) and locking a character, set, and palette across a full take up to 30 seconds for production-grade consistency.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/2.5/reference-to-video.\",\"default\":\"bytedance/seedance/2.5/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":false,\"description\":\"The text prompt to generate a video from.\",\"default\":\"Use Image1 as the visual reference and Video1 as the motion reference. Create a peaceful cinematic shoreline scene with rolling ocean waves at golden hour, soft foam, natural water movement, and no people.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of reference images to guide video generation. Refer to them in the prompt as @Image1, @Image2, etc.\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of reference videos to guide video generation. Up to 10 MP4 or MOV files; combined duration must not exceed 30 seconds.\"},{\"name\":\"audios\",\"type\":\"array\",\"required\":false,\"description\":\"The URLs of reference audio files to guide video generation.\"},{\"name\":\"task_type\",\"type\":\"string\",\"required\":false,\"description\":\"`reference` generates a new video from the references, `edit` edits a reference video (replace subjects, add or remove objects, repaint), `extend` extends a reference video forward or backward, `auto` (or omitted) lets the model infer it from the prompt. `edit` and `extend` require at least one video; `edit` forces `adaptive` aspect ratio and `auto` duration, `extend` forces `adaptive` aspect ratio. Write the prompt to match, otherwise the task can fail with a task-type mismatch.\",\"constraints\":\"Allowed values: auto, reference, edit, extend\"},{\"name\":\"duration\",\"type\":\"object\",\"required\":false,\"description\":\"Output duration in seconds (4-30), or `auto` to let the model pick a length from the prompt and inputs. `auto` is pre-authorized at 30 seconds and billed on the actual output length. When a reference video is edited or extended, use `auto` with `adaptive` aspect ratio so the output follows the source clip.\",\"default\":\"5\",\"constraints\":\"Allowed values: auto, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to let the model choose from the prompt and reference inputs.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1, 4:3, 3:4, 21:9, adaptive\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate synchronized audio (voice, SFX, BGM) for the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results. Omit or use -1 for a random seed.\",\"constraints\":\"Range: -1 to 4294967295\"},{\"name\":\"draft\",\"type\":\"boolean\",\"required\":false,\"description\":\"Draft mode step 1: render a fast, low-cost 480p draft (overrides `resolution`, billed at the 480p rate). Pass the result's `outputs[0].draft_id` back as `draft_id` within 7 days to render the same shot at 1080p.\",\"default\":\"false\"},{\"name\":\"draft_id\",\"type\":\"string\",\"required\":false,\"description\":\"Draft mode step 2: the `outputs[0].draft_id` of a succeeded draft from this same model (created with `draft: true` in the last 7 days). Renders the same shot at 1080p, billed at the 1080p rate for the actual output length. The prompt, media, duration, aspect ratio, seed, audio setting and task type are reused from the draft; any such fields sent with `draft_id` are ignored.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/2.5/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Use Image1 as the visual reference and Video1 as the motion reference. Create a peaceful cinematic shoreline scene with rolling ocean waves at golden hour, soft foam, natural water movement, and no people.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.5/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Use Image1 as the visual reference and Video1 as the motion reference. Create a peaceful cinematic shoreline scene with rolling ocean waves at golden hour, soft foam, natural water movement, and no people.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.5/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Use Image1 as the visual reference and Video1 as the motion reference. Create a peaceful cinematic shoreline scene with rolling ocean waves at golden hour, soft foam, natural water movement, and no people.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/2.5/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Seedance 2.5 Reference to Video" modelId: "bytedance/seedance/2.5/reference-to-video" - vendor: "ByteDance" + vendor: "Bytedance" vendorSlug: "bytedance" modelSlug: "seedance/2.5/reference-to-video" protocol: "Video Generation Reference" diff --git a/model-api-reference/video-generation/bytedance/seedance/2.5/text-to-video.md b/model-api-reference/video-generation/bytedance/seedance/2.5/text-to-video.md index 687ec155..da5a0a56 100644 --- a/model-api-reference/video-generation/bytedance/seedance/2.5/text-to-video.md +++ b/model-api-reference/video-generation/bytedance/seedance/2.5/text-to-video.md @@ -4,11 +4,11 @@ description: "Seedance 2.5 Text to Video API reference for SandBase. Use model b aside: false outline: false apiReferenceKey: "video/bytedance/seedance/2.5/text-to-video" -apiReferenceJson: "{\"title\":\"Seedance 2.5 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"ByteDance's next-generation text-to-video model, generating native single-shot clips up to 30 seconds at 720p with coherent motion, native audio, and director-level camera control for professional-grade video creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/2.5/text-to-video.\",\"default\":\"bytedance/seedance/2.5/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt to generate a video from.\",\"default\":\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds (4-30).\",\"default\":\"5\",\"constraints\":\"Allowed values: 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1, 4:3, 3:4, 21:9\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p, 4K\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate synchronized audio (voice, SFX, BGM) for the video.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/2.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/2.5/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Seedance 2.5 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"ByteDance's next-generation text-to-video model, generating native single-shot clips up to 30 seconds at 720p with coherent motion, native audio, and director-level camera control for professional-grade video creation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedance/2.5/text-to-video.\",\"default\":\"bytedance/seedance/2.5/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":false,\"description\":\"The text prompt to generate a video from.\",\"default\":\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\"},{\"name\":\"duration\",\"type\":\"object\",\"required\":false,\"description\":\"Output duration in seconds (4-30), or `auto` to let the model pick a length from the prompt and inputs. `auto` is pre-authorized at 30 seconds and billed on the actual output length.\",\"default\":\"5\",\"constraints\":\"Allowed values: auto, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Defaults to 16:9.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1, 4:3, 3:4, 21:9\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate synchronized audio (voice, SFX, BGM) for the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible results. Omit or use -1 for a random seed.\",\"constraints\":\"Range: -1 to 4294967295\"},{\"name\":\"draft\",\"type\":\"boolean\",\"required\":false,\"description\":\"Draft mode step 1: render a fast, low-cost 480p draft (overrides `resolution`, billed at the 480p rate). Pass the result's `outputs[0].draft_id` back as `draft_id` within 7 days to render the same shot at 1080p.\",\"default\":\"false\"},{\"name\":\"draft_id\",\"type\":\"string\",\"required\":false,\"description\":\"Draft mode step 2: the `outputs[0].draft_id` of a succeeded draft from this same model (created with `draft: true` in the last 7 days). Renders the same shot at 1080p, billed at the 1080p rate for the actual output length. The prompt, media, duration, aspect ratio, seed, audio setting and task type are reused from the draft; any such fields sent with `draft_id` are ignored.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedance/2.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedance/2.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"Photorealistic style: Under a clear blue sky, a vast expanse of white daisy fields stretches out. The camera gradually zooms in and finally fixates on a close-up of a single daisy, with several glistening dewdrops resting on its petals.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedance/2.5/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Seedance 2.5 Text to Video" modelId: "bytedance/seedance/2.5/text-to-video" - vendor: "ByteDance" + vendor: "Bytedance" vendorSlug: "bytedance" modelSlug: "seedance/2.5/text-to-video" protocol: "Video Generation Reference" diff --git a/model-api-reference/video-generation/bytedance/seedvr/upscale/video.md b/model-api-reference/video-generation/bytedance/seedvr/upscale/video.md index f262e053..d7259771 100644 --- a/model-api-reference/video-generation/bytedance/seedvr/upscale/video.md +++ b/model-api-reference/video-generation/bytedance/seedvr/upscale/video.md @@ -1,12 +1,12 @@ --- -title: "SeedVR2 API Reference — Bytedance Seedvr / Upscale / Video API" -description: "SeedVR2 API reference for SandBase. Use model bytedance/seedvr/upscale/video with /v1/run; see request and response examples." +title: "SeedVR2 Video Upscale API Reference" +description: "SeedVR2 Video Upscale API reference for SandBase. Use model bytedance/seedvr/upscale/video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/bytedance/seedvr/upscale/video" -apiReferenceJson: "{\"title\":\"SeedVR2\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedvr Upscale Video by ByteDance - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedvr/upscale/video.\",\"default\":\"bytedance/seedvr/upscale/video\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The input video to be processed\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output video.\",\"default\":\"X264 (.mp4)\",\"constraints\":\"Allowed values: X264 (.mp4), VP9 (.webm), PRORES4444 (.mov), GIF (.gif)\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The random seed used for the generation process.\"},{\"name\":\"output_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality of the output video.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"},{\"name\":\"noise_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The noise scale to use for the generation process.\",\"default\":\"0.1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"target_resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The target resolution to upscale to when `upscale_mode` is `target`.\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 720p, 1080p, 1440p, 2160p\"},{\"name\":\"upscale_factor\",\"type\":\"number\",\"required\":false,\"description\":\"Upscaling factor to be used. Will multiply the dimensions with this factor when `upscale_mode` is `factor`.\",\"default\":\"2\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"output_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the output video.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"},{\"name\":\"upscale_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The mode to use for the upscale. If 'target', the upscale factor will be calculated based on the target resolution. If 'factor', the upscale factor will be used directly.\",\"default\":\"factor\",\"constraints\":\"Allowed values: target, factor\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedvr/upscale/video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/bytedance/seedvr/upscale/video/input_video_0.mp4\\\",\\n \\\"output_format\\\": \\\"X264 (.mp4)\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedvr/upscale/video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/bytedance/seedvr/upscale/video/input_video_0.mp4\\\",\\n \\\"output_format\\\": \\\"X264 (.mp4)\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedvr/upscale/video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/bytedance/seedvr/upscale/video/input_video_0.mp4\\\",\\n \\\"output_format\\\": \\\"X264 (.mp4)\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedvr/upscale/video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"SeedVR2 Video Upscale\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Seedvr Upscale Video by ByteDance - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/seedvr/upscale/video.\",\"default\":\"bytedance/seedvr/upscale/video\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"The input video to be processed\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"The format of the output video.\",\"default\":\"X264 (.mp4)\",\"constraints\":\"Allowed values: X264 (.mp4), VP9 (.webm), PRORES4444 (.mov), GIF (.gif)\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The random seed used for the generation process.\"},{\"name\":\"output_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality of the output video.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"},{\"name\":\"noise_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The noise scale to use for the generation process.\",\"default\":\"0.1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"target_resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The target resolution to upscale to when `upscale_mode` is `target`.\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 720p, 1080p, 1440p, 2160p\"},{\"name\":\"upscale_factor\",\"type\":\"number\",\"required\":false,\"description\":\"Upscaling factor to be used. Will multiply the dimensions with this factor when `upscale_mode` is `factor`.\",\"default\":\"2\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"output_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the output video.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"},{\"name\":\"upscale_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The mode to use for the upscale. If 'target', the upscale factor will be calculated based on the target resolution. If 'factor', the upscale factor will be used directly.\",\"default\":\"factor\",\"constraints\":\"Allowed values: target, factor\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/seedvr/upscale/video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/bytedance/seedvr/upscale/video/input_video_0.mp4\\\",\\n \\\"output_format\\\": \\\"X264 (.mp4)\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/seedvr/upscale/video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/bytedance/seedvr/upscale/video/input_video_0.mp4\\\",\\n \\\"output_format\\\": \\\"X264 (.mp4)\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/seedvr/upscale/video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/bytedance/seedvr/upscale/video/input_video_0.mp4\\\",\\n \\\"output_format\\\": \\\"X264 (.mp4)\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/seedvr/upscale/video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "SeedVR2" + modelName: "SeedVR2 Video Upscale" modelId: "bytedance/seedvr/upscale/video" vendor: "Bytedance" vendorSlug: "bytedance" diff --git a/model-api-reference/video-generation/bytedance/upscaler/video.md b/model-api-reference/video-generation/bytedance/upscaler/video.md index 8c73f84b..41d6c03a 100644 --- a/model-api-reference/video-generation/bytedance/upscaler/video.md +++ b/model-api-reference/video-generation/bytedance/upscaler/video.md @@ -4,11 +4,11 @@ description: "ByteDance Video Upscaler API reference for SandBase. Use model byt aside: false outline: false apiReferenceKey: "video/bytedance/upscaler/video" -apiReferenceJson: "{\"title\":\"ByteDance Video Upscaler\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"ByteDance Video Upscaler upscales videos to 4K resolution with AI-powered enhancement. Supports multiple quality tiers (fast, standard, pro), frame rate interpolation to 60fps, and presets optimized for UGC, short series, AIGC, and old film restoration.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/upscaler/video.\",\"default\":\"bytedance/upscaler/video\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to upscale.\"},{\"name\":\"enhancement_preset\",\"type\":\"string\",\"required\":false,\"description\":\"The enhancement preset optimized for specific video scenarios. 'general' is a general-purpose template, 'ugc' targets user-generated short videos, 'short_series' is for short dramas, 'aigc' is for AI-generated content, and 'old_film' is for classic film restoration.\",\"default\":\"general\",\"constraints\":\"Allowed values: general, ugc, short_series, aigc, old_film\"},{\"name\":\"scale_ratio\",\"type\":\"number\",\"required\":false,\"description\":\"The scaling ratio for the output video resolution. When set, overrides target_resolution and scales the input resolution by this factor (e.g., 2.0 doubles the resolution). Range: 1.1 to 10.0. Please note that this is valid only up to 4k resolution, and trying to scale beyond 4k will result in an error. (4k is defined as having atotal pixel count of 3840x2160).\",\"constraints\":\"Range: 1.1 to 10\"},{\"name\":\"target_resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The target resolution of the video to upscale.\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 1080p, 2k, 4k\"},{\"name\":\"target_fps\",\"type\":\"string\",\"required\":false,\"description\":\"The target FPS of the video to upscale.\",\"default\":\"30fps\",\"constraints\":\"Allowed values: 30fps, 60fps\"},{\"name\":\"enhancement_tier\",\"type\":\"string\",\"required\":false,\"description\":\"The enhancement quality tier. 'fast' provides essential upscaling with good speed, 'standard' uses adaptive algorithms for better visual texture, 'pro' uses large-model restoration for cinematic quality (longer processing time), and 10 times the cost of `standard` and `fast`.\",\"default\":\"standard\",\"constraints\":\"Allowed values: fast, standard, pro\"},{\"name\":\"fidelity\",\"type\":\"string\",\"required\":false,\"description\":\"The enhancement intensity. 'high' applies mild enhancement while keeping visual texture close to the source video. 'medium' provides a balanced image quality enhancement.\",\"default\":\"high\",\"constraints\":\"Allowed values: high, medium\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/upscaler/video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/bytedance/upscaler/video/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/upscaler/video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/bytedance/upscaler/video/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/upscaler/video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/bytedance/upscaler/video/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/upscaler/video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"ByteDance Video Upscaler\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"ByteDance Video Upscaler upscales videos to 4K resolution with AI-powered enhancement. Supports multiple quality tiers (fast, standard, pro), frame rate interpolation to 60fps, and presets optimized for UGC, short series, AIGC, and old film restoration.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/upscaler/video.\",\"default\":\"bytedance/upscaler/video\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the video to upscale.\"},{\"name\":\"enhancement_preset\",\"type\":\"string\",\"required\":false,\"description\":\"The enhancement preset optimized for specific video scenarios. 'general' is a general-purpose template, 'ugc' targets user-generated short videos, 'short_series' is for short dramas, 'aigc' is for AI-generated content, and 'old_film' is for classic film restoration.\",\"default\":\"general\",\"constraints\":\"Allowed values: general, ugc, short_series, aigc, old_film\"},{\"name\":\"scale_ratio\",\"type\":\"number\",\"required\":false,\"description\":\"The scaling ratio for the output video resolution. When set, overrides target_resolution and scales the input resolution by this factor (e.g., 2.0 doubles the resolution). Range: 1.1 to 10.0. Please note that this is valid only up to 4k resolution, and trying to scale beyond 4k will result in an error. (4k is defined as having atotal pixel count of 3840x2160).\",\"constraints\":\"Range: 1.1 to 10\"},{\"name\":\"target_resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The target resolution of the video to upscale.\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 1080p, 2k, 4k\"},{\"name\":\"target_fps\",\"type\":\"string\",\"required\":false,\"description\":\"The target FPS of the video to upscale.\",\"default\":\"30fps\",\"constraints\":\"Allowed values: 30fps, 60fps\"},{\"name\":\"enhancement_tier\",\"type\":\"string\",\"required\":false,\"description\":\"The enhancement quality tier. 'fast' provides essential upscaling with good speed, 'standard' uses adaptive algorithms for better visual texture, 'pro' uses large-model restoration for cinematic quality (longer processing time), and 10 times the cost of `standard` and `fast`.\",\"default\":\"standard\",\"constraints\":\"Allowed values: fast, standard, pro\"},{\"name\":\"fidelity\",\"type\":\"string\",\"required\":false,\"description\":\"The enhancement intensity. 'high' applies mild enhancement while keeping visual texture close to the source video. 'medium' provides a balanced image quality enhancement.\",\"default\":\"high\",\"constraints\":\"Allowed values: high, medium\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/upscaler/video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/bytedance/upscaler/video/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/upscaler/video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/bytedance/upscaler/video/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/upscaler/video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/bytedance/upscaler/video/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/upscaler/video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "ByteDance Video Upscaler" modelId: "bytedance/upscaler/video" - vendor: "ByteDance" + vendor: "Bytedance" vendorSlug: "bytedance" modelSlug: "upscaler/video" protocol: "Video Generation Reference" diff --git a/model-api-reference/video-generation/bytedance/video-stylize.md b/model-api-reference/video-generation/bytedance/video-stylize.md deleted file mode 100644 index 9bb92da5..00000000 --- a/model-api-reference/video-generation/bytedance/video-stylize.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Video Stylize API Reference" -description: "Video Stylize API reference for SandBase. Use model bytedance/video-stylize with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/bytedance/video-stylize" -apiReferenceJson: "{\"title\":\"Video Stylize\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Video Stylize is ByteDance's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to bytedance/video-stylize.\",\"default\":\"bytedance/video-stylize\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to make the stylized video from.\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style for your character in the video. Please use a short description.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"bytedance/video-stylize\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/video-stylize/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"bytedance/video-stylize\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/video-stylize/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"bytedance/video-stylize\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/bytedance/video-stylize/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"bytedance/video-stylize\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Video Stylize" - modelId: "bytedance/video-stylize" - vendor: "ByteDance" - vendorSlug: "bytedance" - modelSlug: "video-stylize" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-12T22:43:10.752Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/creatify/aurora.md b/model-api-reference/video-generation/creatify/aurora.md deleted file mode 100644 index 816e9e07..00000000 --- a/model-api-reference/video-generation/creatify/aurora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Creatify Aurora API Reference" -description: "Creatify Aurora API reference for SandBase. Use model creatify/aurora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/creatify/aurora" -apiReferenceJson: "{\"title\":\"Creatify Aurora\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Aurora by Creatify - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to creatify/aurora.\",\"default\":\"creatify/aurora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"A text prompt to guide the video generation process.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image file to be used for video generation.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the audio file to be used for video generation.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance scale to be used for text prompt adherence.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 5\"},{\"name\":\"audio_guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Guidance scale to be used for audio adherence.\",\"default\":\"2\",\"constraints\":\"Range: 0 to 5\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"creatify/aurora\\\",\\n \\\"prompt\\\": \\\"4K studio interview, medium close-up (shoulders-up crop). Solid light-grey seamless backdrop, uniform soft key-light—no lighting change. Presenter faces lens, steady eye-contact. Hands remain below frame, body perfectly still. Ultra-sharp.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/creatify/aurora/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/creatify/aurora/input_audio_1.wav\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"creatify/aurora\\\",\\n \\\"prompt\\\": \\\"4K studio interview, medium close-up (shoulders-up crop). Solid light-grey seamless backdrop, uniform soft key-light—no lighting change. Presenter faces lens, steady eye-contact. Hands remain below frame, body perfectly still. Ultra-sharp.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/creatify/aurora/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/creatify/aurora/input_audio_1.wav\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"creatify/aurora\\\",\\n \\\"prompt\\\": \\\"4K studio interview, medium close-up (shoulders-up crop). Solid light-grey seamless backdrop, uniform soft key-light—no lighting change. Presenter faces lens, steady eye-contact. Hands remain below frame, body perfectly still. Ultra-sharp.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/creatify/aurora/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/creatify/aurora/input_audio_1.wav\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"creatify/aurora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Creatify Aurora" - modelId: "creatify/aurora" - vendor: "Creatify" - vendorSlug: "creatify" - modelSlug: "aurora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-11T16:16:44.429Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/elevenlabs/dubbing.md b/model-api-reference/video-generation/elevenlabs/dubbing.md index 8a94cf53..ae5d24aa 100644 --- a/model-api-reference/video-generation/elevenlabs/dubbing.md +++ b/model-api-reference/video-generation/elevenlabs/dubbing.md @@ -4,7 +4,7 @@ description: "ElevenLabs Dubbing API reference for SandBase. Use model elevenlab aside: false outline: false apiReferenceKey: "video/elevenlabs/dubbing" -apiReferenceJson: "{\"title\":\"ElevenLabs Dubbing\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Dubbing by ElevenLabs - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to elevenlabs/dubbing.\",\"default\":\"elevenlabs/dubbing\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the video file to dub. Either audio_url or video_url must be provided. If both are provided, video_url takes priority.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the audio file to dub. Either audio_url or video_url must be provided.\"},{\"name\":\"source_lang\",\"type\":\"string\",\"required\":false,\"description\":\"Source language code. If not provided, will be auto-detected.\"},{\"name\":\"num_speakers\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of speakers in the audio. If not provided, will be auto-detected.\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"target_lang\",\"type\":\"string\",\"required\":false,\"description\":\"Target language code for dubbing (ISO 639-1)\"},{\"name\":\"highest_resolution\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the highest resolution for dubbing.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"elevenlabs/dubbing\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/elevenlabs/dubbing/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"elevenlabs/dubbing\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/elevenlabs/dubbing/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"elevenlabs/dubbing\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/elevenlabs/dubbing/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"elevenlabs/dubbing\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"ElevenLabs Dubbing\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"ElevenLabs Dubbing translates the speech in a video into another language while preserving each speaker's voice, timing, and background audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to elevenlabs/dubbing.\",\"default\":\"elevenlabs/dubbing\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the video file to dub (MP4 / MOV). The dubbed result is returned as a video.\"},{\"name\":\"source_lang\",\"type\":\"string\",\"required\":false,\"description\":\"Source language code. If not provided, will be auto-detected.\"},{\"name\":\"num_speakers\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of speakers in the audio. If not provided, will be auto-detected.\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"target_lang\",\"type\":\"string\",\"required\":true,\"description\":\"Target language code for dubbing (ISO 639-1)\"},{\"name\":\"highest_resolution\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the highest resolution for dubbing.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"elevenlabs/dubbing\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/elevenlabs/dubbing/input_video_0.mp4\\\",\\n \\\"target_lang\\\": \\\"es\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"elevenlabs/dubbing\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/elevenlabs/dubbing/input_video_0.mp4\\\",\\n \\\"target_lang\\\": \\\"es\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"elevenlabs/dubbing\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/elevenlabs/dubbing/input_video_0.mp4\\\",\\n \\\"target_lang\\\": \\\"es\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"elevenlabs/dubbing\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "ElevenLabs Dubbing" modelId: "elevenlabs/dubbing" diff --git a/model-api-reference/video-generation/google/gemini-omni-flash.md b/model-api-reference/video-generation/google/gemini-omni-flash.md deleted file mode 100644 index 7c4ad033..00000000 --- a/model-api-reference/video-generation/google/gemini-omni-flash.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Gemini Omni Flash API Reference — Google Gemini Omni Flash API" -description: "Gemini Omni Flash API reference for SandBase. Use model google/gemini-omni-flash with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/google/gemini-omni-flash" -apiReferenceJson: "{\"title\":\"Gemini Omni Flash\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gemini Omni Flash is Google's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-omni-flash.\",\"default\":\"google/gemini-omni-flash\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video, in seconds.\",\"default\":\"8\",\"constraints\":\"Range: 3 to 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-omni-flash\\\",\\n \\\"prompt\\\": \\\"A cinematic wide shot of a lighthouse on a rocky cliff at dusk, waves crashing below, the beam slowly sweeping across the dark sea.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/gemini-omni-flash\\\",\\n \\\"prompt\\\": \\\"A cinematic wide shot of a lighthouse on a rocky cliff at dusk, waves crashing below, the beam slowly sweeping across the dark sea.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/gemini-omni-flash\\\",\\n \\\"prompt\\\": \\\"A cinematic wide shot of a lighthouse on a rocky cliff at dusk, waves crashing below, the beam slowly sweeping across the dark sea.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/gemini-omni-flash\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Gemini Omni Flash" - modelId: "google/gemini-omni-flash" - vendor: "Google" - vendorSlug: "google" - modelSlug: "gemini-omni-flash" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-30T17:26:03.038Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/google/gemini-omni-flash/1.1/edit.md b/model-api-reference/video-generation/google/gemini-omni-flash/1.1/edit.md new file mode 100644 index 00000000..be01e2ef --- /dev/null +++ b/model-api-reference/video-generation/google/gemini-omni-flash/1.1/edit.md @@ -0,0 +1,21 @@ +--- +title: "Gemini Omni Flash 1.1 Edit API Reference" +description: "Gemini Omni Flash 1.1 Edit API reference for SandBase. Use model google/gemini-omni-flash/1.1/edit with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/google/gemini-omni-flash/1.1/edit" +apiReferenceJson: "{\"title\":\"Gemini Omni Flash 1.1 Edit\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gemini Omni Flash 1.1 Edit by Google applies natural-language edits to an existing video of up to ten seconds, such as changing style, lighting, or objects, at 360p to 4K output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-omni-flash/1.1/edit.\",\"default\":\"google/gemini-omni-flash/1.1/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"A simple instruction describing the edit.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the video to edit.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the edited video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 720p, 1080p, 4k\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-omni-flash/1.1/edit\\\",\\n \\\"prompt\\\": \\\"Make this video anime. Keep everything else the same.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/google/gemini-omni-flash/edit/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/gemini-omni-flash/1.1/edit\\\",\\n \\\"prompt\\\": \\\"Make this video anime. Keep everything else the same.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/google/gemini-omni-flash/edit/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/gemini-omni-flash/1.1/edit\\\",\\n \\\"prompt\\\": \\\"Make this video anime. Keep everything else the same.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/google/gemini-omni-flash/edit/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/gemini-omni-flash/1.1/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Gemini Omni Flash 1.1 Edit" + modelId: "google/gemini-omni-flash/1.1/edit" + vendor: "Google" + vendorSlug: "google" + modelSlug: "gemini-omni-flash/1.1/edit" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-08-27T16:39:01.336Z" + capabilities: ["video-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/google/gemini-omni-flash/1.1/image-to-video.md b/model-api-reference/video-generation/google/gemini-omni-flash/1.1/image-to-video.md new file mode 100644 index 00000000..35fbead2 --- /dev/null +++ b/model-api-reference/video-generation/google/gemini-omni-flash/1.1/image-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Gemini Omni Flash 1.1 Image to Video API Reference" +description: "Gemini Omni Flash 1.1 Image to Video API reference for SandBase. Use model google/gemini-omni-flash/1.1/image-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/google/gemini-omni-flash/1.1/image-to-video" +apiReferenceJson: "{\"title\":\"Gemini Omni Flash 1.1 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gemini Omni Flash 1.1 by Google - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-omni-flash/1.1/image-to-video.\",\"default\":\"google/gemini-omni-flash/1.1/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing how the first image should be animated or interpolated into the optional end image.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the first frame to animate.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional URL of the end frame. When provided, the model interpolates between the two images in their listed order.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 720p, 1080p, 4k\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video, in seconds.\",\"default\":\"8\",\"constraints\":\"Range: 3 to 10\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-omni-flash/1.1/image-to-video\\\",\\n \\\"prompt\\\": \\\"The dog turns its head and wags its tail in warm sunlight.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/gemini-omni-flash/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/gemini-omni-flash/1.1/image-to-video\\\",\\n \\\"prompt\\\": \\\"The dog turns its head and wags its tail in warm sunlight.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/gemini-omni-flash/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/gemini-omni-flash/1.1/image-to-video\\\",\\n \\\"prompt\\\": \\\"The dog turns its head and wags its tail in warm sunlight.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/gemini-omni-flash/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/gemini-omni-flash/1.1/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Gemini Omni Flash 1.1 Image to Video" + modelId: "google/gemini-omni-flash/1.1/image-to-video" + vendor: "Google" + vendorSlug: "google" + modelSlug: "gemini-omni-flash/1.1/image-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-08-27T16:38:23.507Z" + capabilities: ["image-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/google/gemini-omni-flash/1.1/reference-to-video.md b/model-api-reference/video-generation/google/gemini-omni-flash/1.1/reference-to-video.md new file mode 100644 index 00000000..50140ec2 --- /dev/null +++ b/model-api-reference/video-generation/google/gemini-omni-flash/1.1/reference-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Gemini Omni Flash 1.1 Reference to Video API Reference" +description: "SandBase API reference for model google/gemini-omni-flash/1.1/reference-to-video. Call /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/google/gemini-omni-flash/1.1/reference-to-video" +apiReferenceJson: "{\"title\":\"Gemini Omni Flash 1.1 Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gemini Omni Flash 1.1 Reference to Video by Google generates a short video with synchronized audio guided by up to ten reference images and up to three short reference videos.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-omni-flash/1.1/reference-to-video.\",\"default\":\"google/gemini-omni-flash/1.1/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video. Reference media is sent in list order before the prompt.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"URLs of reference images to incorporate into the video.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 720p, 1080p, 4k\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video, in seconds.\",\"default\":\"8\",\"constraints\":\"Range: 3 to 10\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"URLs of up to three reference videos. Each video must be at most three seconds long.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-omni-flash/1.1/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A cat inspired by walks through the setting in .\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/gemini-omni-flash/1.1/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A cat inspired by walks through the setting in .\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/gemini-omni-flash/1.1/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A cat inspired by walks through the setting in .\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/gemini-omni-flash/1.1/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Gemini Omni Flash 1.1 Reference to Video" + modelId: "google/gemini-omni-flash/1.1/reference-to-video" + vendor: "Google" + vendorSlug: "google" + modelSlug: "gemini-omni-flash/1.1/reference-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-08-27T16:38:13.583Z" + capabilities: ["reference-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/google/gemini-omni-flash/1.1/text-to-video.md b/model-api-reference/video-generation/google/gemini-omni-flash/1.1/text-to-video.md new file mode 100644 index 00000000..51a14ce6 --- /dev/null +++ b/model-api-reference/video-generation/google/gemini-omni-flash/1.1/text-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Gemini Omni Flash 1.1 Text to Video API Reference" +description: "Gemini Omni Flash 1.1 Text to Video API reference for SandBase. Use model google/gemini-omni-flash/1.1/text-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/google/gemini-omni-flash/1.1/text-to-video" +apiReferenceJson: "{\"title\":\"Gemini Omni Flash 1.1 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gemini Omni Flash 1.1 is Google's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-omni-flash/1.1/text-to-video.\",\"default\":\"google/gemini-omni-flash/1.1/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 720p, 1080p, 4k\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video, in seconds.\",\"default\":\"8\",\"constraints\":\"Range: 3 to 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-omni-flash/1.1/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic wide shot of a lighthouse on a rocky cliff at dusk, waves crashing below, the beam sweeping across the dark sea.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 8\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/gemini-omni-flash/1.1/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic wide shot of a lighthouse on a rocky cliff at dusk, waves crashing below, the beam sweeping across the dark sea.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 8\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/gemini-omni-flash/1.1/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic wide shot of a lighthouse on a rocky cliff at dusk, waves crashing below, the beam sweeping across the dark sea.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 8\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/gemini-omni-flash/1.1/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Gemini Omni Flash 1.1 Text to Video" + modelId: "google/gemini-omni-flash/1.1/text-to-video" + vendor: "Google" + vendorSlug: "google" + modelSlug: "gemini-omni-flash/1.1/text-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-08-27T16:38:41.141Z" + capabilities: ["text-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/google/gemini-omni-flash/edit.md b/model-api-reference/video-generation/google/gemini-omni-flash/edit.md index 1ed2c9bb..6c6cfc35 100644 --- a/model-api-reference/video-generation/google/gemini-omni-flash/edit.md +++ b/model-api-reference/video-generation/google/gemini-omni-flash/edit.md @@ -1,12 +1,12 @@ --- -title: "Gemini Omni Flash API Reference — Google Gemini Omni Flash / Edit" -description: "Gemini Omni Flash API reference for SandBase. Use model google/gemini-omni-flash/edit with /v1/run; see request and response examples." +title: "Gemini Omni Flash Edit API Reference" +description: "Gemini Omni Flash Edit API reference for SandBase. Use model google/gemini-omni-flash/edit with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/google/gemini-omni-flash/edit" -apiReferenceJson: "{\"title\":\"Gemini Omni Flash\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gemini Omni Flash Edit by Google - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-omni-flash/edit.\",\"default\":\"google/gemini-omni-flash/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"A simple instruction describing the edit. Simple prompts work best; add \\\"Keep everything else the same.\\\" to preserve the rest of the scene. Voice editing is not supported.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the video to edit. Note: editing uploaded videos is not available for users in the European Economic Area (EEA), Switzerland, and the United Kingdom.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-omni-flash/edit\\\",\\n \\\"prompt\\\": \\\"Make this video anime. Keep everything else the same.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/google/gemini-omni-flash/edit/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/gemini-omni-flash/edit\\\",\\n \\\"prompt\\\": \\\"Make this video anime. Keep everything else the same.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/google/gemini-omni-flash/edit/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/gemini-omni-flash/edit\\\",\\n \\\"prompt\\\": \\\"Make this video anime. Keep everything else the same.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/google/gemini-omni-flash/edit/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/gemini-omni-flash/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Gemini Omni Flash Edit\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gemini Omni Flash Edit by Google applies natural-language edits to an existing short video, such as changing style, lighting, or objects, while keeping the rest of the scene consistent.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-omni-flash/edit.\",\"default\":\"google/gemini-omni-flash/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"A simple instruction describing the edit. Simple prompts work best; add \\\"Keep everything else the same.\\\" to preserve the rest of the scene. Voice editing is not supported.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the video to edit. Note: editing uploaded videos is not available for users in the European Economic Area (EEA), Switzerland, and the United Kingdom.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-omni-flash/edit\\\",\\n \\\"prompt\\\": \\\"Make this video anime. Keep everything else the same.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/google/gemini-omni-flash/edit/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/gemini-omni-flash/edit\\\",\\n \\\"prompt\\\": \\\"Make this video anime. Keep everything else the same.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/google/gemini-omni-flash/edit/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/gemini-omni-flash/edit\\\",\\n \\\"prompt\\\": \\\"Make this video anime. Keep everything else the same.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/google/gemini-omni-flash/edit/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/gemini-omni-flash/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Gemini Omni Flash" + modelName: "Gemini Omni Flash Edit" modelId: "google/gemini-omni-flash/edit" vendor: "Google" vendorSlug: "google" diff --git a/model-api-reference/video-generation/google/gemini-omni-flash/image-to-video.md b/model-api-reference/video-generation/google/gemini-omni-flash/image-to-video.md index 96463597..fbc06fdb 100644 --- a/model-api-reference/video-generation/google/gemini-omni-flash/image-to-video.md +++ b/model-api-reference/video-generation/google/gemini-omni-flash/image-to-video.md @@ -1,12 +1,12 @@ --- -title: "Gemini Omni Flash API Reference — Google Flash / Image To Video" -description: "Gemini Omni Flash API reference for SandBase. Use model google/gemini-omni-flash/image-to-video with /v1/run; see request and response examples." +title: "Gemini Omni Flash Image to Video API Reference" +description: "Gemini Omni Flash Image to Video API reference for SandBase. Use model google/gemini-omni-flash/image-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/google/gemini-omni-flash/image-to-video" -apiReferenceJson: "{\"title\":\"Gemini Omni Flash\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gemini Omni Flash by Google - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-omni-flash/image-to-video.\",\"default\":\"google/gemini-omni-flash/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing how the image should be animated.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image to animate.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video, in seconds.\",\"default\":\"8\",\"constraints\":\"Range: 3 to 10\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-omni-flash/image-to-video\\\",\\n \\\"prompt\\\": \\\"The dog turns its head and wags its tail in warm sunlight.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/gemini-omni-flash/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/gemini-omni-flash/image-to-video\\\",\\n \\\"prompt\\\": \\\"The dog turns its head and wags its tail in warm sunlight.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/gemini-omni-flash/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/gemini-omni-flash/image-to-video\\\",\\n \\\"prompt\\\": \\\"The dog turns its head and wags its tail in warm sunlight.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/gemini-omni-flash/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/gemini-omni-flash/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Gemini Omni Flash Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gemini Omni Flash by Google - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-omni-flash/image-to-video.\",\"default\":\"google/gemini-omni-flash/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing how the image should be animated.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image to animate.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video, in seconds.\",\"default\":\"8\",\"constraints\":\"Range: 3 to 10\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-omni-flash/image-to-video\\\",\\n \\\"prompt\\\": \\\"The dog turns its head and wags its tail in warm sunlight.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/gemini-omni-flash/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/gemini-omni-flash/image-to-video\\\",\\n \\\"prompt\\\": \\\"The dog turns its head and wags its tail in warm sunlight.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/gemini-omni-flash/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/gemini-omni-flash/image-to-video\\\",\\n \\\"prompt\\\": \\\"The dog turns its head and wags its tail in warm sunlight.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/gemini-omni-flash/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/gemini-omni-flash/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Gemini Omni Flash" + modelName: "Gemini Omni Flash Image to Video" modelId: "google/gemini-omni-flash/image-to-video" vendor: "Google" vendorSlug: "google" diff --git a/model-api-reference/video-generation/google/gemini-omni-flash/reference-to-video.md b/model-api-reference/video-generation/google/gemini-omni-flash/reference-to-video.md index acee14ed..57269428 100644 --- a/model-api-reference/video-generation/google/gemini-omni-flash/reference-to-video.md +++ b/model-api-reference/video-generation/google/gemini-omni-flash/reference-to-video.md @@ -1,12 +1,12 @@ --- -title: "Gemini Omni Flash API Reference — Google / Reference To Video" -description: "Gemini Omni Flash API reference for SandBase. Use model google/gemini-omni-flash/reference-to-video with /v1/run; see request and response examples." +title: "Gemini Omni Flash Reference to Video API Reference" +description: "Gemini Omni Flash Reference to Video API reference for SandBase. Use model google/gemini-omni-flash/reference-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/google/gemini-omni-flash/reference-to-video" -apiReferenceJson: "{\"title\":\"Gemini Omni Flash\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gemini Omni Flash by Google - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-omni-flash/reference-to-video.\",\"default\":\"google/gemini-omni-flash/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video. You can bind reference images to roles inline using tags like ```` (see the Omni Flash prompt guide).\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"URLs of the reference images to incorporate into the video.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video, in seconds.\",\"default\":\"8\",\"constraints\":\"Range: 3 to 10\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-omni-flash/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A cat playfully batting at a ball of yarn in a sunlit living room.\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/gemini-omni-flash/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A cat playfully batting at a ball of yarn in a sunlit living room.\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/gemini-omni-flash/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A cat playfully batting at a ball of yarn in a sunlit living room.\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/gemini-omni-flash/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Gemini Omni Flash Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gemini Omni Flash Reference to Video by Google generates a short video with synchronized audio that keeps subjects, products, or style consistent with up to ten reference images.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-omni-flash/reference-to-video.\",\"default\":\"google/gemini-omni-flash/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video. You can bind reference images to roles inline using tags like ```` (see the Omni Flash prompt guide).\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"URLs of the reference images to incorporate into the video.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video, in seconds.\",\"default\":\"8\",\"constraints\":\"Range: 3 to 10\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-omni-flash/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A cat playfully batting at a ball of yarn in a sunlit living room.\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/gemini-omni-flash/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A cat playfully batting at a ball of yarn in a sunlit living room.\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/gemini-omni-flash/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A cat playfully batting at a ball of yarn in a sunlit living room.\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/gemini-omni-flash/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Gemini Omni Flash" + modelName: "Gemini Omni Flash Reference to Video" modelId: "google/gemini-omni-flash/reference-to-video" vendor: "Google" vendorSlug: "google" diff --git a/model-api-reference/video-generation/google/gemini-omni-flash/text-to-video.md b/model-api-reference/video-generation/google/gemini-omni-flash/text-to-video.md new file mode 100644 index 00000000..2e497480 --- /dev/null +++ b/model-api-reference/video-generation/google/gemini-omni-flash/text-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Gemini Omni Flash Text to Video API Reference" +description: "Gemini Omni Flash Text to Video API reference for SandBase. Use model google/gemini-omni-flash/text-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/google/gemini-omni-flash/text-to-video" +apiReferenceJson: "{\"title\":\"Gemini Omni Flash Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Gemini Omni Flash is Google's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/gemini-omni-flash/text-to-video.\",\"default\":\"google/gemini-omni-flash/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video, in seconds.\",\"default\":\"8\",\"constraints\":\"Range: 3 to 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/gemini-omni-flash/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic wide shot of a lighthouse on a rocky cliff at dusk, waves crashing below, the beam slowly sweeping across the dark sea.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 8\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/gemini-omni-flash/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic wide shot of a lighthouse on a rocky cliff at dusk, waves crashing below, the beam slowly sweeping across the dark sea.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 8\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/gemini-omni-flash/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic wide shot of a lighthouse on a rocky cliff at dusk, waves crashing below, the beam slowly sweeping across the dark sea.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 8\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/gemini-omni-flash/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Gemini Omni Flash Text to Video" + modelId: "google/gemini-omni-flash/text-to-video" + vendor: "Google" + vendorSlug: "google" + modelSlug: "gemini-omni-flash/text-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-06-30T17:26:03.038Z" + capabilities: ["text-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/google/veo-2.md b/model-api-reference/video-generation/google/veo-2.md deleted file mode 100644 index 4ad866ad..00000000 --- a/model-api-reference/video-generation/google/veo-2.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Veo 2 API Reference" -description: "Veo 2 API reference for SandBase. Use model google/veo-2 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/google/veo-2" -apiReferenceJson: "{\"title\":\"Veo 2\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo 2 is Google's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo-2.\",\"default\":\"google/veo-2\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 6, 7, 8\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"A seed to use for the video generation\"},{\"name\":\"auto_fix\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to automatically attempt to fix prompts that fail content policy or other validation checks by rewriting them\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo-2\\\",\\n \\\"prompt\\\": \\\"The camera floats gently through rows of pastel-painted wooden beehives, buzzing honeybees gliding in and out of frame. The motion settles on the refined farmer standing at the center, his pristine white beekeeping suit gleaming in the golden afternoon light. He lifts a jar of honey, tilting it slightly to catch the light. Behind him, tall sunflowers sway rhythmically in the breeze, their petals glowing in the warm sunlight. The camera tilts upward to reveal a retro farmhouse with mint-green shutters, its walls dappled with shadows from swaying trees. Shot with a 35mm lens on Kodak Portra 400 film, the golden light creates rich textures on the farmer's gloves, marmalade jar, and weathered wood of the beehives.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo-2\\\",\\n \\\"prompt\\\": \\\"The camera floats gently through rows of pastel-painted wooden beehives, buzzing honeybees gliding in and out of frame. The motion settles on the refined farmer standing at the center, his pristine white beekeeping suit gleaming in the golden afternoon light. He lifts a jar of honey, tilting it slightly to catch the light. Behind him, tall sunflowers sway rhythmically in the breeze, their petals glowing in the warm sunlight. The camera tilts upward to reveal a retro farmhouse with mint-green shutters, its walls dappled with shadows from swaying trees. Shot with a 35mm lens on Kodak Portra 400 film, the golden light creates rich textures on the farmer's gloves, marmalade jar, and weathered wood of the beehives.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo-2\\\",\\n \\\"prompt\\\": \\\"The camera floats gently through rows of pastel-painted wooden beehives, buzzing honeybees gliding in and out of frame. The motion settles on the refined farmer standing at the center, his pristine white beekeeping suit gleaming in the golden afternoon light. He lifts a jar of honey, tilting it slightly to catch the light. Behind him, tall sunflowers sway rhythmically in the breeze, their petals glowing in the warm sunlight. The camera tilts upward to reveal a retro farmhouse with mint-green shutters, its walls dappled with shadows from swaying trees. Shot with a 35mm lens on Kodak Portra 400 film, the golden light creates rich textures on the farmer's gloves, marmalade jar, and weathered wood of the beehives.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo-2\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Veo 2" - modelId: "google/veo-2" - vendor: "Google" - vendorSlug: "google" - modelSlug: "veo-2" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-02-21T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/google/veo-2/image-to-video.md b/model-api-reference/video-generation/google/veo-2/image-to-video.md deleted file mode 100644 index b2591e11..00000000 --- a/model-api-reference/video-generation/google/veo-2/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Veo 2 (Image to Video) API Reference" -description: "Veo 2 (Image to Video) API reference for SandBase. Use model google/veo-2/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/google/veo-2/image-to-video" -apiReferenceJson: "{\"title\":\"Veo 2 (Image to Video)\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo 2 by Google - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo-2/image-to-video.\",\"default\":\"google/veo-2/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing how the image should be animated\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image to animate. Should be 720p or higher resolution in 16:9 or 9:16 aspect ratio. If the image is not in 16:9 or 9:16 aspect ratio, it will be cropped to fit.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 6, 7, 8\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo-2/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman looks into the camera, breathes in, then exclaims energetically, \\\\\\\"have you guys checked out Veo3 Image-to-Video on Fal? It's incredible!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/veo-2/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo-2/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman looks into the camera, breathes in, then exclaims energetically, \\\\\\\"have you guys checked out Veo3 Image-to-Video on Fal? It's incredible!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/veo-2/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo-2/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman looks into the camera, breathes in, then exclaims energetically, \\\\\\\"have you guys checked out Veo3 Image-to-Video on Fal? It's incredible!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/veo-2/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo-2/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Veo 2 (Image to Video)" - modelId: "google/veo-2/image-to-video" - vendor: "Google" - vendorSlug: "google" - modelSlug: "veo-2/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-11T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/google/veo-3.md b/model-api-reference/video-generation/google/veo-3.md deleted file mode 100644 index 79e104e0..00000000 --- a/model-api-reference/video-generation/google/veo-3.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Veo 3 API Reference" -description: "Veo 3 API reference for SandBase. Use model google/veo-3 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/google/veo-3" -apiReferenceJson: "{\"title\":\"Veo 3\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo 3 is Google's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo-3.\",\"default\":\"google/veo-3\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds.\",\"default\":\"8\",\"constraints\":\"Allowed values: 4, 6, 8\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"auto_fix\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to automatically attempt to fix prompts that fail content policy or other validation checks by rewriting them.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo-3\\\",\\n \\\"prompt\\\": \\\"A casual street interview on a busy New York City sidewalk in the afternoon. The interviewer holds a plain, unbranded microphone and asks: Have you seen Google's new Veo3 model It is a super good model. Person replies: Yeah I saw it, it's already available on fal. It's crazy good.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo-3\\\",\\n \\\"prompt\\\": \\\"A casual street interview on a busy New York City sidewalk in the afternoon. The interviewer holds a plain, unbranded microphone and asks: Have you seen Google's new Veo3 model It is a super good model. Person replies: Yeah I saw it, it's already available on fal. It's crazy good.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo-3\\\",\\n \\\"prompt\\\": \\\"A casual street interview on a busy New York City sidewalk in the afternoon. The interviewer holds a plain, unbranded microphone and asks: Have you seen Google's new Veo3 model It is a super good model. Person replies: Yeah I saw it, it's already available on fal. It's crazy good.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo-3\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Veo 3" - modelId: "google/veo-3" - vendor: "Google" - vendorSlug: "google" - modelSlug: "veo-3" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-05T20:59:51.339Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/google/veo-3/fast.md b/model-api-reference/video-generation/google/veo-3/fast.md deleted file mode 100644 index 9948f8f4..00000000 --- a/model-api-reference/video-generation/google/veo-3/fast.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Veo 3 Fast API Reference" -description: "Veo 3 Fast API reference for SandBase. Use model google/veo-3/fast with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/google/veo-3/fast" -apiReferenceJson: "{\"title\":\"Veo 3 Fast\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo 3 Fast by Google - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo-3/fast.\",\"default\":\"google/veo-3/fast\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video.\",\"default\":\"8\",\"constraints\":\"Allowed values: 4, 6, 8\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"auto_fix\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to automatically attempt to fix prompts that fail content policy or other validation checks by rewriting them.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo-3/fast\\\",\\n \\\"prompt\\\": \\\"A casual street interview on a busy New York City sidewalk in the afternoon. The interviewer holds a plain, unbranded microphone and asks: Have you seen Google's new Veo3 model It is a super good model. Person replies: Yeah I saw it, it's already available on fal. It's crazy good.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo-3/fast\\\",\\n \\\"prompt\\\": \\\"A casual street interview on a busy New York City sidewalk in the afternoon. The interviewer holds a plain, unbranded microphone and asks: Have you seen Google's new Veo3 model It is a super good model. Person replies: Yeah I saw it, it's already available on fal. It's crazy good.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo-3/fast\\\",\\n \\\"prompt\\\": \\\"A casual street interview on a busy New York City sidewalk in the afternoon. The interviewer holds a plain, unbranded microphone and asks: Have you seen Google's new Veo3 model It is a super good model. Person replies: Yeah I saw it, it's already available on fal. It's crazy good.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo-3/fast\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Veo 3 Fast" - modelId: "google/veo-3/fast" - vendor: "Google" - vendorSlug: "google" - modelSlug: "veo-3/fast" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-07-09T16:38:31.244Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/google/veo-3/fast/image-to-video.md b/model-api-reference/video-generation/google/veo-3/fast/image-to-video.md deleted file mode 100644 index 9b5c1e6b..00000000 --- a/model-api-reference/video-generation/google/veo-3/fast/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Veo 3 Fast [Image to Video] API Reference" -description: "Veo 3 Fast [Image to Video] API reference for SandBase. Use model google/veo-3/fast/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/google/veo-3/fast/image-to-video" -apiReferenceJson: "{\"title\":\"Veo 3 Fast [Image to Video]\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo 3 Fast is Google's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo-3/fast/image-to-video.\",\"default\":\"google/veo-3/fast/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing how the image should be animated\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image to animate. Should be 720p or higher resolution in 16:9 or 9:16 aspect ratio. If the image is not in 16:9 or 9:16 aspect ratio, it will be cropped to fit.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video.\",\"default\":\"8\",\"constraints\":\"Allowed values: 4, 6, 8\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"auto_fix\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to automatically attempt to fix prompts that fail content policy or other validation checks by rewriting them.\",\"default\":\"false\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo-3/fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman looks into the camera, breathes in, then exclaims energetically, \\\\\\\"have you guys checked out Veo3 Image-to-Video on Fal? It's incredible!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/veo-3/fast/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo-3/fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman looks into the camera, breathes in, then exclaims energetically, \\\\\\\"have you guys checked out Veo3 Image-to-Video on Fal? It's incredible!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/veo-3/fast/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo-3/fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman looks into the camera, breathes in, then exclaims energetically, \\\\\\\"have you guys checked out Veo3 Image-to-Video on Fal? It's incredible!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/veo-3/fast/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo-3/fast/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Veo 3 Fast [Image to Video]" - modelId: "google/veo-3/fast/image-to-video" - vendor: "Google" - vendorSlug: "google" - modelSlug: "veo-3/fast/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-07-09T16:46:52.274Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/google/veo-3/image-to-video.md b/model-api-reference/video-generation/google/veo-3/image-to-video.md deleted file mode 100644 index 10075c92..00000000 --- a/model-api-reference/video-generation/google/veo-3/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Veo3 API Reference" -description: "Veo3 API reference for SandBase. Use model google/veo-3/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/google/veo-3/image-to-video" -apiReferenceJson: "{\"title\":\"Veo3\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo 3 by Google - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo-3/image-to-video.\",\"default\":\"google/veo-3/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing how the image should be animated\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image to animate. Should be 720p or higher resolution in 16:9 or 9:16 aspect ratio. If the image is not in 16:9 or 9:16 aspect ratio, it will be cropped to fit.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video.\",\"default\":\"8\",\"constraints\":\"Allowed values: 4, 6, 8\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"auto_fix\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to automatically attempt to fix prompts that fail content policy or other validation checks by rewriting them.\",\"default\":\"false\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo-3/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman looks into the camera, breathes in, then exclaims energetically, \\\\\\\"have you guys checked out Veo3 Image-to-Video on Fal? It's incredible!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/veo-3/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo-3/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman looks into the camera, breathes in, then exclaims energetically, \\\\\\\"have you guys checked out Veo3 Image-to-Video on Fal? It's incredible!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/veo-3/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo-3/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman looks into the camera, breathes in, then exclaims energetically, \\\\\\\"have you guys checked out Veo3 Image-to-Video on Fal? It's incredible!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/veo-3/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo-3/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Veo3" - modelId: "google/veo-3/image-to-video" - vendor: "Google" - vendorSlug: "google" - modelSlug: "veo-3/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-01T16:21:19.645Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/google/veo3.1.md b/model-api-reference/video-generation/google/veo3.1.md deleted file mode 100644 index d1605303..00000000 --- a/model-api-reference/video-generation/google/veo3.1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Veo 3.1 API Reference — Google Veo3.1 API" -description: "Veo 3.1 API reference for SandBase. Use model google/veo3.1 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/google/veo3.1" -apiReferenceJson: "{\"title\":\"Veo 3.1\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo3.1 by Google - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1.\",\"default\":\"google/veo3.1\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p, 4k\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds.\",\"default\":\"8\",\"constraints\":\"Allowed values: 4, 6, 8\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1\\\",\\n \\\"prompt\\\": \\\"Two person street interview in New York City.\\\\nSample Dialogue:\\\\nHost: \\\\\\\"Did you hear the news?\\\\\\\"\\\\nPerson: \\\\\\\"Yes! Veo 3.1 is now available on fal. If you want to see it, go check their website.\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1\\\",\\n \\\"prompt\\\": \\\"Two person street interview in New York City.\\\\nSample Dialogue:\\\\nHost: \\\\\\\"Did you hear the news?\\\\\\\"\\\\nPerson: \\\\\\\"Yes! Veo 3.1 is now available on fal. If you want to see it, go check their website.\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1\\\",\\n \\\"prompt\\\": \\\"Two person street interview in New York City.\\\\nSample Dialogue:\\\\nHost: \\\\\\\"Did you hear the news?\\\\\\\"\\\\nPerson: \\\\\\\"Yes! Veo 3.1 is now available on fal. If you want to see it, go check their website.\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Veo 3.1" - modelId: "google/veo3.1" - vendor: "Google" - vendorSlug: "google" - modelSlug: "veo3.1" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-08T17:01:21.561Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/google/veo3.1/extend-video.md b/model-api-reference/video-generation/google/veo3.1/extend-video.md deleted file mode 100644 index e6ba19b8..00000000 --- a/model-api-reference/video-generation/google/veo3.1/extend-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Veo 3.1 API Reference — Google Veo3.1 / Extend Video API" -description: "Veo 3.1 API reference for SandBase. Use model google/veo3.1/extend-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/google/veo3.1/extend-video" -apiReferenceJson: "{\"title\":\"Veo 3.1\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo3.1 Extend Video is Google's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1/extend-video.\",\"default\":\"google/veo3.1/extend-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing how the video should be extended\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the video to extend. The video should be 720p or 1080p resolution in 16:9 or 9:16 aspect ratio.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video.\",\"default\":\"7\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1/extend-video\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/google/veo3.1/extend-video/input_video_0.mp4\\\",\\n \\\"duration\\\": 7\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1/extend-video\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/google/veo3.1/extend-video/input_video_0.mp4\\\",\\n \\\"duration\\\": 7\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1/extend-video\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/google/veo3.1/extend-video/input_video_0.mp4\\\",\\n \\\"duration\\\": 7\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1/extend-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Veo 3.1" - modelId: "google/veo3.1/extend-video" - vendor: "Google" - vendorSlug: "google" - modelSlug: "veo3.1/extend-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-15T22:50:52.774Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/google/veo3.1/fast.md b/model-api-reference/video-generation/google/veo3.1/fast.md deleted file mode 100644 index b118d562..00000000 --- a/model-api-reference/video-generation/google/veo3.1/fast.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Veo 3.1 Fast API Reference — Google Veo3.1 / Fast API" -description: "Veo 3.1 Fast API reference for SandBase. Use model google/veo3.1/fast with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/google/veo3.1/fast" -apiReferenceJson: "{\"title\":\"Veo 3.1 Fast\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo3.1 Fast is Google's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1/fast.\",\"default\":\"google/veo3.1/fast\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p, 4k\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video.\",\"default\":\"8\",\"constraints\":\"Allowed values: 4, 6, 8\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1/fast\\\",\\n \\\"prompt\\\": \\\"Two person street interview in New York City.\\\\nSample Dialogue:\\\\nHost: \\\\\\\"Did you hear the news?\\\\\\\"\\\\nPerson: \\\\\\\"Yes! Veo 3.1 is now available on fal. If you want to see it, go check their website.\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1/fast\\\",\\n \\\"prompt\\\": \\\"Two person street interview in New York City.\\\\nSample Dialogue:\\\\nHost: \\\\\\\"Did you hear the news?\\\\\\\"\\\\nPerson: \\\\\\\"Yes! Veo 3.1 is now available on fal. If you want to see it, go check their website.\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1/fast\\\",\\n \\\"prompt\\\": \\\"Two person street interview in New York City.\\\\nSample Dialogue:\\\\nHost: \\\\\\\"Did you hear the news?\\\\\\\"\\\\nPerson: \\\\\\\"Yes! Veo 3.1 is now available on fal. If you want to see it, go check their website.\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1/fast\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Veo 3.1 Fast" - modelId: "google/veo3.1/fast" - vendor: "Google" - vendorSlug: "google" - modelSlug: "veo3.1/fast" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-08T17:05:11.177Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/google/veo3.1/fast/extend-video.md b/model-api-reference/video-generation/google/veo3.1/fast/extend-video.md deleted file mode 100644 index 8d6e2a91..00000000 --- a/model-api-reference/video-generation/google/veo3.1/fast/extend-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Veo 3.1 Fast API Reference — Google Veo3.1 / Fast / Extend Video" -description: "Veo 3.1 Fast API reference for SandBase. Use model google/veo3.1/fast/extend-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/google/veo3.1/fast/extend-video" -apiReferenceJson: "{\"title\":\"Veo 3.1 Fast\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo3.1 Fast Extend Video by Google - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1/fast/extend-video.\",\"default\":\"google/veo3.1/fast/extend-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing how the video should be extended\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the video to extend. The video should be 720p or 1080p resolution in 16:9 or 9:16 aspect ratio.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video.\",\"default\":\"7\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1/fast/extend-video\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/google/veo3.1/fast/extend-video/input_video_0.mp4\\\",\\n \\\"duration\\\": 7\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1/fast/extend-video\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/google/veo3.1/fast/extend-video/input_video_0.mp4\\\",\\n \\\"duration\\\": 7\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1/fast/extend-video\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/google/veo3.1/fast/extend-video/input_video_0.mp4\\\",\\n \\\"duration\\\": 7\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1/fast/extend-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Veo 3.1 Fast" - modelId: "google/veo3.1/fast/extend-video" - vendor: "Google" - vendorSlug: "google" - modelSlug: "veo3.1/fast/extend-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-15T22:55:47.939Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/google/veo3.1/fast/first-last-frame-to-video.md b/model-api-reference/video-generation/google/veo3.1/fast/first-last-frame-to-video.md index 284b8703..60ed4153 100644 --- a/model-api-reference/video-generation/google/veo3.1/fast/first-last-frame-to-video.md +++ b/model-api-reference/video-generation/google/veo3.1/fast/first-last-frame-to-video.md @@ -1,12 +1,12 @@ --- -title: "Veo 3.1 Fast API Reference — Google / First Last Frame To Video" -description: "Veo 3.1 Fast API reference for SandBase. Use model google/veo3.1/fast/first-last-frame-to-video with /v1/run; see request and response examples." +title: "Veo 3.1 Fast First-Last Frame to Video API Reference" +description: "Veo 3.1 Fast First-Last Frame to Video API reference for SandBase. Use model google/veo3.1/fast/first-last-frame-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/google/veo3.1/fast/first-last-frame-to-video" -apiReferenceJson: "{\"title\":\"Veo 3.1 Fast\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo3.1 Fast First Last Frame To Video is Google's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1/fast/first-last-frame-to-video.\",\"default\":\"google/veo3.1/fast/first-last-frame-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p, 4k\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video.\",\"default\":\"8\",\"constraints\":\"Allowed values: 4, 6, 8\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"first_frame_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the first frame of the video\"},{\"name\":\"last_frame_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the last frame of the video\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1/fast/first-last-frame-to-video\\\",\\n \\\"prompt\\\": \\\"A woman looks into the camera, breathes in, then exclaims energetically, \\\\\\\"have you guys checked out Veo3.1 First-Last-Frame-to-Video on Fal? It's incredible!\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1/fast/first-last-frame-to-video\\\",\\n \\\"prompt\\\": \\\"A woman looks into the camera, breathes in, then exclaims energetically, \\\\\\\"have you guys checked out Veo3.1 First-Last-Frame-to-Video on Fal? It's incredible!\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1/fast/first-last-frame-to-video\\\",\\n \\\"prompt\\\": \\\"A woman looks into the camera, breathes in, then exclaims energetically, \\\\\\\"have you guys checked out Veo3.1 First-Last-Frame-to-Video on Fal? It's incredible!\\\\\\\"\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1/fast/first-last-frame-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Veo 3.1 Fast First-Last Frame to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo3.1 Fast First Last Frame To Video is Google's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1/fast/first-last-frame-to-video.\",\"default\":\"google/veo3.1/fast/first-last-frame-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"First frame of the video. 720p or higher in 16:9 or 9:16 works best.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":true,\"description\":\"Last frame of the video.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated video in seconds.\",\"default\":\"8\",\"constraints\":\"Allowed values: 4, 6, 8\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p, 4k\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to match the input image.\",\"constraints\":\"Allowed values: 16:9, 9:16\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate synchronized audio. Videos without audio are cheaper.\",\"default\":\"true\"},{\"name\":\"negative_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"What to avoid in the video.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for more reproducible results.\",\"constraints\":\"Range: 0 to 4294967295\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1/fast/first-last-frame-to-video\\\",\\n \\\"prompt\\\": \\\"A woman looks into the camera, breathes in, then exclaims energetically, \\\\\\\"have you guys checked out Veo3.1 First-Last-Frame-to-Video on Fal? It's incredible!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"end_image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1/fast/first-last-frame-to-video\\\",\\n \\\"prompt\\\": \\\"A woman looks into the camera, breathes in, then exclaims energetically, \\\\\\\"have you guys checked out Veo3.1 First-Last-Frame-to-Video on Fal? It's incredible!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"end_image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1/fast/first-last-frame-to-video\\\",\\n \\\"prompt\\\": \\\"A woman looks into the camera, breathes in, then exclaims energetically, \\\\\\\"have you guys checked out Veo3.1 First-Last-Frame-to-Video on Fal? It's incredible!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"end_image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1/fast/first-last-frame-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Veo 3.1 Fast" + modelName: "Veo 3.1 Fast First-Last Frame to Video" modelId: "google/veo3.1/fast/first-last-frame-to-video" vendor: "Google" vendorSlug: "google" diff --git a/model-api-reference/video-generation/google/veo3.1/fast/image-to-video.md b/model-api-reference/video-generation/google/veo3.1/fast/image-to-video.md index 779af57e..8cbed97a 100644 --- a/model-api-reference/video-generation/google/veo3.1/fast/image-to-video.md +++ b/model-api-reference/video-generation/google/veo3.1/fast/image-to-video.md @@ -1,12 +1,12 @@ --- -title: "Veo 3.1 Fast API Reference — Google / Fast / Image To Video" -description: "Veo 3.1 Fast API reference for SandBase. Use model google/veo3.1/fast/image-to-video with /v1/run; see request and response examples." +title: "Veo 3.1 Fast Image to Video API Reference" +description: "Veo 3.1 Fast Image to Video API reference for SandBase. Use model google/veo3.1/fast/image-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/google/veo3.1/fast/image-to-video" -apiReferenceJson: "{\"title\":\"Veo 3.1 Fast\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo 3.1 Fast is Google's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1/fast/image-to-video.\",\"default\":\"google/veo3.1/fast/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image to animate. Should be 720p or higher resolution in 16:9 or 9:16 aspect ratio. If the image is not in 16:9 or 9:16 aspect ratio, it will be cropped to fit.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p, 4k\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds.\",\"default\":\"8\",\"constraints\":\"Allowed values: 4, 6, 8\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1/fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"A monkey and polar bear host a casual podcast about AI inference, bringing their unique perspectives from different environments (tropical vs. arctic) to discuss how AI systems make decisions and process information.\\\\nSample Dialogue:\\\\nMonkey (Banana): \\\\\\\"Welcome back to Bananas & Ice! I am Banana\\\\\\\"\\\\nPolar Bear (Ice): \\\\\\\"And I'm Ice!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/veo/3.1/fast/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1/fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"A monkey and polar bear host a casual podcast about AI inference, bringing their unique perspectives from different environments (tropical vs. arctic) to discuss how AI systems make decisions and process information.\\\\nSample Dialogue:\\\\nMonkey (Banana): \\\\\\\"Welcome back to Bananas & Ice! I am Banana\\\\\\\"\\\\nPolar Bear (Ice): \\\\\\\"And I'm Ice!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/veo/3.1/fast/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1/fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"A monkey and polar bear host a casual podcast about AI inference, bringing their unique perspectives from different environments (tropical vs. arctic) to discuss how AI systems make decisions and process information.\\\\nSample Dialogue:\\\\nMonkey (Banana): \\\\\\\"Welcome back to Bananas & Ice! I am Banana\\\\\\\"\\\\nPolar Bear (Ice): \\\\\\\"And I'm Ice!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/veo/3.1/fast/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1/fast/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Veo 3.1 Fast Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo 3.1 Fast is Google's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1/fast/image-to-video.\",\"default\":\"google/veo3.1/fast/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"First frame of the video. 720p or higher in 16:9 or 9:16 works best.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated video in seconds.\",\"default\":\"8\",\"constraints\":\"Allowed values: 4, 6, 8\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p, 4k\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to match the input image.\",\"constraints\":\"Allowed values: 16:9, 9:16\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate synchronized audio. Videos without audio are cheaper.\",\"default\":\"true\"},{\"name\":\"negative_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"What to avoid in the video.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for more reproducible results.\",\"constraints\":\"Range: 0 to 4294967295\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1/fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"A monkey and polar bear host a casual podcast about AI inference, bringing their unique perspectives from different environments (tropical vs. arctic) to discuss how AI systems make decisions and process information.\\\\nSample Dialogue:\\\\nMonkey (Banana): \\\\\\\"Welcome back to Bananas & Ice! I am Banana\\\\\\\"\\\\nPolar Bear (Ice): \\\\\\\"And I'm Ice!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1/fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"A monkey and polar bear host a casual podcast about AI inference, bringing their unique perspectives from different environments (tropical vs. arctic) to discuss how AI systems make decisions and process information.\\\\nSample Dialogue:\\\\nMonkey (Banana): \\\\\\\"Welcome back to Bananas & Ice! I am Banana\\\\\\\"\\\\nPolar Bear (Ice): \\\\\\\"And I'm Ice!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1/fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"A monkey and polar bear host a casual podcast about AI inference, bringing their unique perspectives from different environments (tropical vs. arctic) to discuss how AI systems make decisions and process information.\\\\nSample Dialogue:\\\\nMonkey (Banana): \\\\\\\"Welcome back to Bananas & Ice! I am Banana\\\\\\\"\\\\nPolar Bear (Ice): \\\\\\\"And I'm Ice!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1/fast/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Veo 3.1 Fast" + modelName: "Veo 3.1 Fast Image to Video" modelId: "google/veo3.1/fast/image-to-video" vendor: "Google" vendorSlug: "google" diff --git a/model-api-reference/video-generation/google/veo3.1/fast/reference-to-video.md b/model-api-reference/video-generation/google/veo3.1/fast/reference-to-video.md index baedd24d..adc3aac3 100644 --- a/model-api-reference/video-generation/google/veo3.1/fast/reference-to-video.md +++ b/model-api-reference/video-generation/google/veo3.1/fast/reference-to-video.md @@ -1,12 +1,12 @@ --- -title: "Veo 3.1 Fast API Reference — Google / Fast / Reference To Video" -description: "Veo 3.1 Fast API reference for SandBase. Use model google/veo3.1/fast/reference-to-video with /v1/run; see request and response examples." +title: "Veo 3.1 Fast Reference to Video API Reference" +description: "Veo 3.1 Fast Reference to Video API reference for SandBase. Use model google/veo3.1/fast/reference-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/google/veo3.1/fast/reference-to-video" -apiReferenceJson: "{\"title\":\"Veo 3.1 Fast\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo3.1 Fast by Google - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1/fast/reference-to-video.\",\"default\":\"google/veo3.1/fast/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"URLs of the reference images to use for consistent subject appearance\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p, 4k\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video.\",\"default\":\"8\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1/fast/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A chimpanzee wearing overalls frolics in the grassy field, gently playing with the butterflies. In the background, a circus tent and carousel beckon.\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1/fast/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A chimpanzee wearing overalls frolics in the grassy field, gently playing with the butterflies. In the background, a circus tent and carousel beckon.\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1/fast/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A chimpanzee wearing overalls frolics in the grassy field, gently playing with the butterflies. In the background, a circus tent and carousel beckon.\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1/fast/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Veo 3.1 Fast Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo3.1 Fast by Google - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1/fast/reference-to-video.\",\"default\":\"google/veo3.1/fast/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"Up to 3 reference images of subjects to keep consistent in the video.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Reference-to-video only supports 8 seconds.\",\"default\":\"8\",\"constraints\":\"Allowed values: 8\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p, 4k\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate synchronized audio. Videos without audio are cheaper.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for more reproducible results.\",\"constraints\":\"Range: 0 to 4294967295\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1/fast/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A chimpanzee wearing overalls frolics in the grassy field, gently playing with the butterflies. In the background, a circus tent and carousel beckon.\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/input.png\\\"\\n ],\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1/fast/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A chimpanzee wearing overalls frolics in the grassy field, gently playing with the butterflies. In the background, a circus tent and carousel beckon.\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/input.png\\\"\\n ],\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1/fast/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A chimpanzee wearing overalls frolics in the grassy field, gently playing with the butterflies. In the background, a circus tent and carousel beckon.\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/input.png\\\"\\n ],\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1/fast/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Veo 3.1 Fast" + modelName: "Veo 3.1 Fast Reference to Video" modelId: "google/veo3.1/fast/reference-to-video" vendor: "Google" vendorSlug: "google" @@ -14,7 +14,7 @@ seo: protocol: "Video Generation Reference" endpoint: "/v1/run" publishedAt: "2026-05-11T15:37:05.906Z" - capabilities: ["image-to-video"] + capabilities: ["reference-to-video"] category: "Video Generation" --- diff --git a/model-api-reference/video-generation/google/veo3.1/fast/text-to-video.md b/model-api-reference/video-generation/google/veo3.1/fast/text-to-video.md new file mode 100644 index 00000000..c9f28548 --- /dev/null +++ b/model-api-reference/video-generation/google/veo3.1/fast/text-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Veo 3.1 Fast Text to Video API Reference" +description: "Veo 3.1 Fast Text to Video API reference for SandBase. Use model google/veo3.1/fast/text-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/google/veo3.1/fast/text-to-video" +apiReferenceJson: "{\"title\":\"Veo 3.1 Fast Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo3.1 Fast is Google's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1/fast/text-to-video.\",\"default\":\"google/veo3.1/fast/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated video in seconds.\",\"default\":\"8\",\"constraints\":\"Allowed values: 4, 6, 8\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p, 4k\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate synchronized audio. Videos without audio are cheaper.\",\"default\":\"true\"},{\"name\":\"negative_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"What to avoid in the video.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for more reproducible results.\",\"constraints\":\"Range: 0 to 4294967295\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1/fast/text-to-video\\\",\\n \\\"prompt\\\": \\\"Two person street interview in New York City.\\\\nSample Dialogue:\\\\nHost: \\\\\\\"Did you hear the news?\\\\\\\"\\\\nPerson: \\\\\\\"Yes! Veo 3.1 is now available on fal. If you want to see it, go check their website.\\\\\\\"\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1/fast/text-to-video\\\",\\n \\\"prompt\\\": \\\"Two person street interview in New York City.\\\\nSample Dialogue:\\\\nHost: \\\\\\\"Did you hear the news?\\\\\\\"\\\\nPerson: \\\\\\\"Yes! Veo 3.1 is now available on fal. If you want to see it, go check their website.\\\\\\\"\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1/fast/text-to-video\\\",\\n \\\"prompt\\\": \\\"Two person street interview in New York City.\\\\nSample Dialogue:\\\\nHost: \\\\\\\"Did you hear the news?\\\\\\\"\\\\nPerson: \\\\\\\"Yes! Veo 3.1 is now available on fal. If you want to see it, go check their website.\\\\\\\"\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1/fast/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Veo 3.1 Fast Text to Video" + modelId: "google/veo3.1/fast/text-to-video" + vendor: "Google" + vendorSlug: "google" + modelSlug: "veo3.1/fast/text-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2025-10-08T17:05:11.177Z" + capabilities: ["text-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/google/veo3.1/fast/video-extend.md b/model-api-reference/video-generation/google/veo3.1/fast/video-extend.md new file mode 100644 index 00000000..3f5feace --- /dev/null +++ b/model-api-reference/video-generation/google/veo3.1/fast/video-extend.md @@ -0,0 +1,21 @@ +--- +title: "Veo 3.1 Fast Video Extend API Reference" +description: "Veo 3.1 Fast Video Extend API reference for SandBase. Use model google/veo3.1/fast/video-extend with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/google/veo3.1/fast/video-extend" +apiReferenceJson: "{\"title\":\"Veo 3.1 Fast Video Extend\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo3.1 Fast Extend Video by Google - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1/fast/video-extend.\",\"default\":\"google/veo3.1/fast/video-extend\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing how the video should be extended\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Video to extend: MP4 at 24 fps, 720p (for example a Veo output). Veo appends the requested duration to it.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Length of the generated extension in seconds.\",\"default\":\"7\",\"constraints\":\"Allowed values: 7\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution. Extensions are generated at 720p.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to match the input video.\",\"constraints\":\"Allowed values: 16:9, 9:16\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate synchronized audio. Videos without audio are cheaper.\",\"default\":\"true\"},{\"name\":\"negative_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"What to avoid in the video.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for more reproducible results.\",\"constraints\":\"Range: 0 to 4294967295\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1/fast/video-extend\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\",\\n \\\"duration\\\": 7,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1/fast/video-extend\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\",\\n \\\"duration\\\": 7,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1/fast/video-extend\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\",\\n \\\"duration\\\": 7,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1/fast/video-extend\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Veo 3.1 Fast Video Extend" + modelId: "google/veo3.1/fast/video-extend" + vendor: "Google" + vendorSlug: "google" + modelSlug: "veo3.1/fast/video-extend" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2025-12-15T22:55:47.939Z" + capabilities: ["video-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/google/veo3.1/first-last-frame-to-video.md b/model-api-reference/video-generation/google/veo3.1/first-last-frame-to-video.md index a4655ae9..ab62bc21 100644 --- a/model-api-reference/video-generation/google/veo3.1/first-last-frame-to-video.md +++ b/model-api-reference/video-generation/google/veo3.1/first-last-frame-to-video.md @@ -1,12 +1,12 @@ --- -title: "Veo 3.1 API Reference — Google Veo3.1 / First Last Frame To Video" -description: "Veo 3.1 API reference for SandBase. Use model google/veo3.1/first-last-frame-to-video with /v1/run; see request and response examples." +title: "Veo 3.1 First-Last Frame to Video API Reference" +description: "Veo 3.1 First-Last Frame to Video API reference for SandBase. Use model google/veo3.1/first-last-frame-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/google/veo3.1/first-last-frame-to-video" -apiReferenceJson: "{\"title\":\"Veo 3.1\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo3.1 First Last Frame To Video by Google - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1/first-last-frame-to-video.\",\"default\":\"google/veo3.1/first-last-frame-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p, 4k\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video.\",\"default\":\"8\",\"constraints\":\"Allowed values: 4, 6, 8\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"first_frame_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the first frame of the video\"},{\"name\":\"last_frame_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the last frame of the video\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1/first-last-frame-to-video\\\",\\n \\\"prompt\\\": \\\"A woman looks into the camera, breathes in, then exclaims energetically, \\\\\\\"have you guys checked out Veo3.1 First-Last-Frame-to-Video on Fal? It's incredible!\\\\\\\"\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1/first-last-frame-to-video\\\",\\n \\\"prompt\\\": \\\"A woman looks into the camera, breathes in, then exclaims energetically, \\\\\\\"have you guys checked out Veo3.1 First-Last-Frame-to-Video on Fal? It's incredible!\\\\\\\"\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1/first-last-frame-to-video\\\",\\n \\\"prompt\\\": \\\"A woman looks into the camera, breathes in, then exclaims energetically, \\\\\\\"have you guys checked out Veo3.1 First-Last-Frame-to-Video on Fal? It's incredible!\\\\\\\"\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1/first-last-frame-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Veo 3.1 First-Last Frame to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo3.1 First Last Frame To Video by Google - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1/first-last-frame-to-video.\",\"default\":\"google/veo3.1/first-last-frame-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"First frame of the video. 720p or higher in 16:9 or 9:16 works best.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":true,\"description\":\"Last frame of the video.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated video in seconds.\",\"default\":\"8\",\"constraints\":\"Allowed values: 4, 6, 8\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p, 4k\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to match the input image.\",\"constraints\":\"Allowed values: 16:9, 9:16\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate synchronized audio. Videos without audio are cheaper.\",\"default\":\"true\"},{\"name\":\"negative_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"What to avoid in the video.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for more reproducible results.\",\"constraints\":\"Range: 0 to 4294967295\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1/first-last-frame-to-video\\\",\\n \\\"prompt\\\": \\\"A woman looks into the camera, breathes in, then exclaims energetically, \\\\\\\"have you guys checked out Veo3.1 First-Last-Frame-to-Video on Fal? It's incredible!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"end_image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1/first-last-frame-to-video\\\",\\n \\\"prompt\\\": \\\"A woman looks into the camera, breathes in, then exclaims energetically, \\\\\\\"have you guys checked out Veo3.1 First-Last-Frame-to-Video on Fal? It's incredible!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"end_image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1/first-last-frame-to-video\\\",\\n \\\"prompt\\\": \\\"A woman looks into the camera, breathes in, then exclaims energetically, \\\\\\\"have you guys checked out Veo3.1 First-Last-Frame-to-Video on Fal? It's incredible!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"end_image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1/first-last-frame-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Veo 3.1" + modelName: "Veo 3.1 First-Last Frame to Video" modelId: "google/veo3.1/first-last-frame-to-video" vendor: "Google" vendorSlug: "google" diff --git a/model-api-reference/video-generation/google/veo3.1/image-to-video.md b/model-api-reference/video-generation/google/veo3.1/image-to-video.md index fda8de83..e225f5b5 100644 --- a/model-api-reference/video-generation/google/veo3.1/image-to-video.md +++ b/model-api-reference/video-generation/google/veo3.1/image-to-video.md @@ -1,12 +1,12 @@ --- -title: "Veo 3.1 API Reference — Google Veo3.1 / Image To Video API" -description: "Veo 3.1 API reference for SandBase. Use model google/veo3.1/image-to-video with /v1/run; see request and response examples." +title: "Veo 3.1 Image to Video API Reference" +description: "Veo 3.1 Image to Video API reference for SandBase. Use model google/veo3.1/image-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/google/veo3.1/image-to-video" -apiReferenceJson: "{\"title\":\"Veo 3.1\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo 3.1 by Google - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1/image-to-video.\",\"default\":\"google/veo3.1/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image to animate. Should be 720p or higher resolution in 16:9 or 9:16 aspect ratio. If the image is not in 16:9 or 9:16 aspect ratio, it will be cropped to fit.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p, 4k\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds.\",\"default\":\"8\",\"constraints\":\"Allowed values: 4, 6, 8\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1/image-to-video\\\",\\n \\\"prompt\\\": \\\"A monkey and polar bear host a casual podcast about AI inference, bringing their unique perspectives from different environments (tropical vs. arctic) to discuss how AI systems make decisions and process information.\\\\nSample Dialogue:\\\\nMonkey (Banana): \\\\\\\"Welcome back to Bananas & Ice! I am Banana\\\\\\\"\\\\nPolar Bear (Ice): \\\\\\\"And I'm Ice!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/veo/3.1/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1/image-to-video\\\",\\n \\\"prompt\\\": \\\"A monkey and polar bear host a casual podcast about AI inference, bringing their unique perspectives from different environments (tropical vs. arctic) to discuss how AI systems make decisions and process information.\\\\nSample Dialogue:\\\\nMonkey (Banana): \\\\\\\"Welcome back to Bananas & Ice! I am Banana\\\\\\\"\\\\nPolar Bear (Ice): \\\\\\\"And I'm Ice!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/veo/3.1/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1/image-to-video\\\",\\n \\\"prompt\\\": \\\"A monkey and polar bear host a casual podcast about AI inference, bringing their unique perspectives from different environments (tropical vs. arctic) to discuss how AI systems make decisions and process information.\\\\nSample Dialogue:\\\\nMonkey (Banana): \\\\\\\"Welcome back to Bananas & Ice! I am Banana\\\\\\\"\\\\nPolar Bear (Ice): \\\\\\\"And I'm Ice!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/veo/3.1/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Veo 3.1 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo 3.1 by Google - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1/image-to-video.\",\"default\":\"google/veo3.1/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"First frame of the video. 720p or higher in 16:9 or 9:16 works best.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated video in seconds.\",\"default\":\"8\",\"constraints\":\"Allowed values: 4, 6, 8\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p, 4k\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to match the input image.\",\"constraints\":\"Allowed values: 16:9, 9:16\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate synchronized audio. Videos without audio are cheaper.\",\"default\":\"true\"},{\"name\":\"negative_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"What to avoid in the video.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for more reproducible results.\",\"constraints\":\"Range: 0 to 4294967295\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1/image-to-video\\\",\\n \\\"prompt\\\": \\\"A monkey and polar bear host a casual podcast about AI inference, bringing their unique perspectives from different environments (tropical vs. arctic) to discuss how AI systems make decisions and process information.\\\\nSample Dialogue:\\\\nMonkey (Banana): \\\\\\\"Welcome back to Bananas & Ice! I am Banana\\\\\\\"\\\\nPolar Bear (Ice): \\\\\\\"And I'm Ice!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1/image-to-video\\\",\\n \\\"prompt\\\": \\\"A monkey and polar bear host a casual podcast about AI inference, bringing their unique perspectives from different environments (tropical vs. arctic) to discuss how AI systems make decisions and process information.\\\\nSample Dialogue:\\\\nMonkey (Banana): \\\\\\\"Welcome back to Bananas & Ice! I am Banana\\\\\\\"\\\\nPolar Bear (Ice): \\\\\\\"And I'm Ice!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1/image-to-video\\\",\\n \\\"prompt\\\": \\\"A monkey and polar bear host a casual podcast about AI inference, bringing their unique perspectives from different environments (tropical vs. arctic) to discuss how AI systems make decisions and process information.\\\\nSample Dialogue:\\\\nMonkey (Banana): \\\\\\\"Welcome back to Bananas & Ice! I am Banana\\\\\\\"\\\\nPolar Bear (Ice): \\\\\\\"And I'm Ice!\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Veo 3.1" + modelName: "Veo 3.1 Image to Video" modelId: "google/veo3.1/image-to-video" vendor: "Google" vendorSlug: "google" diff --git a/model-api-reference/video-generation/google/veo3.1/lite.md b/model-api-reference/video-generation/google/veo3.1/lite.md deleted file mode 100644 index 387d19ea..00000000 --- a/model-api-reference/video-generation/google/veo3.1/lite.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Veo3.1 Lite Text to Video API Reference" -description: "Veo3.1 Lite Text to Video API reference for SandBase. Use model google/veo3.1/lite with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/google/veo3.1/lite" -apiReferenceJson: "{\"title\":\"Veo3.1 Lite Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo3.1 Lite is Google's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1/lite.\",\"default\":\"google/veo3.1/lite\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video.\",\"default\":\"8\",\"constraints\":\"Allowed values: 4, 6, 8\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"auto_fix\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to automatically attempt to fix prompts that fail content policy or other validation checks by rewriting them.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1/lite\\\",\\n \\\"prompt\\\": \\\"A massive blue whale glides through crystal-clear deep ocean water, sunlight rays piercing through the surface above, bioluminescent plankton scattered around, cinematic slow motion\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1/lite\\\",\\n \\\"prompt\\\": \\\"A massive blue whale glides through crystal-clear deep ocean water, sunlight rays piercing through the surface above, bioluminescent plankton scattered around, cinematic slow motion\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1/lite\\\",\\n \\\"prompt\\\": \\\"A massive blue whale glides through crystal-clear deep ocean water, sunlight rays piercing through the surface above, bioluminescent plankton scattered around, cinematic slow motion\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1/lite\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Veo3.1 Lite Text to Video" - modelId: "google/veo3.1/lite" - vendor: "Google" - vendorSlug: "google" - modelSlug: "veo3.1/lite" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-31T18:33:44.437Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/google/veo3.1/lite/first-last-frame-to-video.md b/model-api-reference/video-generation/google/veo3.1/lite/first-last-frame-to-video.md index 381c8a61..03c95717 100644 --- a/model-api-reference/video-generation/google/veo3.1/lite/first-last-frame-to-video.md +++ b/model-api-reference/video-generation/google/veo3.1/lite/first-last-frame-to-video.md @@ -1,12 +1,12 @@ --- -title: "Veo3.1 Lite FLF API Reference" -description: "Veo3.1 Lite FLF API reference for SandBase. Use model google/veo3.1/lite/first-last-frame-to-video with /v1/run; see request and response examples." +title: "Veo 3.1 Lite First-Last Frame to Video API Reference" +description: "Veo 3.1 Lite First-Last Frame to Video API reference for SandBase. Use model google/veo3.1/lite/first-last-frame-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/google/veo3.1/lite/first-last-frame-to-video" -apiReferenceJson: "{\"title\":\"Veo3.1 Lite FLF\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo3.1 Lite First Last Frame To Video is Google's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1/lite/first-last-frame-to-video.\",\"default\":\"google/veo3.1/lite/first-last-frame-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video.\",\"default\":\"8\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"last_frame_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the last frame of the video\"},{\"name\":\"first_frame_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the first frame of the video\"},{\"name\":\"auto_fix\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to automatically attempt to fix prompts that fail content policy or other validation checks by rewriting them.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1/lite/first-last-frame-to-video\\\",\\n \\\"prompt\\\": \\\"A smooth transition between the two frames with natural motion.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1/lite/first-last-frame-to-video\\\",\\n \\\"prompt\\\": \\\"A smooth transition between the two frames with natural motion.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1/lite/first-last-frame-to-video\\\",\\n \\\"prompt\\\": \\\"A smooth transition between the two frames with natural motion.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1/lite/first-last-frame-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Veo 3.1 Lite First-Last Frame to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo3.1 Lite First Last Frame To Video is Google's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1/lite/first-last-frame-to-video.\",\"default\":\"google/veo3.1/lite/first-last-frame-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"First frame of the video. 720p or higher in 16:9 or 9:16 works best.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":true,\"description\":\"Last frame of the video.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated video in seconds.\",\"default\":\"8\",\"constraints\":\"Allowed values: 4, 6, 8\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to match the input image.\",\"constraints\":\"Allowed values: 16:9, 9:16\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate synchronized audio. Videos without audio are cheaper.\",\"default\":\"true\"},{\"name\":\"negative_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"What to avoid in the video.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for more reproducible results.\",\"constraints\":\"Range: 0 to 4294967295\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1/lite/first-last-frame-to-video\\\",\\n \\\"prompt\\\": \\\"A smooth transition between the two frames with natural motion.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"end_image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1/lite/first-last-frame-to-video\\\",\\n \\\"prompt\\\": \\\"A smooth transition between the two frames with natural motion.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"end_image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1/lite/first-last-frame-to-video\\\",\\n \\\"prompt\\\": \\\"A smooth transition between the two frames with natural motion.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"end_image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1/lite/first-last-frame-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Veo3.1 Lite FLF" + modelName: "Veo 3.1 Lite First-Last Frame to Video" modelId: "google/veo3.1/lite/first-last-frame-to-video" vendor: "Google" vendorSlug: "google" diff --git a/model-api-reference/video-generation/google/veo3.1/lite/image-to-video.md b/model-api-reference/video-generation/google/veo3.1/lite/image-to-video.md index eabd7531..6f9e7a6c 100644 --- a/model-api-reference/video-generation/google/veo3.1/lite/image-to-video.md +++ b/model-api-reference/video-generation/google/veo3.1/lite/image-to-video.md @@ -1,12 +1,12 @@ --- -title: "Veo3.1 Lite Image to Video API Reference" -description: "Veo3.1 Lite Image to Video API reference for SandBase. Use model google/veo3.1/lite/image-to-video with /v1/run; see request and response examples." +title: "Veo 3.1 Lite Image to Video API Reference" +description: "Veo 3.1 Lite Image to Video API reference for SandBase. Use model google/veo3.1/lite/image-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/google/veo3.1/lite/image-to-video" -apiReferenceJson: "{\"title\":\"Veo3.1 Lite Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo3.1 Lite by Google - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1/lite/image-to-video.\",\"default\":\"google/veo3.1/lite/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing how the image should be animated\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image to animate. Should be 720p or higher resolution in 16:9 or 9:16 aspect ratio.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video.\",\"default\":\"8\",\"constraints\":\"Allowed values: 4, 6, 8\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1/lite/image-to-video\\\",\\n \\\"prompt\\\": \\\"The subject turns to face the camera and smiles warmly.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/veo3.1/lite/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1/lite/image-to-video\\\",\\n \\\"prompt\\\": \\\"The subject turns to face the camera and smiles warmly.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/veo3.1/lite/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1/lite/image-to-video\\\",\\n \\\"prompt\\\": \\\"The subject turns to face the camera and smiles warmly.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/google/veo3.1/lite/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1/lite/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Veo 3.1 Lite Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo3.1 Lite by Google - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1/lite/image-to-video.\",\"default\":\"google/veo3.1/lite/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing how the image should be animated\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"First frame of the video. 720p or higher in 16:9 or 9:16 works best.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated video in seconds.\",\"default\":\"8\",\"constraints\":\"Allowed values: 4, 6, 8\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to match the input image.\",\"constraints\":\"Allowed values: 16:9, 9:16\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate synchronized audio. Videos without audio are cheaper.\",\"default\":\"true\"},{\"name\":\"negative_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"What to avoid in the video.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for more reproducible results.\",\"constraints\":\"Range: 0 to 4294967295\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1/lite/image-to-video\\\",\\n \\\"prompt\\\": \\\"The subject turns to face the camera and smiles warmly.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1/lite/image-to-video\\\",\\n \\\"prompt\\\": \\\"The subject turns to face the camera and smiles warmly.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1/lite/image-to-video\\\",\\n \\\"prompt\\\": \\\"The subject turns to face the camera and smiles warmly.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1/lite/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Veo3.1 Lite Image to Video" + modelName: "Veo 3.1 Lite Image to Video" modelId: "google/veo3.1/lite/image-to-video" vendor: "Google" vendorSlug: "google" diff --git a/model-api-reference/video-generation/google/veo3.1/lite/text-to-video.md b/model-api-reference/video-generation/google/veo3.1/lite/text-to-video.md new file mode 100644 index 00000000..35fa401b --- /dev/null +++ b/model-api-reference/video-generation/google/veo3.1/lite/text-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Veo 3.1 Lite Text to Video API Reference" +description: "Veo 3.1 Lite Text to Video API reference for SandBase. Use model google/veo3.1/lite/text-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/google/veo3.1/lite/text-to-video" +apiReferenceJson: "{\"title\":\"Veo 3.1 Lite Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo3.1 Lite is Google's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1/lite/text-to-video.\",\"default\":\"google/veo3.1/lite/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated video in seconds.\",\"default\":\"8\",\"constraints\":\"Allowed values: 4, 6, 8\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate synchronized audio. Videos without audio are cheaper.\",\"default\":\"true\"},{\"name\":\"negative_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"What to avoid in the video.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for more reproducible results.\",\"constraints\":\"Range: 0 to 4294967295\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1/lite/text-to-video\\\",\\n \\\"prompt\\\": \\\"A massive blue whale glides through crystal-clear deep ocean water, sunlight rays piercing through the surface above, bioluminescent plankton scattered around, cinematic slow motion\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1/lite/text-to-video\\\",\\n \\\"prompt\\\": \\\"A massive blue whale glides through crystal-clear deep ocean water, sunlight rays piercing through the surface above, bioluminescent plankton scattered around, cinematic slow motion\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1/lite/text-to-video\\\",\\n \\\"prompt\\\": \\\"A massive blue whale glides through crystal-clear deep ocean water, sunlight rays piercing through the surface above, bioluminescent plankton scattered around, cinematic slow motion\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1/lite/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Veo 3.1 Lite Text to Video" + modelId: "google/veo3.1/lite/text-to-video" + vendor: "Google" + vendorSlug: "google" + modelSlug: "veo3.1/lite/text-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-03-31T18:33:44.437Z" + capabilities: ["text-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/google/veo3.1/reference-to-video.md b/model-api-reference/video-generation/google/veo3.1/reference-to-video.md index 953ca5dd..d2e7398c 100644 --- a/model-api-reference/video-generation/google/veo3.1/reference-to-video.md +++ b/model-api-reference/video-generation/google/veo3.1/reference-to-video.md @@ -1,12 +1,12 @@ --- -title: "Veo 3.1 API Reference — Google Veo3.1 / Reference To Video API" -description: "Veo 3.1 API reference for SandBase. Use model google/veo3.1/reference-to-video with /v1/run; see request and response examples." +title: "Veo 3.1 Reference to Video API Reference" +description: "Veo 3.1 Reference to Video API reference for SandBase. Use model google/veo3.1/reference-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/google/veo3.1/reference-to-video" -apiReferenceJson: "{\"title\":\"Veo 3.1\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo3.1 is Google's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1/reference-to-video.\",\"default\":\"google/veo3.1/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"URLs of the reference images to use for consistent subject appearance\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p, 4k\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video.\",\"default\":\"8\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A chimpanzee wearing overalls frolics in the grassy field, gently playing with the butterflies. In the background, a circus tent and carousel beckon.\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A chimpanzee wearing overalls frolics in the grassy field, gently playing with the butterflies. In the background, a circus tent and carousel beckon.\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A chimpanzee wearing overalls frolics in the grassy field, gently playing with the butterflies. In the background, a circus tent and carousel beckon.\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Veo 3.1 Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo3.1 is Google's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1/reference-to-video.\",\"default\":\"google/veo3.1/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"Up to 3 reference images of subjects to keep consistent in the video.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Reference-to-video only supports 8 seconds.\",\"default\":\"8\",\"constraints\":\"Allowed values: 8\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p, 4k\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate synchronized audio. Videos without audio are cheaper.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for more reproducible results.\",\"constraints\":\"Range: 0 to 4294967295\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A chimpanzee wearing overalls frolics in the grassy field, gently playing with the butterflies. In the background, a circus tent and carousel beckon.\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/input.png\\\"\\n ],\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A chimpanzee wearing overalls frolics in the grassy field, gently playing with the butterflies. In the background, a circus tent and carousel beckon.\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/input.png\\\"\\n ],\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A chimpanzee wearing overalls frolics in the grassy field, gently playing with the butterflies. In the background, a circus tent and carousel beckon.\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/input.png\\\"\\n ],\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Veo 3.1" + modelName: "Veo 3.1 Reference to Video" modelId: "google/veo3.1/reference-to-video" vendor: "Google" vendorSlug: "google" @@ -14,7 +14,7 @@ seo: protocol: "Video Generation Reference" endpoint: "/v1/run" publishedAt: "2025-10-08T17:07:06.022Z" - capabilities: ["image-to-video"] + capabilities: ["reference-to-video"] category: "Video Generation" --- diff --git a/model-api-reference/video-generation/google/veo3.1/text-to-video.md b/model-api-reference/video-generation/google/veo3.1/text-to-video.md new file mode 100644 index 00000000..96958451 --- /dev/null +++ b/model-api-reference/video-generation/google/veo3.1/text-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Veo 3.1 Text to Video API Reference" +description: "Veo 3.1 Text to Video API reference for SandBase. Use model google/veo3.1/text-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/google/veo3.1/text-to-video" +apiReferenceJson: "{\"title\":\"Veo 3.1 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo3.1 by Google - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1/text-to-video.\",\"default\":\"google/veo3.1/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated video in seconds.\",\"default\":\"8\",\"constraints\":\"Allowed values: 4, 6, 8\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p, 4k\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate synchronized audio. Videos without audio are cheaper.\",\"default\":\"true\"},{\"name\":\"negative_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"What to avoid in the video.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for more reproducible results.\",\"constraints\":\"Range: 0 to 4294967295\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1/text-to-video\\\",\\n \\\"prompt\\\": \\\"Two person street interview in New York City.\\\\nSample Dialogue:\\\\nHost: \\\\\\\"Did you hear the news?\\\\\\\"\\\\nPerson: \\\\\\\"Yes! Veo 3.1 is now available on fal. If you want to see it, go check their website.\\\\\\\"\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1/text-to-video\\\",\\n \\\"prompt\\\": \\\"Two person street interview in New York City.\\\\nSample Dialogue:\\\\nHost: \\\\\\\"Did you hear the news?\\\\\\\"\\\\nPerson: \\\\\\\"Yes! Veo 3.1 is now available on fal. If you want to see it, go check their website.\\\\\\\"\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1/text-to-video\\\",\\n \\\"prompt\\\": \\\"Two person street interview in New York City.\\\\nSample Dialogue:\\\\nHost: \\\\\\\"Did you hear the news?\\\\\\\"\\\\nPerson: \\\\\\\"Yes! Veo 3.1 is now available on fal. If you want to see it, go check their website.\\\\\\\"\\\",\\n \\\"duration\\\": 8,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Veo 3.1 Text to Video" + modelId: "google/veo3.1/text-to-video" + vendor: "Google" + vendorSlug: "google" + modelSlug: "veo3.1/text-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2025-10-08T17:01:21.561Z" + capabilities: ["text-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/google/veo3.1/video-extend.md b/model-api-reference/video-generation/google/veo3.1/video-extend.md new file mode 100644 index 00000000..7d61dc15 --- /dev/null +++ b/model-api-reference/video-generation/google/veo3.1/video-extend.md @@ -0,0 +1,21 @@ +--- +title: "Veo 3.1 Video Extend API Reference" +description: "Veo 3.1 Video Extend API reference for SandBase. Use model google/veo3.1/video-extend with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/google/veo3.1/video-extend" +apiReferenceJson: "{\"title\":\"Veo 3.1 Video Extend\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Veo3.1 Extend Video is Google's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to google/veo3.1/video-extend.\",\"default\":\"google/veo3.1/video-extend\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing how the video should be extended\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Video to extend: MP4 at 24 fps, 720p (for example a Veo output). Veo appends the requested duration to it.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Length of the generated extension in seconds.\",\"default\":\"7\",\"constraints\":\"Allowed values: 7\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution. Extensions are generated at 720p.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to match the input video.\",\"constraints\":\"Allowed values: 16:9, 9:16\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate synchronized audio. Videos without audio are cheaper.\",\"default\":\"true\"},{\"name\":\"negative_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"What to avoid in the video.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for more reproducible results.\",\"constraints\":\"Range: 0 to 4294967295\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"google/veo3.1/video-extend\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\",\\n \\\"duration\\\": 7,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"google/veo3.1/video-extend\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\",\\n \\\"duration\\\": 7,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"google/veo3.1/video-extend\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\",\\n \\\"duration\\\": 7,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"google/veo3.1/video-extend\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Veo 3.1 Video Extend" + modelId: "google/veo3.1/video-extend" + vendor: "Google" + vendorSlug: "google" + modelSlug: "veo3.1/video-extend" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2025-12-15T22:50:52.774Z" + capabilities: ["video-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/heygen/avatar5/digital-twin.md b/model-api-reference/video-generation/heygen/avatar5/digital-twin.md index 61be66f7..960e0541 100644 --- a/model-api-reference/video-generation/heygen/avatar5/digital-twin.md +++ b/model-api-reference/video-generation/heygen/avatar5/digital-twin.md @@ -1,12 +1,12 @@ --- -title: "Heygen v5 Digital Twin API Reference" -description: "Heygen v5 Digital Twin API reference for SandBase. Use model heygen/avatar5/digital-twin with /v1/run; see request and response examples." +title: "HeyGen Avatar 5 Digital Twin API Reference" +description: "HeyGen Avatar 5 Digital Twin API reference for SandBase. Use model heygen/avatar5/digital-twin with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/heygen/avatar5/digital-twin" -apiReferenceJson: "{\"title\":\"Heygen v5 Digital Twin\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Avatar5 Digital Twin by HeyGen - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to heygen/avatar5/digital-twin.\",\"default\":\"heygen/avatar5/digital-twin\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text the avatar will speak. Required when ``audio_url`` is not provided.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"HTTP(S) URL of an audio file for the avatar to lip-sync to. When provided, the avatar uses this audio instead of text-to-speech and ``prompt``/``voice`` are ignored.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution preset.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p, 4k\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output container format. 'webm' produces a transparent video (automatically removes the background) and ignores the ``background`` field.\",\"default\":\"mp4\",\"constraints\":\"Allowed values: mp4, webm\"},{\"name\":\"remove_background\",\"type\":\"boolean\",\"required\":false,\"description\":\"Remove the avatar's background. Requires a matting-enabled avatar.\",\"default\":\"false\"},{\"name\":\"avatar\",\"type\":\"string\",\"required\":false,\"description\":\"Name of the Avatar V-eligible avatar to use.\",\"default\":\"Abigail Sofa Front\"},{\"name\":\"voice\",\"type\":\"string\",\"required\":false,\"description\":\"Name of the text-to-speech voice to use for the avatar when ``audio_url`` is not provided.\",\"default\":\"Warm Pro Narrator\",\"constraints\":\"Allowed values: Warm Pro Narrator, Chill Brian, Ivy, John Doe, Monika Sogam, Hope , Archer , Brittney, Patrick, David Castlemore, Michael C, Adam Stone , Juniper, Cassidy , Jessica Anne Bogart, Arabella, Andrew, Spuds Oxley , Grace Elder, Helen, Canyon Rivers, Derya - Lifelike - Excited 🤩, Mellow Marcus, Jack Sterling - Broadcaster 🎙️, Brenda - UGC - 1.mp4, Reid, Reagan, Terry, Jenny, Radio Rick, Denise, Tim in car - Excited 🤩, Iskander, Thompson, Delicate Daisy - Excited 🤩, Kingston, George UGC 1, Bold Blake, Jane, Expressive Evan, Marianne - IA, Aaron, Modern Recipe Host - Voice 1, Willow, Cute Chloe - Friendly 😊, Rafael, June - Lifelike, Crisp Chloe, Slick Simon, Nassim - Informative, Baritone Ben, Maxwell, Ellie Faye - Excited 🤩, Milani, Feisty Fiona - Excited 🤩, Professor Dean, Rose - UGC - 1.mp4, Shona, Hudson Wilder, Ann - IA, Alastair Kensington, Oxley, Christina, Andrew Rizz , Peyton, Gerardo - Outdoor, Chloe - Lifelike, Stephanie, Anthony - IA, Signal - Voice 1, Luca, Lisa - Voice 1, T.W.Tucker, Jack Sullivan - Serious 😐, Winter, Mireia - Lifelike, Georgia, Stella, Masha - Lifelike, Charming Charles - Friendly 😊, Serenity, Annie - Excited, Ralph, Bethany, Dominic, Mason Finn, Leena, Veteran Victor, Tamara, Nik Public, Calm Chloe, Sevik, Reilly, Raul, Imposing Ian, Relaxed Ray, Dexter - Professional, Relaxed Rick, Edwin, Rupert Blackwood, Ginny, Hope\"},{\"name\":\"caption\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a sidecar SRT caption file alongside the video.\",\"default\":\"false\"},{\"name\":\"watermark\",\"type\":\"string\",\"required\":false,\"description\":\"Optional watermark image to overlay on the output video.\"},{\"name\":\"background\",\"type\":\"string\",\"required\":false,\"description\":\"Optional background to composite behind the avatar. Ignored when ``output_format='webm'`` (webm output is transparent).\"},{\"name\":\"fit\",\"type\":\"string\",\"required\":false,\"description\":\"How the avatar fits within the output frame. 'contain' keeps the full avatar in view (may letterbox); 'cover' fills the frame (may crop).\",\"default\":\"cover\",\"constraints\":\"Allowed values: contain, cover\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"heygen/avatar5/digital-twin\\\",\\n \\\"prompt\\\": \\\"Hello and welcome to this demonstration of HeyGen Avatar V.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"output_format\\\": \\\"mp4\\\",\\n \\\"voice\\\": \\\"Warm Pro Narrator\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"heygen/avatar5/digital-twin\\\",\\n \\\"prompt\\\": \\\"Hello and welcome to this demonstration of HeyGen Avatar V.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"output_format\\\": \\\"mp4\\\",\\n \\\"voice\\\": \\\"Warm Pro Narrator\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"heygen/avatar5/digital-twin\\\",\\n \\\"prompt\\\": \\\"Hello and welcome to this demonstration of HeyGen Avatar V.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"output_format\\\": \\\"mp4\\\",\\n \\\"voice\\\": \\\"Warm Pro Narrator\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"heygen/avatar5/digital-twin\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"HeyGen Avatar 5 Digital Twin\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Avatar5 Digital Twin by HeyGen - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to heygen/avatar5/digital-twin.\",\"default\":\"heygen/avatar5/digital-twin\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text the avatar will speak. Required when ``audio_url`` is not provided.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to keep the source aspect ratio (falls back to 16:9 when it cannot be read).\",\"constraints\":\"Allowed values: 16:9, 9:16, 5:4, 4:5, 1:1\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"HTTP(S) URL of an audio file for the avatar to lip-sync to. When provided, the avatar uses this audio instead of text-to-speech and ``prompt``/``voice`` are ignored.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution preset.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p, 4k\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output container format. 'webm' produces a transparent video (automatically removes the background) and ignores the ``background`` field.\",\"default\":\"mp4\",\"constraints\":\"Allowed values: mp4, webm\"},{\"name\":\"remove_background\",\"type\":\"boolean\",\"required\":false,\"description\":\"Remove the avatar's background. Requires a matting-enabled avatar.\",\"default\":\"false\"},{\"name\":\"avatar\",\"type\":\"string\",\"required\":false,\"description\":\"Name of the Avatar V-eligible avatar to use.\",\"default\":\"Abigail Sofa Front\"},{\"name\":\"voice\",\"type\":\"string\",\"required\":false,\"description\":\"Name of the text-to-speech voice to use for the avatar when ``audio_url`` is not provided.\",\"default\":\"Warm Pro Narrator\",\"constraints\":\"Allowed values: Warm Pro Narrator, Chill Brian, Ivy, John Doe, Monika Sogam, Hope , Archer , Brittney, Patrick, David Castlemore, Michael C, Adam Stone , Juniper, Cassidy , Jessica Anne Bogart, Arabella, Andrew, Spuds Oxley , Grace Elder, Helen, Canyon Rivers, Derya - Lifelike - Excited 🤩, Mellow Marcus, Jack Sterling - Broadcaster 🎙️, Brenda - UGC - 1.mp4, Reid, Reagan, Terry, Jenny, Radio Rick, Denise, Tim in car - Excited 🤩, Iskander, Thompson, Delicate Daisy - Excited 🤩, Kingston, George UGC 1, Bold Blake, Jane, Expressive Evan, Marianne - IA, Aaron, Modern Recipe Host - Voice 1, Willow, Cute Chloe - Friendly 😊, Rafael, June - Lifelike, Crisp Chloe, Slick Simon, Nassim - Informative, Baritone Ben, Maxwell, Ellie Faye - Excited 🤩, Milani, Feisty Fiona - Excited 🤩, Professor Dean, Rose - UGC - 1.mp4, Shona, Hudson Wilder, Ann - IA, Alastair Kensington, Oxley, Christina, Andrew Rizz , Peyton, Gerardo - Outdoor, Chloe - Lifelike, Stephanie, Anthony - IA, Signal - Voice 1, Luca, Lisa - Voice 1, T.W.Tucker, Jack Sullivan - Serious 😐, Winter, Mireia - Lifelike, Georgia, Stella, Masha - Lifelike, Charming Charles - Friendly 😊, Serenity, Annie - Excited, Ralph, Bethany, Dominic, Mason Finn, Leena, Veteran Victor, Tamara, Nik Public, Calm Chloe, Sevik, Reilly, Raul, Imposing Ian, Relaxed Ray, Dexter - Professional, Relaxed Rick, Edwin, Rupert Blackwood, Ginny, Hope\"},{\"name\":\"caption\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a sidecar SRT caption file alongside the video.\",\"default\":\"false\"},{\"name\":\"watermark\",\"type\":\"string\",\"required\":false,\"description\":\"Optional watermark image URL to overlay on the output video.\"},{\"name\":\"fit\",\"type\":\"string\",\"required\":false,\"description\":\"How the avatar fits within the output frame. 'contain' keeps the full avatar in view (may letterbox); 'cover' fills the frame (may crop).\",\"default\":\"cover\",\"constraints\":\"Allowed values: contain, cover\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"heygen/avatar5/digital-twin\\\",\\n \\\"prompt\\\": \\\"Hello and welcome to this demonstration of HeyGen Avatar V.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"output_format\\\": \\\"mp4\\\",\\n \\\"voice\\\": \\\"Warm Pro Narrator\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"heygen/avatar5/digital-twin\\\",\\n \\\"prompt\\\": \\\"Hello and welcome to this demonstration of HeyGen Avatar V.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"output_format\\\": \\\"mp4\\\",\\n \\\"voice\\\": \\\"Warm Pro Narrator\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"heygen/avatar5/digital-twin\\\",\\n \\\"prompt\\\": \\\"Hello and welcome to this demonstration of HeyGen Avatar V.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"output_format\\\": \\\"mp4\\\",\\n \\\"voice\\\": \\\"Warm Pro Narrator\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"heygen/avatar5/digital-twin\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Heygen v5 Digital Twin" + modelName: "HeyGen Avatar 5 Digital Twin" modelId: "heygen/avatar5/digital-twin" vendor: "HeyGen" vendorSlug: "heygen" diff --git a/model-api-reference/video-generation/heygen/heygen-avatar3/digital-twin.md b/model-api-reference/video-generation/heygen/heygen-avatar3/digital-twin.md deleted file mode 100644 index 5cacfbb3..00000000 --- a/model-api-reference/video-generation/heygen/heygen-avatar3/digital-twin.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "HeyGen Avatar 3 Digital Twin API Reference" -description: "HeyGen Avatar 3 Digital Twin API reference for SandBase. Use model heygen/heygen-avatar3/digital-twin with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/heygen/heygen-avatar3/digital-twin" -apiReferenceJson: "{\"title\":\"HeyGen Avatar 3 Digital Twin\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Heygen Avatar3 Digital Twin is HeyGen's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to heygen/heygen-avatar3/digital-twin.\",\"default\":\"heygen/heygen-avatar3/digital-twin\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of an audio file for the avatar to lip-sync to. When provided, the avatar uses this audio instead of text-to-speech.\"},{\"name\":\"voice\",\"type\":\"string\",\"required\":false,\"description\":\"The voice ID to use for the avatar.\"},{\"name\":\"avatar_id\",\"type\":\"string\",\"required\":false,\"description\":\"The character/avatar ID to use.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"heygen/heygen-avatar3/digital-twin\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"voice\\\": \\\"alloy\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"heygen/heygen-avatar3/digital-twin\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"voice\\\": \\\"alloy\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"heygen/heygen-avatar3/digital-twin\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"voice\\\": \\\"alloy\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"heygen/heygen-avatar3/digital-twin\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "HeyGen Avatar 3 Digital Twin" - modelId: "heygen/heygen-avatar3/digital-twin" - vendor: "HeyGen" - vendorSlug: "heygen" - modelSlug: "heygen-avatar3/digital-twin" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-02-23T18:28:07.025Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/heygen/heygen-avatar4/digital-twin.md b/model-api-reference/video-generation/heygen/heygen-avatar4/digital-twin.md deleted file mode 100644 index ceffc2b4..00000000 --- a/model-api-reference/video-generation/heygen/heygen-avatar4/digital-twin.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "HeyGen Avatar 4 Digital Twin API Reference" -description: "HeyGen Avatar 4 Digital Twin API reference for SandBase. Use model heygen/heygen-avatar4/digital-twin with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/heygen/heygen-avatar4/digital-twin" -apiReferenceJson: "{\"title\":\"HeyGen Avatar 4 Digital Twin\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Heygen Avatar4 Digital Twin is HeyGen's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to heygen/heygen-avatar4/digital-twin.\",\"default\":\"heygen/heygen-avatar4/digital-twin\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of an audio file for the avatar to lip-sync to. When provided, the avatar uses this audio instead of text-to-speech.\"},{\"name\":\"voice\",\"type\":\"string\",\"required\":false,\"description\":\"The voice ID to use for the avatar.\"},{\"name\":\"avatar_id\",\"type\":\"string\",\"required\":false,\"description\":\"The character/avatar ID to use.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"heygen/heygen-avatar4/digital-twin\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"voice\\\": \\\"alloy\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"heygen/heygen-avatar4/digital-twin\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"voice\\\": \\\"alloy\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"heygen/heygen-avatar4/digital-twin\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"voice\\\": \\\"alloy\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"heygen/heygen-avatar4/digital-twin\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "HeyGen Avatar 4 Digital Twin" - modelId: "heygen/heygen-avatar4/digital-twin" - vendor: "HeyGen" - vendorSlug: "heygen" - modelSlug: "heygen-avatar4/digital-twin" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-02-23T18:32:24.919Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/heygen/heygen-avatar4/image-to-video.md b/model-api-reference/video-generation/heygen/heygen-avatar4/image-to-video.md index 0c03e427..b213e6c2 100644 --- a/model-api-reference/video-generation/heygen/heygen-avatar4/image-to-video.md +++ b/model-api-reference/video-generation/heygen/heygen-avatar4/image-to-video.md @@ -4,7 +4,7 @@ description: "HeyGen Avatar 4 Image to Video API reference for SandBase. Use mod aside: false outline: false apiReferenceKey: "video/heygen/heygen-avatar4/image-to-video" -apiReferenceJson: "{\"title\":\"HeyGen Avatar 4 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Heygen Avatar4 is HeyGen's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to heygen/heygen-avatar4/image-to-video.\",\"default\":\"heygen/heygen-avatar4/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":false,\"description\":\"The text the avatar will speak\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to animate. The image should contain a clear face.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of an audio file for the avatar to lip-sync to. When provided, overrides prompt and voice.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Aspect ratio of the output video. 'auto' preserves the source aspect ratio when available.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 4:5, 5:4, 1:1, auto\"},{\"name\":\"voice\",\"type\":\"string\",\"required\":false,\"description\":\"The voice ID to use for the avatar.\",\"default\":\"Melissa\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Video resolution preset.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 480p, 540p, 720p, 1080p\"},{\"name\":\"talking_style\",\"type\":\"string\",\"required\":false,\"description\":\"Talking style: 'stable' for minimal movement, 'expressive' for more animation.\",\"default\":\"stable\",\"constraints\":\"Allowed values: stable, expressive\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"heygen/heygen-avatar4/image-to-video\\\",\\n \\\"prompt\\\": \\\"Hey friends! Welcome to the GPU force podcast and today we are going to discuss about the rising GPU cost!\\\",\\n \\\"image\\\": \\\"https://v3b.fal.media/files/b/0a90062c/A7EIviZqNxZ2HAs0yHeZ6_77a05b99-8588-4ffc-90aa-be7f9d34e9d3.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"voice\\\": \\\"Melissa\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"heygen/heygen-avatar4/image-to-video\\\",\\n \\\"prompt\\\": \\\"Hey friends! Welcome to the GPU force podcast and today we are going to discuss about the rising GPU cost!\\\",\\n \\\"image\\\": \\\"https://v3b.fal.media/files/b/0a90062c/A7EIviZqNxZ2HAs0yHeZ6_77a05b99-8588-4ffc-90aa-be7f9d34e9d3.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"voice\\\": \\\"Melissa\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"heygen/heygen-avatar4/image-to-video\\\",\\n \\\"prompt\\\": \\\"Hey friends! Welcome to the GPU force podcast and today we are going to discuss about the rising GPU cost!\\\",\\n \\\"image\\\": \\\"https://v3b.fal.media/files/b/0a90062c/A7EIviZqNxZ2HAs0yHeZ6_77a05b99-8588-4ffc-90aa-be7f9d34e9d3.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"voice\\\": \\\"Melissa\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"heygen/heygen-avatar4/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"HeyGen Avatar 4 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Heygen Avatar4 is HeyGen's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to heygen/heygen-avatar4/image-to-video.\",\"default\":\"heygen/heygen-avatar4/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":false,\"description\":\"The text the avatar will speak\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to animate. The image should contain a clear face.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of an audio file for the avatar to lip-sync to. When provided, overrides prompt and voice.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to keep the source aspect ratio (falls back to 16:9 when it cannot be read).\",\"constraints\":\"Allowed values: 16:9, 9:16, 4:5, 5:4, 1:1\"},{\"name\":\"voice\",\"type\":\"string\",\"required\":false,\"description\":\"The voice ID to use for the avatar.\",\"default\":\"Melissa\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Video resolution preset.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 480p, 540p, 720p, 1080p\"},{\"name\":\"talking_style\",\"type\":\"string\",\"required\":false,\"description\":\"Talking style: 'stable' for minimal movement, 'expressive' for more animation.\",\"default\":\"stable\",\"constraints\":\"Allowed values: stable, expressive\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"heygen/heygen-avatar4/image-to-video\\\",\\n \\\"prompt\\\": \\\"Hey friends! Welcome to the GPU force podcast and today we are going to discuss about the rising GPU cost!\\\",\\n \\\"image\\\": \\\"https://v3b.fal.media/files/b/0a90062c/A7EIviZqNxZ2HAs0yHeZ6_77a05b99-8588-4ffc-90aa-be7f9d34e9d3.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"voice\\\": \\\"Melissa\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"heygen/heygen-avatar4/image-to-video\\\",\\n \\\"prompt\\\": \\\"Hey friends! Welcome to the GPU force podcast and today we are going to discuss about the rising GPU cost!\\\",\\n \\\"image\\\": \\\"https://v3b.fal.media/files/b/0a90062c/A7EIviZqNxZ2HAs0yHeZ6_77a05b99-8588-4ffc-90aa-be7f9d34e9d3.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"voice\\\": \\\"Melissa\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"heygen/heygen-avatar4/image-to-video\\\",\\n \\\"prompt\\\": \\\"Hey friends! Welcome to the GPU force podcast and today we are going to discuss about the rising GPU cost!\\\",\\n \\\"image\\\": \\\"https://v3b.fal.media/files/b/0a90062c/A7EIviZqNxZ2HAs0yHeZ6_77a05b99-8588-4ffc-90aa-be7f9d34e9d3.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"voice\\\": \\\"Melissa\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"heygen/heygen-avatar4/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "HeyGen Avatar 4 Image to Video" modelId: "heygen/heygen-avatar4/image-to-video" diff --git a/model-api-reference/video-generation/heygen/heygen/lipsync/precision.md b/model-api-reference/video-generation/heygen/heygen/lipsync/precision.md deleted file mode 100644 index 2e65cac6..00000000 --- a/model-api-reference/video-generation/heygen/heygen/lipsync/precision.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "HeyGen Lipsync Precision API Reference" -description: "HeyGen Lipsync Precision API reference for SandBase. Use model heygen/heygen/lipsync/precision with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/heygen/heygen/lipsync/precision" -apiReferenceJson: "{\"title\":\"HeyGen Lipsync Precision\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Heygen Lipsync Precision by HeyGen - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to heygen/heygen/lipsync/precision.\",\"default\":\"heygen/heygen/lipsync/precision\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the source video to lip-sync.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the replacement audio file.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"heygen/heygen/lipsync/precision\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/heygen/heygen/lipsync/precision/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/mirelo/sfx1.6/inpaint-audio/output_url_0.wav\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"heygen/heygen/lipsync/precision\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/heygen/heygen/lipsync/precision/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/mirelo/sfx1.6/inpaint-audio/output_url_0.wav\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"heygen/heygen/lipsync/precision\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/heygen/heygen/lipsync/precision/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/mirelo/sfx1.6/inpaint-audio/output_url_0.wav\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"heygen/heygen/lipsync/precision\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "HeyGen Lipsync Precision" - modelId: "heygen/heygen/lipsync/precision" - vendor: "HeyGen" - vendorSlug: "heygen" - modelSlug: "heygen/lipsync/precision" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-16T16:49:06.953Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/heygen/heygen/lipsync/speed.md b/model-api-reference/video-generation/heygen/heygen/lipsync/speed.md deleted file mode 100644 index f69caae1..00000000 --- a/model-api-reference/video-generation/heygen/heygen/lipsync/speed.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "HeyGen Lipsync Speed API Reference" -description: "HeyGen Lipsync Speed API reference for SandBase. Use model heygen/heygen/lipsync/speed with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/heygen/heygen/lipsync/speed" -apiReferenceJson: "{\"title\":\"HeyGen Lipsync Speed\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Heygen Lipsync Speed by HeyGen - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to heygen/heygen/lipsync/speed.\",\"default\":\"heygen/heygen/lipsync/speed\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the source video to lip-sync.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the replacement audio file.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"heygen/heygen/lipsync/speed\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/heygen/heygen/lipsync/speed/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/mirelo/sfx1.6/inpaint-audio/output_url_0.wav\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"heygen/heygen/lipsync/speed\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/heygen/heygen/lipsync/speed/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/mirelo/sfx1.6/inpaint-audio/output_url_0.wav\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"heygen/heygen/lipsync/speed\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/heygen/heygen/lipsync/speed/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/mirelo/sfx1.6/inpaint-audio/output_url_0.wav\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"heygen/heygen/lipsync/speed\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "HeyGen Lipsync Speed" - modelId: "heygen/heygen/lipsync/speed" - vendor: "HeyGen" - vendorSlug: "heygen" - modelSlug: "heygen/lipsync/speed" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-16T16:48:56.833Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/heygen/heygen/translate/precision.md b/model-api-reference/video-generation/heygen/heygen/translate/precision.md deleted file mode 100644 index b826a805..00000000 --- a/model-api-reference/video-generation/heygen/heygen/translate/precision.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "HeyGen Translate Precision API Reference" -description: "HeyGen Translate Precision API reference for SandBase. Use model heygen/heygen/translate/precision with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/heygen/heygen/translate/precision" -apiReferenceJson: "{\"title\":\"HeyGen Translate Precision\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Heygen Translate Precision by HeyGen - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to heygen/heygen/translate/precision.\",\"default\":\"heygen/heygen/translate/precision\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the video to translate.\"},{\"name\":\"target_language\",\"type\":\"string\",\"required\":true,\"description\":\"The target language for translation.\",\"default\":\"English\",\"constraints\":\"Allowed values: English, Spanish, French, Hindi, Italian, German, Polish, Portuguese, Chinese, Japanese, Dutch, Turkish, Korean, Danish, Arabic, Romanian, Mandarin, Filipino, Swedish, Indonesian, Ukrainian, Greek, Czech, Bulgarian, Malay, Slovak, Croatian, Tamil, Finnish, Russian, Afrikaans (South Africa), Albanian (Albania), Amharic (Ethiopia), Arabic (Algeria), Arabic (Bahrain), Arabic (Egypt), Arabic (Iraq), Arabic (Jordan), Arabic (Kuwait), Arabic (Lebanon), Arabic (Libya), Arabic (Morocco), Arabic (Oman), Arabic (Qatar), Arabic (Saudi Arabia), Arabic (Syria), Arabic (Tunisia), Arabic (United Arab Emirates), Arabic (Yemen), Armenian (Armenia), Azerbaijani (Latin, Azerbaijan), Bangla (Bangladesh), Basque, Bengali (India), Bosnian (Bosnia and Herzegovina), Bulgarian (Bulgaria), Burmese (Myanmar), Catalan, Chinese (Cantonese, Traditional), Chinese (Jilu Mandarin, Simplified), Chinese (Mandarin, Simplified), Chinese (Northeastern Mandarin, Simplified), Chinese (Southwestern Mandarin, Simplified), Chinese (Taiwanese Mandarin, Traditional), Chinese (Wu, Simplified), Chinese (Zhongyuan Mandarin Henan, Simplified), Chinese (Zhongyuan Mandarin Shaanxi, Simplified), Croatian (Croatia), Czech (Czechia), Danish (Denmark), Dutch (Belgium), Dutch (Netherlands), English (Australia), English (Canada), English (Hong Kong SAR), English (India), English (Ireland), English (Kenya), English (New Zealand), English (Nigeria), English (Philippines), English (Singapore), English (South Africa), English (Tanzania), English (UK), English (United States), Estonian (Estonia), Filipino (Philippines), Finnish (Finland), French (Belgium), French (Canada), French (France), French (Switzerland), Galician, Georgian (Georgia), German (Austria), German (Germany), German (Switzerland), Greek (Greece), Gujarati (India), Hebrew (Israel), Hindi (India), Hungarian (Hungary), Icelandic (Iceland), Indonesian (Indonesia), Irish (Ireland), Italian (Italy), Japanese (Japan), Javanese (Latin, Indonesia), Kannada (India), Kazakh (Kazakhstan), Khmer (Cambodia), Korean (Korea), Lao (Laos), Latvian (Latvia), Lithuanian (Lithuania), Macedonian (North Macedonia), Malay (Malaysia), Malayalam (India), Maltese (Malta), Marathi (India), Mongolian (Mongolia), Nepali (Nepal), Norwegian Bokmål (Norway), Pashto (Afghanistan), Persian (Iran), Polish (Poland), Portuguese (Brazil), Portuguese (Portugal), Romanian (Romania), Russian (Russia), Serbian (Latin, Serbia), Sinhala (Sri Lanka), Slovak (Slovakia), Slovenian (Slovenia), Somali (Somalia), Spanish (Argentina), Spanish (Bolivia), Spanish (Chile), Spanish (Colombia), Spanish (Costa Rica), Spanish (Cuba), Spanish (Dominican Republic), Spanish (Ecuador), Spanish (El Salvador), Spanish (Equatorial Guinea), Spanish (Guatemala), Spanish (Honduras), Spanish (Mexico), Spanish (Nicaragua), Spanish (Panama), Spanish (Paraguay), Spanish (Peru), Spanish (Puerto Rico), Spanish (Spain), Spanish (United States), Spanish (Uruguay), Spanish (Venezuela), Sundanese (Indonesia), Swahili (Kenya), Swahili (Tanzania), Swedish (Sweden), Tamil (India), Tamil (Malaysia), Tamil (Singapore), Tamil (Sri Lanka), Telugu (India), Thai (Thailand), Turkish (Türkiye), Ukrainian (Ukraine), Urdu (India), Urdu (Pakistan), Uzbek (Latin, Uzbekistan), Vietnamese (Vietnam), Welsh (United Kingdom), Zulu (South Africa), English - Your Accent, English - American Accent\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"heygen/heygen/translate/precision\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/heygen/heygen/translate/precision/input_video_0.mp4\\\",\\n \\\"target_language\\\": \\\"English\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"heygen/heygen/translate/precision\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/heygen/heygen/translate/precision/input_video_0.mp4\\\",\\n \\\"target_language\\\": \\\"English\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"heygen/heygen/translate/precision\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/heygen/heygen/translate/precision/input_video_0.mp4\\\",\\n \\\"target_language\\\": \\\"English\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"heygen/heygen/translate/precision\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "HeyGen Translate Precision" - modelId: "heygen/heygen/translate/precision" - vendor: "HeyGen" - vendorSlug: "heygen" - modelSlug: "heygen/translate/precision" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-02-23T18:38:58.297Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/heygen/heygen/translate/speed.md b/model-api-reference/video-generation/heygen/heygen/translate/speed.md deleted file mode 100644 index 4bd303d3..00000000 --- a/model-api-reference/video-generation/heygen/heygen/translate/speed.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "HeyGen Translate Speed API Reference" -description: "HeyGen Translate Speed API reference for SandBase. Use model heygen/heygen/translate/speed with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/heygen/heygen/translate/speed" -apiReferenceJson: "{\"title\":\"HeyGen Translate Speed\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Heygen Translate Speed by HeyGen - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to heygen/heygen/translate/speed.\",\"default\":\"heygen/heygen/translate/speed\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the video to translate.\"},{\"name\":\"target_language\",\"type\":\"string\",\"required\":true,\"description\":\"The target language for translation.\",\"default\":\"English\",\"constraints\":\"Allowed values: English, Spanish, French, Hindi, Italian, German, Polish, Portuguese, Chinese, Japanese, Dutch, Turkish, Korean, Danish, Arabic, Romanian, Mandarin, Filipino, Swedish, Indonesian, Ukrainian, Greek, Czech, Bulgarian, Malay, Slovak, Croatian, Tamil, Finnish, Russian, Afrikaans (South Africa), Albanian (Albania), Amharic (Ethiopia), Arabic (Algeria), Arabic (Bahrain), Arabic (Egypt), Arabic (Iraq), Arabic (Jordan), Arabic (Kuwait), Arabic (Lebanon), Arabic (Libya), Arabic (Morocco), Arabic (Oman), Arabic (Qatar), Arabic (Saudi Arabia), Arabic (Syria), Arabic (Tunisia), Arabic (United Arab Emirates), Arabic (Yemen), Armenian (Armenia), Azerbaijani (Latin, Azerbaijan), Bangla (Bangladesh), Basque, Bengali (India), Bosnian (Bosnia and Herzegovina), Bulgarian (Bulgaria), Burmese (Myanmar), Catalan, Chinese (Cantonese, Traditional), Chinese (Jilu Mandarin, Simplified), Chinese (Mandarin, Simplified), Chinese (Northeastern Mandarin, Simplified), Chinese (Southwestern Mandarin, Simplified), Chinese (Taiwanese Mandarin, Traditional), Chinese (Wu, Simplified), Chinese (Zhongyuan Mandarin Henan, Simplified), Chinese (Zhongyuan Mandarin Shaanxi, Simplified), Croatian (Croatia), Czech (Czechia), Danish (Denmark), Dutch (Belgium), Dutch (Netherlands), English (Australia), English (Canada), English (Hong Kong SAR), English (India), English (Ireland), English (Kenya), English (New Zealand), English (Nigeria), English (Philippines), English (Singapore), English (South Africa), English (Tanzania), English (UK), English (United States), Estonian (Estonia), Filipino (Philippines), Finnish (Finland), French (Belgium), French (Canada), French (France), French (Switzerland), Galician, Georgian (Georgia), German (Austria), German (Germany), German (Switzerland), Greek (Greece), Gujarati (India), Hebrew (Israel), Hindi (India), Hungarian (Hungary), Icelandic (Iceland), Indonesian (Indonesia), Irish (Ireland), Italian (Italy), Japanese (Japan), Javanese (Latin, Indonesia), Kannada (India), Kazakh (Kazakhstan), Khmer (Cambodia), Korean (Korea), Lao (Laos), Latvian (Latvia), Lithuanian (Lithuania), Macedonian (North Macedonia), Malay (Malaysia), Malayalam (India), Maltese (Malta), Marathi (India), Mongolian (Mongolia), Nepali (Nepal), Norwegian Bokmål (Norway), Pashto (Afghanistan), Persian (Iran), Polish (Poland), Portuguese (Brazil), Portuguese (Portugal), Romanian (Romania), Russian (Russia), Serbian (Latin, Serbia), Sinhala (Sri Lanka), Slovak (Slovakia), Slovenian (Slovenia), Somali (Somalia), Spanish (Argentina), Spanish (Bolivia), Spanish (Chile), Spanish (Colombia), Spanish (Costa Rica), Spanish (Cuba), Spanish (Dominican Republic), Spanish (Ecuador), Spanish (El Salvador), Spanish (Equatorial Guinea), Spanish (Guatemala), Spanish (Honduras), Spanish (Mexico), Spanish (Nicaragua), Spanish (Panama), Spanish (Paraguay), Spanish (Peru), Spanish (Puerto Rico), Spanish (Spain), Spanish (United States), Spanish (Uruguay), Spanish (Venezuela), Sundanese (Indonesia), Swahili (Kenya), Swahili (Tanzania), Swedish (Sweden), Tamil (India), Tamil (Malaysia), Tamil (Singapore), Tamil (Sri Lanka), Telugu (India), Thai (Thailand), Turkish (Türkiye), Ukrainian (Ukraine), Urdu (India), Urdu (Pakistan), Uzbek (Latin, Uzbekistan), Vietnamese (Vietnam), Welsh (United Kingdom), Zulu (South Africa), English - Your Accent, English - American Accent\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"heygen/heygen/translate/speed\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/heygen/heygen/translate/speed/input_video_0.mp4\\\",\\n \\\"target_language\\\": \\\"English\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"heygen/heygen/translate/speed\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/heygen/heygen/translate/speed/input_video_0.mp4\\\",\\n \\\"target_language\\\": \\\"English\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"heygen/heygen/translate/speed\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/heygen/heygen/translate/speed/input_video_0.mp4\\\",\\n \\\"target_language\\\": \\\"English\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"heygen/heygen/translate/speed\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "HeyGen Translate Speed" - modelId: "heygen/heygen/translate/speed" - vendor: "HeyGen" - vendorSlug: "heygen" - modelSlug: "heygen/translate/speed" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-02-23T18:39:44.788Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/heygen/heygen/video-agent/v2.md b/model-api-reference/video-generation/heygen/heygen/video-agent/v2.md deleted file mode 100644 index 95556dce..00000000 --- a/model-api-reference/video-generation/heygen/heygen/video-agent/v2.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "HeyGen Video Agent V2 API Reference" -description: "HeyGen Video Agent V2 API reference for SandBase. Use model heygen/heygen/video-agent/v2 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/heygen/heygen/video-agent/v2" -apiReferenceJson: "{\"title\":\"HeyGen Video Agent V2\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Heygen Video Agent V2 is HeyGen's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to heygen/heygen/video-agent/v2.\",\"default\":\"heygen/heygen/video-agent/v2\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Natural language prompt describing the video to generate. Include details about style, visual elements, and desired length for best results.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"heygen/heygen/video-agent/v2\\\",\\n \\\"prompt\\\": \\\"Create a 15-second explainer video about fal.ai Video Workflows.\\\\n Target audience: Developers, AI engineers, and creative tech teams\\\\n Brand colors: Teal, purple, and pink accents\\\\n\\\\n Opening script:\\\\n \\\\\\\"Most video models just generate clips—but fal.ai powers your entire production pipeline.\\\\\\\"\\\\n\\\\n Add animated text overlays highlighting:\\\\n\\\\n Sub-second inference\\\\n\\\\n Multi-model chaining (e.g., FLUX to Kling)\\\\n\\\\n Custom LoRA integration\\\\n\\\\n Production-ready API\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"heygen/heygen/video-agent/v2\\\",\\n \\\"prompt\\\": \\\"Create a 15-second explainer video about fal.ai Video Workflows.\\\\n Target audience: Developers, AI engineers, and creative tech teams\\\\n Brand colors: Teal, purple, and pink accents\\\\n\\\\n Opening script:\\\\n \\\\\\\"Most video models just generate clips—but fal.ai powers your entire production pipeline.\\\\\\\"\\\\n\\\\n Add animated text overlays highlighting:\\\\n\\\\n Sub-second inference\\\\n\\\\n Multi-model chaining (e.g., FLUX to Kling)\\\\n\\\\n Custom LoRA integration\\\\n\\\\n Production-ready API\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"heygen/heygen/video-agent/v2\\\",\\n \\\"prompt\\\": \\\"Create a 15-second explainer video about fal.ai Video Workflows.\\\\n Target audience: Developers, AI engineers, and creative tech teams\\\\n Brand colors: Teal, purple, and pink accents\\\\n\\\\n Opening script:\\\\n \\\\\\\"Most video models just generate clips—but fal.ai powers your entire production pipeline.\\\\\\\"\\\\n\\\\n Add animated text overlays highlighting:\\\\n\\\\n Sub-second inference\\\\n\\\\n Multi-model chaining (e.g., FLUX to Kling)\\\\n\\\\n Custom LoRA integration\\\\n\\\\n Production-ready API\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"heygen/heygen/video-agent/v2\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "HeyGen Video Agent V2" - modelId: "heygen/heygen/video-agent/v2" - vendor: "HeyGen" - vendorSlug: "heygen" - modelSlug: "heygen/video-agent/v2" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-02-15T09:27:45.511Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/heygen/heygen/video-agent/v3.md b/model-api-reference/video-generation/heygen/heygen/video-agent/v3.md deleted file mode 100644 index c0779cd9..00000000 --- a/model-api-reference/video-generation/heygen/heygen/video-agent/v3.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "HeyGen Video Agent V3 API Reference" -description: "HeyGen Video Agent V3 API reference for SandBase. Use model heygen/heygen/video-agent/v3 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/heygen/heygen/video-agent/v3" -apiReferenceJson: "{\"title\":\"HeyGen Video Agent V3\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Heygen Video Agent V3 is HeyGen's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to heygen/heygen/video-agent/v3.\",\"default\":\"heygen/heygen/video-agent/v3\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Natural language prompt describing the video to generate. The agent handles avatar selection, script, and production automatically.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"heygen/heygen/video-agent/v3\\\",\\n \\\"prompt\\\": \\\"Create a 30-second product demo video showcasing our new AI features with professional lighting and modern graphics.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"heygen/heygen/video-agent/v3\\\",\\n \\\"prompt\\\": \\\"Create a 30-second product demo video showcasing our new AI features with professional lighting and modern graphics.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"heygen/heygen/video-agent/v3\\\",\\n \\\"prompt\\\": \\\"Create a 30-second product demo video showcasing our new AI features with professional lighting and modern graphics.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"heygen/heygen/video-agent/v3\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "HeyGen Video Agent V3" - modelId: "heygen/heygen/video-agent/v3" - vendor: "HeyGen" - vendorSlug: "heygen" - modelSlug: "heygen/video-agent/v3" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-16T16:49:14.52Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/heygen/lipsync/precision.md b/model-api-reference/video-generation/heygen/lipsync/precision.md new file mode 100644 index 00000000..9f3a63d8 --- /dev/null +++ b/model-api-reference/video-generation/heygen/lipsync/precision.md @@ -0,0 +1,21 @@ +--- +title: "HeyGen Lipsync Precision API Reference" +description: "HeyGen Lipsync Precision API reference for SandBase. Use model heygen/lipsync/precision with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/heygen/lipsync/precision" +apiReferenceJson: "{\"title\":\"HeyGen Lipsync Precision\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"HeyGen v3 Lipsync (precision) replaces the speech in a video and re-syncs the speaker's lips to the new audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to heygen/lipsync/precision.\",\"default\":\"heygen/lipsync/precision\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":true,\"description\":\"Input audio URL.\"},{\"name\":\"disable_music_track\",\"type\":\"boolean\",\"required\":false,\"description\":\"Remove background music from the source video.\",\"default\":\"false\"},{\"name\":\"enable_caption\",\"type\":\"boolean\",\"required\":false,\"description\":\"Burn in captions.\",\"default\":\"false\"},{\"name\":\"enable_dynamic_duration\",\"type\":\"boolean\",\"required\":false,\"description\":\"Allow the video length to follow the new audio.\",\"default\":\"true\"},{\"name\":\"enable_speech_enhancement\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enhance the replacement audio.\",\"default\":\"false\"},{\"name\":\"end_time\",\"type\":\"number\",\"required\":false,\"description\":\"End time (seconds) for partial lipsync.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"start_time\",\"type\":\"number\",\"required\":false,\"description\":\"Start time (seconds) for partial lipsync.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Input video URL.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"heygen/lipsync/precision\\\",\\n \\\"audio\\\": \\\"https://v3.fal.media/files/rabbit/Ql3ade3wEKlZXRQLRbhxm_tts.mp3\\\",\\n \\\"video\\\": \\\"https://media.sandbase.ai/files/922d1013-9018-4956-a39d-d0859149ba76/0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"heygen/lipsync/precision\\\",\\n \\\"audio\\\": \\\"https://v3.fal.media/files/rabbit/Ql3ade3wEKlZXRQLRbhxm_tts.mp3\\\",\\n \\\"video\\\": \\\"https://media.sandbase.ai/files/922d1013-9018-4956-a39d-d0859149ba76/0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"heygen/lipsync/precision\\\",\\n \\\"audio\\\": \\\"https://v3.fal.media/files/rabbit/Ql3ade3wEKlZXRQLRbhxm_tts.mp3\\\",\\n \\\"video\\\": \\\"https://media.sandbase.ai/files/922d1013-9018-4956-a39d-d0859149ba76/0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"heygen/lipsync/precision\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "HeyGen Lipsync Precision" + modelId: "heygen/lipsync/precision" + vendor: "HeyGen" + vendorSlug: "heygen" + modelSlug: "lipsync/precision" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-04-16T16:49:06.953Z" + capabilities: ["video-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/heygen/lipsync/speed.md b/model-api-reference/video-generation/heygen/lipsync/speed.md new file mode 100644 index 00000000..697a428c --- /dev/null +++ b/model-api-reference/video-generation/heygen/lipsync/speed.md @@ -0,0 +1,21 @@ +--- +title: "HeyGen Lipsync Speed API Reference" +description: "HeyGen Lipsync Speed API reference for SandBase. Use model heygen/lipsync/speed with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/heygen/lipsync/speed" +apiReferenceJson: "{\"title\":\"HeyGen Lipsync Speed\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"HeyGen v3 Lipsync (speed) replaces the speech in a video and re-syncs the speaker's lips to the new audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to heygen/lipsync/speed.\",\"default\":\"heygen/lipsync/speed\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":true,\"description\":\"Input audio URL.\"},{\"name\":\"disable_music_track\",\"type\":\"boolean\",\"required\":false,\"description\":\"Remove background music from the source video.\",\"default\":\"false\"},{\"name\":\"enable_caption\",\"type\":\"boolean\",\"required\":false,\"description\":\"Burn in captions.\",\"default\":\"false\"},{\"name\":\"enable_dynamic_duration\",\"type\":\"boolean\",\"required\":false,\"description\":\"Allow the video length to follow the new audio.\",\"default\":\"true\"},{\"name\":\"enable_speech_enhancement\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enhance the replacement audio.\",\"default\":\"false\"},{\"name\":\"end_time\",\"type\":\"number\",\"required\":false,\"description\":\"End time (seconds) for partial lipsync.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"start_time\",\"type\":\"number\",\"required\":false,\"description\":\"Start time (seconds) for partial lipsync.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Input video URL.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"heygen/lipsync/speed\\\",\\n \\\"audio\\\": \\\"https://v3.fal.media/files/rabbit/Ql3ade3wEKlZXRQLRbhxm_tts.mp3\\\",\\n \\\"video\\\": \\\"https://media.sandbase.ai/files/922d1013-9018-4956-a39d-d0859149ba76/0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"heygen/lipsync/speed\\\",\\n \\\"audio\\\": \\\"https://v3.fal.media/files/rabbit/Ql3ade3wEKlZXRQLRbhxm_tts.mp3\\\",\\n \\\"video\\\": \\\"https://media.sandbase.ai/files/922d1013-9018-4956-a39d-d0859149ba76/0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"heygen/lipsync/speed\\\",\\n \\\"audio\\\": \\\"https://v3.fal.media/files/rabbit/Ql3ade3wEKlZXRQLRbhxm_tts.mp3\\\",\\n \\\"video\\\": \\\"https://media.sandbase.ai/files/922d1013-9018-4956-a39d-d0859149ba76/0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"heygen/lipsync/speed\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "HeyGen Lipsync Speed" + modelId: "heygen/lipsync/speed" + vendor: "HeyGen" + vendorSlug: "heygen" + modelSlug: "lipsync/speed" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-04-16T16:48:56.833Z" + capabilities: ["video-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/heygen/video-agent/v3.md b/model-api-reference/video-generation/heygen/video-agent/v3.md new file mode 100644 index 00000000..5f297ff1 --- /dev/null +++ b/model-api-reference/video-generation/heygen/video-agent/v3.md @@ -0,0 +1,21 @@ +--- +title: "HeyGen Video Agent V3 API Reference" +description: "HeyGen Video Agent V3 API reference for SandBase. Use model heygen/video-agent/v3 with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/heygen/video-agent/v3" +apiReferenceJson: "{\"title\":\"HeyGen Video Agent V3\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Heygen Video Agent V3 is HeyGen's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to heygen/video-agent/v3.\",\"default\":\"heygen/video-agent/v3\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Natural language prompt describing the video to generate. The agent handles avatar selection, script, and production automatically.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"heygen/video-agent/v3\\\",\\n \\\"prompt\\\": \\\"Create a 30-second product demo video showcasing our new AI features with professional lighting and modern graphics.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"heygen/video-agent/v3\\\",\\n \\\"prompt\\\": \\\"Create a 30-second product demo video showcasing our new AI features with professional lighting and modern graphics.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"heygen/video-agent/v3\\\",\\n \\\"prompt\\\": \\\"Create a 30-second product demo video showcasing our new AI features with professional lighting and modern graphics.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"heygen/video-agent/v3\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "HeyGen Video Agent V3" + modelId: "heygen/video-agent/v3" + vendor: "HeyGen" + vendorSlug: "heygen" + modelSlug: "video-agent/v3" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-04-16T16:49:14.52Z" + capabilities: ["text-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/krea/krea-wan/text-to-video.md b/model-api-reference/video-generation/krea/krea-wan/text-to-video.md deleted file mode 100644 index 9d124388..00000000 --- a/model-api-reference/video-generation/krea/krea-wan/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Krea Wan 14b- Text to Video API Reference" -description: "Krea Wan 14b- Text to Video API reference for SandBase. Use model krea/krea-wan/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/krea/krea-wan/text-to-video" -apiReferenceJson: "{\"title\":\"Krea Wan 14b- Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Krea Wan by krea - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to krea/krea-wan/text-to-video.\",\"default\":\"krea/krea-wan/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Prompt for the video-to-video generation.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the video-to-video generation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"krea/krea-wan/text-to-video\\\",\\n \\\"prompt\\\": \\\"A powerful, matte black jeep, its robust frame contrasting with the lush green surroundings, navigates a winding jungle road, kicking up small clouds of dust and loose earth from its tires.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"krea/krea-wan/text-to-video\\\",\\n \\\"prompt\\\": \\\"A powerful, matte black jeep, its robust frame contrasting with the lush green surroundings, navigates a winding jungle road, kicking up small clouds of dust and loose earth from its tires.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"krea/krea-wan/text-to-video\\\",\\n \\\"prompt\\\": \\\"A powerful, matte black jeep, its robust frame contrasting with the lush green surroundings, navigates a winding jungle road, kicking up small clouds of dust and loose earth from its tires.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"krea/krea-wan/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Krea Wan 14b- Text to Video" - modelId: "krea/krea-wan/text-to-video" - vendor: "krea" - vendorSlug: "krea" - modelSlug: "krea-wan/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-20T17:24:26.63Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/krea/krea-wan/video-to-video.md b/model-api-reference/video-generation/krea/krea-wan/video-to-video.md deleted file mode 100644 index 4963dc79..00000000 --- a/model-api-reference/video-generation/krea/krea-wan/video-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Krea Wan 14B API Reference" -description: "Krea Wan 14B API reference for SandBase. Use model krea/krea-wan/video-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/krea/krea-wan/video-to-video" -apiReferenceJson: "{\"title\":\"Krea Wan 14B\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Krea Wan Video To Video is krea's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to krea/krea-wan/video-to-video.\",\"default\":\"krea/krea-wan/video-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Prompt for the video-to-video generation.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input video. Currently, only outputs of 16:9 aspect ratio and 480p resolution are supported. Video duration should be less than 1000 frames at 16fps, and output frames will be 6 plus a multiple of 12, for example 18, 30, 42, etc.\"},{\"name\":\"strength\",\"type\":\"number\",\"required\":false,\"description\":\"Denoising strength for the video-to-video generation. 0.0 preserves the original, 1.0 completely remakes the video.\",\"default\":\"0.85\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the video-to-video generation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"krea/krea-wan/video-to-video\\\",\\n \\\"prompt\\\": \\\"A powerful, matte black jeep, its robust frame contrasting with the lush green surroundings, navigates a winding jungle road, kicking up small clouds of dust and loose earth from its tires.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/krea/krea-wan/video-to-video/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"krea/krea-wan/video-to-video\\\",\\n \\\"prompt\\\": \\\"A powerful, matte black jeep, its robust frame contrasting with the lush green surroundings, navigates a winding jungle road, kicking up small clouds of dust and loose earth from its tires.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/krea/krea-wan/video-to-video/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"krea/krea-wan/video-to-video\\\",\\n \\\"prompt\\\": \\\"A powerful, matte black jeep, its robust frame contrasting with the lush green surroundings, navigates a winding jungle road, kicking up small clouds of dust and loose earth from its tires.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/krea/krea-wan/video-to-video/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"krea/krea-wan/video-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Krea Wan 14B" - modelId: "krea/krea-wan/video-to-video" - vendor: "krea" - vendorSlug: "krea" - modelSlug: "krea-wan/video-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-14T16:06:51.28Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/1.6/effects.md b/model-api-reference/video-generation/kwaivgi/kling-video/1.6/effects.md deleted file mode 100644 index 31ff04f8..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/1.6/effects.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling 1.6 API Reference — KwaiVGI Kling Video / 1.6 / Effects API" -description: "Kling 1.6 API reference for SandBase. Use model kwaivgi/kling-video/1.6/effects with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/1.6/effects" -apiReferenceJson: "{\"title\":\"Kling 1.6\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video 1.6 Effects is KwaiVGI's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/1.6/effects.\",\"default\":\"kwaivgi/kling-video/1.6/effects\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"effect_scene\",\"type\":\"string\",\"required\":false,\"description\":\"The effect scene to use for the video generation\",\"constraints\":\"Allowed values: hug, kiss, heart_gesture, squish, expansion, fuzzyfuzzy, bloombloom, dizzydizzy, jelly_press, jelly_slice, jelly_squish, jelly_jiggle, pixelpixel, yearbook, instant_film, anime_figure, rocketrocket, fly_fly, disappear, lightning_power, bullet_time, bullet_time_360, media_interview, day_to_night, let's_ride, jumpdrop, swish_swish, running_man, jazz_jazz, swing_swing, skateskate, building_sweater, pure_white_wings, black_wings, golden_wing, pink_pink_wings, rampage_ape, a_list_look, countdown_teleport, firework_2026, instant_christmas, birthday_star, firework, celebration, tiger_hug_pro, pet_lion_pro, guardian_spirit, squeeze_scream, inner_voice, memory_alive, guess_what, eagle_snatch, hug_from_past, instant_kid, dollar_rain, cry_cry, building_collapse, mushroom, jesus_hug, shark_alert, lie_flat, polar_bear_hug, brown_bear_hug, office_escape_plow, watermelon_bomb, boss_coming, wig_out, car_explosion, tiger_hug, siblings, construction_worker, snatched, felt_felt, plushcut, drunk_dance, drunk_dance_pet, daoma_dance, bouncy_dance, smooth_sailing_dance, new_year_greeting, lion_dance, prosperity, great_success, golden_horse_fortune, red_packet_box, lucky_horse_year, lucky_red_packet, lucky_money_come, lion_dance_pet, dumpling_making_pet, fish_making_pet, pet_red_packet, lantern_glow, expression_challenge, overdrive, heart_gesture_dance, poping, martial_arts, running, nezha, motorcycle_dance, subject_3_dance, ghost_step_dance, phantom_jewel, zoom_out, cheers_2026, kiss_pro, fight_pro, hug_pro, heart_gesture_pro, dollar_rain_pro, pet_bee_pro, santa_random_surprise, magic_match_tree, happy_birthday, thumbs_up_pro, surprise_bouquet, bouquet_drop, 3d_cartoon_1_pro, glamour_photo_shoot, box_of_joy, first_toast_of_the_year, my_santa_pic, santa_gift, steampunk_christmas, snowglobe, christmas_photo_shoot, ornament_crash, santa_express, particle_santa_surround, coronation_of_frost, spark_in_the_snow, scarlet_and_snow, cozy_toon_wrap, bullet_time_lite, magic_cloak, balloon_parade, jumping_ginger_joy, c4d_cartoon_pro, venomous_spider, throne_of_king, luminous_elf, woodland_elf, japanese_anime_1, american_comics, snowboarding, witch_transform, vampire_transform, pumpkin_head_transform, demon_transform, mummy_transform, zombie_transform, cute_pumpkin_transform, cute_ghost_transform, knock_knock_halloween, halloween_escape, baseball, korean_baseball, trampoline, trampoline_night, pucker_up, feed_mooncake, flyer, dishwasher, pet_chinese_opera, magic_fireball, gallery_ring, pet_moto_rider, muscle_pet, pet_delivery, mythic_style, steampunk, 3d_cartoon_2, pet_chef, santa_gifts, santa_hug, girlfriend, boyfriend, heart_gesture_1, pet_wizard, smoke_smoke, gun_shot, double_gun, pet_warrior, long_hair, pet_dance, wool_curly, pet_bee, marry_me, piggy_morph, ski_ski, magic_broom, splashsplash, surfsurf, fairy_wing, angel_wing, dark_wing, emoji\"},{\"name\":\"input_image_urls\",\"type\":\"array\",\"required\":false,\"description\":\"URL of images to be used for hug, kiss or heart_gesture video.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/1.6/effects\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/1.6/effects\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/1.6/effects\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/1.6/effects\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling 1.6" - modelId: "kwaivgi/kling-video/1.6/effects" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/1.6/effects" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-06T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/1.6/elements.md b/model-api-reference/video-generation/kwaivgi/kling-video/1.6/elements.md deleted file mode 100644 index 0852c980..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/1.6/elements.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling 1.6 Elements API Reference — KwaiVGI Video / 1.6 / Elements" -description: "Kling 1.6 Elements API reference for SandBase. Use model kwaivgi/kling-video/1.6/elements with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/1.6/elements" -apiReferenceJson: "{\"title\":\"Kling 1.6 Elements\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video 1.6 Elements by KwaiVGI - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/1.6/elements.\",\"default\":\"kwaivgi/kling-video/1.6/elements\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"input_image_urls\",\"type\":\"array\",\"required\":false,\"description\":\"List of image URLs to use for video generation. Supports up to 4 images.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/1.6/elements\\\",\\n \\\"prompt\\\": \\\"A cute girl and a baby cow sleeping together on a bed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/1.6/elements\\\",\\n \\\"prompt\\\": \\\"A cute girl and a baby cow sleeping together on a bed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/1.6/elements\\\",\\n \\\"prompt\\\": \\\"A cute girl and a baby cow sleeping together on a bed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/1.6/elements\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling 1.6 Elements" - modelId: "kwaivgi/kling-video/1.6/elements" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/1.6/elements" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-20T14:33:48.56Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/1.6/pro/effects.md b/model-api-reference/video-generation/kwaivgi/kling-video/1.6/pro/effects.md deleted file mode 100644 index 374f1d08..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/1.6/pro/effects.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling 1.6 API Reference — KwaiVGI Video / 1.6 / Pro / Effects" -description: "Kling 1.6 API reference for SandBase. Use model kwaivgi/kling-video/1.6/pro/effects with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/1.6/pro/effects" -apiReferenceJson: "{\"title\":\"Kling 1.6\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video 1.6 Pro is KwaiVGI's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/1.6/pro/effects.\",\"default\":\"kwaivgi/kling-video/1.6/pro/effects\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"input_image_urls\",\"type\":\"array\",\"required\":false,\"description\":\"URL of images to be used for hug, kiss or heart_gesture video.\"},{\"name\":\"effect_scene\",\"type\":\"string\",\"required\":false,\"description\":\"The effect scene to use for the video generation\",\"constraints\":\"Allowed values: hug, kiss, heart_gesture, squish, expansion, fuzzyfuzzy, bloombloom, dizzydizzy, jelly_press, jelly_slice, jelly_squish, jelly_jiggle, pixelpixel, yearbook, instant_film, anime_figure, rocketrocket, fly_fly, disappear, lightning_power, bullet_time, bullet_time_360, media_interview, day_to_night, let's_ride, jumpdrop, swish_swish, running_man, jazz_jazz, swing_swing, skateskate, building_sweater, pure_white_wings, black_wings, golden_wing, pink_pink_wings, rampage_ape, a_list_look, countdown_teleport, firework_2026, instant_christmas, birthday_star, firework, celebration, tiger_hug_pro, pet_lion_pro, guardian_spirit, squeeze_scream, inner_voice, memory_alive, guess_what, eagle_snatch, hug_from_past, instant_kid, dollar_rain, cry_cry, building_collapse, mushroom, jesus_hug, shark_alert, lie_flat, polar_bear_hug, brown_bear_hug, office_escape_plow, watermelon_bomb, boss_coming, wig_out, car_explosion, tiger_hug, siblings, construction_worker, snatched, felt_felt, plushcut, drunk_dance, drunk_dance_pet, daoma_dance, bouncy_dance, smooth_sailing_dance, new_year_greeting, lion_dance, prosperity, great_success, golden_horse_fortune, red_packet_box, lucky_horse_year, lucky_red_packet, lucky_money_come, lion_dance_pet, dumpling_making_pet, fish_making_pet, pet_red_packet, lantern_glow, expression_challenge, overdrive, heart_gesture_dance, poping, martial_arts, running, nezha, motorcycle_dance, subject_3_dance, ghost_step_dance, phantom_jewel, zoom_out, cheers_2026, kiss_pro, fight_pro, hug_pro, heart_gesture_pro, dollar_rain_pro, pet_bee_pro, santa_random_surprise, magic_match_tree, happy_birthday, thumbs_up_pro, surprise_bouquet, bouquet_drop, 3d_cartoon_1_pro, glamour_photo_shoot, box_of_joy, first_toast_of_the_year, my_santa_pic, santa_gift, steampunk_christmas, snowglobe, christmas_photo_shoot, ornament_crash, santa_express, particle_santa_surround, coronation_of_frost, spark_in_the_snow, scarlet_and_snow, cozy_toon_wrap, bullet_time_lite, magic_cloak, balloon_parade, jumping_ginger_joy, c4d_cartoon_pro, venomous_spider, throne_of_king, luminous_elf, woodland_elf, japanese_anime_1, american_comics, snowboarding, witch_transform, vampire_transform, pumpkin_head_transform, demon_transform, mummy_transform, zombie_transform, cute_pumpkin_transform, cute_ghost_transform, knock_knock_halloween, halloween_escape, baseball, korean_baseball, trampoline, trampoline_night, pucker_up, feed_mooncake, flyer, dishwasher, pet_chinese_opera, magic_fireball, gallery_ring, pet_moto_rider, muscle_pet, pet_delivery, mythic_style, steampunk, 3d_cartoon_2, pet_chef, santa_gifts, santa_hug, girlfriend, boyfriend, heart_gesture_1, pet_wizard, smoke_smoke, gun_shot, double_gun, pet_warrior, long_hair, pet_dance, wool_curly, pet_bee, marry_me, piggy_morph, ski_ski, magic_broom, splashsplash, surfsurf, fairy_wing, angel_wing, dark_wing, emoji\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/1.6/pro/effects\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/1.6/pro/effects\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/1.6/pro/effects\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/1.6/pro/effects\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling 1.6" - modelId: "kwaivgi/kling-video/1.6/pro/effects" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/1.6/pro/effects" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-06T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/1.6/pro/elements.md b/model-api-reference/video-generation/kwaivgi/kling-video/1.6/pro/elements.md deleted file mode 100644 index 584a547e..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/1.6/pro/elements.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling 1.6 Elements API Reference — KwaiVGI / 1.6 / Pro / Elements" -description: "Kling 1.6 Elements API reference for SandBase. Use model kwaivgi/kling-video/1.6/pro/elements with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/1.6/pro/elements" -apiReferenceJson: "{\"title\":\"Kling 1.6 Elements\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video 1.6 Pro by KwaiVGI - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/1.6/pro/elements.\",\"default\":\"kwaivgi/kling-video/1.6/pro/elements\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"input_image_urls\",\"type\":\"array\",\"required\":false,\"description\":\"List of image URLs to use for video generation. Supports up to 4 images.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/1.6/pro/elements\\\",\\n \\\"prompt\\\": \\\"A cute girl and a baby cow sleeping together on a bed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/1.6/pro/elements\\\",\\n \\\"prompt\\\": \\\"A cute girl and a baby cow sleeping together on a bed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/1.6/pro/elements\\\",\\n \\\"prompt\\\": \\\"A cute girl and a baby cow sleeping together on a bed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/1.6/pro/elements\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling 1.6 Elements" - modelId: "kwaivgi/kling-video/1.6/pro/elements" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/1.6/pro/elements" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-20T14:31:12.908Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/3.0/omni/pro/image-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/3.0/omni/pro/image-to-video.md index 727f9b44..8e0ff209 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/3.0/omni/pro/image-to-video.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/3.0/omni/pro/image-to-video.md @@ -4,7 +4,7 @@ description: "Kling 3.0 Omni Pro Image to Video API reference for SandBase. Use aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/3.0/omni/pro/image-to-video" -apiReferenceJson: "{\"title\":\"Kling 3.0 Omni Pro Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video Omni Pro is KwaiVGI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/3.0/omni/pro/image-to-video.\",\"default\":\"kwaivgi/kling-video/3.0/omni/pro/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Use @Image1 to reference the start frame, @Image2 to reference the end frame.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Image to use as the first frame of the video. Max file size: 10.0MB, Min width: 300px, Min height: 300px, Min aspect ratio: 0.40, Max aspect ratio: 2.50, Timeout: 20.0s\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Image to use as the last frame of the video.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a magical timelapse transition. The snow melts rapidly to reveal green grass, and the tree branches burst into bloom with pink flowers in real-time. The lighting shifts from cold winter light to warm spring sunshine. The camera pushes in slowly towards the tree. Disney-style magical transformation, cinematic, 8k.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a magical timelapse transition. The snow melts rapidly to reveal green grass, and the tree branches burst into bloom with pink flowers in real-time. The lighting shifts from cold winter light to warm spring sunshine. The camera pushes in slowly towards the tree. Disney-style magical transformation, cinematic, 8k.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a magical timelapse transition. The snow melts rapidly to reveal green grass, and the tree branches burst into bloom with pink flowers in real-time. The lighting shifts from cold winter light to warm spring sunshine. The camera pushes in slowly towards the tree. Disney-style magical transformation, cinematic, 8k.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling 3.0 Omni Pro Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling 3.0 Omni Pro Image to Video by Kuaishou animates a start image, optionally toward an end image, into a 3-10 second 1080p video.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/3.0/omni/pro/image-to-video.\",\"default\":\"kwaivgi/kling-video/3.0/omni/pro/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Use @Image1 to reference the start frame, @Image2 to reference the end frame.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Image to use as the first frame of the video. Max file size: 10.0MB, Min width: 300px, Min height: 300px, Min aspect ratio: 0.40, Max aspect ratio: 2.50, Timeout: 20.0s\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Image to use as the last frame of the video.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a magical timelapse transition. The snow melts rapidly to reveal green grass, and the tree branches burst into bloom with pink flowers in real-time. The lighting shifts from cold winter light to warm spring sunshine. The camera pushes in slowly towards the tree. Disney-style magical transformation, cinematic, 8k.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a magical timelapse transition. The snow melts rapidly to reveal green grass, and the tree branches burst into bloom with pink flowers in real-time. The lighting shifts from cold winter light to warm spring sunshine. The camera pushes in slowly towards the tree. Disney-style magical transformation, cinematic, 8k.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a magical timelapse transition. The snow melts rapidly to reveal green grass, and the tree branches burst into bloom with pink flowers in real-time. The lighting shifts from cold winter light to warm spring sunshine. The camera pushes in slowly towards the tree. Disney-style magical transformation, cinematic, 8k.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Kling 3.0 Omni Pro Image to Video" modelId: "kwaivgi/kling-video/3.0/omni/pro/image-to-video" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/3.0/omni/pro/reference-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/3.0/omni/pro/reference-to-video.md index 55bee96f..7055f31c 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/3.0/omni/pro/reference-to-video.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/3.0/omni/pro/reference-to-video.md @@ -4,7 +4,7 @@ description: "SandBase API reference for model kwaivgi/kling-video/3.0/omni/pro/ aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/3.0/omni/pro/reference-to-video" -apiReferenceJson: "{\"title\":\"Kling 3.0 Omni Pro Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Generate a video from multiple reference images and text guidance with Kling 3.0 Omni Pro.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/3.0/omni/pro/reference-to-video.\",\"default\":\"kwaivgi/kling-video/3.0/omni/pro/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Take @Element1, @Element2 to reference elements and @Image1, @Image2 to reference images in order.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"Additional reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 7 total (elements + reference images + start image).\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10\"},{\"name\":\"elements\",\"type\":\"array\",\"required\":false,\"description\":\"Elements (characters/objects) to include in the video. Reference in prompt as @Element1, @Element2, etc. Maximum 7 total (elements + reference images + start image).\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Take @Image1 as the start frame. Start with a high-angle satellite view of the ancient greenhouse ruin surrounded by nature. The camera swoops down and flies inside the building, revealing the character from @Element1 standing in the sun-drenched center. The camera then seamlessly transitions into a smooth 180-degree orbit around the character, moving to the back view. As the open backpack comes into focus, the camera continues to push forward, zooming deep inside the bag to reveal the glowing stone from @Element2 nestled inside. Cinematic lighting, hopeful atmosphere, 35mm lens. Make sure to keep it as the style of @Image2.\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/reference-to-video/input_images_0.png\\\",\\n \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/reference-to-video/input_images_1.png\\\"\\n ],\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Take @Image1 as the start frame. Start with a high-angle satellite view of the ancient greenhouse ruin surrounded by nature. The camera swoops down and flies inside the building, revealing the character from @Element1 standing in the sun-drenched center. The camera then seamlessly transitions into a smooth 180-degree orbit around the character, moving to the back view. As the open backpack comes into focus, the camera continues to push forward, zooming deep inside the bag to reveal the glowing stone from @Element2 nestled inside. Cinematic lighting, hopeful atmosphere, 35mm lens. Make sure to keep it as the style of @Image2.\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/reference-to-video/input_images_0.png\\\",\\n \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/reference-to-video/input_images_1.png\\\"\\n ],\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Take @Image1 as the start frame. Start with a high-angle satellite view of the ancient greenhouse ruin surrounded by nature. The camera swoops down and flies inside the building, revealing the character from @Element1 standing in the sun-drenched center. The camera then seamlessly transitions into a smooth 180-degree orbit around the character, moving to the back view. As the open backpack comes into focus, the camera continues to push forward, zooming deep inside the bag to reveal the glowing stone from @Element2 nestled inside. Cinematic lighting, hopeful atmosphere, 35mm lens. Make sure to keep it as the style of @Image2.\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/reference-to-video/input_images_0.png\\\",\\n \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/reference-to-video/input_images_1.png\\\"\\n ],\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling 3.0 Omni Pro Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling 3.0 Omni Pro Reference to Video by Kuaishou generates a 3-10 second 1080p video that keeps characters and objects from reference images consistent.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/3.0/omni/pro/reference-to-video.\",\"default\":\"kwaivgi/kling-video/3.0/omni/pro/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Take @Element1, @Element2 to reference elements and @Image1, @Image2 to reference images in order.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"Additional reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 7 total (elements + reference images + start image).\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10\"},{\"name\":\"elements\",\"type\":\"array\",\"required\":false,\"description\":\"Elements (characters/objects) to include in the video. Reference in prompt as @Element1, @Element2, etc. Maximum 7 total (elements + reference images + start image).\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Take @Image1 as the start frame. Start with a high-angle satellite view of the ancient greenhouse ruin surrounded by nature. The camera swoops down and flies inside the building, revealing the character from @Element1 standing in the sun-drenched center. The camera then seamlessly transitions into a smooth 180-degree orbit around the character, moving to the back view. As the open backpack comes into focus, the camera continues to push forward, zooming deep inside the bag to reveal the glowing stone from @Element2 nestled inside. Cinematic lighting, hopeful atmosphere, 35mm lens. Make sure to keep it as the style of @Image2.\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/reference-to-video/input_images_0.png\\\",\\n \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/reference-to-video/input_images_1.png\\\"\\n ],\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Take @Image1 as the start frame. Start with a high-angle satellite view of the ancient greenhouse ruin surrounded by nature. The camera swoops down and flies inside the building, revealing the character from @Element1 standing in the sun-drenched center. The camera then seamlessly transitions into a smooth 180-degree orbit around the character, moving to the back view. As the open backpack comes into focus, the camera continues to push forward, zooming deep inside the bag to reveal the glowing stone from @Element2 nestled inside. Cinematic lighting, hopeful atmosphere, 35mm lens. Make sure to keep it as the style of @Image2.\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/reference-to-video/input_images_0.png\\\",\\n \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/reference-to-video/input_images_1.png\\\"\\n ],\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Take @Image1 as the start frame. Start with a high-angle satellite view of the ancient greenhouse ruin surrounded by nature. The camera swoops down and flies inside the building, revealing the character from @Element1 standing in the sun-drenched center. The camera then seamlessly transitions into a smooth 180-degree orbit around the character, moving to the back view. As the open backpack comes into focus, the camera continues to push forward, zooming deep inside the bag to reveal the glowing stone from @Element2 nestled inside. Cinematic lighting, hopeful atmosphere, 35mm lens. Make sure to keep it as the style of @Image2.\\\",\\n \\\"images\\\": [\\n \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/reference-to-video/input_images_0.png\\\",\\n \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/reference-to-video/input_images_1.png\\\"\\n ],\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Kling 3.0 Omni Pro Reference to Video" modelId: "kwaivgi/kling-video/3.0/omni/pro/reference-to-video" @@ -14,7 +14,7 @@ seo: protocol: "Video Generation Reference" endpoint: "/v1/run" publishedAt: "" - capabilities: ["image-to-video"] + capabilities: ["reference-to-video"] category: "Video Generation" --- diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/3.0/omni/pro/video-to-video/edit.md b/model-api-reference/video-generation/kwaivgi/kling-video/3.0/omni/pro/video-to-video/edit.md index bf3d3c21..d8370092 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/3.0/omni/pro/video-to-video/edit.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/3.0/omni/pro/video-to-video/edit.md @@ -4,7 +4,7 @@ description: "Kling 3.0 Omni Pro Video Edit API reference for SandBase. Use mode aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/3.0/omni/pro/video-to-video/edit" -apiReferenceJson: "{\"title\":\"Kling 3.0 Omni Pro Video Edit\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Modify an existing video with natural-language instructions using Kling 3.0 Omni Pro.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/3.0/omni/pro/video-to-video/edit.\",\"default\":\"kwaivgi/kling-video/3.0/omni/pro/video-to-video/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Use @Element1, @Element2 to reference elements and @Image1, @Image2 to reference images in order.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + reference images) when using video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Reference video URL. Only .mp4/.mov formats supported, 3-10 seconds duration, 720-2160px resolution, max 200MB. Max file size: 200.0MB, Min width: 720px, Min height: 720px, Max width: 2160px, Max height: 2160px, Min duration: 3.0s, Max duration: 10.05s, Min FPS: 24.0, Max FPS: 60.0, Timeout: 30.0s\"},{\"name\":\"elements\",\"type\":\"array\",\"required\":false,\"description\":\"Elements (characters/objects) to include. Reference in prompt as @Element1, @Element2, etc. Maximum 4 total (elements + reference images) when using video.\"},{\"name\":\"keep_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original audio from the video.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/video-to-video/edit\\\",\\n \\\"prompt\\\": \\\"Replace the character in the video with @Element1, maintaining the same movements and camera angles. Transform the landscape into @Image1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/video-to-video/edit/output_url_1.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/video-to-video/edit\\\",\\n \\\"prompt\\\": \\\"Replace the character in the video with @Element1, maintaining the same movements and camera angles. Transform the landscape into @Image1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/video-to-video/edit/output_url_1.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/video-to-video/edit\\\",\\n \\\"prompt\\\": \\\"Replace the character in the video with @Element1, maintaining the same movements and camera angles. Transform the landscape into @Image1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/video-to-video/edit/output_url_1.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/video-to-video/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling 3.0 Omni Pro Video Edit\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling 3.0 Omni Pro Video Edit by Kuaishou edits an input video from a text instruction, optionally guided by reference images, at 1080p.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/3.0/omni/pro/video-to-video/edit.\",\"default\":\"kwaivgi/kling-video/3.0/omni/pro/video-to-video/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Use @Element1, @Element2 to reference elements and @Image1, @Image2 to reference images in order.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + reference images) when using video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Reference video URL. Only .mp4/.mov formats supported, 3-10 seconds duration, 720-2160px resolution, max 200MB. Max file size: 200.0MB, Min width: 720px, Min height: 720px, Max width: 2160px, Max height: 2160px, Min duration: 3.0s, Max duration: 10.05s, Min FPS: 24.0, Max FPS: 60.0, Timeout: 30.0s\"},{\"name\":\"elements\",\"type\":\"array\",\"required\":false,\"description\":\"Elements (characters/objects) to include. Reference in prompt as @Element1, @Element2, etc. Maximum 4 total (elements + reference images) when using video.\"},{\"name\":\"keep_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original audio from the video.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/video-to-video/edit\\\",\\n \\\"prompt\\\": \\\"Replace the character in the video with @Element1, maintaining the same movements and camera angles. Transform the landscape into @Image1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/video-to-video/edit/output_url_1.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/video-to-video/edit\\\",\\n \\\"prompt\\\": \\\"Replace the character in the video with @Element1, maintaining the same movements and camera angles. Transform the landscape into @Image1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/video-to-video/edit/output_url_1.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/video-to-video/edit\\\",\\n \\\"prompt\\\": \\\"Replace the character in the video with @Element1, maintaining the same movements and camera angles. Transform the landscape into @Image1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/video-to-video/edit/output_url_1.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/video-to-video/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Kling 3.0 Omni Pro Video Edit" modelId: "kwaivgi/kling-video/3.0/omni/pro/video-to-video/edit" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/3.0/omni/pro/video-to-video/reference.md b/model-api-reference/video-generation/kwaivgi/kling-video/3.0/omni/pro/video-to-video/reference.md deleted file mode 100644 index 1bf8e4f2..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/3.0/omni/pro/video-to-video/reference.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling 3.0 Omni Pro Video Reference API Reference" -description: "SandBase API reference for model kwaivgi/kling-video/3.0/omni/pro/video-to-video/reference. Call /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/3.0/omni/pro/video-to-video/reference" -apiReferenceJson: "{\"title\":\"Kling 3.0 Omni Pro Video Reference\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Use a source video plus image references to generate a guided video variation with Kling 3.0 Omni Pro.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/3.0/omni/pro/video-to-video/reference.\",\"default\":\"kwaivgi/kling-video/3.0/omni/pro/video-to-video/reference\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Use @Element1, @Element2 to reference elements and @Image1, @Image2 to reference images in order.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + reference images) when using video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Reference video URL. Only .mp4/.mov formats supported, 3-10 seconds duration, 720-2160px resolution, max 200MB. Max file size: 200.0MB, Min width: 720px, Min height: 720px, Max width: 2160px, Max height: 2160px, Min duration: 3.0s, Max duration: 10.05s, Min FPS: 24.0, Max FPS: 60.0, Timeout: 30.0s\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10\"},{\"name\":\"elements\",\"type\":\"array\",\"required\":false,\"description\":\"Elements (characters/objects) to include. Reference in prompt as @Element1, @Element2, etc. Maximum 4 total (elements + reference images) when using video.\"},{\"name\":\"keep_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original audio from the video.\",\"default\":\"false\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/video-to-video/reference\\\",\\n \\\"prompt\\\": \\\"Based on @Video1, generate the next shot. keep the style of the video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/video-to-video/reference/output_url_0.mp4\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/video-to-video/reference\\\",\\n \\\"prompt\\\": \\\"Based on @Video1, generate the next shot. keep the style of the video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/video-to-video/reference/output_url_0.mp4\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/video-to-video/reference\\\",\\n \\\"prompt\\\": \\\"Based on @Video1, generate the next shot. keep the style of the video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/video-to-video/reference/output_url_0.mp4\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/omni/pro/video-to-video/reference\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling 3.0 Omni Pro Video Reference" - modelId: "kwaivgi/kling-video/3.0/omni/pro/video-to-video/reference" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/3.0/omni/pro/video-to-video/reference" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/3.0/turbo/pro/image-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/3.0/turbo/pro/image-to-video.md deleted file mode 100644 index 8c3eddcb..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/3.0/turbo/pro/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling 3.0 Turbo Pro Image to Video API Reference" -description: "Kling 3.0 Turbo Pro Image to Video API reference for SandBase. Use model kwaivgi/kling-video/3.0/turbo/pro/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/3.0/turbo/pro/image-to-video" -apiReferenceJson: "{\"title\":\"Kling 3.0 Turbo Pro Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video 3.0 Turbo by KwaiVGI - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/3.0/turbo/pro/image-to-video.\",\"default\":\"kwaivgi/kling-video/3.0/turbo/pro/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Optional text prompt. For best results keep the prompt under 2500 characters. Mutually exclusive with `multi_prompt`.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"First-frame reference image. Formats: .jpg/.jpeg/.png; max 50MB; min 300px per side; aspect ratio within 1:2.5 to 2.5:1.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video length in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"Multi-shot storyboard (1-6 shots). Each shot has its own prompt and duration; the total duration must not exceed 15s. Mutually exclusive with `prompt`.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/turbo/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"The dappled light shifts gently across her face as leaves sway, a strand of hair drifts, she softly smiles and looks to the lens. The camera holds close. Photorealistic, fresh, intimate.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/3.0/turbo/pro/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/turbo/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"The dappled light shifts gently across her face as leaves sway, a strand of hair drifts, she softly smiles and looks to the lens. The camera holds close. Photorealistic, fresh, intimate.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/3.0/turbo/pro/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/turbo/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"The dappled light shifts gently across her face as leaves sway, a strand of hair drifts, she softly smiles and looks to the lens. The camera holds close. Photorealistic, fresh, intimate.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/3.0/turbo/pro/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/turbo/pro/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling 3.0 Turbo Pro Image to Video" - modelId: "kwaivgi/kling-video/3.0/turbo/pro/image-to-video" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/3.0/turbo/pro/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-17T10:35:25.92Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/3.0/turbo/pro/text-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/3.0/turbo/pro/text-to-video.md deleted file mode 100644 index ef5b8f1b..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/3.0/turbo/pro/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling 3.0 Turbo Pro Text to Video API Reference" -description: "Kling 3.0 Turbo Pro Text to Video API reference for SandBase. Use model kwaivgi/kling-video/3.0/turbo/pro/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/3.0/turbo/pro/text-to-video" -apiReferenceJson: "{\"title\":\"Kling 3.0 Turbo Pro Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video 3.0 Turbo is KwaiVGI's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/3.0/turbo/pro/text-to-video.\",\"default\":\"kwaivgi/kling-video/3.0/turbo/pro/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt to generate the video with. For best results keep the prompt under 2500 characters. Mutually exclusive with `multi_prompt`.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video length in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"Multi-shot storyboard (1-6 shots). Each shot has its own prompt and duration; the total duration must not exceed 15s. Mutually exclusive with `prompt`.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/turbo/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A jazz saxophonist sways gently into the note, cheeks pressing, sweat glistening, smoke drifting through the warm light. The camera eases in slowly. Photorealistic, soulful, moody.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/turbo/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A jazz saxophonist sways gently into the note, cheeks pressing, sweat glistening, smoke drifting through the warm light. The camera eases in slowly. Photorealistic, soulful, moody.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/turbo/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A jazz saxophonist sways gently into the note, cheeks pressing, sweat glistening, smoke drifting through the warm light. The camera eases in slowly. Photorealistic, soulful, moody.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/turbo/pro/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling 3.0 Turbo Pro Text to Video" - modelId: "kwaivgi/kling-video/3.0/turbo/pro/text-to-video" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/3.0/turbo/pro/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-17T10:35:32.502Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/3.0/turbo/standard/image-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/3.0/turbo/standard/image-to-video.md deleted file mode 100644 index 49118fa3..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/3.0/turbo/standard/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling 3.0 Turbo Standard Image to Video API Reference" -description: "SandBase API reference for model kwaivgi/kling-video/3.0/turbo/standard/image-to-video. Call /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/3.0/turbo/standard/image-to-video" -apiReferenceJson: "{\"title\":\"Kling 3.0 Turbo Standard Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video 3.0 Turbo is KwaiVGI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/3.0/turbo/standard/image-to-video.\",\"default\":\"kwaivgi/kling-video/3.0/turbo/standard/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Optional text prompt. For best results keep the prompt under 2500 characters. Mutually exclusive with `multi_prompt`.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"First-frame reference image. Formats: .jpg/.jpeg/.png; max 50MB; min 300px per side; aspect ratio within 1:2.5 to 2.5:1.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video length in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"Multi-shot storyboard (1-6 shots). Each shot has its own prompt and duration; the total duration must not exceed 15s. Mutually exclusive with `prompt`.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/turbo/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"He sways gently into the note, cheeks pressing, sweat glistening, smoke drifting through the warm light. The camera eases in slowly. Photorealistic, soulful, moody.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/3.0/turbo/standard/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/turbo/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"He sways gently into the note, cheeks pressing, sweat glistening, smoke drifting through the warm light. The camera eases in slowly. Photorealistic, soulful, moody.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/3.0/turbo/standard/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/turbo/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"He sways gently into the note, cheeks pressing, sweat glistening, smoke drifting through the warm light. The camera eases in slowly. Photorealistic, soulful, moody.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/3.0/turbo/standard/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/turbo/standard/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling 3.0 Turbo Standard Image to Video" - modelId: "kwaivgi/kling-video/3.0/turbo/standard/image-to-video" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/3.0/turbo/standard/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-17T10:35:41.867Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/3.0/turbo/standard/text-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/3.0/turbo/standard/text-to-video.md deleted file mode 100644 index e6595e14..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/3.0/turbo/standard/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling 3.0 Turbo Standard Text to Video API Reference" -description: "SandBase API reference for model kwaivgi/kling-video/3.0/turbo/standard/text-to-video. Call /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/3.0/turbo/standard/text-to-video" -apiReferenceJson: "{\"title\":\"Kling 3.0 Turbo Standard Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video 3.0 Turbo by KwaiVGI - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/3.0/turbo/standard/text-to-video.\",\"default\":\"kwaivgi/kling-video/3.0/turbo/standard/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt to generate the video with. For best results keep the prompt under 2500 characters. Mutually exclusive with `multi_prompt`.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video length in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"Multi-shot storyboard (1-6 shots). Each shot has its own prompt and duration; the total duration must not exceed 15s. Mutually exclusive with `prompt`.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/turbo/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"The cubs paw and tumble against the lioness, she lifts her head and licks one, the grass swaying in a soft breeze. The camera drifts in slowly. Photorealistic, tender, warm.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/turbo/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"The cubs paw and tumble against the lioness, she lifts her head and licks one, the grass swaying in a soft breeze. The camera drifts in slowly. Photorealistic, tender, warm.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/turbo/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"The cubs paw and tumble against the lioness, she lifts her head and licks one, the grass swaying in a soft breeze. The camera drifts in slowly. Photorealistic, tender, warm.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/3.0/turbo/standard/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling 3.0 Turbo Standard Text to Video" - modelId: "kwaivgi/kling-video/3.0/turbo/standard/text-to-video" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/3.0/turbo/standard/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-17T10:35:11.236Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/ai-avatar/2.0/pro.md b/model-api-reference/video-generation/kwaivgi/kling-video/ai-avatar/2.0/pro.md index 656bae60..184b30ba 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/ai-avatar/2.0/pro.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/ai-avatar/2.0/pro.md @@ -1,12 +1,12 @@ --- -title: "Kling AI Avatar v2 Pro API Reference" -description: "Kling AI Avatar v2 Pro API reference for SandBase. Use model kwaivgi/kling-video/ai-avatar/2.0/pro with /v1/run; see request and response examples." +title: "Kling AI Avatar 2.0 Pro API Reference" +description: "Kling AI Avatar 2.0 Pro API reference for SandBase. Use model kwaivgi/kling-video/ai-avatar/2.0/pro with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/ai-avatar/2.0/pro" -apiReferenceJson: "{\"title\":\"Kling AI Avatar v2 Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video Ai Avatar 2.0 is KwaiVGI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/ai-avatar/2.0/pro.\",\"default\":\"kwaivgi/kling-video/ai-avatar/2.0/pro\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for the video generation.\",\"default\":\".\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to use as your avatar\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the audio file.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/ai-avatar/2.0/pro\\\",\\n \\\"prompt\\\": \\\".\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/ai-avatar/2.0/pro/input_image_1.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/ai-avatar/2.0/pro/output_url_0.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/ai-avatar/2.0/pro\\\",\\n \\\"prompt\\\": \\\".\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/ai-avatar/2.0/pro/input_image_1.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/ai-avatar/2.0/pro/output_url_0.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/ai-avatar/2.0/pro\\\",\\n \\\"prompt\\\": \\\".\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/ai-avatar/2.0/pro/input_image_1.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/ai-avatar/2.0/pro/output_url_0.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/ai-avatar/2.0/pro\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling AI Avatar 2.0 Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling AI Avatar 2.0 Pro by Kuaishou animates a portrait image into a talking-head video lip-synced to an input audio track, at Pro quality.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/ai-avatar/2.0/pro.\",\"default\":\"kwaivgi/kling-video/ai-avatar/2.0/pro\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for the video generation.\",\"default\":\".\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to use as your avatar\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the audio file.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/ai-avatar/2.0/pro\\\",\\n \\\"prompt\\\": \\\".\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/ai-avatar/2.0/pro/input_image_1.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/ai-avatar/2.0/pro/output_url_0.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/ai-avatar/2.0/pro\\\",\\n \\\"prompt\\\": \\\".\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/ai-avatar/2.0/pro/input_image_1.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/ai-avatar/2.0/pro/output_url_0.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/ai-avatar/2.0/pro\\\",\\n \\\"prompt\\\": \\\".\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/ai-avatar/2.0/pro/input_image_1.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/ai-avatar/2.0/pro/output_url_0.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/ai-avatar/2.0/pro\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling AI Avatar v2 Pro" + modelName: "Kling AI Avatar 2.0 Pro" modelId: "kwaivgi/kling-video/ai-avatar/2.0/pro" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/ai-avatar/2.0/standard.md b/model-api-reference/video-generation/kwaivgi/kling-video/ai-avatar/2.0/standard.md index fe3e26c6..54e3f189 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/ai-avatar/2.0/standard.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/ai-avatar/2.0/standard.md @@ -1,12 +1,12 @@ --- -title: "Kling AI Avatar v2 Standard API Reference" -description: "Kling AI Avatar v2 Standard API reference for SandBase. Use model kwaivgi/kling-video/ai-avatar/2.0/standard with /v1/run; see request and response examples." +title: "Kling AI Avatar 2.0 Standard API Reference" +description: "Kling AI Avatar 2.0 Standard API reference for SandBase. Use model kwaivgi/kling-video/ai-avatar/2.0/standard with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/ai-avatar/2.0/standard" -apiReferenceJson: "{\"title\":\"Kling AI Avatar v2 Standard\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video Ai Avatar 2.0 by KwaiVGI - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/ai-avatar/2.0/standard.\",\"default\":\"kwaivgi/kling-video/ai-avatar/2.0/standard\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for the video generation.\",\"default\":\".\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to use as your avatar\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the audio file.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/ai-avatar/2.0/standard\\\",\\n \\\"prompt\\\": \\\".\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/ai-avatar/2.0/standard/input_image_0.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/ai-avatar/2.0/standard/output_url_1.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/ai-avatar/2.0/standard\\\",\\n \\\"prompt\\\": \\\".\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/ai-avatar/2.0/standard/input_image_0.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/ai-avatar/2.0/standard/output_url_1.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/ai-avatar/2.0/standard\\\",\\n \\\"prompt\\\": \\\".\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/ai-avatar/2.0/standard/input_image_0.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/ai-avatar/2.0/standard/output_url_1.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/ai-avatar/2.0/standard\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling AI Avatar 2.0 Standard\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling AI Avatar 2.0 Standard by Kuaishou animates a portrait image into a talking-head video lip-synced to an input audio track, at Standard quality.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/ai-avatar/2.0/standard.\",\"default\":\"kwaivgi/kling-video/ai-avatar/2.0/standard\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for the video generation.\",\"default\":\".\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to use as your avatar\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the audio file.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/ai-avatar/2.0/standard\\\",\\n \\\"prompt\\\": \\\".\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/ai-avatar/2.0/standard/input_image_0.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/ai-avatar/2.0/standard/output_url_1.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/ai-avatar/2.0/standard\\\",\\n \\\"prompt\\\": \\\".\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/ai-avatar/2.0/standard/input_image_0.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/ai-avatar/2.0/standard/output_url_1.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/ai-avatar/2.0/standard\\\",\\n \\\"prompt\\\": \\\".\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/ai-avatar/2.0/standard/input_image_0.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/ai-avatar/2.0/standard/output_url_1.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/ai-avatar/2.0/standard\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling AI Avatar v2 Standard" + modelName: "Kling AI Avatar 2.0 Standard" modelId: "kwaivgi/kling-video/ai-avatar/2.0/standard" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/create-voice.md b/model-api-reference/video-generation/kwaivgi/kling-video/create-voice.md deleted file mode 100644 index 47b46d30..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/create-voice.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Video Create Voice API Reference" -description: "Kling Video Create Voice API reference for SandBase. Use model kwaivgi/kling-video/create-voice with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/create-voice" -apiReferenceJson: "{\"title\":\"Kling Video Create Voice\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video Create Voice by KwaiVGI - advanced AI model for audio-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/create-voice.\",\"default\":\"kwaivgi/kling-video/create-voice\"},{\"name\":\"voice_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the voice audio file. Supports .mp3/.wav audio or .mp4/.mov video. Duration must be 5-30 seconds with clean, single-voice audio.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/create-voice\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/create-voice\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/create-voice\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/create-voice\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Video Create Voice" - modelId: "kwaivgi/kling-video/create-voice" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/create-voice" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-16T15:32:04.208Z" - capabilities: ["audio-to-audio"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/lipsync.md b/model-api-reference/video-generation/kwaivgi/kling-video/lipsync.md deleted file mode 100644 index 72ac51e0..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/lipsync.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling LipSync Audio-to-Video API Reference" -description: "Kling LipSync Audio-to-Video API reference for SandBase. Use model kwaivgi/kling-video/lipsync with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/lipsync" -apiReferenceJson: "{\"title\":\"Kling LipSync Audio-to-Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video Lipsync is KwaiVGI's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/lipsync.\",\"default\":\"kwaivgi/kling-video/lipsync\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to generate the lip sync for. Supports .mp4/.mov, ≤100MB, 2–10s, 720p/1080p only, width/height 720–1920px.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the audio to generate the lip sync for. Minimum duration is 2s and maximum duration is 60s. Maximum file size is 5MB.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/lipsync\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/lipsync/input_video_1.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/lipsync/input_audio_0.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/lipsync\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/lipsync/input_video_1.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/lipsync/input_audio_0.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/lipsync\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/lipsync/input_video_1.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/lipsync/input_audio_0.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/lipsync\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling LipSync Audio-to-Video" - modelId: "kwaivgi/kling-video/lipsync" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/lipsync" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-27T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/lipsync/text-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/lipsync/text-to-video.md deleted file mode 100644 index b049a83e..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/lipsync/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling LipSync Text-to-Video API Reference" -description: "Kling LipSync Text-to-Video API reference for SandBase. Use model kwaivgi/kling-video/lipsync/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/lipsync/text-to-video" -apiReferenceJson: "{\"title\":\"Kling LipSync Text-to-Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video Lipsync is KwaiVGI's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/lipsync/text-to-video.\",\"default\":\"kwaivgi/kling-video/lipsync/text-to-video\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to generate the lip sync for. Supports .mp4/.mov, ≤100MB, 2-60s, 720p/1080p only, width/height 720–1920px. If validation fails, an error is returned.\"},{\"name\":\"text\",\"type\":\"string\",\"required\":false,\"description\":\"Text content for lip-sync video generation. Max 120 characters.\"},{\"name\":\"voice_id\",\"type\":\"string\",\"required\":false,\"description\":\"Voice ID to use for speech synthesis\",\"constraints\":\"Allowed values: genshin_vindi2, zhinen_xuesheng, AOT, ai_shatang, genshin_klee2, genshin_kirara, ai_kaiya, oversea_male1, ai_chenjiahao_712, girlfriend_4_speech02, chat1_female_new-3, chat_0407_5-1, cartoon-boy-07, uk_boy1, cartoon-girl-01, PeppaPig_platform, ai_huangzhong_712, ai_huangyaoshi_712, ai_laoguowang_712, chengshu_jiejie, you_pingjing, calm_story1, uk_man2, laopopo_speech02, heainainai_speech02, reader_en_m-v1, commercial_lady_en_f-v1, tiyuxi_xuedi, tiexin_nanyou, girlfriend_1_speech02, girlfriend_2_speech02, zhuxi_speech02, uk_oldman3, dongbeilaotie_speech02, chongqingxiaohuo_speech02, chuanmeizi_speech02, chaoshandashu_speech02, ai_taiwan_man2_speech02, xianzhanggui_speech02, tianjinjiejie_speech02, diyinnansang_DB_CN_M_04-v2, yizhipiannan-v1, guanxiaofang-v2, tianmeixuemei-v1, daopianyansang-v1, mengwa-v1\"},{\"name\":\"voice_language\",\"type\":\"string\",\"required\":false,\"description\":\"The voice language corresponding to the Voice ID\",\"default\":\"en\",\"constraints\":\"Allowed values: zh, en\"},{\"name\":\"voice_speed\",\"type\":\"number\",\"required\":false,\"description\":\"Speech rate for Text to Video generation\",\"default\":\"1\",\"constraints\":\"Range: 0.8 to 2\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/lipsync/text-to-video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/lipsync/text-to-video/input_video_0.mp4\\\",\\n \\\"text\\\": \\\"Mental health is as important as physical health, shaping our emotions, thoughts, and daily interactions.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/lipsync/text-to-video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/lipsync/text-to-video/input_video_0.mp4\\\",\\n \\\"text\\\": \\\"Mental health is as important as physical health, shaping our emotions, thoughts, and daily interactions.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/lipsync/text-to-video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/lipsync/text-to-video/input_video_0.mp4\\\",\\n \\\"text\\\": \\\"Mental health is as important as physical health, shaping our emotions, thoughts, and daily interactions.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/lipsync/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling LipSync Text-to-Video" - modelId: "kwaivgi/kling-video/lipsync/text-to-video" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/lipsync/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-27T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/o1/pro/edit.md b/model-api-reference/video-generation/kwaivgi/kling-video/o1/pro/edit.md deleted file mode 100644 index c7ccf3dc..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/o1/pro/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Video O1 Pro API Reference — KwaiVGI / O1 / Pro / Edit" -description: "Kling Video O1 Pro API reference for SandBase. Use model kwaivgi/kling-video/o1/pro/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/o1/pro/edit" -apiReferenceJson: "{\"title\":\"Kling Video O1 Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video O1 Pro is KwaiVGI's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o1/pro/edit.\",\"default\":\"kwaivgi/kling-video/o1/pro/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Use @Element1, @Element2 to reference elements and @Image1, @Image2 to reference images in order.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + reference images) when using video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Reference video URL. Only .mp4/.mov formats supported, 3-10 seconds duration, 720-2160px resolution, max 200MB. Max file size: 200.0MB, Min width: 720px, Min height: 720px, Max width: 2160px, Max height: 2160px, Min duration: 3.0s, Max duration: 10.05s, Min FPS: 24.0, Max FPS: 60.0, Timeout: 30.0s\"},{\"name\":\"keep_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original audio from the video.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/pro/edit\\\",\\n \\\"prompt\\\": \\\"Replace the character in the video with @Element1, maintaining the same movements and camera angles. Transform the landscape into @Image1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/2038bf1f9c5a-ku8_Wdpf-oTbGRq4lB5DU_output.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/pro/edit\\\",\\n \\\"prompt\\\": \\\"Replace the character in the video with @Element1, maintaining the same movements and camera angles. Transform the landscape into @Image1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/2038bf1f9c5a-ku8_Wdpf-oTbGRq4lB5DU_output.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/pro/edit\\\",\\n \\\"prompt\\\": \\\"Replace the character in the video with @Element1, maintaining the same movements and camera angles. Transform the landscape into @Image1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/2038bf1f9c5a-ku8_Wdpf-oTbGRq4lB5DU_output.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/pro/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Video O1 Pro" - modelId: "kwaivgi/kling-video/o1/pro/edit" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/o1/pro/edit" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-01T11:29:19.531Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/o1/pro/image-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/o1/pro/image-to-video.md deleted file mode 100644 index 70ad1a18..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/o1/pro/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Video O1 Pro API Reference — KwaiVGI / Pro / Image To Video" -description: "Kling Video O1 Pro API reference for SandBase. Use model kwaivgi/kling-video/o1/pro/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/o1/pro/image-to-video" -apiReferenceJson: "{\"title\":\"Kling Video O1 Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video O1 Pro is KwaiVGI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o1/pro/image-to-video.\",\"default\":\"kwaivgi/kling-video/o1/pro/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Use @Image1 to reference the start frame, @Image2 to reference the end frame.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Image to use as the first frame of the video. Max file size: 10.0MB, Min width: 300px, Min height: 300px, Min aspect ratio: 0.40, Max aspect ratio: 2.50, Timeout: 20.0s\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Image to use as the last frame of the video.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a magical timelapse transition. The snow melts rapidly to reveal green grass, and the tree branches burst into bloom with pink flowers in real-time. The lighting shifts from cold winter light to warm spring sunshine. The camera pushes in slowly towards the tree. Disney-style magical transformation, cinematic, 8k.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/d5f4a0f0f119-NaslJIC7F2WodS6DFZRRJ.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a magical timelapse transition. The snow melts rapidly to reveal green grass, and the tree branches burst into bloom with pink flowers in real-time. The lighting shifts from cold winter light to warm spring sunshine. The camera pushes in slowly towards the tree. Disney-style magical transformation, cinematic, 8k.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/d5f4a0f0f119-NaslJIC7F2WodS6DFZRRJ.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a magical timelapse transition. The snow melts rapidly to reveal green grass, and the tree branches burst into bloom with pink flowers in real-time. The lighting shifts from cold winter light to warm spring sunshine. The camera pushes in slowly towards the tree. Disney-style magical transformation, cinematic, 8k.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/d5f4a0f0f119-NaslJIC7F2WodS6DFZRRJ.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/pro/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Video O1 Pro" - modelId: "kwaivgi/kling-video/o1/pro/image-to-video" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/o1/pro/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-01T11:39:20.265Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/o1/pro/reference-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/o1/pro/reference-to-video.md deleted file mode 100644 index 294d44f5..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/o1/pro/reference-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Video O1 Pro API Reference — KwaiVGI / Reference To Video" -description: "Kling Video O1 Pro API reference for SandBase. Use model kwaivgi/kling-video/o1/pro/reference-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/o1/pro/reference-to-video" -apiReferenceJson: "{\"title\":\"Kling Video O1 Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video O1 Pro is KwaiVGI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o1/pro/reference-to-video.\",\"default\":\"kwaivgi/kling-video/o1/pro/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Take @Element1, @Element2 to reference elements and @Image1, @Image2 to reference images in order.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Additional reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 7 total (elements + reference images + start image).\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/pro/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Take @Image1 as the start frame. Start with a high-angle satellite view of the ancient greenhouse ruin surrounded by nature. The camera swoops down and flies inside the building, revealing the character from @Element1 standing in the sun-drenched center. The camera then seamlessly transitions into a smooth 180-degree orbit around the character, moving to the back view. As the open backpack comes into focus, the camera continues to push forward, zooming deep inside the bag to reveal the glowing stone from @Element2 nestled inside. Cinematic lighting, hopeful atmosphere, 35mm lens. Make sure to keep it as the style of @Image2.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/pro/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Take @Image1 as the start frame. Start with a high-angle satellite view of the ancient greenhouse ruin surrounded by nature. The camera swoops down and flies inside the building, revealing the character from @Element1 standing in the sun-drenched center. The camera then seamlessly transitions into a smooth 180-degree orbit around the character, moving to the back view. As the open backpack comes into focus, the camera continues to push forward, zooming deep inside the bag to reveal the glowing stone from @Element2 nestled inside. Cinematic lighting, hopeful atmosphere, 35mm lens. Make sure to keep it as the style of @Image2.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/pro/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Take @Image1 as the start frame. Start with a high-angle satellite view of the ancient greenhouse ruin surrounded by nature. The camera swoops down and flies inside the building, revealing the character from @Element1 standing in the sun-drenched center. The camera then seamlessly transitions into a smooth 180-degree orbit around the character, moving to the back view. As the open backpack comes into focus, the camera continues to push forward, zooming deep inside the bag to reveal the glowing stone from @Element2 nestled inside. Cinematic lighting, hopeful atmosphere, 35mm lens. Make sure to keep it as the style of @Image2.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/pro/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Video O1 Pro" - modelId: "kwaivgi/kling-video/o1/pro/reference-to-video" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/o1/pro/reference-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-01T11:37:01.777Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/o1/pro/video-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/o1/pro/video-to-video.md deleted file mode 100644 index 8d8e455a..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/o1/pro/video-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Video O1 Pro API Reference — KwaiVGI / Pro / Video To Video" -description: "Kling Video O1 Pro API reference for SandBase. Use model kwaivgi/kling-video/o1/pro/video-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/o1/pro/video-to-video" -apiReferenceJson: "{\"title\":\"Kling Video O1 Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video O1 Pro by KwaiVGI - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o1/pro/video-to-video.\",\"default\":\"kwaivgi/kling-video/o1/pro/video-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Use @Element1, @Element2 to reference elements and @Image1, @Image2 to reference images in order.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + reference images) when using video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Reference video URL. Only .mp4/.mov formats supported, 3-10 seconds duration, 720-2160px resolution, max 200MB. Max file size: 200.0MB, Min width: 720px, Min height: 720px, Max width: 2160px, Max height: 2160px, Min duration: 3.0s, Max duration: 10.05s, Min FPS: 24.0, Max FPS: 60.0, Timeout: 30.0s\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10\"},{\"name\":\"keep_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original audio from the video.\",\"default\":\"false\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/pro/video-to-video\\\",\\n \\\"prompt\\\": \\\"Based on @Video1, generate the next shot. keep the style of the video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/ee8d5dc74ad3-oVdiICFXY03Vbam-08Aj8_output.mp4\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/pro/video-to-video\\\",\\n \\\"prompt\\\": \\\"Based on @Video1, generate the next shot. keep the style of the video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/ee8d5dc74ad3-oVdiICFXY03Vbam-08Aj8_output.mp4\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/pro/video-to-video\\\",\\n \\\"prompt\\\": \\\"Based on @Video1, generate the next shot. keep the style of the video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/ee8d5dc74ad3-oVdiICFXY03Vbam-08Aj8_output.mp4\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/pro/video-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Video O1 Pro" - modelId: "kwaivgi/kling-video/o1/pro/video-to-video" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/o1/pro/video-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-01T11:25:09.487Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/o1/standard/edit.md b/model-api-reference/video-generation/kwaivgi/kling-video/o1/standard/edit.md deleted file mode 100644 index 7ceb10a8..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/o1/standard/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Video O1 Standard API Reference — KwaiVGI / Standard / Edit" -description: "Kling Video O1 Standard API reference for SandBase. Use model kwaivgi/kling-video/o1/standard/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/o1/standard/edit" -apiReferenceJson: "{\"title\":\"Kling Video O1 Standard\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video O1 Standard by KwaiVGI - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o1/standard/edit.\",\"default\":\"kwaivgi/kling-video/o1/standard/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Use @Element1, @Element2 to reference elements and @Image1, @Image2 to reference images in order.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + reference images) when using video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Reference video URL. Only .mp4/.mov formats supported, 3-10 seconds duration, 720-2160px resolution, max 200MB. Max file size: 200.0MB, Min width: 720px, Min height: 720px, Max width: 2160px, Max height: 2160px, Min duration: 3.0s, Max duration: 10.05s, Min FPS: 24.0, Max FPS: 60.0, Timeout: 30.0s\"},{\"name\":\"keep_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original audio from the video.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/standard/edit\\\",\\n \\\"prompt\\\": \\\"Replace the character in the video with @Element1, maintaining the same movements and camera angles. Transform the landscape into @Image1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/2038bf1f9c5a-ku8_Wdpf-oTbGRq4lB5DU_output.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/standard/edit\\\",\\n \\\"prompt\\\": \\\"Replace the character in the video with @Element1, maintaining the same movements and camera angles. Transform the landscape into @Image1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/2038bf1f9c5a-ku8_Wdpf-oTbGRq4lB5DU_output.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/standard/edit\\\",\\n \\\"prompt\\\": \\\"Replace the character in the video with @Element1, maintaining the same movements and camera angles. Transform the landscape into @Image1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/2038bf1f9c5a-ku8_Wdpf-oTbGRq4lB5DU_output.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/standard/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Video O1 Standard" - modelId: "kwaivgi/kling-video/o1/standard/edit" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/o1/standard/edit" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-15T09:34:39.306Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/o1/standard/image-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/o1/standard/image-to-video.md deleted file mode 100644 index 40bce187..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/o1/standard/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Video O1 Standard API Reference — KwaiVGI / Image To Video" -description: "Kling Video O1 Standard API reference for SandBase. Use model kwaivgi/kling-video/o1/standard/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/o1/standard/image-to-video" -apiReferenceJson: "{\"title\":\"Kling Video O1 Standard\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video O1 Standard by KwaiVGI - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o1/standard/image-to-video.\",\"default\":\"kwaivgi/kling-video/o1/standard/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Use @Image1 to reference the start frame, @Image2 to reference the end frame.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Image to use as the first frame of the video. Max file size: 10.0MB, Min width: 300px, Min height: 300px, Min aspect ratio: 0.40, Max aspect ratio: 2.50, Timeout: 20.0s\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Image to use as the last frame of the video.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a magical timelapse transition. The snow melts rapidly to reveal green grass, and the tree branches burst into bloom with pink flowers in real-time. The lighting shifts from cold winter light to warm spring sunshine. The camera pushes in slowly towards the tree. Disney-style magical transformation, cinematic, 8k.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/d5f4a0f0f119-NaslJIC7F2WodS6DFZRRJ.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a magical timelapse transition. The snow melts rapidly to reveal green grass, and the tree branches burst into bloom with pink flowers in real-time. The lighting shifts from cold winter light to warm spring sunshine. The camera pushes in slowly towards the tree. Disney-style magical transformation, cinematic, 8k.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/d5f4a0f0f119-NaslJIC7F2WodS6DFZRRJ.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Create a magical timelapse transition. The snow melts rapidly to reveal green grass, and the tree branches burst into bloom with pink flowers in real-time. The lighting shifts from cold winter light to warm spring sunshine. The camera pushes in slowly towards the tree. Disney-style magical transformation, cinematic, 8k.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/d5f4a0f0f119-NaslJIC7F2WodS6DFZRRJ.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/standard/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Video O1 Standard" - modelId: "kwaivgi/kling-video/o1/standard/image-to-video" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/o1/standard/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-15T09:37:41.28Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/o1/standard/reference-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/o1/standard/reference-to-video.md deleted file mode 100644 index 30de5435..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/o1/standard/reference-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Video O1 Standard API Reference — KwaiVGI To Video" -description: "Kling Video O1 Standard API reference for SandBase. Use model kwaivgi/kling-video/o1/standard/reference-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/o1/standard/reference-to-video" -apiReferenceJson: "{\"title\":\"Kling Video O1 Standard\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video O1 Standard by KwaiVGI - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o1/standard/reference-to-video.\",\"default\":\"kwaivgi/kling-video/o1/standard/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Take @Element1, @Element2 to reference elements and @Image1, @Image2 to reference images in order.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Additional reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 7 total (elements + reference images + start image).\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/standard/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Take @Image1 as the start frame. Start with a high-angle satellite view of the ancient greenhouse ruin surrounded by nature. The camera swoops down and flies inside the building, revealing the character from @Element1 standing in the sun-drenched center. The camera then seamlessly transitions into a smooth 180-degree orbit around the character, moving to the back view. As the open backpack comes into focus, the camera continues to push forward, zooming deep inside the bag to reveal the glowing stone from @Element2 nestled inside. Cinematic lighting, hopeful atmosphere, 35mm lens. Make sure to keep it as the style of @Image2.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/standard/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Take @Image1 as the start frame. Start with a high-angle satellite view of the ancient greenhouse ruin surrounded by nature. The camera swoops down and flies inside the building, revealing the character from @Element1 standing in the sun-drenched center. The camera then seamlessly transitions into a smooth 180-degree orbit around the character, moving to the back view. As the open backpack comes into focus, the camera continues to push forward, zooming deep inside the bag to reveal the glowing stone from @Element2 nestled inside. Cinematic lighting, hopeful atmosphere, 35mm lens. Make sure to keep it as the style of @Image2.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/standard/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Take @Image1 as the start frame. Start with a high-angle satellite view of the ancient greenhouse ruin surrounded by nature. The camera swoops down and flies inside the building, revealing the character from @Element1 standing in the sun-drenched center. The camera then seamlessly transitions into a smooth 180-degree orbit around the character, moving to the back view. As the open backpack comes into focus, the camera continues to push forward, zooming deep inside the bag to reveal the glowing stone from @Element2 nestled inside. Cinematic lighting, hopeful atmosphere, 35mm lens. Make sure to keep it as the style of @Image2.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/standard/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Video O1 Standard" - modelId: "kwaivgi/kling-video/o1/standard/reference-to-video" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/o1/standard/reference-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-15T09:39:25.599Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/o1/standard/video-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/o1/standard/video-to-video.md deleted file mode 100644 index 25b8220b..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/o1/standard/video-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Video O1 Standard API Reference — KwaiVGI / Video To Video" -description: "Kling Video O1 Standard API reference for SandBase. Use model kwaivgi/kling-video/o1/standard/video-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/o1/standard/video-to-video" -apiReferenceJson: "{\"title\":\"Kling Video O1 Standard\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video O1 Standard is KwaiVGI's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o1/standard/video-to-video.\",\"default\":\"kwaivgi/kling-video/o1/standard/video-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Use @Element1, @Element2 to reference elements and @Image1, @Image2 to reference images in order.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + reference images) when using video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Reference video URL. Only .mp4/.mov formats supported, 3-10 seconds duration, 720-2160px resolution, max 200MB. Max file size: 200.0MB, Min width: 720px, Min height: 720px, Max width: 2160px, Max height: 2160px, Min duration: 3.0s, Max duration: 10.05s, Min FPS: 24.0, Max FPS: 60.0, Timeout: 30.0s\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10\"},{\"name\":\"keep_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original audio from the video.\",\"default\":\"false\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/standard/video-to-video\\\",\\n \\\"prompt\\\": \\\"Based on @Video1, generate the next shot. keep the style of the video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/ee8d5dc74ad3-oVdiICFXY03Vbam-08Aj8_output.mp4\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/standard/video-to-video\\\",\\n \\\"prompt\\\": \\\"Based on @Video1, generate the next shot. keep the style of the video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/ee8d5dc74ad3-oVdiICFXY03Vbam-08Aj8_output.mp4\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/standard/video-to-video\\\",\\n \\\"prompt\\\": \\\"Based on @Video1, generate the next shot. keep the style of the video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/ee8d5dc74ad3-oVdiICFXY03Vbam-08Aj8_output.mp4\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o1/standard/video-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Video O1 Standard" - modelId: "kwaivgi/kling-video/o1/standard/video-to-video" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/o1/standard/video-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-15T09:36:27.69Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/o3.md b/model-api-reference/video-generation/kwaivgi/kling-video/o3.md index e985f16f..e0ae4bd0 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/o3.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/o3.md @@ -1,12 +1,12 @@ --- -title: "Kling Video O3 API Reference" -description: "Kling Video O3 API reference for SandBase. Use model kwaivgi/kling-video/o3 with /v1/run; see request and response examples." +title: "Kling O3 API Reference" +description: "Kling O3 API reference for SandBase. Use model kwaivgi/kling-video/o3 with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/o3" -apiReferenceJson: "{\"title\":\"Kling Video O3\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video O3 is KwaiVGI's unified omni video generation model. Generate or transform videos from prompts, images, reference videos, and multi-shot text while choosing standard or pro mode per request.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3.\",\"default\":\"kwaivgi/kling-video/o3\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation or transformation. When using reference media, refer to them as @Image1, @Image2, and @Video1.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Generation quality tier.\",\"default\":\"standard\",\"constraints\":\"Allowed values: standard, pro, 4k\"},{\"name\":\"image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional first-frame image URL for image-to-video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Optional reference video URL for video-to-video generation.\"},{\"name\":\"keep_original_sound\",\"type\":\"boolean\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"true\"},{\"name\":\"character_orientation\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Allowed values: image, video\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional end-frame image URL for image-to-video.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Optional reference image URLs.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Generated video duration in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"true\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"Request parameter supported by this model.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video, image-to-video, video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3\\\",\\n \\\"prompt\\\": \\\"Based on @Video1, make the character from @Image1 dance.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/f77b827ca02a-TNErq9yD7ZxGRATjfAqnh_EIgJSN67.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/f1ecbb471a16-hklvF__w53diz6Rve7f5__JuDW2xl0mr6sJ_Kjz3Vxe_vidoeook--1-_1.mp4\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3\\\",\\n \\\"prompt\\\": \\\"Based on @Video1, make the character from @Image1 dance.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/f77b827ca02a-TNErq9yD7ZxGRATjfAqnh_EIgJSN67.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/f1ecbb471a16-hklvF__w53diz6Rve7f5__JuDW2xl0mr6sJ_Kjz3Vxe_vidoeook--1-_1.mp4\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3\\\",\\n \\\"prompt\\\": \\\"Based on @Video1, make the character from @Image1 dance.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/f77b827ca02a-TNErq9yD7ZxGRATjfAqnh_EIgJSN67.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/f1ecbb471a16-hklvF__w53diz6Rve7f5__JuDW2xl0mr6sJ_Kjz3Vxe_vidoeook--1-_1.mp4\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling O3\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling O3 by Kuaishou is a single entry point for Kling 3.0 Omni video: text, image, reference, and video-guided generation in Standard, Pro, or 4K quality, with optional native audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3.\",\"default\":\"kwaivgi/kling-video/o3\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation or transformation. When using reference media, refer to them as @Image1, @Image2, and @Video1.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Generation quality tier.\",\"default\":\"standard\",\"constraints\":\"Allowed values: standard, pro, 4k\"},{\"name\":\"image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional first-frame image URL for image-to-video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Optional reference video URL for video-to-video generation.\"},{\"name\":\"keep_original_sound\",\"type\":\"boolean\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"true\"},{\"name\":\"character_orientation\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Allowed values: image, video\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional end-frame image URL for image-to-video.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Optional reference image URLs.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Generated video duration in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"true\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"Request parameter supported by this model.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video, image-to-video, video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3\\\",\\n \\\"prompt\\\": \\\"Based on @Video1, make the character from @Image1 dance.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/f77b827ca02a-TNErq9yD7ZxGRATjfAqnh_EIgJSN67.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/f1ecbb471a16-hklvF__w53diz6Rve7f5__JuDW2xl0mr6sJ_Kjz3Vxe_vidoeook--1-_1.mp4\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3\\\",\\n \\\"prompt\\\": \\\"Based on @Video1, make the character from @Image1 dance.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/f77b827ca02a-TNErq9yD7ZxGRATjfAqnh_EIgJSN67.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/f1ecbb471a16-hklvF__w53diz6Rve7f5__JuDW2xl0mr6sJ_Kjz3Vxe_vidoeook--1-_1.mp4\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3\\\",\\n \\\"prompt\\\": \\\"Based on @Video1, make the character from @Image1 dance.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/f77b827ca02a-TNErq9yD7ZxGRATjfAqnh_EIgJSN67.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/f1ecbb471a16-hklvF__w53diz6Rve7f5__JuDW2xl0mr6sJ_Kjz3Vxe_vidoeook--1-_1.mp4\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video O3" + modelName: "Kling O3" modelId: "kwaivgi/kling-video/o3" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/lightricks/ltx-video-13b-dev/image-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/edit.md similarity index 52% rename from model-api-reference/video-generation/lightricks/ltx-video-13b-dev/image-to-video.md rename to model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/edit.md index 5d49a4fc..c14b9e9d 100644 --- a/model-api-reference/video-generation/lightricks/ltx-video-13b-dev/image-to-video.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/edit.md @@ -1,20 +1,20 @@ --- -title: "LTX Video-0.9.7 13B API Reference — Lightricks / Image To Video" -description: "LTX Video-0.9.7 13B API reference for SandBase. Use model lightricks/ltx-video-13b-dev/image-to-video with /v1/run; see request and response examples." +title: "Kling O3 4K Video Edit API Reference" +description: "Kling O3 4K Video Edit API reference for SandBase. Use model kwaivgi/kling-video/o3/4k/edit with /v1/run; see request and response examples." aside: false outline: false -apiReferenceKey: "video/lightricks/ltx-video-13b-dev/image-to-video" -apiReferenceJson: "{\"title\":\"LTX Video-0.9.7 13B\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx Video 13b Dev by Lightricks - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-video-13b-dev/image-to-video.\",\"default\":\"lightricks/ltx-video-13b-dev/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt to guide generation\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Image URL for Image-to-Video task\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"reverse_video\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to reverse the video.\",\"default\":\"false\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for generation\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-video-13b-dev/image-to-video\\\",\\n \\\"prompt\\\": \\\"The astronaut gets up and walks away\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-video-13b-dev/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-video-13b-dev/image-to-video\\\",\\n \\\"prompt\\\": \\\"The astronaut gets up and walks away\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-video-13b-dev/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-video-13b-dev/image-to-video\\\",\\n \\\"prompt\\\": \\\"The astronaut gets up and walks away\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-video-13b-dev/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-video-13b-dev/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceKey: "video/kwaivgi/kling-video/o3/4k/edit" +apiReferenceJson: "{\"title\":\"Kling O3 4K Video Edit\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling O3 4K Video Edit by Kuaishou edits an input video from a text instruction, optionally guided by reference images, at native 4K.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/4k/edit.\",\"default\":\"kwaivgi/kling-video/o3/4k/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Reference video as @Video1.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + reference images) when using video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Reference video URL. Only .mp4/.mov formats, 3-10s duration, 720-2160px resolution, max 200MB.\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation.\",\"default\":\"customize\"},{\"name\":\"keep_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original audio from the reference video.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/edit\\\",\\n \\\"prompt\\\": \\\"Change environment to be fully snow as @Image1. Replace animal with @Element1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-o3/pro-v2v-edit/video_reference.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/edit\\\",\\n \\\"prompt\\\": \\\"Change environment to be fully snow as @Image1. Replace animal with @Element1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-o3/pro-v2v-edit/video_reference.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/edit\\\",\\n \\\"prompt\\\": \\\"Change environment to be fully snow as @Image1. Replace animal with @Element1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-o3/pro-v2v-edit/video_reference.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "LTX Video-0.9.7 13B" - modelId: "lightricks/ltx-video-13b-dev/image-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-video-13b-dev/image-to-video" + modelName: "Kling O3 4K Video Edit" + modelId: "kwaivgi/kling-video/o3/4k/edit" + vendor: "KwaiVGI" + vendorSlug: "kwaivgi" + modelSlug: "kling-video/o3/4k/edit" protocol: "Video Generation Reference" endpoint: "/v1/run" - publishedAt: "2025-05-17T01:53:06.455Z" - capabilities: ["image-to-video"] + publishedAt: "2026-10-05T04:19:05Z" + capabilities: ["video-to-video"] category: "Video Generation" --- diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/image-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/image-to-video.md index 6169d208..ef042035 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/image-to-video.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/image-to-video.md @@ -1,12 +1,12 @@ --- -title: "Kling Video O3 4k API Reference — KwaiVGI / 4k / Image To Video" -description: "Kling Video O3 4k API reference for SandBase. Use model kwaivgi/kling-video/o3/4k/image-to-video with /v1/run; see request and response examples." +title: "Kling O3 4K Image to Video API Reference" +description: "Kling O3 4K Image to Video API reference for SandBase. Use model kwaivgi/kling-video/o3/4k/image-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/o3/4k/image-to-video" -apiReferenceJson: "{\"title\":\"Kling Video O3 4k\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video O3 4k by KwaiVGI - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/4k/image-to-video.\",\"default\":\"kwaivgi/kling-video/o3/4k/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Either prompt or multi_prompt must be provided, but not both.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the start frame image.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the end frame image (optional).\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (3-15s).\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video.\",\"default\":\"false\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/image-to-video\\\",\\n \\\"prompt\\\": \\\"The character walks forward slowly, with the camera following from behind.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/0ff4703452ec-8ABMp4n9rh3kfD2Rq8fHd_start_frame.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/image-to-video\\\",\\n \\\"prompt\\\": \\\"The character walks forward slowly, with the camera following from behind.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/0ff4703452ec-8ABMp4n9rh3kfD2Rq8fHd_start_frame.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/image-to-video\\\",\\n \\\"prompt\\\": \\\"The character walks forward slowly, with the camera following from behind.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/0ff4703452ec-8ABMp4n9rh3kfD2Rq8fHd_start_frame.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling O3 4K Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling O3 4K Image to Video by Kuaishou animates a start image, optionally toward an end image, into a 3-15 second native 4K video with optional native audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/4k/image-to-video.\",\"default\":\"kwaivgi/kling-video/o3/4k/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Either prompt or multi_prompt must be provided, but not both.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the start frame image.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the end frame image (optional).\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (3-15s).\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video.\",\"default\":\"false\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/image-to-video\\\",\\n \\\"prompt\\\": \\\"The character walks forward slowly, with the camera following from behind.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/0ff4703452ec-8ABMp4n9rh3kfD2Rq8fHd_start_frame.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/image-to-video\\\",\\n \\\"prompt\\\": \\\"The character walks forward slowly, with the camera following from behind.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/0ff4703452ec-8ABMp4n9rh3kfD2Rq8fHd_start_frame.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/image-to-video\\\",\\n \\\"prompt\\\": \\\"The character walks forward slowly, with the camera following from behind.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/0ff4703452ec-8ABMp4n9rh3kfD2Rq8fHd_start_frame.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video O3 4k" + modelName: "Kling O3 4K Image to Video" modelId: "kwaivgi/kling-video/o3/4k/image-to-video" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/reference-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/reference-to-video.md index c852febc..d831cb4d 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/reference-to-video.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/reference-to-video.md @@ -1,12 +1,12 @@ --- -title: "Kling Video O3 4k API Reference — KwaiVGI 4k / Reference To Video" -description: "Kling Video O3 4k API reference for SandBase. Use model kwaivgi/kling-video/o3/4k/reference-to-video with /v1/run; see request and response examples." +title: "Kling O3 4K Reference to Video API Reference" +description: "Kling O3 4K Reference to Video API reference for SandBase. Use model kwaivgi/kling-video/o3/4k/reference-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/o3/4k/reference-to-video" -apiReferenceJson: "{\"title\":\"Kling Video O3 4k\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video O3 4k by KwaiVGI - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/4k/reference-to-video.\",\"default\":\"kwaivgi/kling-video/o3/4k/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Either prompt or multi_prompt must be provided, but not both.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Image to use as the first frame of the video.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 7 total (elements + reference images) is allowed.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Image to use as the last frame of the video.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (3-15s).\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video.\",\"default\":\"false\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation.\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/reference-to-video\\\",\\n \\\"prompt\\\": \\\"@Element1 and @Element2 enters the scene from two sides. Elephant starts to play with the ball\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/d5f4a0f0f119-NaslJIC7F2WodS6DFZRRJ.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/reference-to-video\\\",\\n \\\"prompt\\\": \\\"@Element1 and @Element2 enters the scene from two sides. Elephant starts to play with the ball\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/d5f4a0f0f119-NaslJIC7F2WodS6DFZRRJ.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/reference-to-video\\\",\\n \\\"prompt\\\": \\\"@Element1 and @Element2 enters the scene from two sides. Elephant starts to play with the ball\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/d5f4a0f0f119-NaslJIC7F2WodS6DFZRRJ.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling O3 4K Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling O3 4K Reference to Video by Kuaishou generates a 3-15 second native 4K video that keeps characters and objects from reference images consistent with optional native audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/4k/reference-to-video.\",\"default\":\"kwaivgi/kling-video/o3/4k/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Either prompt or multi_prompt must be provided, but not both.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Image to use as the first frame of the video.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Additional reference image URLs. Together with `image`, at most 7 images are accepted; do not repeat `image` in this list.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Image to use as the last frame of the video.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (3-15s).\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video.\",\"default\":\"false\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation.\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/reference-to-video\\\",\\n \\\"prompt\\\": \\\"@Element1 and @Element2 enters the scene from two sides. Elephant starts to play with the ball\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/d5f4a0f0f119-NaslJIC7F2WodS6DFZRRJ.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/reference-to-video\\\",\\n \\\"prompt\\\": \\\"@Element1 and @Element2 enters the scene from two sides. Elephant starts to play with the ball\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/d5f4a0f0f119-NaslJIC7F2WodS6DFZRRJ.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/reference-to-video\\\",\\n \\\"prompt\\\": \\\"@Element1 and @Element2 enters the scene from two sides. Elephant starts to play with the ball\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/d5f4a0f0f119-NaslJIC7F2WodS6DFZRRJ.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video O3 4k" + modelName: "Kling O3 4K Reference to Video" modelId: "kwaivgi/kling-video/o3/4k/reference-to-video" vendor: "KwaiVGI" vendorSlug: "kwaivgi" @@ -14,7 +14,7 @@ seo: protocol: "Video Generation Reference" endpoint: "/v1/run" publishedAt: "2026-04-23T14:59:16.35Z" - capabilities: ["image-to-video"] + capabilities: ["reference-to-video"] category: "Video Generation" --- diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/text-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/text-to-video.md index 7b761f59..89cd9f51 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/text-to-video.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/text-to-video.md @@ -1,12 +1,12 @@ --- -title: "Kling Video O3 4k API Reference — KwaiVGI O3 / 4k / Text To Video" -description: "Kling Video O3 4k API reference for SandBase. Use model kwaivgi/kling-video/o3/4k/text-to-video with /v1/run; see request and response examples." +title: "Kling O3 4K Text to Video API Reference" +description: "Kling O3 4K Text to Video API reference for SandBase. Use model kwaivgi/kling-video/o3/4k/text-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/o3/4k/text-to-video" -apiReferenceJson: "{\"title\":\"Kling Video O3 4k\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video O3 4k is KwaiVGI's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/4k/text-to-video.\",\"default\":\"kwaivgi/kling-video/o3/4k/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Required unless multi_prompt is provided.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (3-15s).\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video.\",\"default\":\"false\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation.\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/text-to-video\\\",\\n \\\"prompt\\\": \\\"A mecha lands on the ground to save the city, and says \\\\\\\"I'm here\\\\\\\", in anime style\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/text-to-video\\\",\\n \\\"prompt\\\": \\\"A mecha lands on the ground to save the city, and says \\\\\\\"I'm here\\\\\\\", in anime style\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/text-to-video\\\",\\n \\\"prompt\\\": \\\"A mecha lands on the ground to save the city, and says \\\\\\\"I'm here\\\\\\\", in anime style\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling O3 4K Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling O3 4K Text to Video by Kuaishou turns a text prompt into a 3-15 second native 4K video with optional native audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/4k/text-to-video.\",\"default\":\"kwaivgi/kling-video/o3/4k/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Required unless multi_prompt is provided.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (3-15s).\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video.\",\"default\":\"false\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation.\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/text-to-video\\\",\\n \\\"prompt\\\": \\\"A mecha lands on the ground to save the city, and says \\\\\\\"I'm here\\\\\\\", in anime style\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/text-to-video\\\",\\n \\\"prompt\\\": \\\"A mecha lands on the ground to save the city, and says \\\\\\\"I'm here\\\\\\\", in anime style\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/text-to-video\\\",\\n \\\"prompt\\\": \\\"A mecha lands on the ground to save the city, and says \\\\\\\"I'm here\\\\\\\", in anime style\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video O3 4k" + modelName: "Kling O3 4K Text to Video" modelId: "kwaivgi/kling-video/o3/4k/text-to-video" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/video-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/video-to-video.md new file mode 100644 index 00000000..1ce786cf --- /dev/null +++ b/model-api-reference/video-generation/kwaivgi/kling-video/o3/4k/video-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Kling O3 4K Video Reference API Reference" +description: "Kling O3 4K Video Reference API reference for SandBase. Use model kwaivgi/kling-video/o3/4k/video-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/kwaivgi/kling-video/o3/4k/video-to-video" +apiReferenceJson: "{\"title\":\"Kling O3 4K Video Reference\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling O3 4K Video Reference by Kuaishou generates a new native 4K shot that follows the style and camera motion of a reference video, optionally guided by reference images.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/4k/video-to-video.\",\"default\":\"kwaivgi/kling-video/o3/4k/video-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Reference video as @Video1.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + reference images) when using video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Reference video URL. Only .mp4/.mov formats, 3-10s duration, 720-2160px resolution, max 200MB.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (3-15s for reference video).\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"keep_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original audio from the reference video.\",\"default\":\"true\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation.\",\"default\":\"customize\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/video-to-video\\\",\\n \\\"prompt\\\": \\\"Integrate @Element1 in the scene. Style video should be following watercolor style of @Image1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-o3/pro-v2v-reference/video_reference.mp4\\\",\\n \\\"duration\\\": \\\"5\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/video-to-video\\\",\\n \\\"prompt\\\": \\\"Integrate @Element1 in the scene. Style video should be following watercolor style of @Image1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-o3/pro-v2v-reference/video_reference.mp4\\\",\\n \\\"duration\\\": \\\"5\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/video-to-video\\\",\\n \\\"prompt\\\": \\\"Integrate @Element1 in the scene. Style video should be following watercolor style of @Image1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-o3/pro-v2v-reference/video_reference.mp4\\\",\\n \\\"duration\\\": \\\"5\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/4k/video-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Kling O3 4K Video Reference" + modelId: "kwaivgi/kling-video/o3/4k/video-to-video" + vendor: "KwaiVGI" + vendorSlug: "kwaivgi" + modelSlug: "kling-video/o3/4k/video-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-10-05T04:19:05Z" + capabilities: ["video-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/edit.md b/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/edit.md index c0a6ca68..248d9be4 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/edit.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/edit.md @@ -1,12 +1,12 @@ --- -title: "Kling Video O3 Pro API Reference — KwaiVGI / O3 / Pro / Edit" -description: "Kling Video O3 Pro API reference for SandBase. Use model kwaivgi/kling-video/o3/pro/edit with /v1/run; see request and response examples." +title: "Kling O3 Pro Video Edit API Reference" +description: "Kling O3 Pro Video Edit API reference for SandBase. Use model kwaivgi/kling-video/o3/pro/edit with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/o3/pro/edit" -apiReferenceJson: "{\"title\":\"Kling Video O3 Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video O3 Pro is KwaiVGI's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/pro/edit.\",\"default\":\"kwaivgi/kling-video/o3/pro/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Reference video as @Video1.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + reference images) when using video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Reference video URL. Only .mp4/.mov formats, 3-10s duration, 720-2160px resolution, max 200MB.\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation.\",\"default\":\"customize\"},{\"name\":\"keep_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original audio from the reference video.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/edit\\\",\\n \\\"prompt\\\": \\\"Change environment to be fully snow as @Image1. Replace animal with @Element1\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/kling-o3/pro-v2v-edit/video_reference.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/edit\\\",\\n \\\"prompt\\\": \\\"Change environment to be fully snow as @Image1. Replace animal with @Element1\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/Falserverless/example_inputs/kling-o3/pro-v2v-edit/video_reference.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/edit\\\",\\n \\\"prompt\\\": \\\"Change environment to be fully snow as @Image1. Replace animal with @Element1\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/kling-o3/pro-v2v-edit/video_reference.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling O3 Pro Video Edit\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling O3 Pro Video Edit by Kuaishou edits an input video from a text instruction, optionally guided by reference images, at 1080p.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/pro/edit.\",\"default\":\"kwaivgi/kling-video/o3/pro/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Reference video as @Video1.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + reference images) when using video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Reference video URL. Only .mp4/.mov formats, 3-10s duration, 720-2160px resolution, max 200MB.\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation.\",\"default\":\"customize\"},{\"name\":\"keep_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original audio from the reference video.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/edit\\\",\\n \\\"prompt\\\": \\\"Change environment to be fully snow as @Image1. Replace animal with @Element1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-o3/pro-v2v-edit/video_reference.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/edit\\\",\\n \\\"prompt\\\": \\\"Change environment to be fully snow as @Image1. Replace animal with @Element1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-o3/pro-v2v-edit/video_reference.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/edit\\\",\\n \\\"prompt\\\": \\\"Change environment to be fully snow as @Image1. Replace animal with @Element1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-o3/pro-v2v-edit/video_reference.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video O3 Pro" + modelName: "Kling O3 Pro Video Edit" modelId: "kwaivgi/kling-video/o3/pro/edit" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/image-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/image-to-video.md index 737dc85b..781bc1bc 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/image-to-video.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/image-to-video.md @@ -1,12 +1,12 @@ --- -title: "Kling Video O3 Pro API Reference — KwaiVGI / Pro / Image To Video" -description: "Kling Video O3 Pro API reference for SandBase. Use model kwaivgi/kling-video/o3/pro/image-to-video with /v1/run; see request and response examples." +title: "Kling O3 Pro Image to Video API Reference" +description: "Kling O3 Pro Image to Video API reference for SandBase. Use model kwaivgi/kling-video/o3/pro/image-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/o3/pro/image-to-video" -apiReferenceJson: "{\"title\":\"Kling Video O3 Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video O3 Pro is KwaiVGI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/pro/image-to-video.\",\"default\":\"kwaivgi/kling-video/o3/pro/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Either prompt or multi_prompt must be provided, but not both.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the start frame image.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the end frame image (optional).\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (3-15s).\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video.\",\"default\":\"false\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation.\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"The character walks forward slowly, with the camera following from behind.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/0ff4703452ec-8ABMp4n9rh3kfD2Rq8fHd_start_frame.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"The character walks forward slowly, with the camera following from behind.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/0ff4703452ec-8ABMp4n9rh3kfD2Rq8fHd_start_frame.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"The character walks forward slowly, with the camera following from behind.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/0ff4703452ec-8ABMp4n9rh3kfD2Rq8fHd_start_frame.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling O3 Pro Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling O3 Pro Image to Video by Kuaishou animates a start image, optionally toward an end image, into a 3-15 second 1080p video with optional native audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/pro/image-to-video.\",\"default\":\"kwaivgi/kling-video/o3/pro/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Either prompt or multi_prompt must be provided, but not both.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the start frame image.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the end frame image (optional).\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (3-15s).\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video.\",\"default\":\"false\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation.\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"The character walks forward slowly, with the camera following from behind.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/0ff4703452ec-8ABMp4n9rh3kfD2Rq8fHd_start_frame.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"The character walks forward slowly, with the camera following from behind.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/0ff4703452ec-8ABMp4n9rh3kfD2Rq8fHd_start_frame.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"The character walks forward slowly, with the camera following from behind.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/0ff4703452ec-8ABMp4n9rh3kfD2Rq8fHd_start_frame.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video O3 Pro" + modelName: "Kling O3 Pro Image to Video" modelId: "kwaivgi/kling-video/o3/pro/image-to-video" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/reference-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/reference-to-video.md index 45dbbc0d..3aa6afd7 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/reference-to-video.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/reference-to-video.md @@ -1,12 +1,12 @@ --- -title: "Kling Video O3 Pro API Reference — KwaiVGI / Reference To Video" -description: "Kling Video O3 Pro API reference for SandBase. Use model kwaivgi/kling-video/o3/pro/reference-to-video with /v1/run; see request and response examples." +title: "Kling O3 Pro Reference to Video API Reference" +description: "Kling O3 Pro Reference to Video API reference for SandBase. Use model kwaivgi/kling-video/o3/pro/reference-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/o3/pro/reference-to-video" -apiReferenceJson: "{\"title\":\"Kling Video O3 Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video O3 Pro is KwaiVGI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/pro/reference-to-video.\",\"default\":\"kwaivgi/kling-video/o3/pro/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Either prompt or multi_prompt must be provided, but not both.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Image to use as the first frame of the video.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + reference images) when using video.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Image to use as the last frame of the video.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (3-15s).\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video.\",\"default\":\"false\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/reference-to-video\\\",\\n \\\"prompt\\\": \\\"@Element1 and @Element2 enters the scene from two sides. Elephant starts to play with the ball\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/ec18b1edee80-myilPNN_WYdJCmpTy4Sjr_6XNBi9Mm.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/reference-to-video\\\",\\n \\\"prompt\\\": \\\"@Element1 and @Element2 enters the scene from two sides. Elephant starts to play with the ball\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/ec18b1edee80-myilPNN_WYdJCmpTy4Sjr_6XNBi9Mm.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/reference-to-video\\\",\\n \\\"prompt\\\": \\\"@Element1 and @Element2 enters the scene from two sides. Elephant starts to play with the ball\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/ec18b1edee80-myilPNN_WYdJCmpTy4Sjr_6XNBi9Mm.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling O3 Pro Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling O3 Pro Reference to Video by Kuaishou generates a 3-15 second 1080p video that keeps characters and objects from reference images consistent with optional native audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/pro/reference-to-video.\",\"default\":\"kwaivgi/kling-video/o3/pro/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Either prompt or multi_prompt must be provided, but not both.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Image to use as the first frame of the video.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Additional reference image URLs. Together with `image`, at most 7 images are accepted; do not repeat `image` in this list.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Image to use as the last frame of the video.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (3-15s).\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video.\",\"default\":\"false\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/reference-to-video\\\",\\n \\\"prompt\\\": \\\"@Element1 and @Element2 enters the scene from two sides. Elephant starts to play with the ball\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/ec18b1edee80-myilPNN_WYdJCmpTy4Sjr_6XNBi9Mm.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/reference-to-video\\\",\\n \\\"prompt\\\": \\\"@Element1 and @Element2 enters the scene from two sides. Elephant starts to play with the ball\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/ec18b1edee80-myilPNN_WYdJCmpTy4Sjr_6XNBi9Mm.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/reference-to-video\\\",\\n \\\"prompt\\\": \\\"@Element1 and @Element2 enters the scene from two sides. Elephant starts to play with the ball\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/ec18b1edee80-myilPNN_WYdJCmpTy4Sjr_6XNBi9Mm.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video O3 Pro" + modelName: "Kling O3 Pro Reference to Video" modelId: "kwaivgi/kling-video/o3/pro/reference-to-video" vendor: "KwaiVGI" vendorSlug: "kwaivgi" @@ -14,7 +14,7 @@ seo: protocol: "Video Generation Reference" endpoint: "/v1/run" publishedAt: "2026-02-04T15:48:44.935Z" - capabilities: ["image-to-video"] + capabilities: ["reference-to-video"] category: "Video Generation" --- diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/text-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/text-to-video.md index 842640de..04f3f74a 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/text-to-video.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/text-to-video.md @@ -1,12 +1,12 @@ --- -title: "Kling Video O3 Pro API Reference — KwaiVGI / Pro / Text To Video" -description: "Kling Video O3 Pro API reference for SandBase. Use model kwaivgi/kling-video/o3/pro/text-to-video with /v1/run; see request and response examples." +title: "Kling O3 Pro Text to Video API Reference" +description: "Kling O3 Pro Text to Video API reference for SandBase. Use model kwaivgi/kling-video/o3/pro/text-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/o3/pro/text-to-video" -apiReferenceJson: "{\"title\":\"Kling Video O3 Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video O3 Pro by KwaiVGI - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/pro/text-to-video.\",\"default\":\"kwaivgi/kling-video/o3/pro/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Required unless multi_prompt is provided.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (3-15s).\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video.\",\"default\":\"false\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A mecha lands on the ground to save the city, and says \\\\\\\"I'm here\\\\\\\", in anime style\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A mecha lands on the ground to save the city, and says \\\\\\\"I'm here\\\\\\\", in anime style\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A mecha lands on the ground to save the city, and says \\\\\\\"I'm here\\\\\\\", in anime style\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling O3 Pro Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling O3 Pro Text to Video by Kuaishou turns a text prompt into a 3-15 second 1080p video with optional native audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/pro/text-to-video.\",\"default\":\"kwaivgi/kling-video/o3/pro/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Required unless multi_prompt is provided.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (3-15s).\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video.\",\"default\":\"false\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A mecha lands on the ground to save the city, and says \\\\\\\"I'm here\\\\\\\", in anime style\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A mecha lands on the ground to save the city, and says \\\\\\\"I'm here\\\\\\\", in anime style\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A mecha lands on the ground to save the city, and says \\\\\\\"I'm here\\\\\\\", in anime style\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video O3 Pro" + modelName: "Kling O3 Pro Text to Video" modelId: "kwaivgi/kling-video/o3/pro/text-to-video" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/video-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/video-to-video.md index 385e7507..50083a5c 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/video-to-video.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/o3/pro/video-to-video.md @@ -1,12 +1,12 @@ --- -title: "Kling Video O3 Pro API Reference — KwaiVGI / Pro / Video To Video" -description: "Kling Video O3 Pro API reference for SandBase. Use model kwaivgi/kling-video/o3/pro/video-to-video with /v1/run; see request and response examples." +title: "Kling O3 Pro Video Reference API Reference" +description: "Kling O3 Pro Video Reference API reference for SandBase. Use model kwaivgi/kling-video/o3/pro/video-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/o3/pro/video-to-video" -apiReferenceJson: "{\"title\":\"Kling Video O3 Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video O3 Pro by KwaiVGI - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/pro/video-to-video.\",\"default\":\"kwaivgi/kling-video/o3/pro/video-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Reference video as @Video1.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + reference images) when using video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Reference video URL. Only .mp4/.mov formats, 3-10s duration, 720-2160px resolution, max 200MB.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (3-15s for reference video).\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"keep_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original audio from the reference video.\",\"default\":\"true\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation.\",\"default\":\"customize\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/video-to-video\\\",\\n \\\"prompt\\\": \\\"Integrate @Element1 in the scene. Style video should be following watercolor style of @Image1\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/kling-o3/pro-v2v-reference/video_reference.mp4\\\",\\n \\\"duration\\\": \\\"5\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/video-to-video\\\",\\n \\\"prompt\\\": \\\"Integrate @Element1 in the scene. Style video should be following watercolor style of @Image1\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/Falserverless/example_inputs/kling-o3/pro-v2v-reference/video_reference.mp4\\\",\\n \\\"duration\\\": \\\"5\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/video-to-video\\\",\\n \\\"prompt\\\": \\\"Integrate @Element1 in the scene. Style video should be following watercolor style of @Image1\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/kling-o3/pro-v2v-reference/video_reference.mp4\\\",\\n \\\"duration\\\": \\\"5\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/video-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling O3 Pro Video Reference\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling O3 Pro Video Reference by Kuaishou generates a new 1080p shot that follows the style and camera motion of a reference video, optionally guided by reference images.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/pro/video-to-video.\",\"default\":\"kwaivgi/kling-video/o3/pro/video-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Reference video as @Video1.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + reference images) when using video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Reference video URL. Only .mp4/.mov formats, 3-10s duration, 720-2160px resolution, max 200MB.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (3-15s for reference video).\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"keep_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original audio from the reference video.\",\"default\":\"true\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation.\",\"default\":\"customize\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/video-to-video\\\",\\n \\\"prompt\\\": \\\"Integrate @Element1 in the scene. Style video should be following watercolor style of @Image1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-o3/pro-v2v-reference/video_reference.mp4\\\",\\n \\\"duration\\\": \\\"5\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/video-to-video\\\",\\n \\\"prompt\\\": \\\"Integrate @Element1 in the scene. Style video should be following watercolor style of @Image1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-o3/pro-v2v-reference/video_reference.mp4\\\",\\n \\\"duration\\\": \\\"5\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/video-to-video\\\",\\n \\\"prompt\\\": \\\"Integrate @Element1 in the scene. Style video should be following watercolor style of @Image1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-o3/pro-v2v-reference/video_reference.mp4\\\",\\n \\\"duration\\\": \\\"5\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/pro/video-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video O3 Pro" + modelName: "Kling O3 Pro Video Reference" modelId: "kwaivgi/kling-video/o3/pro/video-to-video" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/edit.md b/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/edit.md index 62e13e19..9a30b9b5 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/edit.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/edit.md @@ -1,12 +1,12 @@ --- -title: "Kling Video O3 Standard API Reference — KwaiVGI / Standard / Edit" -description: "Kling Video O3 Standard API reference for SandBase. Use model kwaivgi/kling-video/o3/standard/edit with /v1/run; see request and response examples." +title: "Kling O3 Standard Video Edit API Reference" +description: "Kling O3 Standard Video Edit API reference for SandBase. Use model kwaivgi/kling-video/o3/standard/edit with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/o3/standard/edit" -apiReferenceJson: "{\"title\":\"Kling Video O3 Standard\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video O3 Standard by KwaiVGI - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/standard/edit.\",\"default\":\"kwaivgi/kling-video/o3/standard/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Reference video as @Video1.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + reference images) when using video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Reference video URL. Only .mp4/.mov formats, 3-10s duration, 720-2160px resolution, max 200MB.\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation.\",\"default\":\"customize\"},{\"name\":\"keep_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original audio from the reference video.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/edit\\\",\\n \\\"prompt\\\": \\\"change the main character to be Popeye from @Element1, dark lighting and rain, 3d character. make him sad, with rain dropping on him, dark light on the character.\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/kling-o3/standard-v2v-edit/standard_video_reference.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/edit\\\",\\n \\\"prompt\\\": \\\"change the main character to be Popeye from @Element1, dark lighting and rain, 3d character. make him sad, with rain dropping on him, dark light on the character.\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/Falserverless/example_inputs/kling-o3/standard-v2v-edit/standard_video_reference.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/edit\\\",\\n \\\"prompt\\\": \\\"change the main character to be Popeye from @Element1, dark lighting and rain, 3d character. make him sad, with rain dropping on him, dark light on the character.\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/kling-o3/standard-v2v-edit/standard_video_reference.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling O3 Standard Video Edit\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling O3 Standard Video Edit by Kuaishou edits an input video from a text instruction, optionally guided by reference images, at 720p.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/standard/edit.\",\"default\":\"kwaivgi/kling-video/o3/standard/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Reference video as @Video1.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + reference images) when using video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Reference video URL. Only .mp4/.mov formats, 3-10s duration, 720-2160px resolution, max 200MB.\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation.\",\"default\":\"customize\"},{\"name\":\"keep_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original audio from the reference video.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/edit\\\",\\n \\\"prompt\\\": \\\"change the main character to be Popeye from @Element1, dark lighting and rain, 3d character. make him sad, with rain dropping on him, dark light on the character.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-o3/standard-v2v-edit/standard_video_reference.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/edit\\\",\\n \\\"prompt\\\": \\\"change the main character to be Popeye from @Element1, dark lighting and rain, 3d character. make him sad, with rain dropping on him, dark light on the character.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-o3/standard-v2v-edit/standard_video_reference.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/edit\\\",\\n \\\"prompt\\\": \\\"change the main character to be Popeye from @Element1, dark lighting and rain, 3d character. make him sad, with rain dropping on him, dark light on the character.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-o3/standard-v2v-edit/standard_video_reference.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video O3 Standard" + modelName: "Kling O3 Standard Video Edit" modelId: "kwaivgi/kling-video/o3/standard/edit" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/image-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/image-to-video.md index 49fc85ac..d7a83e66 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/image-to-video.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/image-to-video.md @@ -1,12 +1,12 @@ --- -title: "Kling Video O3 Standard API Reference — KwaiVGI / Image To Video" -description: "Kling Video O3 Standard API reference for SandBase. Use model kwaivgi/kling-video/o3/standard/image-to-video with /v1/run; see request and response examples." +title: "Kling O3 Standard Image to Video API Reference" +description: "Kling O3 Standard Image to Video API reference for SandBase. Use model kwaivgi/kling-video/o3/standard/image-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/o3/standard/image-to-video" -apiReferenceJson: "{\"title\":\"Kling Video O3 Standard\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video O3 Standard by KwaiVGI - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/standard/image-to-video.\",\"default\":\"kwaivgi/kling-video/o3/standard/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Either prompt or multi_prompt must be provided, but not both.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the start frame image.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the end frame image (optional).\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (3-15s).\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video.\",\"default\":\"false\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation.\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"The character walks forward slowly, with the camera following from behind.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/0ff4703452ec-8ABMp4n9rh3kfD2Rq8fHd_start_frame.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"The character walks forward slowly, with the camera following from behind.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/0ff4703452ec-8ABMp4n9rh3kfD2Rq8fHd_start_frame.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"The character walks forward slowly, with the camera following from behind.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/0ff4703452ec-8ABMp4n9rh3kfD2Rq8fHd_start_frame.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling O3 Standard Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling O3 Standard Image to Video by Kuaishou animates a start image, optionally toward an end image, into a 3-15 second 720p video with optional native audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/standard/image-to-video.\",\"default\":\"kwaivgi/kling-video/o3/standard/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Either prompt or multi_prompt must be provided, but not both.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the start frame image.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the end frame image (optional).\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (3-15s).\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video.\",\"default\":\"false\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation.\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"The character walks forward slowly, with the camera following from behind.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/0ff4703452ec-8ABMp4n9rh3kfD2Rq8fHd_start_frame.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"The character walks forward slowly, with the camera following from behind.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/0ff4703452ec-8ABMp4n9rh3kfD2Rq8fHd_start_frame.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"The character walks forward slowly, with the camera following from behind.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/0ff4703452ec-8ABMp4n9rh3kfD2Rq8fHd_start_frame.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video O3 Standard" + modelName: "Kling O3 Standard Image to Video" modelId: "kwaivgi/kling-video/o3/standard/image-to-video" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/reference-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/reference-to-video.md index 9267dc05..540928ad 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/reference-to-video.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/reference-to-video.md @@ -1,12 +1,12 @@ --- -title: "Kling Video O3 Standard API Reference — KwaiVGI To Video" -description: "Kling Video O3 Standard API reference for SandBase. Use model kwaivgi/kling-video/o3/standard/reference-to-video with /v1/run; see request and response examples." +title: "Kling O3 Standard Reference to Video API Reference" +description: "SandBase API reference for model kwaivgi/kling-video/o3/standard/reference-to-video. Call /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/o3/standard/reference-to-video" -apiReferenceJson: "{\"title\":\"Kling Video O3 Standard\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video O3 Standard by KwaiVGI - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/standard/reference-to-video.\",\"default\":\"kwaivgi/kling-video/o3/standard/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Either prompt or multi_prompt must be provided, but not both.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Image to use as the first frame of the video.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + reference images) when using video.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Image to use as the last frame of the video.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (3-15s).\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video.\",\"default\":\"false\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/reference-to-video\\\",\\n \\\"prompt\\\": \\\"@Element1 and @Element2 is having dinner at this table on @Image1\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/speech-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/reference-to-video\\\",\\n \\\"prompt\\\": \\\"@Element1 and @Element2 is having dinner at this table on @Image1\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/speech-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/reference-to-video\\\",\\n \\\"prompt\\\": \\\"@Element1 and @Element2 is having dinner at this table on @Image1\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/speech-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling O3 Standard Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling O3 Standard Reference to Video by Kuaishou generates a 3-15 second 720p video that keeps characters and objects from reference images consistent with optional native audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/standard/reference-to-video.\",\"default\":\"kwaivgi/kling-video/o3/standard/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Either prompt or multi_prompt must be provided, but not both.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Image to use as the first frame of the video.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Additional reference image URLs. Together with `image`, at most 7 images are accepted; do not repeat `image` in this list.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Image to use as the last frame of the video.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (3-15s).\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video.\",\"default\":\"false\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/reference-to-video\\\",\\n \\\"prompt\\\": \\\"@Element1 and @Element2 is having dinner at this table on @Image1\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/speech-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/reference-to-video\\\",\\n \\\"prompt\\\": \\\"@Element1 and @Element2 is having dinner at this table on @Image1\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/speech-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/reference-to-video\\\",\\n \\\"prompt\\\": \\\"@Element1 and @Element2 is having dinner at this table on @Image1\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/alibaba/wan/2.2/speech-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video O3 Standard" + modelName: "Kling O3 Standard Reference to Video" modelId: "kwaivgi/kling-video/o3/standard/reference-to-video" vendor: "KwaiVGI" vendorSlug: "kwaivgi" @@ -14,7 +14,7 @@ seo: protocol: "Video Generation Reference" endpoint: "/v1/run" publishedAt: "2026-02-04T15:48:44.935Z" - capabilities: ["image-to-video"] + capabilities: ["reference-to-video"] category: "Video Generation" --- diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/text-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/text-to-video.md index 14ff5a5b..d0e713e3 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/text-to-video.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/text-to-video.md @@ -1,12 +1,12 @@ --- -title: "Kling Video O3 Standard API Reference — KwaiVGI / Text To Video" -description: "Kling Video O3 Standard API reference for SandBase. Use model kwaivgi/kling-video/o3/standard/text-to-video with /v1/run; see request and response examples." +title: "Kling O3 Standard Text to Video API Reference" +description: "Kling O3 Standard Text to Video API reference for SandBase. Use model kwaivgi/kling-video/o3/standard/text-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/o3/standard/text-to-video" -apiReferenceJson: "{\"title\":\"Kling Video O3 Standard\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video O3 Standard is KwaiVGI's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/standard/text-to-video.\",\"default\":\"kwaivgi/kling-video/o3/standard/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Required unless multi_prompt is provided.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (3-15s).\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video.\",\"default\":\"false\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation.\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"A mecha lands on the ground to save the city, and says \\\\\\\"I'm here\\\\\\\", in anime style\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"A mecha lands on the ground to save the city, and says \\\\\\\"I'm here\\\\\\\", in anime style\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"A mecha lands on the ground to save the city, and says \\\\\\\"I'm here\\\\\\\", in anime style\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling O3 Standard Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling O3 Standard Text to Video by Kuaishou turns a text prompt into a 3-15 second 720p video with optional native audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/standard/text-to-video.\",\"default\":\"kwaivgi/kling-video/o3/standard/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Required unless multi_prompt is provided.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (3-15s).\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video.\",\"default\":\"false\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation.\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"A mecha lands on the ground to save the city, and says \\\\\\\"I'm here\\\\\\\", in anime style\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"A mecha lands on the ground to save the city, and says \\\\\\\"I'm here\\\\\\\", in anime style\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"A mecha lands on the ground to save the city, and says \\\\\\\"I'm here\\\\\\\", in anime style\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video O3 Standard" + modelName: "Kling O3 Standard Text to Video" modelId: "kwaivgi/kling-video/o3/standard/text-to-video" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/video-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/video-to-video.md index 3c15bfa4..25640e66 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/video-to-video.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/o3/standard/video-to-video.md @@ -1,12 +1,12 @@ --- -title: "Kling Video O3 Standard API Reference — KwaiVGI / Video To Video" -description: "Kling Video O3 Standard API reference for SandBase. Use model kwaivgi/kling-video/o3/standard/video-to-video with /v1/run; see request and response examples." +title: "Kling O3 Standard Video Reference API Reference" +description: "Kling O3 Standard Video Reference API reference for SandBase. Use model kwaivgi/kling-video/o3/standard/video-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/o3/standard/video-to-video" -apiReferenceJson: "{\"title\":\"Kling Video O3 Standard\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video O3 Standard is KwaiVGI's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/standard/video-to-video.\",\"default\":\"kwaivgi/kling-video/o3/standard/video-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Reference video as @Video1.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + reference images) when using video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Reference video URL. Only .mp4/.mov formats, 3-10s duration, 720-2160px resolution, max 200MB.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (3-15s for reference video).\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation.\",\"default\":\"customize\"},{\"name\":\"keep_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original audio from the reference video.\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/video-to-video\\\",\\n \\\"prompt\\\": \\\"Replace both character with @Element1 and @Element2\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/kling-o3/standard-v2v-reference/video_reference.mp4\\\",\\n \\\"duration\\\": \\\"5\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/video-to-video\\\",\\n \\\"prompt\\\": \\\"Replace both character with @Element1 and @Element2\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/Falserverless/example_inputs/kling-o3/standard-v2v-reference/video_reference.mp4\\\",\\n \\\"duration\\\": \\\"5\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/video-to-video\\\",\\n \\\"prompt\\\": \\\"Replace both character with @Element1 and @Element2\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/kling-o3/standard-v2v-reference/video_reference.mp4\\\",\\n \\\"duration\\\": \\\"5\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/video-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling O3 Standard Video Reference\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling O3 Standard Video Reference by Kuaishou generates a new 720p shot that follows the style and camera motion of a reference video, optionally guided by reference images.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/o3/standard/video-to-video.\",\"default\":\"kwaivgi/kling-video/o3/standard/video-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Reference video as @Video1.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + reference images) when using video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Reference video URL. Only .mp4/.mov formats, 3-10s duration, 720-2160px resolution, max 200MB.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (3-15s for reference video).\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation.\",\"default\":\"customize\"},{\"name\":\"keep_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original audio from the reference video.\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/video-to-video\\\",\\n \\\"prompt\\\": \\\"Replace both character with @Element1 and @Element2\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-o3/standard-v2v-reference/video_reference.mp4\\\",\\n \\\"duration\\\": \\\"5\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/video-to-video\\\",\\n \\\"prompt\\\": \\\"Replace both character with @Element1 and @Element2\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-o3/standard-v2v-reference/video_reference.mp4\\\",\\n \\\"duration\\\": \\\"5\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/video-to-video\\\",\\n \\\"prompt\\\": \\\"Replace both character with @Element1 and @Element2\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-o3/standard-v2v-reference/video_reference.mp4\\\",\\n \\\"duration\\\": \\\"5\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/o3/standard/video-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video O3 Standard" + modelName: "Kling O3 Standard Video Reference" modelId: "kwaivgi/kling-video/o3/standard/video-to-video" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v1.5/pro/effects.md b/model-api-reference/video-generation/kwaivgi/kling-video/v1.5/pro/effects.md deleted file mode 100644 index de620ebd..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v1.5/pro/effects.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling 1.5 API Reference" -description: "Kling 1.5 API reference for SandBase. Use model kwaivgi/kling-video/v1.5/pro/effects with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/v1.5/pro/effects" -apiReferenceJson: "{\"title\":\"Kling 1.5\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V1.5 Pro by KwaiVGI - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v1.5/pro/effects.\",\"default\":\"kwaivgi/kling-video/v1.5/pro/effects\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"effect_scene\",\"type\":\"string\",\"required\":false,\"description\":\"The effect scene to use for the video generation\",\"constraints\":\"Allowed values: hug, kiss, heart_gesture, squish, expansion, fuzzyfuzzy, bloombloom, dizzydizzy, jelly_press, jelly_slice, jelly_squish, jelly_jiggle, pixelpixel, yearbook, instant_film, anime_figure, rocketrocket, fly_fly, disappear, lightning_power, bullet_time, bullet_time_360, media_interview, day_to_night, let's_ride, jumpdrop, swish_swish, running_man, jazz_jazz, swing_swing, skateskate, building_sweater, pure_white_wings, black_wings, golden_wing, pink_pink_wings, rampage_ape, a_list_look, countdown_teleport, firework_2026, instant_christmas, birthday_star, firework, celebration, tiger_hug_pro, pet_lion_pro, guardian_spirit, squeeze_scream, inner_voice, memory_alive, guess_what, eagle_snatch, hug_from_past, instant_kid, dollar_rain, cry_cry, building_collapse, mushroom, jesus_hug, shark_alert, lie_flat, polar_bear_hug, brown_bear_hug, office_escape_plow, watermelon_bomb, boss_coming, wig_out, car_explosion, tiger_hug, siblings, construction_worker, snatched, felt_felt, plushcut, drunk_dance, drunk_dance_pet, daoma_dance, bouncy_dance, smooth_sailing_dance, new_year_greeting, lion_dance, prosperity, great_success, golden_horse_fortune, red_packet_box, lucky_horse_year, lucky_red_packet, lucky_money_come, lion_dance_pet, dumpling_making_pet, fish_making_pet, pet_red_packet, lantern_glow, expression_challenge, overdrive, heart_gesture_dance, poping, martial_arts, running, nezha, motorcycle_dance, subject_3_dance, ghost_step_dance, phantom_jewel, zoom_out, cheers_2026, kiss_pro, fight_pro, hug_pro, heart_gesture_pro, dollar_rain_pro, pet_bee_pro, santa_random_surprise, magic_match_tree, happy_birthday, thumbs_up_pro, surprise_bouquet, bouquet_drop, 3d_cartoon_1_pro, glamour_photo_shoot, box_of_joy, first_toast_of_the_year, my_santa_pic, santa_gift, steampunk_christmas, snowglobe, christmas_photo_shoot, ornament_crash, santa_express, particle_santa_surround, coronation_of_frost, spark_in_the_snow, scarlet_and_snow, cozy_toon_wrap, bullet_time_lite, magic_cloak, balloon_parade, jumping_ginger_joy, c4d_cartoon_pro, venomous_spider, throne_of_king, luminous_elf, woodland_elf, japanese_anime_1, american_comics, snowboarding, witch_transform, vampire_transform, pumpkin_head_transform, demon_transform, mummy_transform, zombie_transform, cute_pumpkin_transform, cute_ghost_transform, knock_knock_halloween, halloween_escape, baseball, korean_baseball, trampoline, trampoline_night, pucker_up, feed_mooncake, flyer, dishwasher, pet_chinese_opera, magic_fireball, gallery_ring, pet_moto_rider, muscle_pet, pet_delivery, mythic_style, steampunk, 3d_cartoon_2, pet_chef, santa_gifts, santa_hug, girlfriend, boyfriend, heart_gesture_1, pet_wizard, smoke_smoke, gun_shot, double_gun, pet_warrior, long_hair, pet_dance, wool_curly, pet_bee, marry_me, piggy_morph, ski_ski, magic_broom, splashsplash, surfsurf, fairy_wing, angel_wing, dark_wing, emoji\"},{\"name\":\"input_image_urls\",\"type\":\"array\",\"required\":false,\"description\":\"URL of images to be used for hug, kiss or heart_gesture video.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.5/pro/effects\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.5/pro/effects\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.5/pro/effects\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.5/pro/effects\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling 1.5" - modelId: "kwaivgi/kling-video/v1.5/pro/effects" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/v1.5/pro/effects" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-06T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v1.5/pro/image-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/v1.5/pro/image-to-video.md deleted file mode 100644 index 4ced892a..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v1.5/pro/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Video V1.5 Pro API Reference — KwaiVGI Pro / Image To Video" -description: "Kling Video V1.5 Pro API reference for SandBase. Use model kwaivgi/kling-video/v1.5/pro/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/v1.5/pro/image-to-video" -apiReferenceJson: "{\"title\":\"Kling Video V1.5 Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V1.5 Pro is KwaiVGI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v1.5/pro/image-to-video.\",\"default\":\"kwaivgi/kling-video/v1.5/pro/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image URL or image data used by this model.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to be used for the end of the video\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"static_mask_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image for Static Brush Application Area (Mask image created by users using the motion brush)\"},{\"name\":\"dynamic_masks\",\"type\":\"array\",\"required\":false,\"description\":\"List of dynamic masks\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.5/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Snowflakes fall as a car moves along the road.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/kling/kling_input.jpeg\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.5/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Snowflakes fall as a car moves along the road.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/Falserverless/kling/kling_input.jpeg\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.5/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Snowflakes fall as a car moves along the road.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/kling/kling_input.jpeg\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.5/pro/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Video V1.5 Pro" - modelId: "kwaivgi/kling-video/v1.5/pro/image-to-video" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/v1.5/pro/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-10-04T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v1.5/pro/text-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/v1.5/pro/text-to-video.md deleted file mode 100644 index 7775caf0..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v1.5/pro/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Video V1.5 Pro API Reference — KwaiVGI Pro / Text To Video" -description: "Kling Video V1.5 Pro API reference for SandBase. Use model kwaivgi/kling-video/v1.5/pro/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/v1.5/pro/text-to-video" -apiReferenceJson: "{\"title\":\"Kling Video V1.5 Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V1.5 Pro by KwaiVGI - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v1.5/pro/text-to-video.\",\"default\":\"kwaivgi/kling-video/v1.5/pro/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.5/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.5/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.5/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.5/pro/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Video V1.5 Pro" - modelId: "kwaivgi/kling-video/v1.5/pro/text-to-video" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/v1.5/pro/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-11-25T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v1.6/pro/image-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/v1.6/pro/image-to-video.md deleted file mode 100644 index 287f9d60..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v1.6/pro/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Video V1.6 Pro API Reference — KwaiVGI Pro / Image To Video" -description: "Kling Video V1.6 Pro API reference for SandBase. Use model kwaivgi/kling-video/v1.6/pro/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/v1.6/pro/image-to-video" -apiReferenceJson: "{\"title\":\"Kling Video V1.6 Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V1.6 Pro is KwaiVGI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v1.6/pro/image-to-video.\",\"default\":\"kwaivgi/kling-video/v1.6/pro/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image URL or image data used by this model.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to be used for the end of the video\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.6/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Snowflakes fall as a car moves along the road.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/kling/kling_input.jpeg\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.6/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Snowflakes fall as a car moves along the road.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/Falserverless/kling/kling_input.jpeg\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.6/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Snowflakes fall as a car moves along the road.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/kling/kling_input.jpeg\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.6/pro/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Video V1.6 Pro" - modelId: "kwaivgi/kling-video/v1.6/pro/image-to-video" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/v1.6/pro/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-01-07T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v1.6/pro/text-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/v1.6/pro/text-to-video.md deleted file mode 100644 index 877c877a..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v1.6/pro/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Video V1.6 Pro API Reference — KwaiVGI Pro / Text To Video" -description: "Kling Video V1.6 Pro API reference for SandBase. Use model kwaivgi/kling-video/v1.6/pro/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/v1.6/pro/text-to-video" -apiReferenceJson: "{\"title\":\"Kling Video V1.6 Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V1.6 Pro by KwaiVGI - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v1.6/pro/text-to-video.\",\"default\":\"kwaivgi/kling-video/v1.6/pro/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.6/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.6/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.6/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.6/pro/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Video V1.6 Pro" - modelId: "kwaivgi/kling-video/v1.6/pro/text-to-video" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/v1.6/pro/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-02-27T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v1.6/standard/image-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/v1.6/standard/image-to-video.md deleted file mode 100644 index dd166f37..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v1.6/standard/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Video V1.6 Standard API Reference — KwaiVGI Image To Video" -description: "Kling Video V1.6 Standard API reference for SandBase. Use model kwaivgi/kling-video/v1.6/standard/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/v1.6/standard/image-to-video" -apiReferenceJson: "{\"title\":\"Kling Video V1.6 Standard\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V1.6 Standard by KwaiVGI - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v1.6/standard/image-to-video.\",\"default\":\"kwaivgi/kling-video/v1.6/standard/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image URL or image data used by this model.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.6/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Snowflakes fall as a car moves forward along the road.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/kling/kling_input.jpeg\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.6/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Snowflakes fall as a car moves forward along the road.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/Falserverless/kling/kling_input.jpeg\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.6/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Snowflakes fall as a car moves forward along the road.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/kling/kling_input.jpeg\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.6/standard/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Video V1.6 Standard" - modelId: "kwaivgi/kling-video/v1.6/standard/image-to-video" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/v1.6/standard/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-01-07T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v1.6/standard/text-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/v1.6/standard/text-to-video.md deleted file mode 100644 index 87b6545c..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v1.6/standard/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Video V1.6 Standard API Reference — KwaiVGI / Text To Video" -description: "Kling Video V1.6 Standard API reference for SandBase. Use model kwaivgi/kling-video/v1.6/standard/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/v1.6/standard/text-to-video" -apiReferenceJson: "{\"title\":\"Kling Video V1.6 Standard\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V1.6 Standard is KwaiVGI's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v1.6/standard/text-to-video.\",\"default\":\"kwaivgi/kling-video/v1.6/standard/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.6/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.6/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.6/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1.6/standard/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Video V1.6 Standard" - modelId: "kwaivgi/kling-video/v1.6/standard/text-to-video" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/v1.6/standard/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-01-07T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v1/pro/ai-avatar.md b/model-api-reference/video-generation/kwaivgi/kling-video/v1/pro/ai-avatar.md deleted file mode 100644 index 817d134f..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v1/pro/ai-avatar.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling AI Avatar Pro API Reference" -description: "Kling AI Avatar Pro API reference for SandBase. Use model kwaivgi/kling-video/v1/pro/ai-avatar with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/v1/pro/ai-avatar" -apiReferenceJson: "{\"title\":\"Kling AI Avatar Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V1 Pro by KwaiVGI - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v1/pro/ai-avatar.\",\"default\":\"kwaivgi/kling-video/v1/pro/ai-avatar\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for the video generation.\",\"default\":\".\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to use as your avatar\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the audio file.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1/pro/ai-avatar\\\",\\n \\\"prompt\\\": \\\".\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/v1/pro/ai-avatar/input_image_0.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/v1/pro/ai-avatar/output_url_1.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1/pro/ai-avatar\\\",\\n \\\"prompt\\\": \\\".\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/v1/pro/ai-avatar/input_image_0.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/v1/pro/ai-avatar/output_url_1.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1/pro/ai-avatar\\\",\\n \\\"prompt\\\": \\\".\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/v1/pro/ai-avatar/input_image_0.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/v1/pro/ai-avatar/output_url_1.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1/pro/ai-avatar\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling AI Avatar Pro" - modelId: "kwaivgi/kling-video/v1/pro/ai-avatar" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/v1/pro/ai-avatar" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-13T07:23:01.405Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v1/standard/ai-avatar.md b/model-api-reference/video-generation/kwaivgi/kling-video/v1/standard/ai-avatar.md deleted file mode 100644 index ad24a514..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v1/standard/ai-avatar.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling AI Avatar API Reference" -description: "Kling AI Avatar API reference for SandBase. Use model kwaivgi/kling-video/v1/standard/ai-avatar with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/v1/standard/ai-avatar" -apiReferenceJson: "{\"title\":\"Kling AI Avatar\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V1 Standard is KwaiVGI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v1/standard/ai-avatar.\",\"default\":\"kwaivgi/kling-video/v1/standard/ai-avatar\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for the video generation.\",\"default\":\".\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to use as your avatar\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the audio file.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1/standard/ai-avatar\\\",\\n \\\"prompt\\\": \\\".\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/v1/standard/ai-avatar/input_image_0.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/v1/standard/ai-avatar/output_url_1.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1/standard/ai-avatar\\\",\\n \\\"prompt\\\": \\\".\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/v1/standard/ai-avatar/input_image_0.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/v1/standard/ai-avatar/output_url_1.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1/standard/ai-avatar\\\",\\n \\\"prompt\\\": \\\".\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/v1/standard/ai-avatar/input_image_0.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/kling-video/v1/standard/ai-avatar/output_url_1.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1/standard/ai-avatar\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling AI Avatar" - modelId: "kwaivgi/kling-video/v1/standard/ai-avatar" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/v1/standard/ai-avatar" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-13T07:34:07.28Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v1/standard/effects.md b/model-api-reference/video-generation/kwaivgi/kling-video/v1/standard/effects.md deleted file mode 100644 index af212d29..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v1/standard/effects.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling 1.0 API Reference" -description: "Kling 1.0 API reference for SandBase. Use model kwaivgi/kling-video/v1/standard/effects with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/v1/standard/effects" -apiReferenceJson: "{\"title\":\"Kling 1.0\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V1 Standard is KwaiVGI's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v1/standard/effects.\",\"default\":\"kwaivgi/kling-video/v1/standard/effects\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"input_image_urls\",\"type\":\"array\",\"required\":false,\"description\":\"URL of images to be used for hug, kiss or heart_gesture video.\"},{\"name\":\"effect_scene\",\"type\":\"string\",\"required\":false,\"description\":\"The effect scene to use for the video generation\",\"constraints\":\"Allowed values: hug, kiss, heart_gesture, squish, expansion, fuzzyfuzzy, bloombloom, dizzydizzy, jelly_press, jelly_slice, jelly_squish, jelly_jiggle, pixelpixel, yearbook, instant_film, anime_figure, rocketrocket, fly_fly, disappear, lightning_power, bullet_time, bullet_time_360, media_interview, day_to_night, let's_ride, jumpdrop, swish_swish, running_man, jazz_jazz, swing_swing, skateskate, building_sweater, pure_white_wings, black_wings, golden_wing, pink_pink_wings, rampage_ape, a_list_look, countdown_teleport, firework_2026, instant_christmas, birthday_star, firework, celebration, tiger_hug_pro, pet_lion_pro, guardian_spirit, squeeze_scream, inner_voice, memory_alive, guess_what, eagle_snatch, hug_from_past, instant_kid, dollar_rain, cry_cry, building_collapse, mushroom, jesus_hug, shark_alert, lie_flat, polar_bear_hug, brown_bear_hug, office_escape_plow, watermelon_bomb, boss_coming, wig_out, car_explosion, tiger_hug, siblings, construction_worker, snatched, felt_felt, plushcut, drunk_dance, drunk_dance_pet, daoma_dance, bouncy_dance, smooth_sailing_dance, new_year_greeting, lion_dance, prosperity, great_success, golden_horse_fortune, red_packet_box, lucky_horse_year, lucky_red_packet, lucky_money_come, lion_dance_pet, dumpling_making_pet, fish_making_pet, pet_red_packet, lantern_glow, expression_challenge, overdrive, heart_gesture_dance, poping, martial_arts, running, nezha, motorcycle_dance, subject_3_dance, ghost_step_dance, phantom_jewel, zoom_out, cheers_2026, kiss_pro, fight_pro, hug_pro, heart_gesture_pro, dollar_rain_pro, pet_bee_pro, santa_random_surprise, magic_match_tree, happy_birthday, thumbs_up_pro, surprise_bouquet, bouquet_drop, 3d_cartoon_1_pro, glamour_photo_shoot, box_of_joy, first_toast_of_the_year, my_santa_pic, santa_gift, steampunk_christmas, snowglobe, christmas_photo_shoot, ornament_crash, santa_express, particle_santa_surround, coronation_of_frost, spark_in_the_snow, scarlet_and_snow, cozy_toon_wrap, bullet_time_lite, magic_cloak, balloon_parade, jumping_ginger_joy, c4d_cartoon_pro, venomous_spider, throne_of_king, luminous_elf, woodland_elf, japanese_anime_1, american_comics, snowboarding, witch_transform, vampire_transform, pumpkin_head_transform, demon_transform, mummy_transform, zombie_transform, cute_pumpkin_transform, cute_ghost_transform, knock_knock_halloween, halloween_escape, baseball, korean_baseball, trampoline, trampoline_night, pucker_up, feed_mooncake, flyer, dishwasher, pet_chinese_opera, magic_fireball, gallery_ring, pet_moto_rider, muscle_pet, pet_delivery, mythic_style, steampunk, 3d_cartoon_2, pet_chef, santa_gifts, santa_hug, girlfriend, boyfriend, heart_gesture_1, pet_wizard, smoke_smoke, gun_shot, double_gun, pet_warrior, long_hair, pet_dance, wool_curly, pet_bee, marry_me, piggy_morph, ski_ski, magic_broom, splashsplash, surfsurf, fairy_wing, angel_wing, dark_wing, emoji\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1/standard/effects\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1/standard/effects\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1/standard/effects\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1/standard/effects\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling 1.0" - modelId: "kwaivgi/kling-video/v1/standard/effects" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/v1/standard/effects" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-06T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v1/standard/image-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/v1/standard/image-to-video.md deleted file mode 100644 index 57ed7417..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v1/standard/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Video V1 Standard API Reference — KwaiVGI / Image To Video" -description: "Kling Video V1 Standard API reference for SandBase. Use model kwaivgi/kling-video/v1/standard/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/v1/standard/image-to-video" -apiReferenceJson: "{\"title\":\"Kling Video V1 Standard\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V1 Standard by KwaiVGI - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v1/standard/image-to-video.\",\"default\":\"kwaivgi/kling-video/v1/standard/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt for the video\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to be used for the video\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to be used for the end of the video\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"static_mask_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image for Static Brush Application Area (Mask image created by users using the motion brush)\"},{\"name\":\"dynamic_masks\",\"type\":\"array\",\"required\":false,\"description\":\"List of dynamic masks\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Snowflakes fall as a car moves forward along the road.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/kling/kling_input.jpeg\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Snowflakes fall as a car moves forward along the road.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/Falserverless/kling/kling_input.jpeg\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Snowflakes fall as a car moves forward along the road.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/kling/kling_input.jpeg\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1/standard/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Video V1 Standard" - modelId: "kwaivgi/kling-video/v1/standard/image-to-video" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/v1/standard/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-10-04T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v1/standard/text-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/v1/standard/text-to-video.md deleted file mode 100644 index 91ac8539..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v1/standard/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Video V1 Standard API Reference — KwaiVGI / Text To Video" -description: "Kling Video V1 Standard API reference for SandBase. Use model kwaivgi/kling-video/v1/standard/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/v1/standard/text-to-video" -apiReferenceJson: "{\"title\":\"Kling Video V1 Standard\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V1 Standard is KwaiVGI's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v1/standard/text-to-video.\",\"default\":\"kwaivgi/kling-video/v1/standard/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"camera_control\",\"type\":\"string\",\"required\":false,\"description\":\"Camera control parameters\",\"constraints\":\"Allowed values: down_back, forward_up, right_turn_forward, left_turn_forward\"},{\"name\":\"advanced_camera_control\",\"type\":\"string\",\"required\":false,\"description\":\"Advanced Camera control parameters\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v1/standard/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Video V1 Standard" - modelId: "kwaivgi/kling-video/v1/standard/text-to-video" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/v1/standard/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-12-03T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v2.1/master/image-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/v2.1/master/image-to-video.md deleted file mode 100644 index 4c7d6c2b..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v2.1/master/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Video V2.1 Master API Reference — KwaiVGI / Image To Video" -description: "Kling Video V2.1 Master API reference for SandBase. Use model kwaivgi/kling-video/v2.1/master/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/v2.1/master/image-to-video" -apiReferenceJson: "{\"title\":\"Kling Video V2.1 Master\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V2.1 Master by KwaiVGI - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v2.1/master/image-to-video.\",\"default\":\"kwaivgi/kling-video/v2.1/master/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to be used for the video\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.1/master/image-to-video\\\",\\n \\\"prompt\\\": \\\"Sunlight dapples through budding branches, illuminating a vibrant tapestry of greens and browns as a pair of robins meticulously weave twigs and mud into a cradle of life, their tiny forms a whirlwind of activity against a backdrop of blossoming spring. The scene unfolds with a gentle, observational pace, allowing the viewer to fully appreciate the intricate details of nest construction, the soft textures of downy feathers contrasted against the rough bark of the branches, the delicate balance of strength and fragility in their creation.\\\",\\n \\\"image\\\": \\\"https://v3.fal.media/files/zebra/9Nrm22YyLojSTPJbZYNhh_image.webp\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.1/master/image-to-video\\\",\\n \\\"prompt\\\": \\\"Sunlight dapples through budding branches, illuminating a vibrant tapestry of greens and browns as a pair of robins meticulously weave twigs and mud into a cradle of life, their tiny forms a whirlwind of activity against a backdrop of blossoming spring. The scene unfolds with a gentle, observational pace, allowing the viewer to fully appreciate the intricate details of nest construction, the soft textures of downy feathers contrasted against the rough bark of the branches, the delicate balance of strength and fragility in their creation.\\\",\\n \\\"image\\\": \\\"https://v3.fal.media/files/zebra/9Nrm22YyLojSTPJbZYNhh_image.webp\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.1/master/image-to-video\\\",\\n \\\"prompt\\\": \\\"Sunlight dapples through budding branches, illuminating a vibrant tapestry of greens and browns as a pair of robins meticulously weave twigs and mud into a cradle of life, their tiny forms a whirlwind of activity against a backdrop of blossoming spring. The scene unfolds with a gentle, observational pace, allowing the viewer to fully appreciate the intricate details of nest construction, the soft textures of downy feathers contrasted against the rough bark of the branches, the delicate balance of strength and fragility in their creation.\\\",\\n \\\"image\\\": \\\"https://v3.fal.media/files/zebra/9Nrm22YyLojSTPJbZYNhh_image.webp\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.1/master/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Video V2.1 Master" - modelId: "kwaivgi/kling-video/v2.1/master/image-to-video" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/v2.1/master/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-29T00:01:10.593Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v2.1/master/text-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/v2.1/master/text-to-video.md deleted file mode 100644 index e4c8c46d..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v2.1/master/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Video V2.1 Master API Reference — KwaiVGI / Text To Video" -description: "Kling Video V2.1 Master API reference for SandBase. Use model kwaivgi/kling-video/v2.1/master/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/v2.1/master/text-to-video" -apiReferenceJson: "{\"title\":\"Kling Video V2.1 Master\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V2.1 Master is KwaiVGI's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v2.1/master/text-to-video.\",\"default\":\"kwaivgi/kling-video/v2.1/master/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.1/master/text-to-video\\\",\\n \\\"prompt\\\": \\\"Warm, earthy tones bathe the scene as the potter's hands, rough and calloused, coax a shapeless lump of clay into a vessel of elegant curves, the slow, deliberate movements highlighted by the subtle shifting light; the clay's cool, damp texture contrasts sharply with the warmth of the potter's touch, creating a captivating interplay between material and maker.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.1/master/text-to-video\\\",\\n \\\"prompt\\\": \\\"Warm, earthy tones bathe the scene as the potter's hands, rough and calloused, coax a shapeless lump of clay into a vessel of elegant curves, the slow, deliberate movements highlighted by the subtle shifting light; the clay's cool, damp texture contrasts sharply with the warmth of the potter's touch, creating a captivating interplay between material and maker.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.1/master/text-to-video\\\",\\n \\\"prompt\\\": \\\"Warm, earthy tones bathe the scene as the potter's hands, rough and calloused, coax a shapeless lump of clay into a vessel of elegant curves, the slow, deliberate movements highlighted by the subtle shifting light; the clay's cool, damp texture contrasts sharply with the warmth of the potter's touch, creating a captivating interplay between material and maker.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.1/master/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Video V2.1 Master" - modelId: "kwaivgi/kling-video/v2.1/master/text-to-video" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/v2.1/master/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-29T00:34:10.45Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v2.1/pro/image-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/v2.1/pro/image-to-video.md deleted file mode 100644 index ece0e589..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v2.1/pro/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Video V2.1 Pro API Reference" -description: "Kling Video V2.1 Pro API reference for SandBase. Use model kwaivgi/kling-video/v2.1/pro/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/v2.1/pro/image-to-video" -apiReferenceJson: "{\"title\":\"Kling Video V2.1 Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V2.1 Pro is KwaiVGI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v2.1/pro/image-to-video.\",\"default\":\"kwaivgi/kling-video/v2.1/pro/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to be used for the video\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to be used for the end of the video\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.1/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Warm, incandescent streetlights paint the rain-slicked cobblestones in pools of amber light as a couple walks hand-in-hand, their silhouettes stark against the blurry backdrop of a city shrouded in a gentle downpour; the camera lingers on the subtle textures of their rain-soaked coats and the glistening reflections dancing on the wet pavement, creating a sense of intimate vulnerability and shared quietude.\\\",\\n \\\"image\\\": \\\"https://v3.fal.media/files/lion/_I_io6Gtk83c72d-afXf8_image.webp\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.1/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Warm, incandescent streetlights paint the rain-slicked cobblestones in pools of amber light as a couple walks hand-in-hand, their silhouettes stark against the blurry backdrop of a city shrouded in a gentle downpour; the camera lingers on the subtle textures of their rain-soaked coats and the glistening reflections dancing on the wet pavement, creating a sense of intimate vulnerability and shared quietude.\\\",\\n \\\"image\\\": \\\"https://v3.fal.media/files/lion/_I_io6Gtk83c72d-afXf8_image.webp\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.1/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Warm, incandescent streetlights paint the rain-slicked cobblestones in pools of amber light as a couple walks hand-in-hand, their silhouettes stark against the blurry backdrop of a city shrouded in a gentle downpour; the camera lingers on the subtle textures of their rain-soaked coats and the glistening reflections dancing on the wet pavement, creating a sense of intimate vulnerability and shared quietude.\\\",\\n \\\"image\\\": \\\"https://v3.fal.media/files/lion/_I_io6Gtk83c72d-afXf8_image.webp\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.1/pro/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Video V2.1 Pro" - modelId: "kwaivgi/kling-video/v2.1/pro/image-to-video" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/v2.1/pro/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-28T21:01:03.267Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v2.1/standard/image-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/v2.1/standard/image-to-video.md deleted file mode 100644 index 0a67fc2a..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v2.1/standard/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Video V2.1 Standard API Reference" -description: "Kling Video V2.1 Standard API reference for SandBase. Use model kwaivgi/kling-video/v2.1/standard/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/v2.1/standard/image-to-video" -apiReferenceJson: "{\"title\":\"Kling Video V2.1 Standard\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V2.1 Standard by KwaiVGI - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v2.1/standard/image-to-video.\",\"default\":\"kwaivgi/kling-video/v2.1/standard/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to be used for the video\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.1/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"As the sun dips below the horizon, painting the sky in fiery hues of orange and purple, powerful waves relentlessly crash against jagged, dark rocks, their white foam a stark contrast to the deepening twilight; the textured surface of the rocks, wet and glistening, reflects the vibrant colors, creating a mesmerizing spectacle of nature's raw power and breathtaking beauty\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/model_tests/kling/kling-image-to-video.jpg\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.1/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"As the sun dips below the horizon, painting the sky in fiery hues of orange and purple, powerful waves relentlessly crash against jagged, dark rocks, their white foam a stark contrast to the deepening twilight; the textured surface of the rocks, wet and glistening, reflects the vibrant colors, creating a mesmerizing spectacle of nature's raw power and breathtaking beauty\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/Falserverless/model_tests/kling/kling-image-to-video.jpg\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.1/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"As the sun dips below the horizon, painting the sky in fiery hues of orange and purple, powerful waves relentlessly crash against jagged, dark rocks, their white foam a stark contrast to the deepening twilight; the textured surface of the rocks, wet and glistening, reflects the vibrant colors, creating a mesmerizing spectacle of nature's raw power and breathtaking beauty\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/model_tests/kling/kling-image-to-video.jpg\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.1/standard/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Video V2.1 Standard" - modelId: "kwaivgi/kling-video/v2.1/standard/image-to-video" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/v2.1/standard/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-28T20:59:07.301Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v2.5-turbo/pro/image-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/v2.5-turbo/pro/image-to-video.md index 452c12d3..bd485dde 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v2.5-turbo/pro/image-to-video.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/v2.5-turbo/pro/image-to-video.md @@ -1,12 +1,12 @@ --- -title: "Kling Video V2.5 Turbo Pro API Reference — KwaiVGI Image To Video" -description: "Kling Video V2.5 Turbo Pro API reference for SandBase. Use model kwaivgi/kling-video/v2.5-turbo/pro/image-to-video with /v1/run; see request and response examples." +title: "Kling V2.5 Turbo Pro Image to Video API Reference" +description: "SandBase API reference for model kwaivgi/kling-video/v2.5-turbo/pro/image-to-video. Call /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/v2.5-turbo/pro/image-to-video" -apiReferenceJson: "{\"title\":\"Kling Video V2.5 Turbo Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V2.5 Turbo Pro is KwaiVGI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v2.5-turbo/pro/image-to-video.\",\"default\":\"kwaivgi/kling-video/v2.5-turbo/pro/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to be used for the video\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to be used for the end of the video\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.5-turbo/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stark starting line divides two powerful cars, engines revving for the challenge ahead. They surge forward in the heat of competition, a blur of speed and chrome. The finish line looms as they vie for victory.\\\",\\n \\\"image\\\": \\\"https://v3.fal.media/files/panda/HnY2yf-BbzlrVQxR-qP6m_9912d0932988453aadf3912fc1901f52.jpg\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.5-turbo/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stark starting line divides two powerful cars, engines revving for the challenge ahead. They surge forward in the heat of competition, a blur of speed and chrome. The finish line looms as they vie for victory.\\\",\\n \\\"image\\\": \\\"https://v3.fal.media/files/panda/HnY2yf-BbzlrVQxR-qP6m_9912d0932988453aadf3912fc1901f52.jpg\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.5-turbo/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stark starting line divides two powerful cars, engines revving for the challenge ahead. They surge forward in the heat of competition, a blur of speed and chrome. The finish line looms as they vie for victory.\\\",\\n \\\"image\\\": \\\"https://v3.fal.media/files/panda/HnY2yf-BbzlrVQxR-qP6m_9912d0932988453aadf3912fc1901f52.jpg\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.5-turbo/pro/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling V2.5 Turbo Pro Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling V2.5 Turbo Pro Image to Video by Kuaishou animates a start image, optionally toward an end image, into a 5 or 10 second 1080p video.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v2.5-turbo/pro/image-to-video.\",\"default\":\"kwaivgi/kling-video/v2.5-turbo/pro/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to be used for the video\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to be used for the end of the video\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.5-turbo/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stark starting line divides two powerful cars, engines revving for the challenge ahead. They surge forward in the heat of competition, a blur of speed and chrome. The finish line looms as they vie for victory.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/files/panda/HnY2yf-BbzlrVQxR-qP6m_9912d0932988453aadf3912fc1901f52.jpg\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.5-turbo/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stark starting line divides two powerful cars, engines revving for the challenge ahead. They surge forward in the heat of competition, a blur of speed and chrome. The finish line looms as they vie for victory.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/files/panda/HnY2yf-BbzlrVQxR-qP6m_9912d0932988453aadf3912fc1901f52.jpg\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.5-turbo/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stark starting line divides two powerful cars, engines revving for the challenge ahead. They surge forward in the heat of competition, a blur of speed and chrome. The finish line looms as they vie for victory.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/files/panda/HnY2yf-BbzlrVQxR-qP6m_9912d0932988453aadf3912fc1901f52.jpg\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.5-turbo/pro/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video V2.5 Turbo Pro" + modelName: "Kling V2.5 Turbo Pro Image to Video" modelId: "kwaivgi/kling-video/v2.5-turbo/pro/image-to-video" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v2.5-turbo/pro/text-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/v2.5-turbo/pro/text-to-video.md index 359f2eb9..d92f5b2b 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v2.5-turbo/pro/text-to-video.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/v2.5-turbo/pro/text-to-video.md @@ -1,12 +1,12 @@ --- -title: "Kling Video V2.5 Turbo Pro API Reference — KwaiVGI Text To Video" -description: "Kling Video V2.5 Turbo Pro API reference for SandBase. Use model kwaivgi/kling-video/v2.5-turbo/pro/text-to-video with /v1/run; see request and response examples." +title: "Kling V2.5 Turbo Pro Text to Video API Reference" +description: "Kling V2.5 Turbo Pro Text to Video API reference for SandBase. Use model kwaivgi/kling-video/v2.5-turbo/pro/text-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/v2.5-turbo/pro/text-to-video" -apiReferenceJson: "{\"title\":\"Kling Video V2.5 Turbo Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V2.5 Turbo Pro by KwaiVGI - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v2.5-turbo/pro/text-to-video.\",\"default\":\"kwaivgi/kling-video/v2.5-turbo/pro/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.5-turbo/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A noble lord walks among his people, his presence a comforting reassurance. He greets them with a gentle smile, embodying their hopes and earning their respect through simple interactions. The atmosphere is intimate and sincere, highlighting the bond between the leader and community.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.5-turbo/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A noble lord walks among his people, his presence a comforting reassurance. He greets them with a gentle smile, embodying their hopes and earning their respect through simple interactions. The atmosphere is intimate and sincere, highlighting the bond between the leader and community.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.5-turbo/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A noble lord walks among his people, his presence a comforting reassurance. He greets them with a gentle smile, embodying their hopes and earning their respect through simple interactions. The atmosphere is intimate and sincere, highlighting the bond between the leader and community.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.5-turbo/pro/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling V2.5 Turbo Pro Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling V2.5 Turbo Pro Text to Video by Kuaishou turns a text prompt into a 5 or 10 second 1080p video.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v2.5-turbo/pro/text-to-video.\",\"default\":\"kwaivgi/kling-video/v2.5-turbo/pro/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.5-turbo/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A noble lord walks among his people, his presence a comforting reassurance. He greets them with a gentle smile, embodying their hopes and earning their respect through simple interactions. The atmosphere is intimate and sincere, highlighting the bond between the leader and community.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.5-turbo/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A noble lord walks among his people, his presence a comforting reassurance. He greets them with a gentle smile, embodying their hopes and earning their respect through simple interactions. The atmosphere is intimate and sincere, highlighting the bond between the leader and community.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.5-turbo/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A noble lord walks among his people, his presence a comforting reassurance. He greets them with a gentle smile, embodying their hopes and earning their respect through simple interactions. The atmosphere is intimate and sincere, highlighting the bond between the leader and community.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.5-turbo/pro/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video V2.5 Turbo Pro" + modelName: "Kling V2.5 Turbo Pro Text to Video" modelId: "kwaivgi/kling-video/v2.5-turbo/pro/text-to-video" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v2.5-turbo/standard/image-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/v2.5-turbo/standard/image-to-video.md index 385fdb7e..b1f86666 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v2.5-turbo/standard/image-to-video.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/v2.5-turbo/standard/image-to-video.md @@ -1,12 +1,12 @@ --- -title: "Kling Video V2.5 Turbo Standard API Reference" +title: "Kling V2.5 Turbo Standard Image to Video API Reference" description: "SandBase API reference for model kwaivgi/kling-video/v2.5-turbo/standard/image-to-video. Call /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/v2.5-turbo/standard/image-to-video" -apiReferenceJson: "{\"title\":\"Kling Video V2.5 Turbo Standard\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V2.5 Turbo Standard by KwaiVGI - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v2.5-turbo/standard/image-to-video.\",\"default\":\"kwaivgi/kling-video/v2.5-turbo/standard/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to be used for the video\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.5-turbo/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Fine grains of salt drift across the flats in a slow, low wind, streaming past the figure's feet. The figure's robe ripples. Light crawls down the face of the monolith as the sun rises millimeter by millimeter — a slow wash of coral replacing indigo. The figure tilts their head upward. Camera creeps forward almost imperceptibly. Monumental, spiritual, glacial.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/247795a4986e-w4qtfMTu-mh_KUgHIZNAH__4BUACOxwlMAEVXDfeYbj_2UxyAg3W.jpg\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.5-turbo/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Fine grains of salt drift across the flats in a slow, low wind, streaming past the figure's feet. The figure's robe ripples. Light crawls down the face of the monolith as the sun rises millimeter by millimeter — a slow wash of coral replacing indigo. The figure tilts their head upward. Camera creeps forward almost imperceptibly. Monumental, spiritual, glacial.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/247795a4986e-w4qtfMTu-mh_KUgHIZNAH__4BUACOxwlMAEVXDfeYbj_2UxyAg3W.jpg\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.5-turbo/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Fine grains of salt drift across the flats in a slow, low wind, streaming past the figure's feet. The figure's robe ripples. Light crawls down the face of the monolith as the sun rises millimeter by millimeter — a slow wash of coral replacing indigo. The figure tilts their head upward. Camera creeps forward almost imperceptibly. Monumental, spiritual, glacial.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/247795a4986e-w4qtfMTu-mh_KUgHIZNAH__4BUACOxwlMAEVXDfeYbj_2UxyAg3W.jpg\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.5-turbo/standard/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling V2.5 Turbo Standard Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling V2.5 Turbo Standard Image to Video by Kuaishou animates a start image into a 5 or 10 second 720p video.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v2.5-turbo/standard/image-to-video.\",\"default\":\"kwaivgi/kling-video/v2.5-turbo/standard/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to be used for the video\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.5-turbo/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Fine grains of salt drift across the flats in a slow, low wind, streaming past the figure's feet. The figure's robe ripples. Light crawls down the face of the monolith as the sun rises millimeter by millimeter — a slow wash of coral replacing indigo. The figure tilts their head upward. Camera creeps forward almost imperceptibly. Monumental, spiritual, glacial.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/247795a4986e-w4qtfMTu-mh_KUgHIZNAH__4BUACOxwlMAEVXDfeYbj_2UxyAg3W.jpg\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.5-turbo/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Fine grains of salt drift across the flats in a slow, low wind, streaming past the figure's feet. The figure's robe ripples. Light crawls down the face of the monolith as the sun rises millimeter by millimeter — a slow wash of coral replacing indigo. The figure tilts their head upward. Camera creeps forward almost imperceptibly. Monumental, spiritual, glacial.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/247795a4986e-w4qtfMTu-mh_KUgHIZNAH__4BUACOxwlMAEVXDfeYbj_2UxyAg3W.jpg\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.5-turbo/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Fine grains of salt drift across the flats in a slow, low wind, streaming past the figure's feet. The figure's robe ripples. Light crawls down the face of the monolith as the sun rises millimeter by millimeter — a slow wash of coral replacing indigo. The figure tilts their head upward. Camera creeps forward almost imperceptibly. Monumental, spiritual, glacial.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/247795a4986e-w4qtfMTu-mh_KUgHIZNAH__4BUACOxwlMAEVXDfeYbj_2UxyAg3W.jpg\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.5-turbo/standard/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video V2.5 Turbo Standard" + modelName: "Kling V2.5 Turbo Standard Image to Video" modelId: "kwaivgi/kling-video/v2.5-turbo/standard/image-to-video" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v2.6/pro/image-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/v2.6/pro/image-to-video.md index cfe78f79..666052a7 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v2.6/pro/image-to-video.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/v2.6/pro/image-to-video.md @@ -1,12 +1,12 @@ --- -title: "Kling Video V2.6 Pro API Reference — KwaiVGI Pro / Image To Video" -description: "Kling Video V2.6 Pro API reference for SandBase. Use model kwaivgi/kling-video/v2.6/pro/image-to-video with /v1/run; see request and response examples." +title: "Kling V2.6 Pro Image to Video API Reference" +description: "Kling V2.6 Pro Image to Video API reference for SandBase. Use model kwaivgi/kling-video/v2.6/pro/image-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/v2.6/pro/image-to-video" -apiReferenceJson: "{\"title\":\"Kling Video V2.6 Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V2.6 Pro is KwaiVGI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v2.6/pro/image-to-video.\",\"default\":\"kwaivgi/kling-video/v2.6/pro/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to be used for the video\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to be used for the end of the video\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video. Supports Chinese and English voice output. Other languages are automatically translated to English. For English speech, use lowercase letters; for acronyms or proper nouns, use uppercase.\",\"default\":\"true\"},{\"name\":\"voice_ids\",\"type\":\"array\",\"required\":false,\"description\":\"Optional Voice IDs for video generation. Reference voices in your prompt with <<>> and <<>> (maximum 2 voices per task). Get voice IDs from the kling video create-voice endpoint: https://fal.ai/models/fal-ai/kling-video/create-voice\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"A king walks slowly and says \\\\\\\"My people, here I am! I am here to save you all\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/b08c180c4436-BSJXz9Ht-jgRgMf4IGxLU_upscaled.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"A king walks slowly and says \\\\\\\"My people, here I am! I am here to save you all\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/b08c180c4436-BSJXz9Ht-jgRgMf4IGxLU_upscaled.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"A king walks slowly and says \\\\\\\"My people, here I am! I am here to save you all\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/b08c180c4436-BSJXz9Ht-jgRgMf4IGxLU_upscaled.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/pro/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling V2.6 Pro Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling V2.6 Pro Image to Video by Kuaishou animates a start image, optionally toward an end image, into a 5 or 10 second 1080p video with optional native audio and voice control.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v2.6/pro/image-to-video.\",\"default\":\"kwaivgi/kling-video/v2.6/pro/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to be used for the video\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to be used for the end of the video\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video. Supports Chinese and English voice output. Other languages are automatically translated to English. For English speech, use lowercase letters; for acronyms or proper nouns, use uppercase.\",\"default\":\"true\"},{\"name\":\"voice_ids\",\"type\":\"array\",\"required\":false,\"description\":\"Optional Voice IDs for video generation. Reference voices in your prompt with <<>> and <<>> (maximum 2 voices per task). Get voice IDs from the kling video create-voice endpoint: https://fal.ai/models/fal-ai/kling-video/create-voice\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"A king walks slowly and says \\\\\\\"My people, here I am! I am here to save you all\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/b08c180c4436-BSJXz9Ht-jgRgMf4IGxLU_upscaled.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"A king walks slowly and says \\\\\\\"My people, here I am! I am here to save you all\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/b08c180c4436-BSJXz9Ht-jgRgMf4IGxLU_upscaled.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"A king walks slowly and says \\\\\\\"My people, here I am! I am here to save you all\\\\\\\"\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/b08c180c4436-BSJXz9Ht-jgRgMf4IGxLU_upscaled.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/pro/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video V2.6 Pro" + modelName: "Kling V2.6 Pro Image to Video" modelId: "kwaivgi/kling-video/v2.6/pro/image-to-video" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v2.6/pro/motion-control.md b/model-api-reference/video-generation/kwaivgi/kling-video/v2.6/pro/motion-control.md index fbba704d..3caeaefa 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v2.6/pro/motion-control.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/v2.6/pro/motion-control.md @@ -1,12 +1,12 @@ --- -title: "Kling Video V2.6 Pro API Reference — KwaiVGI Pro / Motion Control" -description: "Kling Video V2.6 Pro API reference for SandBase. Use model kwaivgi/kling-video/v2.6/pro/motion-control with /v1/run; see request and response examples." +title: "Kling V2.6 Pro Motion Control API Reference" +description: "Kling V2.6 Pro Motion Control API reference for SandBase. Use model kwaivgi/kling-video/v2.6/pro/motion-control with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/v2.6/pro/motion-control" -apiReferenceJson: "{\"title\":\"Kling Video V2.6 Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V2.6 Pro is KwaiVGI's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v2.6/pro/motion-control.\",\"default\":\"kwaivgi/kling-video/v2.6/pro/motion-control\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Reference image URL. The characters, backgrounds, and other elements in the generated video are based on this reference image. Characters should have clear body proportions, avoid occlusion, and occupy more than 5% of the image area.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Reference video URL. The character actions in the generated video will be consistent with this reference video. Should contain a realistic style character with entire body or upper body visible, including head, without obstruction. Duration limit depends on character_orientation: 10s max for 'image', 30s max for 'video'.\"},{\"name\":\"keep_original_sound\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original sound from the reference video.\",\"default\":\"true\"},{\"name\":\"character_orientation\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the output character's orientation matches the reference image or video. 'video': orientation matches reference video - better for complex motions (max 30s). 'image': orientation matches reference image - better for following camera movements (max 10s).\",\"constraints\":\"Allowed values: image, video\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/pro/motion-control\\\",\\n \\\"prompt\\\": \\\"An african american woman dancing\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/39c314d0257c-VHtWK5BZMa-XoT6gahJKS_077.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/364bdb1d674a-3nvl30ic9g2otKRcOV5nO_output.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/pro/motion-control\\\",\\n \\\"prompt\\\": \\\"An african american woman dancing\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/39c314d0257c-VHtWK5BZMa-XoT6gahJKS_077.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/364bdb1d674a-3nvl30ic9g2otKRcOV5nO_output.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/pro/motion-control\\\",\\n \\\"prompt\\\": \\\"An african american woman dancing\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/39c314d0257c-VHtWK5BZMa-XoT6gahJKS_077.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/364bdb1d674a-3nvl30ic9g2otKRcOV5nO_output.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/pro/motion-control\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling V2.6 Pro Motion Control\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling V2.6 Pro Motion Control by Kuaishou transfers the motion, expressions, and camera movement of a reference video onto the character in an image, producing a 1080p video up to 30 seconds.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v2.6/pro/motion-control.\",\"default\":\"kwaivgi/kling-video/v2.6/pro/motion-control\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Reference image URL. The characters, backgrounds, and other elements in the generated video are based on this reference image. Characters should have clear body proportions, avoid occlusion, and occupy more than 5% of the image area.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Reference video URL. The character actions in the generated video will be consistent with this reference video. Should contain a realistic style character with entire body or upper body visible, including head, without obstruction. Duration limit depends on character_orientation: 10s max for 'image', 30s max for 'video'.\"},{\"name\":\"keep_original_sound\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original sound from the reference video.\",\"default\":\"true\"},{\"name\":\"character_orientation\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the output character's orientation matches the reference image or video. 'video': orientation matches reference video - better for complex motions (max 30s). 'image': orientation matches reference image - better for following camera movements (max 10s).\",\"constraints\":\"Allowed values: image, video\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/pro/motion-control\\\",\\n \\\"prompt\\\": \\\"An african american woman dancing\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/39c314d0257c-VHtWK5BZMa-XoT6gahJKS_077.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/364bdb1d674a-3nvl30ic9g2otKRcOV5nO_output.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/pro/motion-control\\\",\\n \\\"prompt\\\": \\\"An african american woman dancing\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/39c314d0257c-VHtWK5BZMa-XoT6gahJKS_077.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/364bdb1d674a-3nvl30ic9g2otKRcOV5nO_output.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/pro/motion-control\\\",\\n \\\"prompt\\\": \\\"An african american woman dancing\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/39c314d0257c-VHtWK5BZMa-XoT6gahJKS_077.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/364bdb1d674a-3nvl30ic9g2otKRcOV5nO_output.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/pro/motion-control\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video V2.6 Pro" + modelName: "Kling V2.6 Pro Motion Control" modelId: "kwaivgi/kling-video/v2.6/pro/motion-control" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v2.6/pro/text-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/v2.6/pro/text-to-video.md index 2712f3de..71e938e8 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v2.6/pro/text-to-video.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/v2.6/pro/text-to-video.md @@ -1,12 +1,12 @@ --- -title: "Kling Video V2.6 Pro API Reference — KwaiVGI Pro / Text To Video" -description: "Kling Video V2.6 Pro API reference for SandBase. Use model kwaivgi/kling-video/v2.6/pro/text-to-video with /v1/run; see request and response examples." +title: "Kling V2.6 Pro Text to Video API Reference" +description: "Kling V2.6 Pro Text to Video API reference for SandBase. Use model kwaivgi/kling-video/v2.6/pro/text-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/v2.6/pro/text-to-video" -apiReferenceJson: "{\"title\":\"Kling Video V2.6 Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V2.6 Pro by KwaiVGI - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v2.6/pro/text-to-video.\",\"default\":\"kwaivgi/kling-video/v2.6/pro/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video. Supports Chinese and English voice output. Other languages are automatically translated to English. For English speech, use lowercase letters; for acronyms or proper nouns, use uppercase.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"Old friends reuniting at a train station after 20 years, one exclaims 'Is that really you?!' other tearfully replies 'I promised I'd come back, didn't I?', train whistle, steam hissing, emotional orchestral swell, crowd murmur\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"Old friends reuniting at a train station after 20 years, one exclaims 'Is that really you?!' other tearfully replies 'I promised I'd come back, didn't I?', train whistle, steam hissing, emotional orchestral swell, crowd murmur\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"Old friends reuniting at a train station after 20 years, one exclaims 'Is that really you?!' other tearfully replies 'I promised I'd come back, didn't I?', train whistle, steam hissing, emotional orchestral swell, crowd murmur\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/pro/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling V2.6 Pro Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling V2.6 Pro Text to Video by Kuaishou turns a text prompt into a 5 or 10 second 1080p video with optional native audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v2.6/pro/text-to-video.\",\"default\":\"kwaivgi/kling-video/v2.6/pro/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video. Supports Chinese and English voice output. Other languages are automatically translated to English. For English speech, use lowercase letters; for acronyms or proper nouns, use uppercase.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"Old friends reuniting at a train station after 20 years, one exclaims 'Is that really you?!' other tearfully replies 'I promised I'd come back, didn't I?', train whistle, steam hissing, emotional orchestral swell, crowd murmur\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"Old friends reuniting at a train station after 20 years, one exclaims 'Is that really you?!' other tearfully replies 'I promised I'd come back, didn't I?', train whistle, steam hissing, emotional orchestral swell, crowd murmur\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"Old friends reuniting at a train station after 20 years, one exclaims 'Is that really you?!' other tearfully replies 'I promised I'd come back, didn't I?', train whistle, steam hissing, emotional orchestral swell, crowd murmur\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/pro/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video V2.6 Pro" + modelName: "Kling V2.6 Pro Text to Video" modelId: "kwaivgi/kling-video/v2.6/pro/text-to-video" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v2.6/standard/motion-control.md b/model-api-reference/video-generation/kwaivgi/kling-video/v2.6/standard/motion-control.md index f313d993..4f4683f0 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v2.6/standard/motion-control.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/v2.6/standard/motion-control.md @@ -1,12 +1,12 @@ --- -title: "Kling Video V2.6 Standard API Reference" -description: "Kling Video V2.6 Standard API reference for SandBase. Use model kwaivgi/kling-video/v2.6/standard/motion-control with /v1/run; see request and response examples." +title: "Kling V2.6 Standard Motion Control API Reference" +description: "Kling V2.6 Standard Motion Control API reference for SandBase. Use model kwaivgi/kling-video/v2.6/standard/motion-control with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/v2.6/standard/motion-control" -apiReferenceJson: "{\"title\":\"Kling Video V2.6 Standard\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V2.6 Standard by KwaiVGI - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v2.6/standard/motion-control.\",\"default\":\"kwaivgi/kling-video/v2.6/standard/motion-control\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Reference image URL. The characters, backgrounds, and other elements in the generated video are based on this reference image. Characters should have clear body proportions, avoid occlusion, and occupy more than 5% of the image area.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Reference video URL. The character actions in the generated video will be consistent with this reference video. Should contain a realistic style character with entire body or upper body visible, including head, without obstruction. Duration limit depends on character_orientation: 10s max for 'image', 30s max for 'video'.\"},{\"name\":\"character_orientation\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the output character's orientation matches the reference image or video. 'video': orientation matches reference video - better for complex motions (max 30s). 'image': orientation matches reference image - better for following camera movements (max 10s).\",\"constraints\":\"Allowed values: image, video\"},{\"name\":\"keep_original_sound\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original sound from the reference video.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/standard/motion-control\\\",\\n \\\"prompt\\\": \\\"An african american woman dancing\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/39c314d0257c-VHtWK5BZMa-XoT6gahJKS_077.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/364bdb1d674a-3nvl30ic9g2otKRcOV5nO_output.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/standard/motion-control\\\",\\n \\\"prompt\\\": \\\"An african american woman dancing\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/39c314d0257c-VHtWK5BZMa-XoT6gahJKS_077.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/364bdb1d674a-3nvl30ic9g2otKRcOV5nO_output.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/standard/motion-control\\\",\\n \\\"prompt\\\": \\\"An african american woman dancing\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/39c314d0257c-VHtWK5BZMa-XoT6gahJKS_077.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/364bdb1d674a-3nvl30ic9g2otKRcOV5nO_output.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/standard/motion-control\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling V2.6 Standard Motion Control\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling V2.6 Standard Motion Control by Kuaishou transfers the motion, expressions, and camera movement of a reference video onto the character in an image, producing a 720p video up to 30 seconds.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v2.6/standard/motion-control.\",\"default\":\"kwaivgi/kling-video/v2.6/standard/motion-control\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Reference image URL. The characters, backgrounds, and other elements in the generated video are based on this reference image. Characters should have clear body proportions, avoid occlusion, and occupy more than 5% of the image area.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Reference video URL. The character actions in the generated video will be consistent with this reference video. Should contain a realistic style character with entire body or upper body visible, including head, without obstruction. Duration limit depends on character_orientation: 10s max for 'image', 30s max for 'video'.\"},{\"name\":\"character_orientation\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the output character's orientation matches the reference image or video. 'video': orientation matches reference video - better for complex motions (max 30s). 'image': orientation matches reference image - better for following camera movements (max 10s).\",\"constraints\":\"Allowed values: image, video\"},{\"name\":\"keep_original_sound\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original sound from the reference video.\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/standard/motion-control\\\",\\n \\\"prompt\\\": \\\"An african american woman dancing\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/39c314d0257c-VHtWK5BZMa-XoT6gahJKS_077.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/364bdb1d674a-3nvl30ic9g2otKRcOV5nO_output.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/standard/motion-control\\\",\\n \\\"prompt\\\": \\\"An african american woman dancing\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/39c314d0257c-VHtWK5BZMa-XoT6gahJKS_077.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/364bdb1d674a-3nvl30ic9g2otKRcOV5nO_output.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/standard/motion-control\\\",\\n \\\"prompt\\\": \\\"An african american woman dancing\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/39c314d0257c-VHtWK5BZMa-XoT6gahJKS_077.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/364bdb1d674a-3nvl30ic9g2otKRcOV5nO_output.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2.6/standard/motion-control\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video V2.6 Standard" + modelName: "Kling V2.6 Standard Motion Control" modelId: "kwaivgi/kling-video/v2.6/standard/motion-control" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v2/master/image-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/v2/master/image-to-video.md deleted file mode 100644 index 05d16b95..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v2/master/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Video V2 Master API Reference — KwaiVGI / Image To Video" -description: "Kling Video V2 Master API reference for SandBase. Use model kwaivgi/kling-video/v2/master/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/v2/master/image-to-video" -apiReferenceJson: "{\"title\":\"Kling Video V2 Master\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V2 Master by KwaiVGI - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v2/master/image-to-video.\",\"default\":\"kwaivgi/kling-video/v2/master/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to be used for the video\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2/master/image-to-video\\\",\\n \\\"prompt\\\": \\\"slow-motion sequence captures the catastrophic implosion of a skyscraper, dust and debris billowing outwards in a chaotic ballet of destruction, while a haunting, orchestral score underscores the sheer power and finality of the event.\\\",\\n \\\"image\\\": \\\"https://v3.fal.media/files/elephant/rkH-9qoXtXu3rAYTsx9V5_image.webp\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2/master/image-to-video\\\",\\n \\\"prompt\\\": \\\"slow-motion sequence captures the catastrophic implosion of a skyscraper, dust and debris billowing outwards in a chaotic ballet of destruction, while a haunting, orchestral score underscores the sheer power and finality of the event.\\\",\\n \\\"image\\\": \\\"https://v3.fal.media/files/elephant/rkH-9qoXtXu3rAYTsx9V5_image.webp\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2/master/image-to-video\\\",\\n \\\"prompt\\\": \\\"slow-motion sequence captures the catastrophic implosion of a skyscraper, dust and debris billowing outwards in a chaotic ballet of destruction, while a haunting, orchestral score underscores the sheer power and finality of the event.\\\",\\n \\\"image\\\": \\\"https://v3.fal.media/files/elephant/rkH-9qoXtXu3rAYTsx9V5_image.webp\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2/master/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Video V2 Master" - modelId: "kwaivgi/kling-video/v2/master/image-to-video" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/v2/master/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-04-14T21:50:19.724Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v2/master/text-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/v2/master/text-to-video.md deleted file mode 100644 index 6dbb76ba..00000000 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v2/master/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Kling Video V2 Master API Reference — KwaiVGI / Text To Video" -description: "Kling Video V2 Master API reference for SandBase. Use model kwaivgi/kling-video/v2/master/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/kwaivgi/kling-video/v2/master/text-to-video" -apiReferenceJson: "{\"title\":\"Kling Video V2 Master\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V2 Master is KwaiVGI's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v2/master/text-to-video.\",\"default\":\"kwaivgi/kling-video/v2/master/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2/master/text-to-video\\\",\\n \\\"prompt\\\": \\\"A slow-motion drone shot descending from above a maze of neon-lit Tokyo alleyways at night during heavy rainfall. The camera gradually focuses on a lone figure in a luminescent white raincoat standing perfectly still amid the bustling crowd, all carrying black umbrellas. As the camera continues its downward journey, we see the raindrops creating rippling patterns on puddles that reflect the kaleidoscope of colors from the surrounding signs, creating a mirror world beneath the city.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2/master/text-to-video\\\",\\n \\\"prompt\\\": \\\"A slow-motion drone shot descending from above a maze of neon-lit Tokyo alleyways at night during heavy rainfall. The camera gradually focuses on a lone figure in a luminescent white raincoat standing perfectly still amid the bustling crowd, all carrying black umbrellas. As the camera continues its downward journey, we see the raindrops creating rippling patterns on puddles that reflect the kaleidoscope of colors from the surrounding signs, creating a mirror world beneath the city.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2/master/text-to-video\\\",\\n \\\"prompt\\\": \\\"A slow-motion drone shot descending from above a maze of neon-lit Tokyo alleyways at night during heavy rainfall. The camera gradually focuses on a lone figure in a luminescent white raincoat standing perfectly still amid the bustling crowd, all carrying black umbrellas. As the camera continues its downward journey, we see the raindrops creating rippling patterns on puddles that reflect the kaleidoscope of colors from the surrounding signs, creating a mirror world beneath the city.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v2/master/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Kling Video V2 Master" - modelId: "kwaivgi/kling-video/v2/master/text-to-video" - vendor: "KwaiVGI" - vendorSlug: "kwaivgi" - modelSlug: "kling-video/v2/master/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-04-14T21:47:18.476Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v3.md b/model-api-reference/video-generation/kwaivgi/kling-video/v3.md index fe10157d..ea15c9bb 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v3.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/v3.md @@ -1,12 +1,12 @@ --- -title: "Kling Video V3 API Reference" -description: "Kling Video V3 API reference for SandBase. Use model kwaivgi/kling-video/v3 with /v1/run; see request and response examples." +title: "Kling V3 API Reference" +description: "Kling V3 API reference for SandBase. Use model kwaivgi/kling-video/v3 with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/v3" -apiReferenceJson: "{\"title\":\"Kling Video V3\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V3 is KwaiVGI's unified video generation model. Generate or transform videos from prompts, images, reference videos, and multi-shot text while choosing standard or pro mode per request.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v3.\",\"default\":\"kwaivgi/kling-video/v3\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation or transformation. When using reference media, refer to them as @Image1, @Image2, and @Video1.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Generation quality tier.\",\"default\":\"standard\",\"constraints\":\"Allowed values: standard, pro, 4k\"},{\"name\":\"image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional first-frame image URL for image-to-video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Optional reference video URL for video-to-video generation.\"},{\"name\":\"keep_original_sound\",\"type\":\"boolean\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"true\"},{\"name\":\"character_orientation\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Allowed values: image, video\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional end-frame image URL for image-to-video.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Optional reference image URLs.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Generated video duration in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"true\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"Request parameter supported by this model.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video, image-to-video, video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3\\\",\\n \\\"prompt\\\": \\\"Based on @Video1, make the character from @Image1 dance.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/f77b827ca02a-TNErq9yD7ZxGRATjfAqnh_EIgJSN67.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/f1ecbb471a16-hklvF__w53diz6Rve7f5__JuDW2xl0mr6sJ_Kjz3Vxe_vidoeook--1-_1.mp4\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3\\\",\\n \\\"prompt\\\": \\\"Based on @Video1, make the character from @Image1 dance.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/f77b827ca02a-TNErq9yD7ZxGRATjfAqnh_EIgJSN67.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/f1ecbb471a16-hklvF__w53diz6Rve7f5__JuDW2xl0mr6sJ_Kjz3Vxe_vidoeook--1-_1.mp4\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3\\\",\\n \\\"prompt\\\": \\\"Based on @Video1, make the character from @Image1 dance.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/f77b827ca02a-TNErq9yD7ZxGRATjfAqnh_EIgJSN67.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/f1ecbb471a16-hklvF__w53diz6Rve7f5__JuDW2xl0mr6sJ_Kjz3Vxe_vidoeook--1-_1.mp4\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling V3\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling V3 by Kuaishou is a single entry point for Kling 3.0 video: text, image, reference, and video-guided generation in Standard, Pro, or 4K quality, with optional native audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v3.\",\"default\":\"kwaivgi/kling-video/v3\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation or transformation. When using reference media, refer to them as @Image1, @Image2, and @Video1.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Generation quality tier.\",\"default\":\"standard\",\"constraints\":\"Allowed values: standard, pro, 4k\"},{\"name\":\"image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional first-frame image URL for image-to-video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Optional reference video URL for video-to-video generation.\"},{\"name\":\"keep_original_sound\",\"type\":\"boolean\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"true\"},{\"name\":\"character_orientation\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"constraints\":\"Allowed values: image, video\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional end-frame image URL for image-to-video.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Optional reference image URLs.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Generated video duration in seconds.\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"true\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"Request parameter supported by this model.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video, image-to-video, video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3\\\",\\n \\\"prompt\\\": \\\"Based on @Video1, make the character from @Image1 dance.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/f77b827ca02a-TNErq9yD7ZxGRATjfAqnh_EIgJSN67.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/f1ecbb471a16-hklvF__w53diz6Rve7f5__JuDW2xl0mr6sJ_Kjz3Vxe_vidoeook--1-_1.mp4\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3\\\",\\n \\\"prompt\\\": \\\"Based on @Video1, make the character from @Image1 dance.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/f77b827ca02a-TNErq9yD7ZxGRATjfAqnh_EIgJSN67.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/f1ecbb471a16-hklvF__w53diz6Rve7f5__JuDW2xl0mr6sJ_Kjz3Vxe_vidoeook--1-_1.mp4\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3\\\",\\n \\\"prompt\\\": \\\"Based on @Video1, make the character from @Image1 dance.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/f77b827ca02a-TNErq9yD7ZxGRATjfAqnh_EIgJSN67.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/f1ecbb471a16-hklvF__w53diz6Rve7f5__JuDW2xl0mr6sJ_Kjz3Vxe_vidoeook--1-_1.mp4\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video V3" + modelName: "Kling V3" modelId: "kwaivgi/kling-video/v3" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v3/4k/image-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/v3/4k/image-to-video.md index 5d18951b..97a2fddd 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v3/4k/image-to-video.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/v3/4k/image-to-video.md @@ -1,12 +1,12 @@ --- -title: "Kling Video V3 4k API Reference — KwaiVGI / 4k / Image To Video" -description: "Kling Video V3 4k API reference for SandBase. Use model kwaivgi/kling-video/v3/4k/image-to-video with /v1/run; see request and response examples." +title: "Kling V3 4K Image to Video API Reference" +description: "Kling V3 4K Image to Video API reference for SandBase. Use model kwaivgi/kling-video/v3/4k/image-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/v3/4k/image-to-video" -apiReferenceJson: "{\"title\":\"Kling Video V3 4k\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V3 4k by KwaiVGI - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v3/4k/image-to-video.\",\"default\":\"kwaivgi/kling-video/v3/4k/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Either prompt or multi_prompt must be provided, but not both.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to be used for the video\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to be used for the end of the video\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video. Supports Chinese and English voice output. Other languages are automatically translated to English. For English speech, use lowercase letters; for acronyms or proper nouns, use uppercase.\",\"default\":\"true\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation. If provided, divides the video into multiple shots.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/4k/image-to-video\\\",\\n \\\"prompt\\\": \\\"The craftsman slowly examines the bowl, turning it gently in his weathered hands. His eyes reflect years of wisdom. Subtle smile forms on his face. Dust particles drift in warm light. Breathing motion, blinking eyes.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/kling-v3/pro-i2v/start_image.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/4k/image-to-video\\\",\\n \\\"prompt\\\": \\\"The craftsman slowly examines the bowl, turning it gently in his weathered hands. His eyes reflect years of wisdom. Subtle smile forms on his face. Dust particles drift in warm light. Breathing motion, blinking eyes.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/Falserverless/example_inputs/kling-v3/pro-i2v/start_image.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/4k/image-to-video\\\",\\n \\\"prompt\\\": \\\"The craftsman slowly examines the bowl, turning it gently in his weathered hands. His eyes reflect years of wisdom. Subtle smile forms on his face. Dust particles drift in warm light. Breathing motion, blinking eyes.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/kling-v3/pro-i2v/start_image.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/4k/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling V3 4K Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling V3 4K Image to Video by Kuaishou animates a start image, optionally toward an end image, into a 3-15 second native 4K video with optional native audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v3/4k/image-to-video.\",\"default\":\"kwaivgi/kling-video/v3/4k/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Either prompt or multi_prompt must be provided, but not both.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to be used for the video\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to be used for the end of the video\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video. Supports Chinese and English voice output. Other languages are automatically translated to English. For English speech, use lowercase letters; for acronyms or proper nouns, use uppercase.\",\"default\":\"true\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation. If provided, divides the video into multiple shots.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/4k/image-to-video\\\",\\n \\\"prompt\\\": \\\"The craftsman slowly examines the bowl, turning it gently in his weathered hands. His eyes reflect years of wisdom. Subtle smile forms on his face. Dust particles drift in warm light. Breathing motion, blinking eyes.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-v3/pro-i2v/start_image.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/4k/image-to-video\\\",\\n \\\"prompt\\\": \\\"The craftsman slowly examines the bowl, turning it gently in his weathered hands. His eyes reflect years of wisdom. Subtle smile forms on his face. Dust particles drift in warm light. Breathing motion, blinking eyes.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-v3/pro-i2v/start_image.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/4k/image-to-video\\\",\\n \\\"prompt\\\": \\\"The craftsman slowly examines the bowl, turning it gently in his weathered hands. His eyes reflect years of wisdom. Subtle smile forms on his face. Dust particles drift in warm light. Breathing motion, blinking eyes.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-v3/pro-i2v/start_image.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/4k/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video V3 4k" + modelName: "Kling V3 4K Image to Video" modelId: "kwaivgi/kling-video/v3/4k/image-to-video" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v3/4k/text-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/v3/4k/text-to-video.md index dccede1a..bb2a9fc5 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v3/4k/text-to-video.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/v3/4k/text-to-video.md @@ -1,12 +1,12 @@ --- -title: "Kling Video V3 4k API Reference — KwaiVGI V3 / 4k / Text To Video" -description: "Kling Video V3 4k API reference for SandBase. Use model kwaivgi/kling-video/v3/4k/text-to-video with /v1/run; see request and response examples." +title: "Kling V3 4K Text to Video API Reference" +description: "Kling V3 4K Text to Video API reference for SandBase. Use model kwaivgi/kling-video/v3/4k/text-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/v3/4k/text-to-video" -apiReferenceJson: "{\"title\":\"Kling Video V3 4k\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V3 4k is KwaiVGI's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v3/4k/text-to-video.\",\"default\":\"kwaivgi/kling-video/v3/4k/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Either prompt or multi_prompt must be provided, but not both.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video. Supports Chinese and English voice output. Other languages are automatically translated to English. For English speech, use lowercase letters; for acronyms or proper nouns, use uppercase.\",\"default\":\"true\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation. If provided, overrides the single prompt and divides the video into multiple shots with specified prompts and durations.\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/4k/text-to-video\\\",\\n \\\"prompt\\\": \\\"Close-up of glowing fireflies dancing in a dark forest at twilight. Soft bioluminescent particles float through the air. Shallow depth of field, bokeh lights in background. Magical atmosphere, gentle movement.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/4k/text-to-video\\\",\\n \\\"prompt\\\": \\\"Close-up of glowing fireflies dancing in a dark forest at twilight. Soft bioluminescent particles float through the air. Shallow depth of field, bokeh lights in background. Magical atmosphere, gentle movement.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/4k/text-to-video\\\",\\n \\\"prompt\\\": \\\"Close-up of glowing fireflies dancing in a dark forest at twilight. Soft bioluminescent particles float through the air. Shallow depth of field, bokeh lights in background. Magical atmosphere, gentle movement.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/4k/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling V3 4K Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling V3 4K Text to Video by Kuaishou turns a text prompt into a 3-15 second native 4K video with optional native audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v3/4k/text-to-video.\",\"default\":\"kwaivgi/kling-video/v3/4k/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Either prompt or multi_prompt must be provided, but not both.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video. Supports Chinese and English voice output. Other languages are automatically translated to English. For English speech, use lowercase letters; for acronyms or proper nouns, use uppercase.\",\"default\":\"true\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation. If provided, overrides the single prompt and divides the video into multiple shots with specified prompts and durations.\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/4k/text-to-video\\\",\\n \\\"prompt\\\": \\\"Close-up of glowing fireflies dancing in a dark forest at twilight. Soft bioluminescent particles float through the air. Shallow depth of field, bokeh lights in background. Magical atmosphere, gentle movement.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/4k/text-to-video\\\",\\n \\\"prompt\\\": \\\"Close-up of glowing fireflies dancing in a dark forest at twilight. Soft bioluminescent particles float through the air. Shallow depth of field, bokeh lights in background. Magical atmosphere, gentle movement.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/4k/text-to-video\\\",\\n \\\"prompt\\\": \\\"Close-up of glowing fireflies dancing in a dark forest at twilight. Soft bioluminescent particles float through the air. Shallow depth of field, bokeh lights in background. Magical atmosphere, gentle movement.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/4k/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video V3 4k" + modelName: "Kling V3 4K Text to Video" modelId: "kwaivgi/kling-video/v3/4k/text-to-video" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v3/pro/image-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/v3/pro/image-to-video.md index 09d8a3c9..165cc67b 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v3/pro/image-to-video.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/v3/pro/image-to-video.md @@ -1,12 +1,12 @@ --- -title: "Kling Video V3 Pro API Reference — KwaiVGI / Pro / Image To Video" -description: "Kling Video V3 Pro API reference for SandBase. Use model kwaivgi/kling-video/v3/pro/image-to-video with /v1/run; see request and response examples." +title: "Kling V3 Pro Image to Video API Reference" +description: "Kling V3 Pro Image to Video API reference for SandBase. Use model kwaivgi/kling-video/v3/pro/image-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/v3/pro/image-to-video" -apiReferenceJson: "{\"title\":\"Kling Video V3 Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V3 Pro is KwaiVGI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v3/pro/image-to-video.\",\"default\":\"kwaivgi/kling-video/v3/pro/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Either prompt or multi_prompt must be provided, but not both.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to be used for the video\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to be used for the end of the video\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video. Supports Chinese and English voice output. Other languages are automatically translated to English. For English speech, use lowercase letters; for acronyms or proper nouns, use uppercase.\",\"default\":\"true\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation. If provided, divides the video into multiple shots.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"The craftsman slowly examines the bowl, turning it gently in his weathered hands. His eyes reflect years of wisdom. Subtle smile forms on his face. Dust particles drift in warm light. Breathing motion, blinking eyes.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/kling-v3/pro-i2v/start_image.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"The craftsman slowly examines the bowl, turning it gently in his weathered hands. His eyes reflect years of wisdom. Subtle smile forms on his face. Dust particles drift in warm light. Breathing motion, blinking eyes.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/Falserverless/example_inputs/kling-v3/pro-i2v/start_image.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"The craftsman slowly examines the bowl, turning it gently in his weathered hands. His eyes reflect years of wisdom. Subtle smile forms on his face. Dust particles drift in warm light. Breathing motion, blinking eyes.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/kling-v3/pro-i2v/start_image.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/pro/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling V3 Pro Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling V3 Pro Image to Video by Kuaishou animates a start image, optionally toward an end image, into a 3-15 second 1080p video with optional native audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v3/pro/image-to-video.\",\"default\":\"kwaivgi/kling-video/v3/pro/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Either prompt or multi_prompt must be provided, but not both.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to be used for the video\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to be used for the end of the video\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video. Supports Chinese and English voice output. Other languages are automatically translated to English. For English speech, use lowercase letters; for acronyms or proper nouns, use uppercase.\",\"default\":\"true\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation. If provided, divides the video into multiple shots.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"The craftsman slowly examines the bowl, turning it gently in his weathered hands. His eyes reflect years of wisdom. Subtle smile forms on his face. Dust particles drift in warm light. Breathing motion, blinking eyes.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-v3/pro-i2v/start_image.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"The craftsman slowly examines the bowl, turning it gently in his weathered hands. His eyes reflect years of wisdom. Subtle smile forms on his face. Dust particles drift in warm light. Breathing motion, blinking eyes.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-v3/pro-i2v/start_image.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"The craftsman slowly examines the bowl, turning it gently in his weathered hands. His eyes reflect years of wisdom. Subtle smile forms on his face. Dust particles drift in warm light. Breathing motion, blinking eyes.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-v3/pro-i2v/start_image.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/pro/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video V3 Pro" + modelName: "Kling V3 Pro Image to Video" modelId: "kwaivgi/kling-video/v3/pro/image-to-video" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v3/pro/motion-control.md b/model-api-reference/video-generation/kwaivgi/kling-video/v3/pro/motion-control.md index 84487d09..3dd0a182 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v3/pro/motion-control.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/v3/pro/motion-control.md @@ -1,12 +1,12 @@ --- -title: "Kling Video V3 Pro API Reference — KwaiVGI / Pro / Motion Control" -description: "Kling Video V3 Pro API reference for SandBase. Use model kwaivgi/kling-video/v3/pro/motion-control with /v1/run; see request and response examples." +title: "Kling V3 Pro Motion Control API Reference" +description: "Kling V3 Pro Motion Control API reference for SandBase. Use model kwaivgi/kling-video/v3/pro/motion-control with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/v3/pro/motion-control" -apiReferenceJson: "{\"title\":\"Kling Video V3 Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V3 Pro is KwaiVGI's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v3/pro/motion-control.\",\"default\":\"kwaivgi/kling-video/v3/pro/motion-control\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Reference image URL. The characters, backgrounds, and other elements in the generated video are based on this reference image. Characters should have clear body proportions, avoid occlusion, and occupy more than 5% of the image area.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Reference video URL. The character actions in the generated video will be consistent with this reference video. Should contain a realistic style character with entire body or upper body visible, including head, without obstruction. Duration limit depends on character_orientation: 10s max for 'image', 30s max for 'video'.\"},{\"name\":\"keep_original_sound\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original sound from the reference video.\",\"default\":\"true\"},{\"name\":\"character_orientation\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the output character's orientation matches the reference image or video. 'video': orientation matches reference video - better for complex motions (max 30s). 'image': orientation matches reference image - better for following camera movements (max 10s).\",\"constraints\":\"Allowed values: image, video\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/pro/motion-control\\\",\\n \\\"prompt\\\": \\\"A man dancing\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/f77b827ca02a-TNErq9yD7ZxGRATjfAqnh_EIgJSN67.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/f1ecbb471a16-hklvF__w53diz6Rve7f5__JuDW2xl0mr6sJ_Kjz3Vxe_vidoeook--1-_1.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/pro/motion-control\\\",\\n \\\"prompt\\\": \\\"A man dancing\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/f77b827ca02a-TNErq9yD7ZxGRATjfAqnh_EIgJSN67.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/f1ecbb471a16-hklvF__w53diz6Rve7f5__JuDW2xl0mr6sJ_Kjz3Vxe_vidoeook--1-_1.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/pro/motion-control\\\",\\n \\\"prompt\\\": \\\"A man dancing\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/f77b827ca02a-TNErq9yD7ZxGRATjfAqnh_EIgJSN67.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/f1ecbb471a16-hklvF__w53diz6Rve7f5__JuDW2xl0mr6sJ_Kjz3Vxe_vidoeook--1-_1.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/pro/motion-control\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling V3 Pro Motion Control\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling V3 Pro Motion Control by Kuaishou transfers the motion, expressions, and camera movement of a reference video onto the character in an image, producing a 1080p video up to 30 seconds.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v3/pro/motion-control.\",\"default\":\"kwaivgi/kling-video/v3/pro/motion-control\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Reference image URL. The characters, backgrounds, and other elements in the generated video are based on this reference image. Characters should have clear body proportions, avoid occlusion, and occupy more than 5% of the image area.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Reference video URL. The character actions in the generated video will be consistent with this reference video. Should contain a realistic style character with entire body or upper body visible, including head, without obstruction. Duration limit depends on character_orientation: 10s max for 'image', 30s max for 'video'.\"},{\"name\":\"keep_original_sound\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original sound from the reference video.\",\"default\":\"true\"},{\"name\":\"character_orientation\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the output character's orientation matches the reference image or video. 'video': orientation matches reference video - better for complex motions (max 30s). 'image': orientation matches reference image - better for following camera movements (max 10s).\",\"constraints\":\"Allowed values: image, video\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/pro/motion-control\\\",\\n \\\"prompt\\\": \\\"A man dancing\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/f77b827ca02a-TNErq9yD7ZxGRATjfAqnh_EIgJSN67.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/f1ecbb471a16-hklvF__w53diz6Rve7f5__JuDW2xl0mr6sJ_Kjz3Vxe_vidoeook--1-_1.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/pro/motion-control\\\",\\n \\\"prompt\\\": \\\"A man dancing\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/f77b827ca02a-TNErq9yD7ZxGRATjfAqnh_EIgJSN67.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/f1ecbb471a16-hklvF__w53diz6Rve7f5__JuDW2xl0mr6sJ_Kjz3Vxe_vidoeook--1-_1.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/pro/motion-control\\\",\\n \\\"prompt\\\": \\\"A man dancing\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/f77b827ca02a-TNErq9yD7ZxGRATjfAqnh_EIgJSN67.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/f1ecbb471a16-hklvF__w53diz6Rve7f5__JuDW2xl0mr6sJ_Kjz3Vxe_vidoeook--1-_1.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/pro/motion-control\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video V3 Pro" + modelName: "Kling V3 Pro Motion Control" modelId: "kwaivgi/kling-video/v3/pro/motion-control" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v3/pro/text-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/v3/pro/text-to-video.md index 308e9a2b..af9d291b 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v3/pro/text-to-video.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/v3/pro/text-to-video.md @@ -1,12 +1,12 @@ --- -title: "Kling Video V3 Pro API Reference — KwaiVGI / Pro / Text To Video" -description: "Kling Video V3 Pro API reference for SandBase. Use model kwaivgi/kling-video/v3/pro/text-to-video with /v1/run; see request and response examples." +title: "Kling V3 Pro Text to Video API Reference" +description: "Kling V3 Pro Text to Video API reference for SandBase. Use model kwaivgi/kling-video/v3/pro/text-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/v3/pro/text-to-video" -apiReferenceJson: "{\"title\":\"Kling Video V3 Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V3 Pro by KwaiVGI - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v3/pro/text-to-video.\",\"default\":\"kwaivgi/kling-video/v3/pro/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Either prompt or multi_prompt must be provided, but not both.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video. Supports Chinese and English voice output. Other languages are automatically translated to English. For English speech, use lowercase letters; for acronyms or proper nouns, use uppercase.\",\"default\":\"true\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation. If provided, overrides the single prompt and divides the video into multiple shots with specified prompts and durations.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"Close-up of glowing fireflies dancing in a dark forest at twilight. Soft bioluminescent particles float through the air. Shallow depth of field, bokeh lights in background. Magical atmosphere, gentle movement.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"Close-up of glowing fireflies dancing in a dark forest at twilight. Soft bioluminescent particles float through the air. Shallow depth of field, bokeh lights in background. Magical atmosphere, gentle movement.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"Close-up of glowing fireflies dancing in a dark forest at twilight. Soft bioluminescent particles float through the air. Shallow depth of field, bokeh lights in background. Magical atmosphere, gentle movement.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/pro/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling V3 Pro Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling V3 Pro Text to Video by Kuaishou turns a text prompt into a 3-15 second 1080p video with optional native audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v3/pro/text-to-video.\",\"default\":\"kwaivgi/kling-video/v3/pro/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Either prompt or multi_prompt must be provided, but not both.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video. Supports Chinese and English voice output. Other languages are automatically translated to English. For English speech, use lowercase letters; for acronyms or proper nouns, use uppercase.\",\"default\":\"true\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation. If provided, overrides the single prompt and divides the video into multiple shots with specified prompts and durations.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"Close-up of glowing fireflies dancing in a dark forest at twilight. Soft bioluminescent particles float through the air. Shallow depth of field, bokeh lights in background. Magical atmosphere, gentle movement.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"Close-up of glowing fireflies dancing in a dark forest at twilight. Soft bioluminescent particles float through the air. Shallow depth of field, bokeh lights in background. Magical atmosphere, gentle movement.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"Close-up of glowing fireflies dancing in a dark forest at twilight. Soft bioluminescent particles float through the air. Shallow depth of field, bokeh lights in background. Magical atmosphere, gentle movement.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/pro/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video V3 Pro" + modelName: "Kling V3 Pro Text to Video" modelId: "kwaivgi/kling-video/v3/pro/text-to-video" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v3/standard/image-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/v3/standard/image-to-video.md index 40eeead0..30e17135 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v3/standard/image-to-video.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/v3/standard/image-to-video.md @@ -1,12 +1,12 @@ --- -title: "Kling Video V3 Standard API Reference — KwaiVGI / Image To Video" -description: "Kling Video V3 Standard API reference for SandBase. Use model kwaivgi/kling-video/v3/standard/image-to-video with /v1/run; see request and response examples." +title: "Kling V3 Standard Image to Video API Reference" +description: "Kling V3 Standard Image to Video API reference for SandBase. Use model kwaivgi/kling-video/v3/standard/image-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/v3/standard/image-to-video" -apiReferenceJson: "{\"title\":\"Kling Video V3 Standard\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V3 Standard by KwaiVGI - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v3/standard/image-to-video.\",\"default\":\"kwaivgi/kling-video/v3/standard/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Either prompt or multi_prompt must be provided, but not both.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to be used for the video\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to be used for the end of the video\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video. Supports Chinese and English voice output. Other languages are automatically translated to English. For English speech, use lowercase letters; for acronyms or proper nouns, use uppercase.\",\"default\":\"true\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation. If provided, divides the video into multiple shots.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Camera slowly orbits around the vase. Soft light shifts across the ceramic surface. The pampas grass sways gently. Shadows move elegantly. Smooth continuous motion, premium feel.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/kling-v3/standard-i2v/start_image.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Camera slowly orbits around the vase. Soft light shifts across the ceramic surface. The pampas grass sways gently. Shadows move elegantly. Smooth continuous motion, premium feel.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/Falserverless/example_inputs/kling-v3/standard-i2v/start_image.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Camera slowly orbits around the vase. Soft light shifts across the ceramic surface. The pampas grass sways gently. Shadows move elegantly. Smooth continuous motion, premium feel.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/kling-v3/standard-i2v/start_image.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/standard/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling V3 Standard Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling V3 Standard Image to Video by Kuaishou animates a start image, optionally toward an end image, into a 3-15 second 720p video with optional native audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v3/standard/image-to-video.\",\"default\":\"kwaivgi/kling-video/v3/standard/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Either prompt or multi_prompt must be provided, but not both.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to be used for the video\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to be used for the end of the video\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video. Supports Chinese and English voice output. Other languages are automatically translated to English. For English speech, use lowercase letters; for acronyms or proper nouns, use uppercase.\",\"default\":\"true\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation. If provided, divides the video into multiple shots.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Camera slowly orbits around the vase. Soft light shifts across the ceramic surface. The pampas grass sways gently. Shadows move elegantly. Smooth continuous motion, premium feel.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-v3/standard-i2v/start_image.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Camera slowly orbits around the vase. Soft light shifts across the ceramic surface. The pampas grass sways gently. Shadows move elegantly. Smooth continuous motion, premium feel.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-v3/standard-i2v/start_image.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Camera slowly orbits around the vase. Soft light shifts across the ceramic surface. The pampas grass sways gently. Shadows move elegantly. Smooth continuous motion, premium feel.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/kwaivgi/mirrored/example_inputs/kling-v3/standard-i2v/start_image.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/standard/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video V3 Standard" + modelName: "Kling V3 Standard Image to Video" modelId: "kwaivgi/kling-video/v3/standard/image-to-video" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v3/standard/motion-control.md b/model-api-reference/video-generation/kwaivgi/kling-video/v3/standard/motion-control.md index e2c1a531..59c5a04b 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v3/standard/motion-control.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/v3/standard/motion-control.md @@ -1,12 +1,12 @@ --- -title: "Kling Video V3 Standard API Reference — KwaiVGI / Motion Control" -description: "Kling Video V3 Standard API reference for SandBase. Use model kwaivgi/kling-video/v3/standard/motion-control with /v1/run; see request and response examples." +title: "Kling V3 Standard Motion Control API Reference" +description: "Kling V3 Standard Motion Control API reference for SandBase. Use model kwaivgi/kling-video/v3/standard/motion-control with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/v3/standard/motion-control" -apiReferenceJson: "{\"title\":\"Kling Video V3 Standard\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V3 Standard by KwaiVGI - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v3/standard/motion-control.\",\"default\":\"kwaivgi/kling-video/v3/standard/motion-control\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Reference image URL. The characters, backgrounds, and other elements in the generated video are based on this reference image. Characters should have clear body proportions, avoid occlusion, and occupy more than 5% of the image area.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Reference video URL. The character actions in the generated video will be consistent with this reference video. Should contain a realistic style character with entire body or upper body visible, including head, without obstruction. Duration limit depends on character_orientation: 10s max for 'image', 30s max for 'video'.\"},{\"name\":\"keep_original_sound\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original sound from the reference video.\",\"default\":\"true\"},{\"name\":\"character_orientation\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the output character's orientation matches the reference image or video. 'video': orientation matches reference video - better for complex motions (max 30s). 'image': orientation matches reference image - better for following camera movements (max 10s).\",\"constraints\":\"Allowed values: image, video\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/standard/motion-control\\\",\\n \\\"prompt\\\": \\\"An man dancing\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/39c314d0257c-VHtWK5BZMa-XoT6gahJKS_077.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/364bdb1d674a-3nvl30ic9g2otKRcOV5nO_output.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/standard/motion-control\\\",\\n \\\"prompt\\\": \\\"An man dancing\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/39c314d0257c-VHtWK5BZMa-XoT6gahJKS_077.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/364bdb1d674a-3nvl30ic9g2otKRcOV5nO_output.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/standard/motion-control\\\",\\n \\\"prompt\\\": \\\"An man dancing\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/39c314d0257c-VHtWK5BZMa-XoT6gahJKS_077.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/364bdb1d674a-3nvl30ic9g2otKRcOV5nO_output.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/standard/motion-control\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling V3 Standard Motion Control\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling V3 Standard Motion Control by Kuaishou transfers the motion, expressions, and camera movement of a reference video onto the character in an image, producing a 720p video up to 30 seconds.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v3/standard/motion-control.\",\"default\":\"kwaivgi/kling-video/v3/standard/motion-control\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Reference image URL. The characters, backgrounds, and other elements in the generated video are based on this reference image. Characters should have clear body proportions, avoid occlusion, and occupy more than 5% of the image area.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Reference video URL. The character actions in the generated video will be consistent with this reference video. Should contain a realistic style character with entire body or upper body visible, including head, without obstruction. Duration limit depends on character_orientation: 10s max for 'image', 30s max for 'video'.\"},{\"name\":\"keep_original_sound\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original sound from the reference video.\",\"default\":\"true\"},{\"name\":\"character_orientation\",\"type\":\"string\",\"required\":false,\"description\":\"Controls whether the output character's orientation matches the reference image or video. 'video': orientation matches reference video - better for complex motions (max 30s). 'image': orientation matches reference image - better for following camera movements (max 10s).\",\"constraints\":\"Allowed values: image, video\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/standard/motion-control\\\",\\n \\\"prompt\\\": \\\"An man dancing\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/39c314d0257c-VHtWK5BZMa-XoT6gahJKS_077.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/364bdb1d674a-3nvl30ic9g2otKRcOV5nO_output.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/standard/motion-control\\\",\\n \\\"prompt\\\": \\\"An man dancing\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/39c314d0257c-VHtWK5BZMa-XoT6gahJKS_077.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/364bdb1d674a-3nvl30ic9g2otKRcOV5nO_output.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/standard/motion-control\\\",\\n \\\"prompt\\\": \\\"An man dancing\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/mirrored/39c314d0257c-VHtWK5BZMa-XoT6gahJKS_077.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirrored/364bdb1d674a-3nvl30ic9g2otKRcOV5nO_output.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/standard/motion-control\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video V3 Standard" + modelName: "Kling V3 Standard Motion Control" modelId: "kwaivgi/kling-video/v3/standard/motion-control" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v3/standard/text-to-video.md b/model-api-reference/video-generation/kwaivgi/kling-video/v3/standard/text-to-video.md index 8193c129..99fc0183 100644 --- a/model-api-reference/video-generation/kwaivgi/kling-video/v3/standard/text-to-video.md +++ b/model-api-reference/video-generation/kwaivgi/kling-video/v3/standard/text-to-video.md @@ -1,12 +1,12 @@ --- -title: "Kling Video V3 Standard API Reference — KwaiVGI / Text To Video" -description: "Kling Video V3 Standard API reference for SandBase. Use model kwaivgi/kling-video/v3/standard/text-to-video with /v1/run; see request and response examples." +title: "Kling V3 Standard Text to Video API Reference" +description: "Kling V3 Standard Text to Video API reference for SandBase. Use model kwaivgi/kling-video/v3/standard/text-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/kwaivgi/kling-video/v3/standard/text-to-video" -apiReferenceJson: "{\"title\":\"Kling Video V3 Standard\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling Video V3 Standard is KwaiVGI's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v3/standard/text-to-video.\",\"default\":\"kwaivgi/kling-video/v3/standard/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Either prompt or multi_prompt must be provided, but not both.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video. Supports Chinese and English voice output. Other languages are automatically translated to English. For English speech, use lowercase letters; for acronyms or proper nouns, use uppercase.\",\"default\":\"true\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation. If provided, overrides the single prompt and divides the video into multiple shots with specified prompts and durations.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"Cinematic drone shot flying through ancient stone ruins covered in moss and vines at golden hour. Camera starts low, rises through crumbling archways, revealing a vast misty valley beyond. Volumetric light rays pierce through gaps in the stone. Epic scale, photorealistic, 8K quality.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"Cinematic drone shot flying through ancient stone ruins covered in moss and vines at golden hour. Camera starts low, rises through crumbling archways, revealing a vast misty valley beyond. Volumetric light rays pierce through gaps in the stone. Epic scale, photorealistic, 8K quality.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"Cinematic drone shot flying through ancient stone ruins covered in moss and vines at golden hour. Camera starts low, rises through crumbling archways, revealing a vast misty valley beyond. Volumetric light rays pierce through gaps in the stone. Epic scale, photorealistic, 8K quality.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/standard/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Kling V3 Standard Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling V3 Standard Text to Video by Kuaishou turns a text prompt into a 3-15 second 720p video with optional native audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v3/standard/text-to-video.\",\"default\":\"kwaivgi/kling-video/v3/standard/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Either prompt or multi_prompt must be provided, but not both.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 1:1\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate native audio for the video. Supports Chinese and English voice output. Other languages are automatically translated to English. For English speech, use lowercase letters; for acronyms or proper nouns, use uppercase.\",\"default\":\"true\"},{\"name\":\"shot_type\",\"type\":\"string\",\"required\":false,\"description\":\"The type of multi-shot video generation. 'intelligent' lets the model automatically determine shot structure.\",\"default\":\"customize\",\"constraints\":\"Allowed values: customize, intelligent\"},{\"name\":\"multi_prompt\",\"type\":\"array\",\"required\":false,\"description\":\"List of prompts for multi-shot video generation. If provided, overrides the single prompt and divides the video into multiple shots with specified prompts and durations.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"Cinematic drone shot flying through ancient stone ruins covered in moss and vines at golden hour. Camera starts low, rises through crumbling archways, revealing a vast misty valley beyond. Volumetric light rays pierce through gaps in the stone. Epic scale, photorealistic, 8K quality.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"Cinematic drone shot flying through ancient stone ruins covered in moss and vines at golden hour. Camera starts low, rises through crumbling archways, revealing a vast misty valley beyond. Volumetric light rays pierce through gaps in the stone. Epic scale, photorealistic, 8K quality.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"Cinematic drone shot flying through ancient stone ruins covered in moss and vines at golden hour. Camera starts low, rises through crumbling archways, revealing a vast misty valley beyond. Volumetric light rays pierce through gaps in the stone. Epic scale, photorealistic, 8K quality.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v3/standard/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Kling Video V3 Standard" + modelName: "Kling V3 Standard Text to Video" modelId: "kwaivgi/kling-video/v3/standard/text-to-video" vendor: "KwaiVGI" vendorSlug: "kwaivgi" diff --git a/model-api-reference/video-generation/kwaivgi/kling-video/v4.md b/model-api-reference/video-generation/kwaivgi/kling-video/v4.md new file mode 100644 index 00000000..e8a1a9f3 --- /dev/null +++ b/model-api-reference/video-generation/kwaivgi/kling-video/v4.md @@ -0,0 +1,21 @@ +--- +title: "Kling V4 API Reference" +description: "Kling V4 API reference for SandBase. Use model kwaivgi/kling-video/v4 with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/kwaivgi/kling-video/v4" +apiReferenceJson: "{\"title\":\"Kling V4\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Kling V4 is Kuaishou's next-generation video model, announced on September 28, 2026, with single generations of up to 30 seconds guided by text, keyframe images, and references. The public API has not opened yet; specifications and pricing will be confirmed at launch.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to kwaivgi/kling-video/v4.\",\"default\":\"kwaivgi/kling-video/v4\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for the generated video.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional start image URL.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video, image-to-video, coming-soon\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"kwaivgi/kling-video/v4\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v4\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"kwaivgi/kling-video/v4\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"kwaivgi/kling-video/v4\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Kling V4" + modelId: "kwaivgi/kling-video/v4" + vendor: "KwaiVGI" + vendorSlug: "kwaivgi" + modelSlug: "kling-video/v4" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "" + capabilities: ["text-to-video","image-to-video","coming-soon"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/lightricks/ltx-0.9.7-13b-distilled.md b/model-api-reference/video-generation/lightricks/ltx-0.9.7-13b-distilled.md deleted file mode 100644 index d3b31202..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-0.9.7-13b-distilled.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX Video-0.9.7 13B Distilled — fsqy7y API" -description: "LTX Video-0.9.7 13B Distilled API reference for SandBase. Use model lightricks/ltx-0.9.7-13b-distilled with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-0.9.7-13b-distilled" -apiReferenceJson: "{\"title\":\"LTX Video-0.9.7 13B Distilled\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 0.9.7 13b Distilled is Lightricks's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-0.9.7-13b-distilled.\",\"default\":\"lightricks/ltx-0.9.7-13b-distilled\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt to guide generation\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for generation\"},{\"name\":\"second_pass_num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of inference steps during the second pass.\",\"default\":\"8\",\"constraints\":\"Range: 2 to 12\"},{\"name\":\"enable_detail_pass\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use a detail pass. If True, the model will perform a second pass to refine the video and enhance details. This incurs a 2.0x cost multiplier on the base price.\",\"default\":\"false\"},{\"name\":\"frame_rate\",\"type\":\"integer\",\"required\":false,\"description\":\"The frame rate of the video.\",\"default\":\"24\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"first_pass_num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of inference steps during the first pass.\",\"default\":\"8\",\"constraints\":\"Range: 2 to 12\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames in the video.\",\"default\":\"121\",\"constraints\":\"Range: 9 to 1441\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA weights to use for generation\",\"default\":\"\"},{\"name\":\"temporal_adain_factor\",\"type\":\"number\",\"required\":false,\"description\":\"The factor for adaptive instance normalization (AdaIN) applied to generated video chunks after the first. This can help deal with a gradual increase in saturation/contrast in the generated video by normalizing the color distribution across the video. A high value will ensure the color distribution is more consistent across the video, while a low value will allow for more variation in color distribution.\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"second_pass_skip_initial_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to skip in the initial steps of the second pass. By skipping some steps at the beginning, the second pass can focus on smaller details instead of larger changes.\",\"default\":\"5\",\"constraints\":\"Range: 1 to 11\"},{\"name\":\"tone_map_compression_ratio\",\"type\":\"number\",\"required\":false,\"description\":\"The compression ratio for tone mapping. This is used to compress the dynamic range of the video to improve visual quality. A value of 0.0 means no compression, while a value of 1.0 means maximum compression.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"expand_prompt\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to expand the prompt using a language model.\",\"default\":\"false\"},{\"name\":\"reverse_video\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to reverse the video.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-0.9.7-13b-distilled\\\",\\n \\\"prompt\\\": \\\"A cinematic fast-tracking shot follows a vintage, teal camper van as it descends a winding mountain trail. The van, slightly weathered but well-maintained, is the central focus, its retro design emphasized by the motion blur. Medium shot reveals the dusty, ochre trail, edged with vibrant green pine trees. Close-up on the van's tires shows the gravel spraying, highlighting the speed and rugged terrain. Sunlight filters through the trees, casting dappled shadows on the van and the trail. The background is a hazy, majestic mountain range bathed in warm, golden light. The overall mood is adventurous and exhilarating. High resolution 4k movie scene.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-0.9.7-13b-distilled\\\",\\n \\\"prompt\\\": \\\"A cinematic fast-tracking shot follows a vintage, teal camper van as it descends a winding mountain trail. The van, slightly weathered but well-maintained, is the central focus, its retro design emphasized by the motion blur. Medium shot reveals the dusty, ochre trail, edged with vibrant green pine trees. Close-up on the van's tires shows the gravel spraying, highlighting the speed and rugged terrain. Sunlight filters through the trees, casting dappled shadows on the van and the trail. The background is a hazy, majestic mountain range bathed in warm, golden light. The overall mood is adventurous and exhilarating. High resolution 4k movie scene.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-0.9.7-13b-distilled\\\",\\n \\\"prompt\\\": \\\"A cinematic fast-tracking shot follows a vintage, teal camper van as it descends a winding mountain trail. The van, slightly weathered but well-maintained, is the central focus, its retro design emphasized by the motion blur. Medium shot reveals the dusty, ochre trail, edged with vibrant green pine trees. Close-up on the van's tires shows the gravel spraying, highlighting the speed and rugged terrain. Sunlight filters through the trees, casting dappled shadows on the van and the trail. The background is a hazy, majestic mountain range bathed in warm, golden light. The overall mood is adventurous and exhilarating. High resolution 4k movie scene.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-0.9.7-13b-distilled\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX Video-0.9.7 13B Distilled" - modelId: "lightricks/ltx-0.9.7-13b-distilled" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-0.9.7-13b-distilled" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-17T01:49:06.775Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-0.9.8-13b-distilled/image-to-video.md b/model-api-reference/video-generation/lightricks/ltx-0.9.8-13b-distilled/image-to-video.md deleted file mode 100644 index a285ec58..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-0.9.8-13b-distilled/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-Video 13B 0.9.8 Distilled API Reference — Lightricks To Video" -description: "LTX-Video 13B 0.9.8 Distilled API reference for SandBase. Use model lightricks/ltx-0.9.8-13b-distilled/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-0.9.8-13b-distilled/image-to-video" -apiReferenceJson: "{\"title\":\"LTX-Video 13B 0.9.8 Distilled\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 0.9.8 13b Distilled by Lightricks - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-0.9.8-13b-distilled/image-to-video.\",\"default\":\"lightricks/ltx-0.9.8-13b-distilled/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt to guide generation\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Image URL for Image-to-Video task\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"expand_prompt\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to expand the prompt using a language model.\",\"default\":\"false\"},{\"name\":\"temporal_adain_factor\",\"type\":\"number\",\"required\":false,\"description\":\"The factor for adaptive instance normalization (AdaIN) applied to generated video chunks after the first. This can help deal with a gradual increase in saturation/contrast in the generated video by normalizing the color distribution across the video. A high value will ensure the color distribution is more consistent across the video, while a low value will allow for more variation in color distribution.\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"constant_rate_factor\",\"type\":\"integer\",\"required\":false,\"description\":\"The constant rate factor (CRF) to compress input media with. Compressed input media more closely matches the model's training data, which can improve motion quality.\",\"default\":\"29\",\"constraints\":\"Range: 0 to 51\"},{\"name\":\"second_pass_num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of inference steps during the second pass.\",\"default\":\"8\",\"constraints\":\"Range: 2 to 12\"},{\"name\":\"tone_map_compression_ratio\",\"type\":\"number\",\"required\":false,\"description\":\"The compression ratio for tone mapping. This is used to compress the dynamic range of the video to improve visual quality. A value of 0.0 means no compression, while a value of 1.0 means maximum compression.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"second_pass_skip_initial_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to skip in the initial steps of the second pass. By skipping some steps at the beginning, the second pass can focus on smaller details instead of larger changes.\",\"default\":\"5\",\"constraints\":\"Range: 1 to 11\"},{\"name\":\"first_pass_num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of inference steps during the first pass.\",\"default\":\"8\",\"constraints\":\"Range: 2 to 12\"},{\"name\":\"reverse_video\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to reverse the video.\",\"default\":\"false\"},{\"name\":\"enable_detail_pass\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use a detail pass. If True, the model will perform a second pass to refine the video and enhance details. This incurs a 2.0x cost multiplier on the base price.\",\"default\":\"false\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames in the video.\",\"default\":\"121\",\"constraints\":\"Range: 9 to 1441\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA weights to use for generation\",\"default\":\"\"},{\"name\":\"frame_rate\",\"type\":\"integer\",\"required\":false,\"description\":\"The frame rate of the video.\",\"default\":\"24\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for generation\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-0.9.8-13b-distilled/image-to-video\\\",\\n \\\"prompt\\\": \\\"The astronaut gets up and walks away\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-0.9.8-13b-distilled/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-0.9.8-13b-distilled/image-to-video\\\",\\n \\\"prompt\\\": \\\"The astronaut gets up and walks away\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-0.9.8-13b-distilled/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-0.9.8-13b-distilled/image-to-video\\\",\\n \\\"prompt\\\": \\\"The astronaut gets up and walks away\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-0.9.8-13b-distilled/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-0.9.8-13b-distilled/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-Video 13B 0.9.8 Distilled" - modelId: "lightricks/ltx-0.9.8-13b-distilled/image-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-0.9.8-13b-distilled/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-07-17T03:02:23.813Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2-19b/audio-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2-19b/audio-to-video.md deleted file mode 100644 index 1b297f6d..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2-19b/audio-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2 19B API Reference — Lightricks Ltx 2 19b / Audio To Video" -description: "LTX-2 19B API reference for SandBase. Use model lightricks/ltx-2-19b/audio-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2-19b/audio-to-video" -apiReferenceJson: "{\"title\":\"LTX-2 19B\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2 19b Audio To Video by Lightricks - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2-19b/audio-to-video.\",\"default\":\"lightricks/ltx-2-19b/audio-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Optional URL of an image to use as the first frame of the video.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the video.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the audio to generate the video from.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The guidance scale to use.\",\"default\":\"3\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to use.\",\"default\":\"40\",\"constraints\":\"Range: 8 to 50\"},{\"name\":\"video_size\",\"type\":\"string\",\"required\":false,\"description\":\"The size of the generated video. Use 'auto' to match the input image dimensions if provided.\",\"default\":\"landscape_4_3\",\"constraints\":\"Allowed values: auto, square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9\"},{\"name\":\"match_audio_length\",\"type\":\"boolean\",\"required\":false,\"description\":\"When enabled, the number of frames will be calculated based on the audio duration and FPS. When disabled, use the specified num_frames.\",\"default\":\"true\"},{\"name\":\"video_output_type\",\"type\":\"string\",\"required\":false,\"description\":\"The output type of the generated video.\",\"default\":\"X264 (.mp4)\",\"constraints\":\"Allowed values: X264 (.mp4), VP9 (.webm), PRORES4444 (.mov), GIF (.gif)\"},{\"name\":\"audio_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Audio conditioning strength. Values below 1.0 will allow the model to change the audio, while a value of exactly 1.0 will use the input audio without modification.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"camera_lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"camera_lora\",\"type\":\"string\",\"required\":false,\"description\":\"The camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"none\",\"constraints\":\"Allowed values: dolly_in, dolly_out, dolly_left, dolly_right, jib_up, jib_down, static, none\"},{\"name\":\"video_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the generated video.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"},{\"name\":\"end_image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the end image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"preprocess_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to preprocess the audio before using it as conditioning.\",\"default\":\"true\"},{\"name\":\"fps\",\"type\":\"number\",\"required\":false,\"description\":\"The frames per second of the generated video.\",\"default\":\"25\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate.\",\"default\":\"121\",\"constraints\":\"Range: 9 to 481\"},{\"name\":\"video_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality of the generated video.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"},{\"name\":\"use_multiscale\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use multi-scale generation. If True, the model will generate the video at a smaller scale first, then use the smaller video to guide the generation of a video at or above your requested size. This results in better coherence and details.\",\"default\":\"true\"},{\"name\":\"image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/audio-to-video\\\",\\n \\\"prompt\\\": \\\"A woman speaks to the camera\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/audio-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/audio-to-video/input_audio_1.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/audio-to-video\\\",\\n \\\"prompt\\\": \\\"A woman speaks to the camera\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/audio-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/audio-to-video/input_audio_1.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/audio-to-video\\\",\\n \\\"prompt\\\": \\\"A woman speaks to the camera\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/audio-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/audio-to-video/input_audio_1.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/audio-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2 19B" - modelId: "lightricks/ltx-2-19b/audio-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2-19b/audio-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-27T15:45:06.06Z" - capabilities: ["audio-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2-19b/audio-to-video/lora.md b/model-api-reference/video-generation/lightricks/ltx-2-19b/audio-to-video/lora.md deleted file mode 100644 index 0c9a5c16..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2-19b/audio-to-video/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2 19B API Reference — Lightricks 19b / Audio To Video / Lora" -description: "LTX-2 19B API reference for SandBase. Use model lightricks/ltx-2-19b/audio-to-video/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2-19b/audio-to-video/lora" -apiReferenceJson: "{\"title\":\"LTX-2 19B\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2 19b Audio To Video Lora by Lightricks - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2-19b/audio-to-video/lora.\",\"default\":\"lightricks/ltx-2-19b/audio-to-video/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Optional URL of an image to use as the first frame of the video.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the video.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the audio to generate the video from.\"},{\"name\":\"image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"preprocess_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to preprocess the audio before using it as conditioning.\",\"default\":\"true\"},{\"name\":\"end_image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the end image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"audio_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Audio conditioning strength. Values below 1.0 will allow the model to change the audio, while a value of exactly 1.0 will use the input audio without modification.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"40\",\"constraints\":\"Range: 8 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"3\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/audio-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A woman speaks to the camera\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/audio-to-video/lora/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/audio-to-video/lora/input_audio_1.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/audio-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A woman speaks to the camera\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/audio-to-video/lora/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/audio-to-video/lora/input_audio_1.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/audio-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A woman speaks to the camera\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/audio-to-video/lora/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/audio-to-video/lora/input_audio_1.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/audio-to-video/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2 19B" - modelId: "lightricks/ltx-2-19b/audio-to-video/lora" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2-19b/audio-to-video/lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-27T15:48:53.065Z" - capabilities: ["audio-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/audio-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/audio-to-video.md deleted file mode 100644 index c671f6ac..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/audio-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2 19B Distilled API Reference — Lightricks / Audio To Video" -description: "LTX-2 19B Distilled API reference for SandBase. Use model lightricks/ltx-2-19b/distilled/audio-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2-19b/distilled/audio-to-video" -apiReferenceJson: "{\"title\":\"LTX-2 19B Distilled\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2 19b Distilled Audio To Video by Lightricks - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2-19b/distilled/audio-to-video.\",\"default\":\"lightricks/ltx-2-19b/distilled/audio-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Optional URL of an image to use as the first frame of the video.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the video.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the audio to generate the video from.\"},{\"name\":\"video_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality of the generated video.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"},{\"name\":\"video_output_type\",\"type\":\"string\",\"required\":false,\"description\":\"The output type of the generated video.\",\"default\":\"X264 (.mp4)\",\"constraints\":\"Allowed values: X264 (.mp4), VP9 (.webm), PRORES4444 (.mov), GIF (.gif)\"},{\"name\":\"audio_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Audio conditioning strength. Values below 1.0 will allow the model to change the audio, while a value of exactly 1.0 will use the input audio without modification.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"fps\",\"type\":\"number\",\"required\":false,\"description\":\"The frames per second of the generated video.\",\"default\":\"25\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"video_size\",\"type\":\"string\",\"required\":false,\"description\":\"The size of the generated video. Use 'auto' to match the input image dimensions if provided.\",\"default\":\"landscape_4_3\",\"constraints\":\"Allowed values: auto, square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9\"},{\"name\":\"video_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the generated video.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"},{\"name\":\"use_multiscale\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use multi-scale generation. If True, the model will generate the video at a smaller scale first, then use the smaller video to guide the generation of a video at or above your requested size. This results in better coherence and details.\",\"default\":\"true\"},{\"name\":\"camera_lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"end_image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the end image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"camera_lora\",\"type\":\"string\",\"required\":false,\"description\":\"The camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"none\",\"constraints\":\"Allowed values: dolly_in, dolly_out, dolly_left, dolly_right, jib_up, jib_down, static, none\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate.\",\"default\":\"121\",\"constraints\":\"Range: 9 to 481\"},{\"name\":\"match_audio_length\",\"type\":\"boolean\",\"required\":false,\"description\":\"When enabled, the number of frames will be calculated based on the audio duration and FPS. When disabled, use the specified num_frames.\",\"default\":\"true\"},{\"name\":\"image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"preprocess_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to preprocess the audio before using it as conditioning.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/audio-to-video\\\",\\n \\\"prompt\\\": \\\"A woman speaks to the camera\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/distilled/audio-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/distilled/audio-to-video/input_audio_1.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/audio-to-video\\\",\\n \\\"prompt\\\": \\\"A woman speaks to the camera\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/distilled/audio-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/distilled/audio-to-video/input_audio_1.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/audio-to-video\\\",\\n \\\"prompt\\\": \\\"A woman speaks to the camera\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/distilled/audio-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/distilled/audio-to-video/input_audio_1.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/audio-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2 19B Distilled" - modelId: "lightricks/ltx-2-19b/distilled/audio-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2-19b/distilled/audio-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-27T15:46:47.75Z" - capabilities: ["audio-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/extend-video.md b/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/extend-video.md deleted file mode 100644 index 53d0b77b..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/extend-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2 19B Distilled API Reference — Lightricks / Extend Video" -description: "LTX-2 19B Distilled API reference for SandBase. Use model lightricks/ltx-2-19b/distilled/extend-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2-19b/distilled/extend-video" -apiReferenceJson: "{\"title\":\"LTX-2 19B Distilled\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2 19b Distilled Extend Video by Lightricks - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2-19b/distilled/extend-video.\",\"default\":\"lightricks/ltx-2-19b/distilled/extend-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the extended video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to extend.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"audio_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Audio conditioning strength. Lower values represent more freedom given to the model to change the audio content.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"video_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Video conditioning strength. Lower values represent more freedom given to the model to change the video content.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"end_image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the end image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"extend_direction\",\"type\":\"string\",\"required\":false,\"description\":\"Direction to extend the video. 'forward' extends from the end of the video, 'backward' extends from the beginning.\",\"default\":\"forward\",\"constraints\":\"Allowed values: forward, backward\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/extend-video\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/distilled/extend-video/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/extend-video\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/distilled/extend-video/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/extend-video\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/distilled/extend-video/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/extend-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2 19B Distilled" - modelId: "lightricks/ltx-2-19b/distilled/extend-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2-19b/distilled/extend-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-05T21:09:00.536Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/extend-video/lora.md b/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/extend-video/lora.md deleted file mode 100644 index 7c65cc34..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/extend-video/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2 19B Distilled API Reference — Lightricks Video / Lora" -description: "LTX-2 19B Distilled API reference for SandBase. Use model lightricks/ltx-2-19b/distilled/extend-video/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2-19b/distilled/extend-video/lora" -apiReferenceJson: "{\"title\":\"LTX-2 19B Distilled\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2 19b Distilled Extend Video is Lightricks's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2-19b/distilled/extend-video/lora.\",\"default\":\"lightricks/ltx-2-19b/distilled/extend-video/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the extended video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to extend.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"extend_direction\",\"type\":\"string\",\"required\":false,\"description\":\"Direction to extend the video. 'forward' extends from the end of the video, 'backward' extends from the beginning.\",\"default\":\"forward\",\"constraints\":\"Allowed values: forward, backward\"},{\"name\":\"end_image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the end image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"video_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Video conditioning strength. Lower values represent more freedom given to the model to change the video content.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"audio_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Audio conditioning strength. Lower values represent more freedom given to the model to change the audio content.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/extend-video/lora\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/distilled/extend-video/lora/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/extend-video/lora\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/distilled/extend-video/lora/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/extend-video/lora\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/distilled/extend-video/lora/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/extend-video/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2 19B Distilled" - modelId: "lightricks/ltx-2-19b/distilled/extend-video/lora" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2-19b/distilled/extend-video/lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-05T21:12:22.324Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/image-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/image-to-video.md deleted file mode 100644 index 6b39f3f3..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2 19B Distilled API Reference — Lightricks / Image To Video" -description: "LTX-2 19B Distilled API reference for SandBase. Use model lightricks/ltx-2-19b/distilled/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2-19b/distilled/image-to-video" -apiReferenceJson: "{\"title\":\"LTX-2 19B Distilled\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2 19b Distilled by Lightricks - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2-19b/distilled/image-to-video.\",\"default\":\"lightricks/ltx-2-19b/distilled/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt used for the generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to generate the video from.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the video.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"video_size\",\"type\":\"string\",\"required\":false,\"description\":\"The size of the generated video.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9\"},{\"name\":\"interpolation_direction\",\"type\":\"string\",\"required\":false,\"description\":\"The direction to interpolate the image sequence in. 'Forward' goes from the start image to the end image, 'Backward' goes from the end image to the start image.\",\"default\":\"forward\",\"constraints\":\"Allowed values: forward, backward\"},{\"name\":\"camera_lora\",\"type\":\"string\",\"required\":false,\"description\":\"The camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"none\",\"constraints\":\"Allowed values: dolly_in, dolly_out, dolly_left, dolly_right, jib_up, jib_down, static, none\"},{\"name\":\"video_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the generated video.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"},{\"name\":\"camera_lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"end_image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the end image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"fps\",\"type\":\"number\",\"required\":false,\"description\":\"The frames per second of the generated video.\",\"default\":\"25\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate.\",\"default\":\"121\",\"constraints\":\"Range: 9 to 481\"},{\"name\":\"video_output_type\",\"type\":\"string\",\"required\":false,\"description\":\"The output type of the generated video.\",\"default\":\"X264 (.mp4)\",\"constraints\":\"Allowed values: X264 (.mp4), VP9 (.webm), PRORES4444 (.mov), GIF (.gif)\"},{\"name\":\"video_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality of the generated video.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"},{\"name\":\"use_multiscale\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use multi-scale generation. If True, the model will generate the video at a smaller scale first, then use the smaller video to guide the generation of a video at or above your requested size. This results in better coherence and details.\",\"default\":\"true\"},{\"name\":\"image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/distilled/image-to-video/input_image_0.jpg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/distilled/image-to-video/input_image_0.jpg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/distilled/image-to-video/input_image_0.jpg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2 19B Distilled" - modelId: "lightricks/ltx-2-19b/distilled/image-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2-19b/distilled/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-05T21:00:40.069Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/image-to-video/lora.md b/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/image-to-video/lora.md deleted file mode 100644 index 60f0821e..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/image-to-video/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2 19B Distilled — v2ex1 API" -description: "LTX-2 19B Distilled API reference for SandBase. Use model lightricks/ltx-2-19b/distilled/image-to-video/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2-19b/distilled/image-to-video/lora" -apiReferenceJson: "{\"title\":\"LTX-2 19B Distilled\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2 19b Distilled Lora is Lightricks's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2-19b/distilled/image-to-video/lora.\",\"default\":\"lightricks/ltx-2-19b/distilled/image-to-video/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt used for the generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to generate the video from.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the video.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"end_image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the end image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"video_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality of the generated video.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"},{\"name\":\"video_size\",\"type\":\"string\",\"required\":false,\"description\":\"The size of the generated video.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate.\",\"default\":\"121\",\"constraints\":\"Range: 9 to 481\"},{\"name\":\"camera_lora\",\"type\":\"string\",\"required\":false,\"description\":\"The camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"none\",\"constraints\":\"Allowed values: dolly_in, dolly_out, dolly_left, dolly_right, jib_up, jib_down, static, none\"},{\"name\":\"use_multiscale\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use multi-scale generation. If True, the model will generate the video at a smaller scale first, then use the smaller video to guide the generation of a video at or above your requested size. This results in better coherence and details.\",\"default\":\"true\"},{\"name\":\"interpolation_direction\",\"type\":\"string\",\"required\":false,\"description\":\"The direction to interpolate the image sequence in. 'Forward' goes from the start image to the end image, 'Backward' goes from the end image to the start image.\",\"default\":\"forward\",\"constraints\":\"Allowed values: forward, backward\"},{\"name\":\"video_output_type\",\"type\":\"string\",\"required\":false,\"description\":\"The output type of the generated video.\",\"default\":\"X264 (.mp4)\",\"constraints\":\"Allowed values: X264 (.mp4), VP9 (.webm), PRORES4444 (.mov), GIF (.gif)\"},{\"name\":\"fps\",\"type\":\"number\",\"required\":false,\"description\":\"The frames per second of the generated video.\",\"default\":\"25\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the generation.\"},{\"name\":\"video_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the generated video.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"},{\"name\":\"image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"camera_lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/image-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/ltxv-2-i2v-input.jpg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/image-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/Falserverless/example_inputs/ltxv-2-i2v-input.jpg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/image-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/ltxv-2-i2v-input.jpg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/image-to-video/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2 19B Distilled" - modelId: "lightricks/ltx-2-19b/distilled/image-to-video/lora" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2-19b/distilled/image-to-video/lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-05T21:02:29.284Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/text-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/text-to-video.md deleted file mode 100644 index 162da76b..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2 19B Distilled API Reference — Lightricks / Text To Video" -description: "LTX-2 19B Distilled API reference for SandBase. Use model lightricks/ltx-2-19b/distilled/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2-19b/distilled/text-to-video" -apiReferenceJson: "{\"title\":\"LTX-2 19B Distilled\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2 19b Distilled is Lightricks's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2-19b/distilled/text-to-video.\",\"default\":\"lightricks/ltx-2-19b/distilled/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"video_output_type\",\"type\":\"string\",\"required\":false,\"description\":\"The output type of the generated video.\",\"default\":\"X264 (.mp4)\",\"constraints\":\"Allowed values: X264 (.mp4), VP9 (.webm), PRORES4444 (.mov), GIF (.gif)\"},{\"name\":\"video_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the generated video.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"},{\"name\":\"video_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality of the generated video.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"},{\"name\":\"use_multiscale\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use multi-scale generation. If True, the model will generate the video at a smaller scale first, then use the smaller video to guide the generation of a video at or above your requested size. This results in better coherence and details.\",\"default\":\"true\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate.\",\"default\":\"121\",\"constraints\":\"Range: 9 to 481\"},{\"name\":\"camera_lora\",\"type\":\"string\",\"required\":false,\"description\":\"The camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"none\",\"constraints\":\"Allowed values: dolly_in, dolly_out, dolly_left, dolly_right, jib_up, jib_down, static, none\"},{\"name\":\"fps\",\"type\":\"number\",\"required\":false,\"description\":\"The frames per second of the generated video.\",\"default\":\"25\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"video_size\",\"type\":\"string\",\"required\":false,\"description\":\"The size of the generated video.\",\"default\":\"landscape_4_3\",\"constraints\":\"Allowed values: square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9\"},{\"name\":\"camera_lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2 19B Distilled" - modelId: "lightricks/ltx-2-19b/distilled/text-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2-19b/distilled/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-05T20:55:11.318Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/text-to-video/lora.md b/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/text-to-video/lora.md deleted file mode 100644 index 39d3d5b9..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/text-to-video/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2 19B Distilled — 25v3er API" -description: "LTX-2 19B Distilled API reference for SandBase. Use model lightricks/ltx-2-19b/distilled/text-to-video/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2-19b/distilled/text-to-video/lora" -apiReferenceJson: "{\"title\":\"LTX-2 19B Distilled\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2 19b Distilled Lora by Lightricks - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2-19b/distilled/text-to-video/lora.\",\"default\":\"lightricks/ltx-2-19b/distilled/text-to-video/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/text-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/text-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/text-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/text-to-video/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2 19B Distilled" - modelId: "lightricks/ltx-2-19b/distilled/text-to-video/lora" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2-19b/distilled/text-to-video/lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-05T20:56:37.306Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/video-to-video/lora.md b/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/video-to-video/lora.md deleted file mode 100644 index b75aeea0..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2-19b/distilled/video-to-video/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2 19B Distilled API Reference — Lightricks To Video / Lora" -description: "LTX-2 19B Distilled API reference for SandBase. Use model lightricks/ltx-2-19b/distilled/video-to-video/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2-19b/distilled/video-to-video/lora" -apiReferenceJson: "{\"title\":\"LTX-2 19B Distilled\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2 19b Distilled Video To Video is Lightricks's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2-19b/distilled/video-to-video/lora.\",\"default\":\"lightricks/ltx-2-19b/distilled/video-to-video/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"An optional URL of an image to use as the first frame of the video.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to generate the video from.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"An optional URL of an audio to use as the audio for the video. If not provided, any audio present in the input video will be used.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"video_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Video conditioning strength. Lower values represent more freedom given to the model to change the video content.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"preprocessor\",\"type\":\"string\",\"required\":false,\"description\":\"The preprocessor to use for the video. When a preprocessor is used and `ic_lora_type` is set to `match_preprocessor`, the IC-LoRA will be loaded based on the preprocessor type.\",\"default\":\"none\",\"constraints\":\"Allowed values: depth, canny, pose, none\"},{\"name\":\"audio_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Audio conditioning strength. Lower values represent more freedom given to the model to change the audio content.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"ic_lora\",\"type\":\"string\",\"required\":false,\"description\":\"The type of IC-LoRA to load. In-Context LoRA weights are used to condition the video based on edge, depth, or pose videos. Only change this from `match_preprocessor` if your videos are already preprocessed (or you are using the detailer.)\",\"default\":\"match_preprocessor\",\"constraints\":\"Allowed values: match_preprocessor, canny, depth, pose, detailer, none\"},{\"name\":\"ic_lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the IC-LoRA to use. This allows you to control the strength of the IC-LoRA.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"end_image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the end image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/video-to-video/lora\\\",\\n \\\"prompt\\\": \\\"black-and-white video, a cowboy walks through a dusty town, film grain\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/distilled/video-to-video/lora/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/video-to-video/lora\\\",\\n \\\"prompt\\\": \\\"black-and-white video, a cowboy walks through a dusty town, film grain\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/distilled/video-to-video/lora/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/video-to-video/lora\\\",\\n \\\"prompt\\\": \\\"black-and-white video, a cowboy walks through a dusty town, film grain\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/distilled/video-to-video/lora/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/distilled/video-to-video/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2 19B Distilled" - modelId: "lightricks/ltx-2-19b/distilled/video-to-video/lora" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2-19b/distilled/video-to-video/lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-07T03:40:29.284Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2-19b/extend-video.md b/model-api-reference/video-generation/lightricks/ltx-2-19b/extend-video.md deleted file mode 100644 index 77a6f8ec..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2-19b/extend-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2 19B API Reference — Lightricks Ltx 2 19b / Extend Video API" -description: "LTX-2 19B API reference for SandBase. Use model lightricks/ltx-2-19b/extend-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2-19b/extend-video" -apiReferenceJson: "{\"title\":\"LTX-2 19B\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2 19b Extend Video by Lightricks - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2-19b/extend-video.\",\"default\":\"lightricks/ltx-2-19b/extend-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the extended video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to extend.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The guidance scale to use.\",\"default\":\"3\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to use.\",\"default\":\"40\",\"constraints\":\"Range: 8 to 50\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"fps\",\"type\":\"number\",\"required\":false,\"description\":\"The frames per second of the generated video.\",\"default\":\"25\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"video_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality of the generated video.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"},{\"name\":\"num_context_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to use as context for the extension.\",\"default\":\"25\",\"constraints\":\"Range: 0 to 121\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate.\",\"default\":\"121\",\"constraints\":\"Range: 9 to 481\"},{\"name\":\"end_image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the end image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"extend_direction\",\"type\":\"string\",\"required\":false,\"description\":\"Direction to extend the video. 'forward' extends from the end of the video, 'backward' extends from the beginning.\",\"default\":\"forward\",\"constraints\":\"Allowed values: forward, backward\"},{\"name\":\"camera_lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"use_multiscale\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use multi-scale generation. If True, the model will generate the video at a smaller scale first, then use the smaller video to guide the generation of a video at or above your requested size. This results in better coherence and details.\",\"default\":\"true\"},{\"name\":\"camera_lora\",\"type\":\"string\",\"required\":false,\"description\":\"The camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"none\",\"constraints\":\"Allowed values: dolly_in, dolly_out, dolly_left, dolly_right, jib_up, jib_down, static, none\"},{\"name\":\"video_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Video conditioning strength. Lower values represent more freedom given to the model to change the video content.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"video_output_type\",\"type\":\"string\",\"required\":false,\"description\":\"The output type of the generated video.\",\"default\":\"X264 (.mp4)\",\"constraints\":\"Allowed values: X264 (.mp4), VP9 (.webm), PRORES4444 (.mov), GIF (.gif)\"},{\"name\":\"match_input_fps\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, match the output FPS to the input video's FPS instead of using the default target FPS.\",\"default\":\"true\"},{\"name\":\"video_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the generated video.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"},{\"name\":\"video_size\",\"type\":\"string\",\"required\":false,\"description\":\"The size of the generated video.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9\"},{\"name\":\"audio_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Audio conditioning strength. Lower values represent more freedom given to the model to change the audio content.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/extend-video\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/extend-video/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/extend-video\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/extend-video/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/extend-video\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/extend-video/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/extend-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2 19B" - modelId: "lightricks/ltx-2-19b/extend-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2-19b/extend-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-05T20:27:27.462Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2-19b/extend-video/lora.md b/model-api-reference/video-generation/lightricks/ltx-2-19b/extend-video/lora.md deleted file mode 100644 index 8a74a417..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2-19b/extend-video/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2 19B API Reference — Lightricks 2 19b / Extend Video / Lora" -description: "LTX-2 19B API reference for SandBase. Use model lightricks/ltx-2-19b/extend-video/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2-19b/extend-video/lora" -apiReferenceJson: "{\"title\":\"LTX-2 19B\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2 19b Extend Video Lora is Lightricks's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2-19b/extend-video/lora.\",\"default\":\"lightricks/ltx-2-19b/extend-video/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the extended video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to extend.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"extend_direction\",\"type\":\"string\",\"required\":false,\"description\":\"Direction to extend the video. 'forward' extends from the end of the video, 'backward' extends from the beginning.\",\"default\":\"forward\",\"constraints\":\"Allowed values: forward, backward\"},{\"name\":\"video_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Video conditioning strength. Lower values represent more freedom given to the model to change the video content.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"audio_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Audio conditioning strength. Lower values represent more freedom given to the model to change the audio content.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"end_image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the end image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"40\",\"constraints\":\"Range: 8 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"3\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/extend-video/lora\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/extend-video/lora/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/extend-video/lora\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/extend-video/lora/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/extend-video/lora\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/extend-video/lora/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/extend-video/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2 19B" - modelId: "lightricks/ltx-2-19b/extend-video/lora" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2-19b/extend-video/lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-05T20:38:54.203Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2-19b/image-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2-19b/image-to-video.md deleted file mode 100644 index d1824dcd..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2-19b/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2 19B API Reference — Lightricks Ltx 2 19b / Image To Video" -description: "LTX-2 19B API reference for SandBase. Use model lightricks/ltx-2-19b/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2-19b/image-to-video" -apiReferenceJson: "{\"title\":\"LTX-2 19B\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2 19b by Lightricks - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2-19b/image-to-video.\",\"default\":\"lightricks/ltx-2-19b/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt used for the generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to generate the video from.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the video.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The guidance scale to use.\",\"default\":\"3\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to use.\",\"default\":\"40\",\"constraints\":\"Range: 8 to 50\"},{\"name\":\"camera_lora\",\"type\":\"string\",\"required\":false,\"description\":\"The camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"none\",\"constraints\":\"Allowed values: dolly_in, dolly_out, dolly_left, dolly_right, jib_up, jib_down, static, none\"},{\"name\":\"video_output_type\",\"type\":\"string\",\"required\":false,\"description\":\"The output type of the generated video.\",\"default\":\"X264 (.mp4)\",\"constraints\":\"Allowed values: X264 (.mp4), VP9 (.webm), PRORES4444 (.mov), GIF (.gif)\"},{\"name\":\"camera_lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate.\",\"default\":\"121\",\"constraints\":\"Range: 9 to 481\"},{\"name\":\"video_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality of the generated video.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"},{\"name\":\"use_multiscale\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use multi-scale generation. If True, the model will generate the video at a smaller scale first, then use the smaller video to guide the generation of a video at or above your requested size. This results in better coherence and details.\",\"default\":\"true\"},{\"name\":\"fps\",\"type\":\"number\",\"required\":false,\"description\":\"The frames per second of the generated video.\",\"default\":\"25\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"video_size\",\"type\":\"string\",\"required\":false,\"description\":\"The size of the generated video.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9\"},{\"name\":\"interpolation_direction\",\"type\":\"string\",\"required\":false,\"description\":\"The direction to interpolate the image sequence in. 'Forward' goes from the start image to the end image, 'Backward' goes from the end image to the start image.\",\"default\":\"forward\",\"constraints\":\"Allowed values: forward, backward\"},{\"name\":\"end_image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the end image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"video_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the generated video.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/image-to-video/input_image_0.jpg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/image-to-video/input_image_0.jpg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/image-to-video/input_image_0.jpg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2 19B" - modelId: "lightricks/ltx-2-19b/image-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2-19b/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-05T20:18:20.548Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2-19b/image-to-video/lora.md b/model-api-reference/video-generation/lightricks/ltx-2-19b/image-to-video/lora.md deleted file mode 100644 index 479d0dfb..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2-19b/image-to-video/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2 19B API Reference — Lightricks 19b / Image To Video / Lora" -description: "LTX-2 19B API reference for SandBase. Use model lightricks/ltx-2-19b/image-to-video/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2-19b/image-to-video/lora" -apiReferenceJson: "{\"title\":\"LTX-2 19B\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2 19b Lora is Lightricks's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2-19b/image-to-video/lora.\",\"default\":\"lightricks/ltx-2-19b/image-to-video/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt used for the generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to generate the video from.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the video.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"interpolation_direction\",\"type\":\"string\",\"required\":false,\"description\":\"The direction to interpolate the image sequence in. 'Forward' goes from the start image to the end image, 'Backward' goes from the end image to the start image.\",\"default\":\"forward\",\"constraints\":\"Allowed values: forward, backward\"},{\"name\":\"end_image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the end image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"40\",\"constraints\":\"Range: 8 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"3\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/image-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/image-to-video/lora/input_image_0.jpg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/image-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/image-to-video/lora/input_image_0.jpg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/image-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/image-to-video/lora/input_image_0.jpg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/image-to-video/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2 19B" - modelId: "lightricks/ltx-2-19b/image-to-video/lora" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2-19b/image-to-video/lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-05T20:33:07.281Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2-19b/text-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2-19b/text-to-video.md deleted file mode 100644 index e64657b5..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2-19b/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2 19B API Reference — Lightricks Ltx 2 19b / Text To Video" -description: "LTX-2 19B API reference for SandBase. Use model lightricks/ltx-2-19b/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2-19b/text-to-video" -apiReferenceJson: "{\"title\":\"LTX-2 19B\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2 19b is Lightricks's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2-19b/text-to-video.\",\"default\":\"lightricks/ltx-2-19b/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The guidance scale to use.\",\"default\":\"3\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to use.\",\"default\":\"40\",\"constraints\":\"Range: 8 to 50\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate.\",\"default\":\"121\",\"constraints\":\"Range: 9 to 481\"},{\"name\":\"video_size\",\"type\":\"string\",\"required\":false,\"description\":\"The size of the generated video.\",\"default\":\"landscape_4_3\",\"constraints\":\"Allowed values: square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9\"},{\"name\":\"fps\",\"type\":\"number\",\"required\":false,\"description\":\"The frames per second of the generated video.\",\"default\":\"25\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"video_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality of the generated video.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"},{\"name\":\"video_output_type\",\"type\":\"string\",\"required\":false,\"description\":\"The output type of the generated video.\",\"default\":\"X264 (.mp4)\",\"constraints\":\"Allowed values: X264 (.mp4), VP9 (.webm), PRORES4444 (.mov), GIF (.gif)\"},{\"name\":\"camera_lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"camera_lora\",\"type\":\"string\",\"required\":false,\"description\":\"The camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"none\",\"constraints\":\"Allowed values: dolly_in, dolly_out, dolly_left, dolly_right, jib_up, jib_down, static, none\"},{\"name\":\"use_multiscale\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use multi-scale generation. If True, the model will generate the video at a smaller scale first, then use the smaller video to guide the generation of a video at or above your requested size. This results in better coherence and details.\",\"default\":\"true\"},{\"name\":\"video_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the generated video.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2 19B" - modelId: "lightricks/ltx-2-19b/text-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2-19b/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-05T20:21:49.298Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2-19b/video-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2-19b/video-to-video.md deleted file mode 100644 index 3c6f6daa..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2-19b/video-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2 19B API Reference — Lightricks Ltx 2 19b / Video To Video" -description: "LTX-2 19B API reference for SandBase. Use model lightricks/ltx-2-19b/video-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2-19b/video-to-video" -apiReferenceJson: "{\"title\":\"LTX-2 19B\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2 19b Video To Video by Lightricks - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2-19b/video-to-video.\",\"default\":\"lightricks/ltx-2-19b/video-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"An optional URL of an image to use as the first frame of the video.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to generate the video from.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"An optional URL of an audio to use as the audio for the video. If not provided, any audio present in the input video will be used.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The guidance scale to use.\",\"default\":\"3\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to use.\",\"default\":\"40\",\"constraints\":\"Range: 8 to 50\"},{\"name\":\"match_input_fps\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, match the output FPS to the input video's FPS instead of using the default target FPS.\",\"default\":\"true\"},{\"name\":\"preprocessor\",\"type\":\"string\",\"required\":false,\"description\":\"The preprocessor to use for the video. When a preprocessor is used and `ic_lora_type` is set to `match_preprocessor`, the IC-LoRA will be loaded based on the preprocessor type.\",\"default\":\"none\",\"constraints\":\"Allowed values: depth, canny, pose, none\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate.\",\"default\":\"121\",\"constraints\":\"Range: 9 to 481\"},{\"name\":\"video_size\",\"type\":\"string\",\"required\":false,\"description\":\"The size of the generated video.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9\"},{\"name\":\"camera_lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"video_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Video conditioning strength. Lower values represent more freedom given to the model to change the video content.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"video_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the generated video.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"},{\"name\":\"audio_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Audio conditioning strength. Lower values represent more freedom given to the model to change the audio content.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"camera_lora\",\"type\":\"string\",\"required\":false,\"description\":\"The camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"none\",\"constraints\":\"Allowed values: dolly_in, dolly_out, dolly_left, dolly_right, jib_up, jib_down, static, none\"},{\"name\":\"image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"fps\",\"type\":\"number\",\"required\":false,\"description\":\"The frames per second of the generated video.\",\"default\":\"25\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"match_video_length\",\"type\":\"boolean\",\"required\":false,\"description\":\"When enabled, the number of frames will be calculated based on the video duration and FPS. When disabled, use the specified num_frames.\",\"default\":\"true\"},{\"name\":\"video_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality of the generated video.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"},{\"name\":\"video_output_type\",\"type\":\"string\",\"required\":false,\"description\":\"The output type of the generated video.\",\"default\":\"X264 (.mp4)\",\"constraints\":\"Allowed values: X264 (.mp4), VP9 (.webm), PRORES4444 (.mov), GIF (.gif)\"},{\"name\":\"end_image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the end image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"ic_lora\",\"type\":\"string\",\"required\":false,\"description\":\"The type of IC-LoRA to load. In-Context LoRA weights are used to condition the video based on edge, depth, or pose videos. Only change this from `match_preprocessor` if your videos are already preprocessed (or you are using the detailer.)\",\"default\":\"match_preprocessor\",\"constraints\":\"Allowed values: match_preprocessor, canny, depth, pose, detailer, none\"},{\"name\":\"use_multiscale\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use multi-scale generation. If True, the model will generate the video at a smaller scale first, then use the smaller video to guide the generation of a video at or above your requested size. This results in better coherence and details.\",\"default\":\"true\"},{\"name\":\"ic_lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the IC-LoRA to use. This allows you to control the strength of the IC-LoRA.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/video-to-video\\\",\\n \\\"prompt\\\": \\\"black-and-white video, a cowboy walks through a dusty town, film grain\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/video-to-video/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/video-to-video\\\",\\n \\\"prompt\\\": \\\"black-and-white video, a cowboy walks through a dusty town, film grain\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/video-to-video/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/video-to-video\\\",\\n \\\"prompt\\\": \\\"black-and-white video, a cowboy walks through a dusty town, film grain\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/video-to-video/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/video-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2 19B" - modelId: "lightricks/ltx-2-19b/video-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2-19b/video-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-07T03:32:57.344Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2-19b/video-to-video/lora.md b/model-api-reference/video-generation/lightricks/ltx-2-19b/video-to-video/lora.md deleted file mode 100644 index a7b8c56a..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2-19b/video-to-video/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2 19B API Reference — Lightricks 19b / Video To Video / Lora" -description: "LTX-2 19B API reference for SandBase. Use model lightricks/ltx-2-19b/video-to-video/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2-19b/video-to-video/lora" -apiReferenceJson: "{\"title\":\"LTX-2 19B\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2 19b Video To Video Lora is Lightricks's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2-19b/video-to-video/lora.\",\"default\":\"lightricks/ltx-2-19b/video-to-video/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"An optional URL of an image to use as the first frame of the video.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to generate the video from.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"An optional URL of an audio to use as the audio for the video. If not provided, any audio present in the input video will be used.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"preprocessor\",\"type\":\"string\",\"required\":false,\"description\":\"The preprocessor to use for the video. When a preprocessor is used and `ic_lora_type` is set to `match_preprocessor`, the IC-LoRA will be loaded based on the preprocessor type.\",\"default\":\"none\",\"constraints\":\"Allowed values: depth, canny, pose, none\"},{\"name\":\"video_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Video conditioning strength. Lower values represent more freedom given to the model to change the video content.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"end_image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the end image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"audio_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Audio conditioning strength. Lower values represent more freedom given to the model to change the audio content.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"ic_lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the IC-LoRA to use. This allows you to control the strength of the IC-LoRA.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"ic_lora\",\"type\":\"string\",\"required\":false,\"description\":\"The type of IC-LoRA to load. In-Context LoRA weights are used to condition the video based on edge, depth, or pose videos. Only change this from `match_preprocessor` if your videos are already preprocessed (or you are using the detailer.)\",\"default\":\"match_preprocessor\",\"constraints\":\"Allowed values: match_preprocessor, canny, depth, pose, detailer, none\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"40\",\"constraints\":\"Range: 8 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"3\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/video-to-video/lora\\\",\\n \\\"prompt\\\": \\\"black-and-white video, a cowboy walks through a dusty town, film grain\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/video-to-video/lora/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/video-to-video/lora\\\",\\n \\\"prompt\\\": \\\"black-and-white video, a cowboy walks through a dusty town, film grain\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/video-to-video/lora/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/video-to-video/lora\\\",\\n \\\"prompt\\\": \\\"black-and-white video, a cowboy walks through a dusty town, film grain\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2-19b/video-to-video/lora/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2-19b/video-to-video/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2 19B" - modelId: "lightricks/ltx-2-19b/video-to-video/lora" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2-19b/video-to-video/lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-07T03:35:30.708Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.0-fast/image-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2.0-fast/image-to-video.md deleted file mode 100644 index 866b172c..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.0-fast/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX Video 2.0 Fast API Reference" -description: "LTX Video 2.0 Fast API reference for SandBase. Use model lightricks/ltx-2.0-fast/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.0-fast/image-to-video" -apiReferenceJson: "{\"title\":\"LTX Video 2.0 Fast\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.0 Fast is Lightricks's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.0-fast/image-to-video.\",\"default\":\"lightricks/ltx-2.0-fast/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to generate the video from. Must be publicly accessible or base64 data URI. Supports PNG, JPEG, WebP, AVIF, and HEIF formats.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 1080p, 1440p, 2160p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. The fast model supports 6-20 seconds. Note: Durations longer than 10 seconds (12, 14, 16, 18, 20) are only supported with 25 FPS and 1080p resolution.\",\"default\":\"6\",\"constraints\":\"Allowed values: 6, 8, 10, 12, 14, 16, 18, 20\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the generated video\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.0-fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.0-fast/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 6\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.0-fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.0-fast/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 6\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.0-fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.0-fast/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 6\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.0-fast/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX Video 2.0 Fast" - modelId: "lightricks/ltx-2.0-fast/image-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.0-fast/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-26T17:28:12.015Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.0-fast/text-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2.0-fast/text-to-video.md deleted file mode 100644 index 7694582a..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.0-fast/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX 2.0 Fast Text to Video API Reference" -description: "LTX 2.0 Fast Text to Video API reference for SandBase. Use model lightricks/ltx-2.0-fast/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.0-fast/text-to-video" -apiReferenceJson: "{\"title\":\"LTX 2.0 Fast Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.0 Fast by Lightricks - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.0-fast/text-to-video.\",\"default\":\"lightricks/ltx-2.0-fast/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 1080p, 1440p, 2160p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. The fast model supports 6-20 seconds. Note: Durations longer than 10 seconds (12, 14, 16, 18, 20) are only supported with 25 FPS and 1080p resolution.\",\"default\":\"6\",\"constraints\":\"Allowed values: 6, 8, 10, 12, 14, 16, 18, 20\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the generated video\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.0-fast/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\",\\n \\\"duration\\\": 6\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.0-fast/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\",\\n \\\"duration\\\": 6\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.0-fast/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\",\\n \\\"duration\\\": 6\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.0-fast/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX 2.0 Fast Text to Video" - modelId: "lightricks/ltx-2.0-fast/text-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.0-fast/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-26T17:29:41.777Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.0-pro/audio-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2.0-pro/audio-to-video.md deleted file mode 100644 index bf1dbd41..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.0-pro/audio-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX 2.0 Pro Audio to Video API Reference" -description: "LTX 2.0 Pro Audio to Video API reference for SandBase. Use model lightricks/ltx-2.0-pro/audio-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.0-pro/audio-to-video" -apiReferenceJson: "{\"title\":\"LTX 2.0 Pro Audio to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.0 Pro Audio To Video by Lightricks - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.0-pro/audio-to-video.\",\"default\":\"lightricks/ltx-2.0-pro/audio-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of how the video should be generated. Required if image_url is not provided. When image_url is provided, this describes how the image should be animated.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of an image to use as the first frame of the video. If not provided, prompt is required.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the audio file to generate a video from. Duration must be between 2 and 20 seconds. Must be publicly accessible or base64 data URI.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.0-pro/audio-to-video\\\",\\n \\\"prompt\\\": \\\"An angry man speaking\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.0-pro/audio-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.0-pro/audio-to-video/output_url_1.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.0-pro/audio-to-video\\\",\\n \\\"prompt\\\": \\\"An angry man speaking\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.0-pro/audio-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.0-pro/audio-to-video/output_url_1.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.0-pro/audio-to-video\\\",\\n \\\"prompt\\\": \\\"An angry man speaking\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.0-pro/audio-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.0-pro/audio-to-video/output_url_1.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.0-pro/audio-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX 2.0 Pro Audio to Video" - modelId: "lightricks/ltx-2.0-pro/audio-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.0-pro/audio-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-04T23:02:23.893Z" - capabilities: ["audio-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.0-pro/extend.md b/model-api-reference/video-generation/lightricks/ltx-2.0-pro/extend.md deleted file mode 100644 index c7e92559..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.0-pro/extend.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX 2.0 Pro Extend API Reference" -description: "LTX 2.0 Pro Extend API reference for SandBase. Use model lightricks/ltx-2.0-pro/extend with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.0-pro/extend" -apiReferenceJson: "{\"title\":\"LTX 2.0 Pro Extend\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.0 Pro Extend by Lightricks - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.0-pro/extend.\",\"default\":\"lightricks/ltx-2.0-pro/extend\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Description of what should happen in the extended portion of the video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to extend\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration in seconds to extend the video. Maximum 20 seconds.\",\"default\":\"5\",\"constraints\":\"Range: 1 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.0-pro/extend\\\",\\n \\\"prompt\\\": \\\"Continue the motion smoothly\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.0-pro/extend/input_video_0.mp4\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.0-pro/extend\\\",\\n \\\"prompt\\\": \\\"Continue the motion smoothly\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.0-pro/extend/input_video_0.mp4\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.0-pro/extend\\\",\\n \\\"prompt\\\": \\\"Continue the motion smoothly\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.0-pro/extend/input_video_0.mp4\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.0-pro/extend\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX 2.0 Pro Extend" - modelId: "lightricks/ltx-2.0-pro/extend" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.0-pro/extend" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-04T23:10:17.828Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.0-pro/image-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2.0-pro/image-to-video.md deleted file mode 100644 index c42504cf..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.0-pro/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX 2.0 Pro Image to Video API Reference" -description: "LTX 2.0 Pro Image to Video API reference for SandBase. Use model lightricks/ltx-2.0-pro/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.0-pro/image-to-video" -apiReferenceJson: "{\"title\":\"LTX 2.0 Pro Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.0 Pro by Lightricks - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.0-pro/image-to-video.\",\"default\":\"lightricks/ltx-2.0-pro/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to generate the video from. Must be publicly accessible or base64 data URI. Supports PNG, JPEG, WebP, AVIF, and HEIF formats.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 1080p, 1440p, 2160p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"6\",\"constraints\":\"Allowed values: 6, 8, 10\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the generated video\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.0-pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.0-pro/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 6\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.0-pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.0-pro/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 6\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.0-pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.0-pro/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 6\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.0-pro/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX 2.0 Pro Image to Video" - modelId: "lightricks/ltx-2.0-pro/image-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.0-pro/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-26T17:25:50.149Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.0-pro/retake.md b/model-api-reference/video-generation/lightricks/ltx-2.0-pro/retake.md deleted file mode 100644 index fcf9d34b..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.0-pro/retake.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX 2.0 Pro Retake API Reference" -description: "LTX 2.0 Pro Retake API reference for SandBase. Use model lightricks/ltx-2.0-pro/retake with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.0-pro/retake" -apiReferenceJson: "{\"title\":\"LTX 2.0 Pro Retake\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.0 Pro Retake by Lightricks - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.0-pro/retake.\",\"default\":\"lightricks/ltx-2.0-pro/retake\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to retake the video with\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to retake\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the video to retake in seconds\",\"default\":\"5\",\"constraints\":\"Range: 2 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.0-pro/retake\\\",\\n \\\"prompt\\\": \\\"Remove the man\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.0-pro/retake/output_url_0.mp4\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.0-pro/retake\\\",\\n \\\"prompt\\\": \\\"Remove the man\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.0-pro/retake/output_url_0.mp4\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.0-pro/retake\\\",\\n \\\"prompt\\\": \\\"Remove the man\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.0-pro/retake/output_url_0.mp4\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.0-pro/retake\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX 2.0 Pro Retake" - modelId: "lightricks/ltx-2.0-pro/retake" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.0-pro/retake" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-26T17:22:47.621Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.0-pro/text-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2.0-pro/text-to-video.md deleted file mode 100644 index f849eb97..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.0-pro/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX 2.0 Pro Text to Video API Reference" -description: "LTX 2.0 Pro Text to Video API reference for SandBase. Use model lightricks/ltx-2.0-pro/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.0-pro/text-to-video" -apiReferenceJson: "{\"title\":\"LTX 2.0 Pro Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.0 Pro is Lightricks's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.0-pro/text-to-video.\",\"default\":\"lightricks/ltx-2.0-pro/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 1080p, 1440p, 2160p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"6\",\"constraints\":\"Allowed values: 6, 8, 10\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the generated video\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.0-pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\",\\n \\\"duration\\\": 6\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.0-pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\",\\n \\\"duration\\\": 6\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.0-pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\",\\n \\\"duration\\\": 6\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.0-pro/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX 2.0 Pro Text to Video" - modelId: "lightricks/ltx-2.0-pro/text-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.0-pro/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-26T17:29:02.911Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-22b-distilled/audio-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2.3-22b-distilled/audio-to-video.md deleted file mode 100644 index 3ce1cab7..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-22b-distilled/audio-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX 2.3 22B Distilled Audio to Video API Reference" -description: "SandBase API reference for model lightricks/ltx-2.3-22b-distilled/audio-to-video. Call /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-22b-distilled/audio-to-video" -apiReferenceJson: "{\"title\":\"LTX 2.3 22B Distilled Audio to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 22b Distilled Audio To Video by Lightricks - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-22b-distilled/audio-to-video.\",\"default\":\"lightricks/ltx-2.3-22b-distilled/audio-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Optional URL of an image to use as the first frame of the video.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the video.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the audio to generate the video from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 4:3, 3:4, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b-distilled/audio-to-video\\\",\\n \\\"prompt\\\": \\\"A woman speaks to the camera\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b-distilled/audio-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b-distilled/audio-to-video/input_audio_1.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b-distilled/audio-to-video\\\",\\n \\\"prompt\\\": \\\"A woman speaks to the camera\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b-distilled/audio-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b-distilled/audio-to-video/input_audio_1.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b-distilled/audio-to-video\\\",\\n \\\"prompt\\\": \\\"A woman speaks to the camera\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b-distilled/audio-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b-distilled/audio-to-video/input_audio_1.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b-distilled/audio-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX 2.3 22B Distilled Audio to Video" - modelId: "lightricks/ltx-2.3-22b-distilled/audio-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-22b-distilled/audio-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T21:40:15.488Z" - capabilities: ["audio-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-22b-distilled/image-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2.3-22b-distilled/image-to-video.md deleted file mode 100644 index 02643258..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-22b-distilled/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX 2.3 22B Distilled Image to Video API Reference" -description: "SandBase API reference for model lightricks/ltx-2.3-22b-distilled/image-to-video. Call /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-22b-distilled/image-to-video" -apiReferenceJson: "{\"title\":\"LTX 2.3 22B Distilled Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 22b Distilled by Lightricks - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-22b-distilled/image-to-video.\",\"default\":\"lightricks/ltx-2.3-22b-distilled/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt used for the generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to generate the video from.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the video.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 4:3, 3:4, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b-distilled/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b-distilled/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b-distilled/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b-distilled/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b-distilled/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b-distilled/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b-distilled/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX 2.3 22B Distilled Image to Video" - modelId: "lightricks/ltx-2.3-22b-distilled/image-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-22b-distilled/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T21:40:04.601Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-22b-distilled/reference-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2.3-22b-distilled/reference-to-video.md deleted file mode 100644 index 86198327..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-22b-distilled/reference-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX 2.3 22B Distilled Reference to Video API Reference" -description: "SandBase API reference for model lightricks/ltx-2.3-22b-distilled/reference-to-video. Call /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-22b-distilled/reference-to-video" -apiReferenceJson: "{\"title\":\"LTX 2.3 22B Distilled Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 22b Distilled by Lightricks - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-22b-distilled/reference-to-video.\",\"default\":\"lightricks/ltx-2.3-22b-distilled/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"An optional URL of an image to use as the first frame of the video.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to reference.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"An optional URL of an audio to use as the audio for the video. If not provided, any audio present in the input video will be used.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 4:3, 3:4, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b-distilled/reference-to-video\\\",\\n \\\"prompt\\\": \\\"style: cinematic/realistic. A man wearing a baseball cap walks through a modern town. He holds a coffee cup.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b-distilled/reference-to-video/output_url_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b-distilled/reference-to-video\\\",\\n \\\"prompt\\\": \\\"style: cinematic/realistic. A man wearing a baseball cap walks through a modern town. He holds a coffee cup.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b-distilled/reference-to-video/output_url_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b-distilled/reference-to-video\\\",\\n \\\"prompt\\\": \\\"style: cinematic/realistic. A man wearing a baseball cap walks through a modern town. He holds a coffee cup.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b-distilled/reference-to-video/output_url_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b-distilled/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX 2.3 22B Distilled Reference to Video" - modelId: "lightricks/ltx-2.3-22b-distilled/reference-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-22b-distilled/reference-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T21:57:09.934Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-22b-distilled/text-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2.3-22b-distilled/text-to-video.md deleted file mode 100644 index 80ddb367..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-22b-distilled/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX 2.3 22B Distilled Text to Video API Reference" -description: "LTX 2.3 22B Distilled Text to Video API reference for SandBase. Use model lightricks/ltx-2.3-22b-distilled/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-22b-distilled/text-to-video" -apiReferenceJson: "{\"title\":\"LTX 2.3 22B Distilled Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 22b Distilled is Lightricks's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-22b-distilled/text-to-video.\",\"default\":\"lightricks/ltx-2.3-22b-distilled/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 4:3, 3:4, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b-distilled/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b-distilled/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b-distilled/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b-distilled/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX 2.3 22B Distilled Text to Video" - modelId: "lightricks/ltx-2.3-22b-distilled/text-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-22b-distilled/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T21:39:49.554Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-22b-distilled/video-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2.3-22b-distilled/video-to-video.md deleted file mode 100644 index 1adbf6f8..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-22b-distilled/video-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX 2.3 22B Distilled Video to Video API Reference" -description: "SandBase API reference for model lightricks/ltx-2.3-22b-distilled/video-to-video. Call /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-22b-distilled/video-to-video" -apiReferenceJson: "{\"title\":\"LTX 2.3 22B Distilled Video to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 22b Distilled Video To Video by Lightricks - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-22b-distilled/video-to-video.\",\"default\":\"lightricks/ltx-2.3-22b-distilled/video-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to generate the video from.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 4:3, 3:4, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b-distilled/video-to-video\\\",\\n \\\"prompt\\\": \\\"style: cinematic/realistic. A man wearing a baseball cap walks through a modern town. He holds a coffee cup.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b-distilled/video-to-video/input_video_0.mp4\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b-distilled/video-to-video\\\",\\n \\\"prompt\\\": \\\"style: cinematic/realistic. A man wearing a baseball cap walks through a modern town. He holds a coffee cup.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b-distilled/video-to-video/input_video_0.mp4\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b-distilled/video-to-video\\\",\\n \\\"prompt\\\": \\\"style: cinematic/realistic. A man wearing a baseball cap walks through a modern town. He holds a coffee cup.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b-distilled/video-to-video/input_video_0.mp4\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b-distilled/video-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX 2.3 22B Distilled Video to Video" - modelId: "lightricks/ltx-2.3-22b-distilled/video-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-22b-distilled/video-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T21:40:33.888Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/audio-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2.3-22b/audio-to-video.md deleted file mode 100644 index 3394e420..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/audio-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX 2.3 22B Audio to Video API Reference" -description: "LTX 2.3 22B Audio to Video API reference for SandBase. Use model lightricks/ltx-2.3-22b/audio-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-22b/audio-to-video" -apiReferenceJson: "{\"title\":\"LTX 2.3 22B Audio to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 22b Audio To Video by Lightricks - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-22b/audio-to-video.\",\"default\":\"lightricks/ltx-2.3-22b/audio-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Optional URL of an image to use as the first frame of the video.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the video.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the audio to generate the video from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 4:3, 3:4, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/audio-to-video\\\",\\n \\\"prompt\\\": \\\"A woman speaks to the camera\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/audio-to-video/input_image_1.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/audio-to-video/input_audio_0.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/audio-to-video\\\",\\n \\\"prompt\\\": \\\"A woman speaks to the camera\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/audio-to-video/input_image_1.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/audio-to-video/input_audio_0.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/audio-to-video\\\",\\n \\\"prompt\\\": \\\"A woman speaks to the camera\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/audio-to-video/input_image_1.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/audio-to-video/input_audio_0.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/audio-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX 2.3 22B Audio to Video" - modelId: "lightricks/ltx-2.3-22b/audio-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-22b/audio-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T21:34:51.24Z" - capabilities: ["audio-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/audio-to-video/lora.md b/model-api-reference/video-generation/lightricks/ltx-2.3-22b/audio-to-video/lora.md deleted file mode 100644 index 58f10c5a..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/audio-to-video/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2.3 22B API Reference — Lightricks / Audio To Video / Lora" -description: "LTX-2.3 22B API reference for SandBase. Use model lightricks/ltx-2.3-22b/audio-to-video/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-22b/audio-to-video/lora" -apiReferenceJson: "{\"title\":\"LTX-2.3 22B\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 22b Audio To Video Lora by Lightricks - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-22b/audio-to-video/lora.\",\"default\":\"lightricks/ltx-2.3-22b/audio-to-video/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Optional URL of an image to use as the first frame of the video.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the video.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the audio to generate the video from.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to use.\",\"default\":\"40\",\"constraints\":\"Range: 8 to 50\"},{\"name\":\"match_audio_length\",\"type\":\"boolean\",\"required\":false,\"description\":\"When enabled, the number of frames will be calculated based on the audio duration and FPS. When disabled, use the specified num_frames.\",\"default\":\"true\"},{\"name\":\"image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"fps\",\"type\":\"number\",\"required\":false,\"description\":\"The frames per second of the generated video.\",\"default\":\"24\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"video_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality of the generated video.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"},{\"name\":\"video_rescaling_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The rescaling scale for the video. Controls the ratio between classifier-free guidance and spatiotemporal guidance.\",\"default\":\"0.7\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"camera_lora\",\"type\":\"string\",\"required\":false,\"description\":\"The camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"none\",\"constraints\":\"Allowed values: dolly_in, dolly_out, dolly_left, dolly_right, jib_up, jib_down, static, none\"},{\"name\":\"scheduler\",\"type\":\"string\",\"required\":false,\"description\":\"The scheduler to use.\",\"default\":\"ltx2\",\"constraints\":\"Allowed values: ltx2, linear_quadratic, beta\"},{\"name\":\"audio_modality_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The modality scale for the audio. Controls the ratio between video and audio modalities.\",\"default\":\"3\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"distill_lora_first_pass_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the distill LoRA to use for the first pass. Set to 0 to disable.\",\"default\":\"0.2\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"video_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the generated video.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"},{\"name\":\"gradient_estimation_gamma\",\"type\":\"number\",\"required\":false,\"description\":\"The gamma of gradient estimation during denoising. Set to 0 to disable.\",\"default\":\"2\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"video_modality_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The modality scale for the video. Controls the ratio between video and audio modalities.\",\"default\":\"3\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"audio_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Audio conditioning strength. Values below 1.0 will allow the model to change the audio, while a value of exactly 1.0 will use the input audio without modification.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the generation.\"},{\"name\":\"video_output_type\",\"type\":\"string\",\"required\":false,\"description\":\"The output type of the generated video.\",\"default\":\"X264 (.mp4)\",\"constraints\":\"Allowed values: X264 (.mp4), VP9 (.webm), PRORES4444 (.mov), GIF (.gif)\"},{\"name\":\"video_cfg_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The Classifier-Free Guidance (CFG) scale for the video. Higher values result in more consistent and focused video content.\",\"default\":\"3\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"audio_rescaling_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The rescaling scale for the audio. Controls the ratio between classifier-free guidance and spatiotemporal guidance.\",\"default\":\"0.7\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"use_multiscale\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use multi-scale generation. If True, the model will generate the video at a smaller scale first, then use the smaller video to guide the generation of a video at or above your requested size. This results in better coherence and details.\",\"default\":\"true\"},{\"name\":\"audio_cfg_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The Classifier-Free Guidance (CFG) scale for the audio. Higher values result in more consistent and focused audio content.\",\"default\":\"7\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"audio_stg_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The Spatiotemporal Guidance (STG) scale for the audio. Higher values result in more consistent and focused audio content.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"use_restart_sampling\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use restart sampling. This will inject a small amount of noise during each denoising step, which can help improve the quality of the generated video.\",\"default\":\"false\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate.\",\"default\":\"121\",\"constraints\":\"Range: 9 to 481\"},{\"name\":\"preprocess_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to preprocess the audio before using it as conditioning.\",\"default\":\"true\"},{\"name\":\"distill_lora_second_pass_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the distill LoRA to use for the second and subsequent passes.\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"video_size\",\"type\":\"string\",\"required\":false,\"description\":\"The size of the generated video. Use 'auto' to match the input image dimensions if provided.\",\"default\":\"landscape_16_9\",\"constraints\":\"Allowed values: auto, square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9\"},{\"name\":\"video_stg_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The Spatiotemporal Guidance (STG) scale for the video. Higher values result in more consistent and focused video content.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"end_image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the end image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"camera_lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/audio-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A woman speaks to the camera\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/audio-to-video/lora/input_image_1.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/audio-to-video/lora/input_audio_0.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/audio-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A woman speaks to the camera\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/audio-to-video/lora/input_image_1.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/audio-to-video/lora/input_audio_0.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/audio-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A woman speaks to the camera\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/audio-to-video/lora/input_image_1.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/audio-to-video/lora/input_audio_0.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/audio-to-video/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2.3 22B" - modelId: "lightricks/ltx-2.3-22b/audio-to-video/lora" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-22b/audio-to-video/lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T21:33:59.52Z" - capabilities: ["audio-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/distilled/audio-to-video/lora.md b/model-api-reference/video-generation/lightricks/ltx-2.3-22b/distilled/audio-to-video/lora.md deleted file mode 100644 index 1e5da299..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/distilled/audio-to-video/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2.3 22B Distilled — cece5f API" -description: "LTX-2.3 22B Distilled API reference for SandBase. Use model lightricks/ltx-2.3-22b/distilled/audio-to-video/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-22b/distilled/audio-to-video/lora" -apiReferenceJson: "{\"title\":\"LTX-2.3 22B Distilled\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 22b Distilled Audio To Video by Lightricks - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-22b/distilled/audio-to-video/lora.\",\"default\":\"lightricks/ltx-2.3-22b/distilled/audio-to-video/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Optional URL of an image to use as the first frame of the video.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the video.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the audio to generate the video from.\"},{\"name\":\"video_output_type\",\"type\":\"string\",\"required\":false,\"description\":\"The output type of the generated video.\",\"default\":\"X264 (.mp4)\",\"constraints\":\"Allowed values: X264 (.mp4), VP9 (.webm), PRORES4444 (.mov), GIF (.gif)\"},{\"name\":\"fps\",\"type\":\"number\",\"required\":false,\"description\":\"The frames per second of the generated video.\",\"default\":\"24\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"distill_lora_second_pass_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the distill LoRA to use for the second and subsequent passes.\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"match_audio_length\",\"type\":\"boolean\",\"required\":false,\"description\":\"When enabled, the number of frames will be calculated based on the audio duration and FPS. When disabled, use the specified num_frames.\",\"default\":\"true\"},{\"name\":\"video_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality of the generated video.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"},{\"name\":\"video_size\",\"type\":\"string\",\"required\":false,\"description\":\"The size of the generated video. Use 'auto' to match the input image dimensions if provided.\",\"default\":\"landscape_16_9\",\"constraints\":\"Allowed values: auto, square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the generation.\"},{\"name\":\"image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate.\",\"default\":\"121\",\"constraints\":\"Range: 9 to 481\"},{\"name\":\"camera_lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"audio_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Audio conditioning strength. Values below 1.0 will allow the model to change the audio, while a value of exactly 1.0 will use the input audio without modification.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"end_image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the end image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"video_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the generated video.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"},{\"name\":\"use_multiscale\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use multi-scale generation. If True, the model will generate the video at a smaller scale first, then use the smaller video to guide the generation of a video at or above your requested size. This results in better coherence and details.\",\"default\":\"true\"},{\"name\":\"scheduler\",\"type\":\"string\",\"required\":false,\"description\":\"The scheduler to use.\",\"default\":\"ltx2\",\"constraints\":\"Allowed values: ltx2, linear_quadratic, beta\"},{\"name\":\"camera_lora\",\"type\":\"string\",\"required\":false,\"description\":\"The camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"none\",\"constraints\":\"Allowed values: dolly_in, dolly_out, dolly_left, dolly_right, jib_up, jib_down, static, none\"},{\"name\":\"preprocess_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to preprocess the audio before using it as conditioning.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/distilled/audio-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A woman speaks to the camera\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/distilled/audio-to-video/lora/input_image_1.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/distilled/audio-to-video/lora/input_audio_0.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/distilled/audio-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A woman speaks to the camera\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/distilled/audio-to-video/lora/input_image_1.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/distilled/audio-to-video/lora/input_audio_0.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/distilled/audio-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A woman speaks to the camera\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/distilled/audio-to-video/lora/input_image_1.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/distilled/audio-to-video/lora/input_audio_0.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/distilled/audio-to-video/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2.3 22B Distilled" - modelId: "lightricks/ltx-2.3-22b/distilled/audio-to-video/lora" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-22b/distilled/audio-to-video/lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T21:41:19.575Z" - capabilities: ["audio-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/distilled/image-to-video/lora.md b/model-api-reference/video-generation/lightricks/ltx-2.3-22b/distilled/image-to-video/lora.md deleted file mode 100644 index fc40b77e..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/distilled/image-to-video/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2.3 22B Distilled — h4so6g API" -description: "LTX-2.3 22B Distilled API reference for SandBase. Use model lightricks/ltx-2.3-22b/distilled/image-to-video/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-22b/distilled/image-to-video/lora" -apiReferenceJson: "{\"title\":\"LTX-2.3 22B Distilled\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 22b Distilled Lora is Lightricks's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-22b/distilled/image-to-video/lora.\",\"default\":\"lightricks/ltx-2.3-22b/distilled/image-to-video/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt used for the generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to generate the video from.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the video.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"interpolation_direction\",\"type\":\"string\",\"required\":false,\"description\":\"The direction to interpolate the image sequence in. 'Forward' goes from the start image to the end image, 'Backward' goes from the end image to the start image.\",\"default\":\"forward\",\"constraints\":\"Allowed values: forward, backward\"},{\"name\":\"image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"end_image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the end image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/distilled/image-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/distilled/image-to-video/lora/input_image_0.jpg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/distilled/image-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/distilled/image-to-video/lora/input_image_0.jpg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/distilled/image-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/distilled/image-to-video/lora/input_image_0.jpg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/distilled/image-to-video/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2.3 22B Distilled" - modelId: "lightricks/ltx-2.3-22b/distilled/image-to-video/lora" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-22b/distilled/image-to-video/lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T21:41:05.964Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/distilled/reference-video-to-video/lora.md b/model-api-reference/video-generation/lightricks/ltx-2.3-22b/distilled/reference-video-to-video/lora.md deleted file mode 100644 index 211e1cba..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/distilled/reference-video-to-video/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2.3 22B Distilled API Reference — Lightricks To Video / Lora" -description: "SandBase API reference for model lightricks/ltx-2.3-22b/distilled/reference-video-to-video/lora. Call /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-22b/distilled/reference-video-to-video/lora" -apiReferenceJson: "{\"title\":\"LTX-2.3 22B Distilled\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 22b Distilled Reference Video To Video is Lightricks's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-22b/distilled/reference-video-to-video/lora.\",\"default\":\"lightricks/ltx-2.3-22b/distilled/reference-video-to-video/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"An optional URL of an image to use as the first frame of the video.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to reference.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"An optional URL of an audio to use as the audio for the video. If not provided, any audio present in the input video will be used.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"preprocessor\",\"type\":\"string\",\"required\":false,\"description\":\"The preprocessor to use for the generation.\",\"default\":\"none\",\"constraints\":\"Allowed values: depth, canny, pose, none\"},{\"name\":\"audio_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Audio conditioning strength. Lower values represent more freedom given to the model to change the audio content.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"ic_lora_type\",\"type\":\"string\",\"required\":false,\"description\":\"The IC LoRA type to use for the generation.\",\"default\":\"union\",\"constraints\":\"Allowed values: match_preprocessor, union, detailer, none\"},{\"name\":\"video_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Video conditioning strength. Lower values represent more freedom given to the model to change the video content.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/distilled/reference-video-to-video/lora\\\",\\n \\\"prompt\\\": \\\"style: cinematic/realistic. A man wearing a baseball cap walks through a modern town. He holds a coffee cup.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/distilled/reference-video-to-video/lora/output_url_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/distilled/reference-video-to-video/lora\\\",\\n \\\"prompt\\\": \\\"style: cinematic/realistic. A man wearing a baseball cap walks through a modern town. He holds a coffee cup.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/distilled/reference-video-to-video/lora/output_url_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/distilled/reference-video-to-video/lora\\\",\\n \\\"prompt\\\": \\\"style: cinematic/realistic. A man wearing a baseball cap walks through a modern town. He holds a coffee cup.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/distilled/reference-video-to-video/lora/output_url_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/distilled/reference-video-to-video/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2.3 22B Distilled" - modelId: "lightricks/ltx-2.3-22b/distilled/reference-video-to-video/lora" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-22b/distilled/reference-video-to-video/lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T21:59:15.691Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/distilled/text-to-video/lora.md b/model-api-reference/video-generation/lightricks/ltx-2.3-22b/distilled/text-to-video/lora.md deleted file mode 100644 index ac15ec37..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/distilled/text-to-video/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2.3 22B Distilled — tc28zu API" -description: "LTX-2.3 22B Distilled API reference for SandBase. Use model lightricks/ltx-2.3-22b/distilled/text-to-video/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-22b/distilled/text-to-video/lora" -apiReferenceJson: "{\"title\":\"LTX-2.3 22B Distilled\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 22b Distilled Lora by Lightricks - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-22b/distilled/text-to-video/lora.\",\"default\":\"lightricks/ltx-2.3-22b/distilled/text-to-video/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"video_output_type\",\"type\":\"string\",\"required\":false,\"description\":\"The output type of the generated video.\",\"default\":\"X264 (.mp4)\",\"constraints\":\"Allowed values: X264 (.mp4), VP9 (.webm), PRORES4444 (.mov), GIF (.gif)\"},{\"name\":\"video_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the generated video.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"},{\"name\":\"distill_lora_second_pass_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the distill LoRA to use for the second and subsequent passes.\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate.\",\"default\":\"121\",\"constraints\":\"Range: 9 to 481\"},{\"name\":\"use_multiscale\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use multi-scale generation. If True, the model will generate the video at a smaller scale first, then use the smaller video to guide the generation of a video at or above your requested size. This results in better coherence and details.\",\"default\":\"true\"},{\"name\":\"scheduler\",\"type\":\"string\",\"required\":false,\"description\":\"The scheduler to use.\",\"default\":\"ltx2\",\"constraints\":\"Allowed values: ltx2, linear_quadratic, beta\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the generation.\"},{\"name\":\"camera_lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"video_size\",\"type\":\"string\",\"required\":false,\"description\":\"The size of the generated video.\",\"default\":\"landscape_16_9\",\"constraints\":\"Allowed values: square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9\"},{\"name\":\"fps\",\"type\":\"number\",\"required\":false,\"description\":\"The frames per second of the generated video.\",\"default\":\"24\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"video_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality of the generated video.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"},{\"name\":\"camera_lora\",\"type\":\"string\",\"required\":false,\"description\":\"The camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"none\",\"constraints\":\"Allowed values: dolly_in, dolly_out, dolly_left, dolly_right, jib_up, jib_down, static, none\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/distilled/text-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/distilled/text-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/distilled/text-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/distilled/text-to-video/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2.3 22B Distilled" - modelId: "lightricks/ltx-2.3-22b/distilled/text-to-video/lora" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-22b/distilled/text-to-video/lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T21:40:50.336Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/distilled/video-to-video/lora.md b/model-api-reference/video-generation/lightricks/ltx-2.3-22b/distilled/video-to-video/lora.md deleted file mode 100644 index 400aa397..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/distilled/video-to-video/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2.3 22B Distilled — lsjybs API" -description: "LTX-2.3 22B Distilled API reference for SandBase. Use model lightricks/ltx-2.3-22b/distilled/video-to-video/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-22b/distilled/video-to-video/lora" -apiReferenceJson: "{\"title\":\"LTX-2.3 22B Distilled\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 22b Distilled Video To Video is Lightricks's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-22b/distilled/video-to-video/lora.\",\"default\":\"lightricks/ltx-2.3-22b/distilled/video-to-video/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to generate the video from.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"video_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Video conditioning strength. Lower values represent more freedom given to the model to change the video content.\",\"default\":\"0.01\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"audio_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Audio conditioning strength. Lower values represent more freedom given to the model to change the audio content.\",\"default\":\"0.01\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/distilled/video-to-video/lora\\\",\\n \\\"prompt\\\": \\\"style: cinematic/realistic. A man wearing a baseball cap walks through a modern town. He holds a coffee cup.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/distilled/video-to-video/lora/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/distilled/video-to-video/lora\\\",\\n \\\"prompt\\\": \\\"style: cinematic/realistic. A man wearing a baseball cap walks through a modern town. He holds a coffee cup.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/distilled/video-to-video/lora/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/distilled/video-to-video/lora\\\",\\n \\\"prompt\\\": \\\"style: cinematic/realistic. A man wearing a baseball cap walks through a modern town. He holds a coffee cup.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/distilled/video-to-video/lora/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/distilled/video-to-video/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2.3 22B Distilled" - modelId: "lightricks/ltx-2.3-22b/distilled/video-to-video/lora" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-22b/distilled/video-to-video/lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T21:41:39.207Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/extend-video/lora.md b/model-api-reference/video-generation/lightricks/ltx-2.3-22b/extend-video/lora.md deleted file mode 100644 index e19e7ce6..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/extend-video/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2.3 22B API Reference — Lightricks 22b / Extend Video / Lora" -description: "LTX-2.3 22B API reference for SandBase. Use model lightricks/ltx-2.3-22b/extend-video/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-22b/extend-video/lora" -apiReferenceJson: "{\"title\":\"LTX-2.3 22B\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 22b Extend Video Lora is Lightricks's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-22b/extend-video/lora.\",\"default\":\"lightricks/ltx-2.3-22b/extend-video/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the extended video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to extend.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"video_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Video conditioning strength. Lower values represent more freedom given to the model to change the video content.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"audio_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Audio conditioning strength. Lower values represent more freedom given to the model to change the audio content.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"extend_direction\",\"type\":\"string\",\"required\":false,\"description\":\"Direction to extend the video. 'forward' extends from the end of the video, 'backward' extends from the beginning.\",\"default\":\"forward\",\"constraints\":\"Allowed values: forward, backward\"},{\"name\":\"end_image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the end image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"40\",\"constraints\":\"Range: 8 to 50\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/extend-video/lora\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/extend-video/lora/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/extend-video/lora\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/extend-video/lora/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/extend-video/lora\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/extend-video/lora/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/extend-video/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2.3 22B" - modelId: "lightricks/ltx-2.3-22b/extend-video/lora" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-22b/extend-video/lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T21:46:39.588Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/extend.md b/model-api-reference/video-generation/lightricks/ltx-2.3-22b/extend.md deleted file mode 100644 index 4f87fc92..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/extend.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX 2.3 22B Extend API Reference" -description: "LTX 2.3 22B Extend API reference for SandBase. Use model lightricks/ltx-2.3-22b/extend with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-22b/extend" -apiReferenceJson: "{\"title\":\"LTX 2.3 22B Extend\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 22b Extend by Lightricks - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-22b/extend.\",\"default\":\"lightricks/ltx-2.3-22b/extend\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the extended video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to extend.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 4:3, 3:4, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/extend\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/extend/input_video_0.mp4\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/extend\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/extend/input_video_0.mp4\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/extend\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/extend/input_video_0.mp4\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/extend\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX 2.3 22B Extend" - modelId: "lightricks/ltx-2.3-22b/extend" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-22b/extend" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T21:45:35.478Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/image-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2.3-22b/image-to-video.md deleted file mode 100644 index 1f420d47..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX 2.3 22B Image to Video API Reference" -description: "LTX 2.3 22B Image to Video API reference for SandBase. Use model lightricks/ltx-2.3-22b/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-22b/image-to-video" -apiReferenceJson: "{\"title\":\"LTX 2.3 22B Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 22b by Lightricks - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-22b/image-to-video.\",\"default\":\"lightricks/ltx-2.3-22b/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt used for the generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to generate the video from.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the video.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 4:3, 3:4, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX 2.3 22B Image to Video" - modelId: "lightricks/ltx-2.3-22b/image-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-22b/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T21:34:34.101Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/image-to-video/lora.md b/model-api-reference/video-generation/lightricks/ltx-2.3-22b/image-to-video/lora.md deleted file mode 100644 index 97347c9f..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/image-to-video/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2.3 22B API Reference — Lightricks / Image To Video / Lora" -description: "LTX-2.3 22B API reference for SandBase. Use model lightricks/ltx-2.3-22b/image-to-video/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-22b/image-to-video/lora" -apiReferenceJson: "{\"title\":\"LTX-2.3 22B\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 22b Lora is Lightricks's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-22b/image-to-video/lora.\",\"default\":\"lightricks/ltx-2.3-22b/image-to-video/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt used for the generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to generate the video from.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the video.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"end_image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the end image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"The strength of the image to use for the video generation.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"interpolation_direction\",\"type\":\"string\",\"required\":false,\"description\":\"The direction to interpolate the image sequence in. 'Forward' goes from the start image to the end image, 'Backward' goes from the end image to the start image.\",\"default\":\"forward\",\"constraints\":\"Allowed values: forward, backward\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"40\",\"constraints\":\"Range: 8 to 50\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/image-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/image-to-video/lora/input_image_0.jpg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/image-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/image-to-video/lora/input_image_0.jpg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/image-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence. City lights flicker and reflections shift across her denim jacket.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/image-to-video/lora/input_image_0.jpg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/image-to-video/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2.3 22B" - modelId: "lightricks/ltx-2.3-22b/image-to-video/lora" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-22b/image-to-video/lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T21:35:37.444Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/reference-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2.3-22b/reference-to-video.md deleted file mode 100644 index f18e8be4..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/reference-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX 2.3 22B Reference to Video API Reference" -description: "LTX 2.3 22B Reference to Video API reference for SandBase. Use model lightricks/ltx-2.3-22b/reference-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-22b/reference-to-video" -apiReferenceJson: "{\"title\":\"LTX 2.3 22B Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 22b by Lightricks - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-22b/reference-to-video.\",\"default\":\"lightricks/ltx-2.3-22b/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"An optional URL of an image to use as the first frame of the video.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to reference.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"An optional URL of an audio to use as the audio for the video. If not provided, any audio present in the input video will be used.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 4:3, 3:4, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/reference-to-video\\\",\\n \\\"prompt\\\": \\\"style: cinematic/realistic. A man wearing a baseball cap walks through a modern town. He holds a coffee cup.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/reference-to-video/output_url_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/reference-to-video\\\",\\n \\\"prompt\\\": \\\"style: cinematic/realistic. A man wearing a baseball cap walks through a modern town. He holds a coffee cup.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/reference-to-video/output_url_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/reference-to-video\\\",\\n \\\"prompt\\\": \\\"style: cinematic/realistic. A man wearing a baseball cap walks through a modern town. He holds a coffee cup.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/reference-to-video/output_url_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX 2.3 22B Reference to Video" - modelId: "lightricks/ltx-2.3-22b/reference-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-22b/reference-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T21:51:07.849Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/reference-video-to-video/lora.md b/model-api-reference/video-generation/lightricks/ltx-2.3-22b/reference-video-to-video/lora.md deleted file mode 100644 index c2a6f06b..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/reference-video-to-video/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX 2.3 22B API Reference" -description: "LTX 2.3 22B API reference for SandBase. Use model lightricks/ltx-2.3-22b/reference-video-to-video/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-22b/reference-video-to-video/lora" -apiReferenceJson: "{\"title\":\"LTX 2.3 22B\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 22b Reference Video To Video Lora is Lightricks's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-22b/reference-video-to-video/lora.\",\"default\":\"lightricks/ltx-2.3-22b/reference-video-to-video/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"An optional URL of an image to use as the first frame of the video.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the image to use as the end of the video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to reference.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"An optional URL of an audio to use as the audio for the video. If not provided, any audio present in the input video will be used.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to use.\",\"default\":\"40\",\"constraints\":\"Range: 8 to 50\"},{\"name\":\"audio_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Audio conditioning strength. Lower values represent more freedom given to the model to change the audio content.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"video_cfg_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The Classifier-Free Guidance (CFG) scale for the video. Higher values result in more consistent and focused video content.\",\"default\":\"3\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"video_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Video conditioning strength. Lower values represent more freedom given to the model to change the video content.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate.\",\"default\":\"121\",\"constraints\":\"Range: 9 to 481\"},{\"name\":\"scheduler\",\"type\":\"string\",\"required\":false,\"description\":\"The scheduler to use.\",\"default\":\"ltx2\",\"constraints\":\"Allowed values: ltx2, linear_quadratic, beta\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the generation.\"},{\"name\":\"distill_lora_first_pass_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the distill LoRA to use for the first pass. Set to 0 to disable.\",\"default\":\"0.2\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"match_input_fps\",\"type\":\"boolean\",\"required\":false,\"description\":\"When true, match the output FPS to the input video's FPS instead of using the default target FPS.\",\"default\":\"true\"},{\"name\":\"audio_rescaling_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The rescaling scale for the audio. Controls the ratio between classifier-free guidance and spatiotemporal guidance.\",\"default\":\"0.7\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"preprocessor\",\"type\":\"string\",\"required\":false,\"description\":\"The preprocessor to use for the generation.\",\"default\":\"none\",\"constraints\":\"Allowed values: depth, canny, pose, none\"},{\"name\":\"audio_stg_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The Spatiotemporal Guidance (STG) scale for the audio. Higher values result in more consistent and focused audio content.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"distill_lora_second_pass_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the distill LoRA to use for the second and subsequent passes.\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"video_size\",\"type\":\"string\",\"required\":false,\"description\":\"The size of the generated video.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9\"},{\"name\":\"audio_cfg_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The Classifier-Free Guidance (CFG) scale for the audio. Higher values result in more consistent and focused audio content.\",\"default\":\"7\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"gradient_estimation_gamma\",\"type\":\"number\",\"required\":false,\"description\":\"The gamma of gradient estimation during denoising. Set to 0 to disable.\",\"default\":\"2\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"fps\",\"type\":\"number\",\"required\":false,\"description\":\"The frames per second of the generated video.\",\"default\":\"24\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"match_video_length\",\"type\":\"boolean\",\"required\":false,\"description\":\"When enabled, the number of frames will be calculated based on the video duration and FPS. When disabled, use the specified num_frames.\",\"default\":\"true\"},{\"name\":\"video_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality of the generated video.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"},{\"name\":\"ic_lora_type\",\"type\":\"string\",\"required\":false,\"description\":\"The IC LoRA type to use for the generation.\",\"default\":\"union\",\"constraints\":\"Allowed values: match_preprocessor, union, detailer, none\"},{\"name\":\"camera_lora\",\"type\":\"string\",\"required\":false,\"description\":\"The camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"none\",\"constraints\":\"Allowed values: dolly_in, dolly_out, dolly_left, dolly_right, jib_up, jib_down, static, none\"},{\"name\":\"audio_modality_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The modality scale for the audio. Controls the ratio between video and audio modalities.\",\"default\":\"3\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"video_modality_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The modality scale for the video. Controls the ratio between video and audio modalities.\",\"default\":\"3\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"video_rescaling_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The rescaling scale for the video. Controls the ratio between classifier-free guidance and spatiotemporal guidance.\",\"default\":\"0.7\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"use_restart_sampling\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use restart sampling. This will inject a small amount of noise during each denoising step, which can help improve the quality of the generated video.\",\"default\":\"false\"},{\"name\":\"video_stg_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The Spatiotemporal Guidance (STG) scale for the video. Higher values result in more consistent and focused video content.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"video_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the generated video.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"},{\"name\":\"use_multiscale\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use multi-scale generation. If True, the model will generate the video at a smaller scale first, then use the smaller video to guide the generation of a video at or above your requested size. This results in better coherence and details.\",\"default\":\"true\"},{\"name\":\"camera_lora_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The scale of the camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"video_output_type\",\"type\":\"string\",\"required\":false,\"description\":\"The output type of the generated video.\",\"default\":\"X264 (.mp4)\",\"constraints\":\"Allowed values: X264 (.mp4), VP9 (.webm), PRORES4444 (.mov), GIF (.gif)\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/reference-video-to-video/lora\\\",\\n \\\"prompt\\\": \\\"style: cinematic/realistic. A man wearing a baseball cap walks through a modern town. He holds a coffee cup.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/reference-video-to-video/lora/output_url_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/reference-video-to-video/lora\\\",\\n \\\"prompt\\\": \\\"style: cinematic/realistic. A man wearing a baseball cap walks through a modern town. He holds a coffee cup.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/reference-video-to-video/lora/output_url_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/reference-video-to-video/lora\\\",\\n \\\"prompt\\\": \\\"style: cinematic/realistic. A man wearing a baseball cap walks through a modern town. He holds a coffee cup.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/reference-video-to-video/lora/output_url_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/input.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/reference-video-to-video/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX 2.3 22B" - modelId: "lightricks/ltx-2.3-22b/reference-video-to-video/lora" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-22b/reference-video-to-video/lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T21:53:07.442Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/text-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2.3-22b/text-to-video.md deleted file mode 100644 index 29fb9f73..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX 2.3 22B Text to Video API Reference" -description: "LTX 2.3 22B Text to Video API reference for SandBase. Use model lightricks/ltx-2.3-22b/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-22b/text-to-video" -apiReferenceJson: "{\"title\":\"LTX 2.3 22B Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 22b is Lightricks's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-22b/text-to-video.\",\"default\":\"lightricks/ltx-2.3-22b/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 4:3, 3:4, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX 2.3 22B Text to Video" - modelId: "lightricks/ltx-2.3-22b/text-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-22b/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T21:34:24.413Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/text-to-video/lora.md b/model-api-reference/video-generation/lightricks/ltx-2.3-22b/text-to-video/lora.md deleted file mode 100644 index ebf1b7c2..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/text-to-video/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2.3 22B API Reference — Lightricks 22b / Text To Video / Lora" -description: "LTX-2.3 22B API reference for SandBase. Use model lightricks/ltx-2.3-22b/text-to-video/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-22b/text-to-video/lora" -apiReferenceJson: "{\"title\":\"LTX-2.3 22B\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 22b Lora by Lightricks - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-22b/text-to-video/lora.\",\"default\":\"lightricks/ltx-2.3-22b/text-to-video/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"40\",\"constraints\":\"Range: 8 to 50\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/text-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/text-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/text-to-video/lora\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/text-to-video/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2.3 22B" - modelId: "lightricks/ltx-2.3-22b/text-to-video/lora" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-22b/text-to-video/lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T21:35:12.608Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/video-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2.3-22b/video-to-video.md deleted file mode 100644 index ccebc791..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/video-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX 2.3 22B Video to Video API Reference" -description: "LTX 2.3 22B Video to Video API reference for SandBase. Use model lightricks/ltx-2.3-22b/video-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-22b/video-to-video" -apiReferenceJson: "{\"title\":\"LTX 2.3 22B Video to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 22b Video To Video by Lightricks - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-22b/video-to-video.\",\"default\":\"lightricks/ltx-2.3-22b/video-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to generate the video from.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 4:3, 3:4, 1:1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/video-to-video\\\",\\n \\\"prompt\\\": \\\"style: cinematic/realistic. A man wearing a baseball cap walks through a modern town. He holds a coffee cup.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/video-to-video/input_video_0.mp4\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/video-to-video\\\",\\n \\\"prompt\\\": \\\"style: cinematic/realistic. A man wearing a baseball cap walks through a modern town. He holds a coffee cup.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/video-to-video/input_video_0.mp4\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/video-to-video\\\",\\n \\\"prompt\\\": \\\"style: cinematic/realistic. A man wearing a baseball cap walks through a modern town. He holds a coffee cup.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/video-to-video/input_video_0.mp4\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/video-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX 2.3 22B Video to Video" - modelId: "lightricks/ltx-2.3-22b/video-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-22b/video-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T21:35:01.86Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/video-to-video/lora.md b/model-api-reference/video-generation/lightricks/ltx-2.3-22b/video-to-video/lora.md deleted file mode 100644 index f16d8e49..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-22b/video-to-video/lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-2.3 22B API Reference — Lightricks / Video To Video / Lora" -description: "LTX-2.3 22B API reference for SandBase. Use model lightricks/ltx-2.3-22b/video-to-video/lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-22b/video-to-video/lora" -apiReferenceJson: "{\"title\":\"LTX-2.3 22B\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 22b Video To Video Lora is Lightricks's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-22b/video-to-video/lora.\",\"default\":\"lightricks/ltx-2.3-22b/video-to-video/lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to generate the video from.\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the video.\",\"default\":\"true\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"audio_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Audio conditioning strength. Lower values represent more freedom given to the model to change the audio content.\",\"default\":\"0.01\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"video_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Video conditioning strength. Lower values represent more freedom given to the model to change the video content.\",\"default\":\"0.01\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"40\",\"constraints\":\"Range: 8 to 50\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/video-to-video/lora\\\",\\n \\\"prompt\\\": \\\"style: cinematic/realistic. A man wearing a baseball cap walks through a modern town. He holds a coffee cup.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/video-to-video/lora/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/video-to-video/lora\\\",\\n \\\"prompt\\\": \\\"style: cinematic/realistic. A man wearing a baseball cap walks through a modern town. He holds a coffee cup.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/video-to-video/lora/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/video-to-video/lora\\\",\\n \\\"prompt\\\": \\\"style: cinematic/realistic. A man wearing a baseball cap walks through a modern town. He holds a coffee cup.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/video-to-video/lora/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-22b/video-to-video/lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-2.3 22B" - modelId: "lightricks/ltx-2.3-22b/video-to-video/lora" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-22b/video-to-video/lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-14T21:35:59.52Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-fast/image-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2.3-fast/image-to-video.md index 1ed9fa28..10e425be 100644 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-fast/image-to-video.md +++ b/model-api-reference/video-generation/lightricks/ltx-2.3-fast/image-to-video.md @@ -4,7 +4,7 @@ description: "LTX 2.3 Fast Image to Video API reference for SandBase. Use model aside: false outline: false apiReferenceKey: "video/lightricks/ltx-2.3-fast/image-to-video" -apiReferenceJson: "{\"title\":\"LTX 2.3 Fast Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 Fast is Lightricks's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-fast/image-to-video.\",\"default\":\"lightricks/ltx-2.3-fast/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to generate the video from. Must be publicly accessible or base64 data URI. Supports PNG, JPEG, WebP, AVIF, and HEIF formats.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the end image to use for the generated video. When provided, generates a transition video between start and end frames.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 1080p, 1440p, 2160p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. The fast model supports 6-20 seconds. Note: Durations longer than 10 seconds (12, 14, 16, 18, 20) are only supported with 25 FPS and 1080p resolution.\",\"default\":\"6\",\"constraints\":\"Allowed values: 6, 8, 10, 12, 14, 16, 18, 20\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the generated video\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"Snorkel lens ground-scraping tracking shot following a barefoot Ethiopian long-distance runner training on a dirt road at dawn, camera inches from the ground racing alongside, her feet kicking up red dust in slow motion at 240fps, Rift Valley landscape blurred in the background, the texture of earth and callused skin in hyper-detail, 40mm snorkel lens at ground height, Nike Running documentary meets Lubezki natural light, the poetry of human endurance\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-fast/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"Snorkel lens ground-scraping tracking shot following a barefoot Ethiopian long-distance runner training on a dirt road at dawn, camera inches from the ground racing alongside, her feet kicking up red dust in slow motion at 240fps, Rift Valley landscape blurred in the background, the texture of earth and callused skin in hyper-detail, 40mm snorkel lens at ground height, Nike Running documentary meets Lubezki natural light, the poetry of human endurance\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-fast/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"Snorkel lens ground-scraping tracking shot following a barefoot Ethiopian long-distance runner training on a dirt road at dawn, camera inches from the ground racing alongside, her feet kicking up red dust in slow motion at 240fps, Rift Valley landscape blurred in the background, the texture of earth and callused skin in hyper-detail, 40mm snorkel lens at ground height, Nike Running documentary meets Lubezki natural light, the poetry of human endurance\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-fast/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-fast/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"LTX 2.3 Fast Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 Fast is Lightricks's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-fast/image-to-video.\",\"default\":\"lightricks/ltx-2.3-fast/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to generate the video from. Must be publicly accessible or base64 data URI. Supports PNG, JPEG, WebP, AVIF, and HEIF formats.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the end image to use for the generated video. When provided, generates a transition video between start and end frames.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 1080p, 1440p, 2160p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. The fast model supports 6-20 seconds. Note: Durations longer than 10 seconds (12, 14, 16, 18, 20) are only supported with 25 FPS and 1080p resolution.\",\"default\":\"6\",\"constraints\":\"Allowed values: 6, 8, 10, 12, 14, 16, 18, 20\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the generated video\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to match the input image.\",\"constraints\":\"Allowed values: 16:9, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"Snorkel lens ground-scraping tracking shot following a barefoot Ethiopian long-distance runner training on a dirt road at dawn, camera inches from the ground racing alongside, her feet kicking up red dust in slow motion at 240fps, Rift Valley landscape blurred in the background, the texture of earth and callused skin in hyper-detail, 40mm snorkel lens at ground height, Nike Running documentary meets Lubezki natural light, the poetry of human endurance\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-fast/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"Snorkel lens ground-scraping tracking shot following a barefoot Ethiopian long-distance runner training on a dirt road at dawn, camera inches from the ground racing alongside, her feet kicking up red dust in slow motion at 240fps, Rift Valley landscape blurred in the background, the texture of earth and callused skin in hyper-detail, 40mm snorkel lens at ground height, Nike Running documentary meets Lubezki natural light, the poetry of human endurance\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-fast/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"Snorkel lens ground-scraping tracking shot following a barefoot Ethiopian long-distance runner training on a dirt road at dawn, camera inches from the ground racing alongside, her feet kicking up red dust in slow motion at 240fps, Rift Valley landscape blurred in the background, the texture of earth and callused skin in hyper-detail, 40mm snorkel lens at ground height, Nike Running documentary meets Lubezki natural light, the poetry of human endurance\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-fast/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-fast/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "LTX 2.3 Fast Image to Video" modelId: "lightricks/ltx-2.3-fast/image-to-video" diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-fast/text-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2.3-fast/text-to-video.md index 6553aa8f..16606c46 100644 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-fast/text-to-video.md +++ b/model-api-reference/video-generation/lightricks/ltx-2.3-fast/text-to-video.md @@ -4,7 +4,7 @@ description: "LTX 2.3 Fast Text to Video API reference for SandBase. Use model l aside: false outline: false apiReferenceKey: "video/lightricks/ltx-2.3-fast/text-to-video" -apiReferenceJson: "{\"title\":\"LTX 2.3 Fast Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 Fast by Lightricks - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-fast/text-to-video.\",\"default\":\"lightricks/ltx-2.3-fast/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for the generated video\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 1080p, 1440p, 2160p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. The fast model supports 6-20 seconds. Note: Durations longer than 10 seconds (12, 14, 16, 18, 20) are only supported with 25 FPS and 1080p resolution.\",\"default\":\"6\",\"constraints\":\"Allowed values: 6, 8, 10, 12, 14, 16, 18, 20\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the generated video\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-fast/text-to-video\\\",\\n \\\"prompt\\\": \\\"Drone descent through the open oculus of a derelict Soviet-era radio telescope dish, spiraling downward into the rusted parabolic bowl where a lone botanist catalogs wildflowers growing through cracked concrete, her red jacket the only color against oxidized metal and grey sky, 24mm on a caged FPV drone, the descent creating a vertigo spiral, Tarkovsky Stalker zones of alien beauty reclaiming technology, science swallowed by nature\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 6\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-fast/text-to-video\\\",\\n \\\"prompt\\\": \\\"Drone descent through the open oculus of a derelict Soviet-era radio telescope dish, spiraling downward into the rusted parabolic bowl where a lone botanist catalogs wildflowers growing through cracked concrete, her red jacket the only color against oxidized metal and grey sky, 24mm on a caged FPV drone, the descent creating a vertigo spiral, Tarkovsky Stalker zones of alien beauty reclaiming technology, science swallowed by nature\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 6\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-fast/text-to-video\\\",\\n \\\"prompt\\\": \\\"Drone descent through the open oculus of a derelict Soviet-era radio telescope dish, spiraling downward into the rusted parabolic bowl where a lone botanist catalogs wildflowers growing through cracked concrete, her red jacket the only color against oxidized metal and grey sky, 24mm on a caged FPV drone, the descent creating a vertigo spiral, Tarkovsky Stalker zones of alien beauty reclaiming technology, science swallowed by nature\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 6\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-fast/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"LTX 2.3 Fast Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 Fast by Lightricks - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-fast/text-to-video.\",\"default\":\"lightricks/ltx-2.3-fast/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for the generated video\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 1080p, 1440p, 2160p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. The fast model supports 6-20 seconds. Note: Durations longer than 10 seconds (12, 14, 16, 18, 20) are only supported with 25 FPS and 1080p resolution.\",\"default\":\"6\",\"constraints\":\"Allowed values: 6, 8, 10, 12, 14, 16, 18, 20\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the generated video\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-fast/text-to-video\\\",\\n \\\"prompt\\\": \\\"Drone descent through the open oculus of a derelict Soviet-era radio telescope dish, spiraling downward into the rusted parabolic bowl where a lone botanist catalogs wildflowers growing through cracked concrete, her red jacket the only color against oxidized metal and grey sky, 24mm on a caged FPV drone, the descent creating a vertigo spiral, Tarkovsky Stalker zones of alien beauty reclaiming technology, science swallowed by nature\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 6\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-fast/text-to-video\\\",\\n \\\"prompt\\\": \\\"Drone descent through the open oculus of a derelict Soviet-era radio telescope dish, spiraling downward into the rusted parabolic bowl where a lone botanist catalogs wildflowers growing through cracked concrete, her red jacket the only color against oxidized metal and grey sky, 24mm on a caged FPV drone, the descent creating a vertigo spiral, Tarkovsky Stalker zones of alien beauty reclaiming technology, science swallowed by nature\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 6\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-fast/text-to-video\\\",\\n \\\"prompt\\\": \\\"Drone descent through the open oculus of a derelict Soviet-era radio telescope dish, spiraling downward into the rusted parabolic bowl where a lone botanist catalogs wildflowers growing through cracked concrete, her red jacket the only color against oxidized metal and grey sky, 24mm on a caged FPV drone, the descent creating a vertigo spiral, Tarkovsky Stalker zones of alien beauty reclaiming technology, science swallowed by nature\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 6\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-fast/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "LTX 2.3 Fast Text to Video" modelId: "lightricks/ltx-2.3-fast/text-to-video" diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-pro/audio-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2.3-pro/audio-to-video.md index 0c7b0b92..c2773bb6 100644 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-pro/audio-to-video.md +++ b/model-api-reference/video-generation/lightricks/ltx-2.3-pro/audio-to-video.md @@ -4,7 +4,7 @@ description: "LTX 2.3 Pro Audio to Video API reference for SandBase. Use model l aside: false outline: false apiReferenceKey: "video/lightricks/ltx-2.3-pro/audio-to-video" -apiReferenceJson: "{\"title\":\"LTX 2.3 Pro Audio to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 Pro Audio To Video by Lightricks - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-pro/audio-to-video.\",\"default\":\"lightricks/ltx-2.3-pro/audio-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of how the video should be generated. Required if image_url is not provided. When image_url is provided, this describes how the image should be animated.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of an image to use as the first frame of the video. If not provided, prompt is required.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the audio file to generate a video from. Duration must be between 2 and 20 seconds. Must be publicly accessible or base64 data URI.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/audio-to-video\\\",\\n \\\"prompt\\\": \\\"A woman whispering to the microphone\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/audio-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/audio-to-video/output_url_1.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/audio-to-video\\\",\\n \\\"prompt\\\": \\\"A woman whispering to the microphone\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/audio-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/audio-to-video/output_url_1.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/audio-to-video\\\",\\n \\\"prompt\\\": \\\"A woman whispering to the microphone\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/audio-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/audio-to-video/output_url_1.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/audio-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"LTX 2.3 Pro Audio to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 Pro Audio To Video by Lightricks - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-pro/audio-to-video.\",\"default\":\"lightricks/ltx-2.3-pro/audio-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of how the video should be generated. Required if image_url is not provided. When image_url is provided, this describes how the image should be animated.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of an image to use as the first frame of the video. If not provided, prompt is required.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the audio file to generate a video from. Duration must be between 2 and 20 seconds. Must be publicly accessible or base64 data URI.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to match the input media.\",\"constraints\":\"Allowed values: 16:9, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/audio-to-video\\\",\\n \\\"prompt\\\": \\\"A woman whispering to the microphone\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/audio-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/audio-to-video/output_url_1.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/audio-to-video\\\",\\n \\\"prompt\\\": \\\"A woman whispering to the microphone\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/audio-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/audio-to-video/output_url_1.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/audio-to-video\\\",\\n \\\"prompt\\\": \\\"A woman whispering to the microphone\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/audio-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/audio-to-video/output_url_1.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/audio-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "LTX 2.3 Pro Audio to Video" modelId: "lightricks/ltx-2.3-pro/audio-to-video" diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-pro/extend.md b/model-api-reference/video-generation/lightricks/ltx-2.3-pro/extend.md deleted file mode 100644 index f782aeb8..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-pro/extend.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX 2.3 Pro Extend API Reference" -description: "LTX 2.3 Pro Extend API reference for SandBase. Use model lightricks/ltx-2.3-pro/extend with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-pro/extend" -apiReferenceJson: "{\"title\":\"LTX 2.3 Pro Extend\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 Pro Extend by Lightricks - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-pro/extend.\",\"default\":\"lightricks/ltx-2.3-pro/extend\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Description of what should happen in the extended portion of the video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to extend\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration in seconds to extend the video. Maximum 20 seconds.\",\"default\":\"5\",\"constraints\":\"Range: 1 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/extend\\\",\\n \\\"prompt\\\": \\\"Continue the motion smoothly\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/extend/input_video_0.mp4\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/extend\\\",\\n \\\"prompt\\\": \\\"Continue the motion smoothly\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/extend/input_video_0.mp4\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/extend\\\",\\n \\\"prompt\\\": \\\"Continue the motion smoothly\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/extend/input_video_0.mp4\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/extend\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX 2.3 Pro Extend" - modelId: "lightricks/ltx-2.3-pro/extend" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-pro/extend" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-05T15:25:00.377Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-pro/image-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2.3-pro/image-to-video.md index e8e2ddd1..06683548 100644 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-pro/image-to-video.md +++ b/model-api-reference/video-generation/lightricks/ltx-2.3-pro/image-to-video.md @@ -4,7 +4,7 @@ description: "LTX 2.3 Pro Image to Video API reference for SandBase. Use model l aside: false outline: false apiReferenceKey: "video/lightricks/ltx-2.3-pro/image-to-video" -apiReferenceJson: "{\"title\":\"LTX 2.3 Pro Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 Pro by Lightricks - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-pro/image-to-video.\",\"default\":\"lightricks/ltx-2.3-pro/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for the generated video\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the start image to use for the generated video.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the end image to use for the generated video. When provided, generates a transition video between start and end frames.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 1080p, 1440p, 2160p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"6\",\"constraints\":\"Allowed values: 6, 8, 10\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the generated video\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Periscope-level shot from behind tall grass of two Maasai warriors mid-leap during an adumu jumping dance, bodies fully airborne against a golden savanna sunset, red shuka robes frozen in motion, dust kicked up from the earth catching backlight, 85mm f/1.4 isolating the pair from a blurred circle of onlookers, Steve McCurry meets Emmanuel Lubezki\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Periscope-level shot from behind tall grass of two Maasai warriors mid-leap during an adumu jumping dance, bodies fully airborne against a golden savanna sunset, red shuka robes frozen in motion, dust kicked up from the earth catching backlight, 85mm f/1.4 isolating the pair from a blurred circle of onlookers, Steve McCurry meets Emmanuel Lubezki\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Periscope-level shot from behind tall grass of two Maasai warriors mid-leap during an adumu jumping dance, bodies fully airborne against a golden savanna sunset, red shuka robes frozen in motion, dust kicked up from the earth catching backlight, 85mm f/1.4 isolating the pair from a blurred circle of onlookers, Steve McCurry meets Emmanuel Lubezki\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"LTX 2.3 Pro Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 Pro by Lightricks - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-pro/image-to-video.\",\"default\":\"lightricks/ltx-2.3-pro/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for the generated video\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the start image to use for the generated video.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the end image to use for the generated video. When provided, generates a transition video between start and end frames.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 1080p, 1440p, 2160p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"6\",\"constraints\":\"Allowed values: 6, 8, 10\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the generated video\",\"default\":\"true\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to match the input image.\",\"constraints\":\"Allowed values: 16:9, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Periscope-level shot from behind tall grass of two Maasai warriors mid-leap during an adumu jumping dance, bodies fully airborne against a golden savanna sunset, red shuka robes frozen in motion, dust kicked up from the earth catching backlight, 85mm f/1.4 isolating the pair from a blurred circle of onlookers, Steve McCurry meets Emmanuel Lubezki\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Periscope-level shot from behind tall grass of two Maasai warriors mid-leap during an adumu jumping dance, bodies fully airborne against a golden savanna sunset, red shuka robes frozen in motion, dust kicked up from the earth catching backlight, 85mm f/1.4 isolating the pair from a blurred circle of onlookers, Steve McCurry meets Emmanuel Lubezki\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Periscope-level shot from behind tall grass of two Maasai warriors mid-leap during an adumu jumping dance, bodies fully airborne against a golden savanna sunset, red shuka robes frozen in motion, dust kicked up from the earth catching backlight, 85mm f/1.4 isolating the pair from a blurred circle of onlookers, Steve McCurry meets Emmanuel Lubezki\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "LTX 2.3 Pro Image to Video" modelId: "lightricks/ltx-2.3-pro/image-to-video" diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-pro/retake.md b/model-api-reference/video-generation/lightricks/ltx-2.3-pro/retake.md index e9d8bf1f..ff434827 100644 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-pro/retake.md +++ b/model-api-reference/video-generation/lightricks/ltx-2.3-pro/retake.md @@ -4,7 +4,7 @@ description: "LTX 2.3 Pro Retake API reference for SandBase. Use model lightrick aside: false outline: false apiReferenceKey: "video/lightricks/ltx-2.3-pro/retake" -apiReferenceJson: "{\"title\":\"LTX 2.3 Pro Retake\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 Pro Retake by Lightricks - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-pro/retake.\",\"default\":\"lightricks/ltx-2.3-pro/retake\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to retake the video with\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to retake\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the video to retake in seconds\",\"default\":\"5\",\"constraints\":\"Range: 2 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/retake\\\",\\n \\\"prompt\\\": \\\"Change flower to red rose\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/retake/input_video_0.mp4\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/retake\\\",\\n \\\"prompt\\\": \\\"Change flower to red rose\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/retake/input_video_0.mp4\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/retake\\\",\\n \\\"prompt\\\": \\\"Change flower to red rose\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/retake/input_video_0.mp4\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/retake\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"LTX 2.3 Pro Retake\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 Pro Retake by Lightricks - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-pro/retake.\",\"default\":\"lightricks/ltx-2.3-pro/retake\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to retake the video with\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the video to retake\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the video to retake in seconds\",\"default\":\"5\",\"constraints\":\"Range: 2 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/retake\\\",\\n \\\"prompt\\\": \\\"Change flower to red rose\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/retake/input_video_0.mp4\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/retake\\\",\\n \\\"prompt\\\": \\\"Change flower to red rose\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/retake/input_video_0.mp4\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/retake\\\",\\n \\\"prompt\\\": \\\"Change flower to red rose\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/retake/input_video_0.mp4\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/retake\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "LTX 2.3 Pro Retake" modelId: "lightricks/ltx-2.3-pro/retake" diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-pro/text-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2.3-pro/text-to-video.md index 55e2c105..8b025793 100644 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-pro/text-to-video.md +++ b/model-api-reference/video-generation/lightricks/ltx-2.3-pro/text-to-video.md @@ -4,7 +4,7 @@ description: "LTX 2.3 Pro Text to Video API reference for SandBase. Use model li aside: false outline: false apiReferenceKey: "video/lightricks/ltx-2.3-pro/text-to-video" -apiReferenceJson: "{\"title\":\"LTX 2.3 Pro Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 Pro is Lightricks's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-pro/text-to-video.\",\"default\":\"lightricks/ltx-2.3-pro/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for the generated video\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 1080p, 1440p, 2160p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"6\",\"constraints\":\"Allowed values: 6, 8, 10\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the generated video\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"Through-the-veil shot of a bride's face during an Indian wedding ceremony, camera positioned behind the sheer red dupatta fabric, the embroidered pattern creating a textured overlay on her face, her eyes lined with kohl looking down at henna-covered hands, marigold garlands in soft background bokeh, 85mm f/1.2 focused through the fabric layer, warm tungsten and candlelight, Mira Nair Monsoon Wedding intimacy\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 6\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"Through-the-veil shot of a bride's face during an Indian wedding ceremony, camera positioned behind the sheer red dupatta fabric, the embroidered pattern creating a textured overlay on her face, her eyes lined with kohl looking down at henna-covered hands, marigold garlands in soft background bokeh, 85mm f/1.2 focused through the fabric layer, warm tungsten and candlelight, Mira Nair Monsoon Wedding intimacy\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 6\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"Through-the-veil shot of a bride's face during an Indian wedding ceremony, camera positioned behind the sheer red dupatta fabric, the embroidered pattern creating a textured overlay on her face, her eyes lined with kohl looking down at henna-covered hands, marigold garlands in soft background bokeh, 85mm f/1.2 focused through the fabric layer, warm tungsten and candlelight, Mira Nair Monsoon Wedding intimacy\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 6\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"LTX 2.3 Pro Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 Pro is Lightricks's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-pro/text-to-video.\",\"default\":\"lightricks/ltx-2.3-pro/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for the generated video\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 1080p, 1440p, 2160p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"6\",\"constraints\":\"Allowed values: 6, 8, 10\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio for the generated video\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"Through-the-veil shot of a bride's face during an Indian wedding ceremony, camera positioned behind the sheer red dupatta fabric, the embroidered pattern creating a textured overlay on her face, her eyes lined with kohl looking down at henna-covered hands, marigold garlands in soft background bokeh, 85mm f/1.2 focused through the fabric layer, warm tungsten and candlelight, Mira Nair Monsoon Wedding intimacy\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 6\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"Through-the-veil shot of a bride's face during an Indian wedding ceremony, camera positioned behind the sheer red dupatta fabric, the embroidered pattern creating a textured overlay on her face, her eyes lined with kohl looking down at henna-covered hands, marigold garlands in soft background bokeh, 85mm f/1.2 focused through the fabric layer, warm tungsten and candlelight, Mira Nair Monsoon Wedding intimacy\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 6\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"Through-the-veil shot of a bride's face during an Indian wedding ceremony, camera positioned behind the sheer red dupatta fabric, the embroidered pattern creating a textured overlay on her face, her eyes lined with kohl looking down at henna-covered hands, marigold garlands in soft background bokeh, 85mm f/1.2 focused through the fabric layer, warm tungsten and candlelight, Mira Nair Monsoon Wedding intimacy\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 6\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "LTX 2.3 Pro Text to Video" modelId: "lightricks/ltx-2.3-pro/text-to-video" diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-pro/video-extend.md b/model-api-reference/video-generation/lightricks/ltx-2.3-pro/video-extend.md new file mode 100644 index 00000000..ebd842a0 --- /dev/null +++ b/model-api-reference/video-generation/lightricks/ltx-2.3-pro/video-extend.md @@ -0,0 +1,21 @@ +--- +title: "LTX 2.3 Pro Video Extend API Reference" +description: "LTX 2.3 Pro Video Extend API reference for SandBase. Use model lightricks/ltx-2.3-pro/video-extend with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/lightricks/ltx-2.3-pro/video-extend" +apiReferenceJson: "{\"title\":\"LTX 2.3 Pro Video Extend\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 Pro Extend by Lightricks - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-pro/video-extend.\",\"default\":\"lightricks/ltx-2.3-pro/video-extend\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Description of what should happen in the extended portion of the video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the video to extend\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration in seconds to extend the video. Maximum 20 seconds.\",\"default\":\"5\",\"constraints\":\"Range: 2 to 20\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/video-extend\\\",\\n \\\"prompt\\\": \\\"Continue the motion smoothly\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/extend/input_video_0.mp4\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/video-extend\\\",\\n \\\"prompt\\\": \\\"Continue the motion smoothly\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/extend/input_video_0.mp4\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/video-extend\\\",\\n \\\"prompt\\\": \\\"Continue the motion smoothly\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/extend/input_video_0.mp4\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-pro/video-extend\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "LTX 2.3 Pro Video Extend" + modelId: "lightricks/ltx-2.3-pro/video-extend" + vendor: "Lightricks" + vendorSlug: "lightricks" + modelSlug: "ltx-2.3-pro/video-extend" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-03-05T15:25:00.377Z" + capabilities: ["video-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-quality/audio-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2.3-quality/audio-to-video.md deleted file mode 100644 index b5fdcae8..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-quality/audio-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ltx 2.3 Quality API Reference — Lightricks / Audio To Video" -description: "Ltx 2.3 Quality API reference for SandBase. Use model lightricks/ltx-2.3-quality/audio-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-quality/audio-to-video" -apiReferenceJson: "{\"title\":\"Ltx 2.3 Quality\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 Quality Audio To Video by Lightricks - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-quality/audio-to-video.\",\"default\":\"lightricks/ltx-2.3-quality/audio-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to guide the audio-driven video generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Optional URL of an image to use as the first frame. When omitted, generation runs from text and audio only.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the audio track that drives generation.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Final output size. 'auto' matches the input image aspect ratio when image_url is provided; otherwise it uses a landscape fallback.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to include audio in the returned video. When disabled, the final MP4 is returned without an audio track.\",\"default\":\"true\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Classifier-free guidance scale. The default is tuned for fast, high-quality generation.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of inference steps. Defaults to 15 and can be increased up to 30.\",\"default\":\"15\",\"constraints\":\"Range: 8 to 30\"},{\"name\":\"video_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality preset of the generated video.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"},{\"name\":\"frames_per_second\",\"type\":\"number\",\"required\":false,\"description\":\"Frames per second of the generated video.\",\"default\":\"24\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"match_audio_length\",\"type\":\"boolean\",\"required\":false,\"description\":\"When enabled, derives the number of frames from the audio duration and frames_per_second. When disabled, uses num_frames.\",\"default\":\"true\"},{\"name\":\"image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Conditioning strength for the optional first frame. 1.0 keeps the image more strictly; lower values give the model more freedom.\",\"default\":\"0.7\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"video_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the generated video.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate.\",\"default\":\"121\",\"constraints\":\"Range: 9 to 481\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-quality/audio-to-video\\\",\\n \\\"prompt\\\": \\\"A person facing the camera sings with expressive natural motion, cinematic portrait lighting, realistic facial performance.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/ltx-2-a2v-input-image.png\\\",\\n \\\"audio\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/ltx-2-a2v-input-audio.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-quality/audio-to-video\\\",\\n \\\"prompt\\\": \\\"A person facing the camera sings with expressive natural motion, cinematic portrait lighting, realistic facial performance.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/Falserverless/example_inputs/ltx-2-a2v-input-image.png\\\",\\n \\\"audio\\\": \\\"https://storage.googleapis.com/Falserverless/example_inputs/ltx-2-a2v-input-audio.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-quality/audio-to-video\\\",\\n \\\"prompt\\\": \\\"A person facing the camera sings with expressive natural motion, cinematic portrait lighting, realistic facial performance.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/ltx-2-a2v-input-image.png\\\",\\n \\\"audio\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/ltx-2-a2v-input-audio.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-quality/audio-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ltx 2.3 Quality" - modelId: "lightricks/ltx-2.3-quality/audio-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-quality/audio-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-01T22:48:48.61Z" - capabilities: ["audio-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-quality/extend-video.md b/model-api-reference/video-generation/lightricks/ltx-2.3-quality/extend-video.md deleted file mode 100644 index 2f7938a7..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-quality/extend-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ltx 2.3 Quality API Reference — Lightricks Quality / Extend Video" -description: "Ltx 2.3 Quality API reference for SandBase. Use model lightricks/ltx-2.3-quality/extend-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-quality/extend-video" -apiReferenceJson: "{\"title\":\"Ltx 2.3 Quality\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 Quality Extend Video by Lightricks - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-quality/extend-video.\",\"default\":\"lightricks/ltx-2.3-quality/extend-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt describing how the video should continue.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional keyframe image for the far end of the extension: the final frame for forward extension, or the new first frame for backward extension.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to extend.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The size of the generated video. 'auto' follows the source video size/aspect up to the LTX limits; the source is scaled to the final size in the stitched output. Sizes are 32px-aligned (e.g. 1920x1080 is delivered as 1888x1056). Higher resolutions reduce the maximum stable extension length; lower resolutions can run longer.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate new audio for the extension segment (crossfaded with the source audio at the seam). When disabled, the source video's own audio track is preserved and the extension stays silent.\",\"default\":\"true\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Classifier-free guidance scale. The default is tuned for fast, high-quality generation.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of inference steps. Defaults to 15 and can be increased up to 30.\",\"default\":\"15\",\"constraints\":\"Range: 8 to 30\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"},{\"name\":\"num_context_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of source frames used as context/overlap for the extension. Snapped down to the LTX temporal grid (8k+1) and clamped to the frames available in the source video.\",\"default\":\"25\",\"constraints\":\"Range: 9 to 121\"},{\"name\":\"video_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the generated video.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"},{\"name\":\"video_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality preset of the generated video.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"},{\"name\":\"match_input_fps\",\"type\":\"boolean\",\"required\":false,\"description\":\"When enabled, the output FPS matches the source video's FPS (rounded to an integer and clamped to the supported range) instead of frames_per_second.\",\"default\":\"true\"},{\"name\":\"video_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Conditioning strength of the source context frames. 1.0 keeps the overlap locked to the source for a seamless transition; lower values give the model more freedom.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate for the extension segment, including num_context_frames of overlap with the source video. The new content adds approximately (num_frames - num_context_frames) / frames_per_second seconds. The stable generation budget caps the resolution x frames volume: at 24 fps roughly 20s at 480p-class, 11s at 720p-class and 5s at 1080p-class; a request above the budget returns a 422 (lower num_frames or use a smaller resolution).\",\"default\":\"121\",\"constraints\":\"Range: 9 to 481\"},{\"name\":\"frames_per_second\",\"type\":\"number\",\"required\":false,\"description\":\"Frames per second of the generated video.\",\"default\":\"24\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"extend_direction\",\"type\":\"string\",\"required\":false,\"description\":\"Direction to extend the video. 'forward' continues from the end of the video, 'backward' generates a new beginning.\",\"default\":\"forward\",\"constraints\":\"Allowed values: forward, backward\"},{\"name\":\"end_image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Conditioning strength of the optional end keyframe. 1.0 = exact match, lower = more freedom for the model.\",\"default\":\"1\",\"constraints\":\"Range: 0 to 1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-quality/extend-video\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://v3b.fal.media/files/b/0a8824b1/sdm0KfmenrlywesfzY1Y1_if6euPp1.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-quality/extend-video\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://v3b.fal.media/files/b/0a8824b1/sdm0KfmenrlywesfzY1Y1_if6euPp1.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-quality/extend-video\\\",\\n \\\"prompt\\\": \\\"Continue the scene naturally, maintaining the same style and motion.\\\",\\n \\\"video\\\": \\\"https://v3b.fal.media/files/b/0a8824b1/sdm0KfmenrlywesfzY1Y1_if6euPp1.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-quality/extend-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ltx 2.3 Quality" - modelId: "lightricks/ltx-2.3-quality/extend-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-quality/extend-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-07-07T05:44:17.692Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-quality/hdr.md b/model-api-reference/video-generation/lightricks/ltx-2.3-quality/hdr.md deleted file mode 100644 index a6232389..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-quality/hdr.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ltx 2.3 Quality API Reference — Lightricks Ltx 2.3 Quality / Hdr" -description: "Ltx 2.3 Quality API reference for SandBase. Use model lightricks/ltx-2.3-quality/hdr with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-quality/hdr" -apiReferenceJson: "{\"title\":\"Ltx 2.3 Quality\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 Quality Hdr is Lightricks's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-quality/hdr.\",\"default\":\"lightricks/ltx-2.3-quality/hdr\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to guide generation.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"SDR input video to lift into HDR. This mode is video-conditioned.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video size. The output is generated at up to ~720p (shorter side capped at 704px); larger requested sizes are scaled down, preserving the aspect ratio.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to include audio in the returned video. When disabled, the final MP4 is returned without an audio track.\",\"default\":\"true\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Classifier-free guidance scale. The default is tuned for fast, high-quality generation.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of inference steps. Defaults to 15 and can be increased up to 30.\",\"default\":\"15\",\"constraints\":\"Range: 8 to 30\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"},{\"name\":\"video_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the generated video.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate.\",\"default\":\"121\",\"constraints\":\"Range: 9 to 481\"},{\"name\":\"frames_per_second\",\"type\":\"number\",\"required\":false,\"description\":\"Frames per second of the generated video.\",\"default\":\"24\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"video_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality preset of the generated video.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-quality/hdr\\\",\\n \\\"prompt\\\": \\\"A sunset over the Pacific Ocean, vibrant orange and purple sky, deep contrast, cinematic HDR.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-quality/hdr\\\",\\n \\\"prompt\\\": \\\"A sunset over the Pacific Ocean, vibrant orange and purple sky, deep contrast, cinematic HDR.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-quality/hdr\\\",\\n \\\"prompt\\\": \\\"A sunset over the Pacific Ocean, vibrant orange and purple sky, deep contrast, cinematic HDR.\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-quality/hdr\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ltx 2.3 Quality" - modelId: "lightricks/ltx-2.3-quality/hdr" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-quality/hdr" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-01T22:49:25.618Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-quality/image-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2.3-quality/image-to-video.md deleted file mode 100644 index 04e35c71..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-quality/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ltx 2.3 Quality API Reference — Lightricks / Image To Video" -description: "Ltx 2.3 Quality API reference for SandBase. Use model lightricks/ltx-2.3-quality/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-quality/image-to-video" -apiReferenceJson: "{\"title\":\"Ltx 2.3 Quality\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 Quality by Lightricks - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-quality/image-to-video.\",\"default\":\"lightricks/ltx-2.3-quality/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to guide the video generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the starting image.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The size of the generated video. 'auto' derives the size from the input image aspect ratio.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to include audio in the returned video. When disabled, the final MP4 is returned without an audio track.\",\"default\":\"true\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Classifier-free guidance scale. The default is tuned for fast, high-quality generation.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of inference steps. Defaults to 15 and can be increased up to 30.\",\"default\":\"15\",\"constraints\":\"Range: 8 to 30\"},{\"name\":\"video_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality preset of the generated video.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"},{\"name\":\"video_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the generated video.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate.\",\"default\":\"121\",\"constraints\":\"Range: 9 to 481\"},{\"name\":\"image_strength\",\"type\":\"number\",\"required\":false,\"description\":\"Conditioning strength on the start image. 1.0 = exact first-frame match, lower = more freedom for the model.\",\"default\":\"0.7\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"frames_per_second\",\"type\":\"number\",\"required\":false,\"description\":\"Frames per second of the generated video.\",\"default\":\"24\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-quality/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/ltxv-2-i2v-input.jpg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-quality/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/Falserverless/example_inputs/ltxv-2-i2v-input.jpg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-quality/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman stands still amid a busy neon-lit street at night. The camera slowly dollies in toward her face as people blur past, their motion emphasizing her calm presence.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/ltxv-2-i2v-input.jpg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-quality/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ltx 2.3 Quality" - modelId: "lightricks/ltx-2.3-quality/image-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-quality/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-01T22:48:27.341Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3-quality/text-to-video.md b/model-api-reference/video-generation/lightricks/ltx-2.3-quality/text-to-video.md deleted file mode 100644 index 290b19f2..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3-quality/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ltx 2.3 Quality API Reference — Lightricks / Text To Video" -description: "Ltx 2.3 Quality API reference for SandBase. Use model lightricks/ltx-2.3-quality/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3-quality/text-to-video" -apiReferenceJson: "{\"title\":\"Ltx 2.3 Quality\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 Quality is Lightricks's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3-quality/text-to-video.\",\"default\":\"lightricks/ltx-2.3-quality/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The size of the generated video.\",\"default\":\"landscape_16_9\",\"constraints\":\"Allowed values: square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9\"},{\"name\":\"generate_audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to include audio in the returned video. When disabled, the final MP4 is returned without an audio track.\",\"default\":\"true\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Classifier-free guidance scale. The default is tuned for fast, high-quality generation.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of inference steps. Defaults to 15 and can be increased up to 30.\",\"default\":\"15\",\"constraints\":\"Range: 8 to 30\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate.\",\"default\":\"121\",\"constraints\":\"Range: 9 to 481\"},{\"name\":\"video_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality preset of the generated video.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"},{\"name\":\"frames_per_second\",\"type\":\"number\",\"required\":false,\"description\":\"Frames per second of the generated video.\",\"default\":\"24\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"video_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the generated video.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3-quality/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-quality/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3-quality/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cowboy walking through a dusty town at high noon, camera following from behind, cinematic depth, realistic lighting, western mood, 4K film grain.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3-quality/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ltx 2.3 Quality" - modelId: "lightricks/ltx-2.3-quality/text-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3-quality/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-01T22:47:56.331Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-2.3/reframe.md b/model-api-reference/video-generation/lightricks/ltx-2.3/reframe.md deleted file mode 100644 index 2c17843f..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-2.3/reframe.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Ltx 2.3 API Reference" -description: "Ltx 2.3 API reference for SandBase. Use model lightricks/ltx-2.3/reframe with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-2.3/reframe" -apiReferenceJson: "{\"title\":\"Ltx 2.3\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx 2.3 Reframe is Lightricks's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-2.3/reframe.\",\"default\":\"lightricks/ltx-2.3/reframe\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to reframe. Must be publicly accessible or a base64 data URI. The video is re-cropped to the target aspect ratio and the newly exposed areas are filled with generated content that matches the original. Max duration 60 seconds.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The target output resolution tier. Combined with the aspect ratio to determine the output size.\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 720p, 1080p\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-2.3/reframe\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/falserverless/example_outputs/ltxv-2-t2v-output.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3/reframe\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/Falserverless/example_outputs/ltxv-2-t2v-output.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-2.3/reframe\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/falserverless/example_outputs/ltxv-2-t2v-output.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-2.3/reframe\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Ltx 2.3" - modelId: "lightricks/ltx-2.3/reframe" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-2.3/reframe" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-07-16T18:25:47.491Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-video-13b-dev.md b/model-api-reference/video-generation/lightricks/ltx-video-13b-dev.md deleted file mode 100644 index be0b3357..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-video-13b-dev.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX Video-0.9.7 13B API Reference — Lightricks Ltx Video 13b Dev" -description: "LTX Video-0.9.7 13B API reference for SandBase. Use model lightricks/ltx-video-13b-dev with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-video-13b-dev" -apiReferenceJson: "{\"title\":\"LTX Video-0.9.7 13B\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx Video 13b Dev is Lightricks's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-video-13b-dev.\",\"default\":\"lightricks/ltx-video-13b-dev\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt to guide generation\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for generation\"},{\"name\":\"reverse_video\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to reverse the video.\",\"default\":\"false\"},{\"name\":\"enable_detail_pass\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use a detail pass. If True, the model will perform a second pass to refine the video and enhance details. This incurs a 2.0x cost multiplier on the base price.\",\"default\":\"false\"},{\"name\":\"second_pass_skip_initial_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to skip in the initial steps of the second pass. By skipping some steps at the beginning, the second pass can focus on smaller details instead of larger changes.\",\"default\":\"17\",\"constraints\":\"Range: 0 to 49\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA weights to use for generation\",\"default\":\"\"},{\"name\":\"temporal_adain_factor\",\"type\":\"number\",\"required\":false,\"description\":\"The factor for adaptive instance normalization (AdaIN) applied to generated video chunks after the first. This can help deal with a gradual increase in saturation/contrast in the generated video by normalizing the color distribution across the video. A high value will ensure the color distribution is more consistent across the video, while a low value will allow for more variation in color distribution.\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames in the video.\",\"default\":\"121\",\"constraints\":\"Range: 9 to 1441\"},{\"name\":\"tone_map_compression_ratio\",\"type\":\"number\",\"required\":false,\"description\":\"The compression ratio for tone mapping. This is used to compress the dynamic range of the video to improve visual quality. A value of 0.0 means no compression, while a value of 1.0 means maximum compression.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"first_pass_num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of inference steps during the first pass.\",\"default\":\"30\",\"constraints\":\"Range: 2 to 50\"},{\"name\":\"frame_rate\",\"type\":\"integer\",\"required\":false,\"description\":\"The frame rate of the video.\",\"default\":\"24\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"expand_prompt\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to expand the prompt using a language model.\",\"default\":\"false\"},{\"name\":\"second_pass_num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of inference steps during the second pass.\",\"default\":\"30\",\"constraints\":\"Range: 2 to 50\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-video-13b-dev\\\",\\n \\\"prompt\\\": \\\"A cinematic fast-tracking shot follows a vintage, teal camper van as it descends a winding mountain trail. The van, slightly weathered but well-maintained, is the central focus, its retro design emphasized by the motion blur. Medium shot reveals the dusty, ochre trail, edged with vibrant green pine trees. Close-up on the van's tires shows the gravel spraying, highlighting the speed and rugged terrain. Sunlight filters through the trees, casting dappled shadows on the van and the trail. The background is a hazy, majestic mountain range bathed in warm, golden light. The overall mood is adventurous and exhilarating. High resolution 4k movie scene.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-video-13b-dev\\\",\\n \\\"prompt\\\": \\\"A cinematic fast-tracking shot follows a vintage, teal camper van as it descends a winding mountain trail. The van, slightly weathered but well-maintained, is the central focus, its retro design emphasized by the motion blur. Medium shot reveals the dusty, ochre trail, edged with vibrant green pine trees. Close-up on the van's tires shows the gravel spraying, highlighting the speed and rugged terrain. Sunlight filters through the trees, casting dappled shadows on the van and the trail. The background is a hazy, majestic mountain range bathed in warm, golden light. The overall mood is adventurous and exhilarating. High resolution 4k movie scene.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-video-13b-dev\\\",\\n \\\"prompt\\\": \\\"A cinematic fast-tracking shot follows a vintage, teal camper van as it descends a winding mountain trail. The van, slightly weathered but well-maintained, is the central focus, its retro design emphasized by the motion blur. Medium shot reveals the dusty, ochre trail, edged with vibrant green pine trees. Close-up on the van's tires shows the gravel spraying, highlighting the speed and rugged terrain. Sunlight filters through the trees, casting dappled shadows on the van and the trail. The background is a hazy, majestic mountain range bathed in warm, golden light. The overall mood is adventurous and exhilarating. High resolution 4k movie scene.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-video-13b-dev\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX Video-0.9.7 13B" - modelId: "lightricks/ltx-video-13b-dev" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-video-13b-dev" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-17T01:51:47.329Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-video-13b-dev/multiconditioning.md b/model-api-reference/video-generation/lightricks/ltx-video-13b-dev/multiconditioning.md deleted file mode 100644 index 56037bec..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-video-13b-dev/multiconditioning.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX Video-0.9.7 13B API Reference — Lightricks Multiconditioning" -description: "LTX Video-0.9.7 13B API reference for SandBase. Use model lightricks/ltx-video-13b-dev/multiconditioning with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-video-13b-dev/multiconditioning" -apiReferenceJson: "{\"title\":\"LTX Video-0.9.7 13B\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx Video 13b Dev Multiconditioning is Lightricks's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-video-13b-dev/multiconditioning.\",\"default\":\"lightricks/ltx-video-13b-dev/multiconditioning\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt to guide generation\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"URL of images to use as conditioning\",\"default\":\"\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"Videos to use as conditioning\",\"default\":\"\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"reverse_video\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to reverse the video.\",\"default\":\"false\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for generation\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-video-13b-dev/multiconditioning\\\",\\n \\\"prompt\\\": \\\"A vibrant, abstract composition featuring a person with outstretched arms, rendered in a kaleidoscope of colors against a deep, dark background. The figure is composed of intricate, swirling patterns reminiscent of a mosaic, with hues of orange, yellow, blue, and green that evoke the style of artists such as Wassily Kandinsky or Bridget Riley. The camera zooms into the face striking portrait of a man, reimagined through the lens of old-school video-game graphics. The subject's face is rendered in a kaleidoscope of colors, with bold blues and reds set against a vibrant yellow backdrop. His dark hair is pulled back, framing his profile in a dramatic pose.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-video-13b-dev/multiconditioning\\\",\\n \\\"prompt\\\": \\\"A vibrant, abstract composition featuring a person with outstretched arms, rendered in a kaleidoscope of colors against a deep, dark background. The figure is composed of intricate, swirling patterns reminiscent of a mosaic, with hues of orange, yellow, blue, and green that evoke the style of artists such as Wassily Kandinsky or Bridget Riley. The camera zooms into the face striking portrait of a man, reimagined through the lens of old-school video-game graphics. The subject's face is rendered in a kaleidoscope of colors, with bold blues and reds set against a vibrant yellow backdrop. His dark hair is pulled back, framing his profile in a dramatic pose.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-video-13b-dev/multiconditioning\\\",\\n \\\"prompt\\\": \\\"A vibrant, abstract composition featuring a person with outstretched arms, rendered in a kaleidoscope of colors against a deep, dark background. The figure is composed of intricate, swirling patterns reminiscent of a mosaic, with hues of orange, yellow, blue, and green that evoke the style of artists such as Wassily Kandinsky or Bridget Riley. The camera zooms into the face striking portrait of a man, reimagined through the lens of old-school video-game graphics. The subject's face is rendered in a kaleidoscope of colors, with bold blues and reds set against a vibrant yellow backdrop. His dark hair is pulled back, framing his profile in a dramatic pose.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-video-13b-dev/multiconditioning\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX Video-0.9.7 13B" - modelId: "lightricks/ltx-video-13b-dev/multiconditioning" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-video-13b-dev/multiconditioning" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-17T01:56:16.027Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-video-13b-distilled/image-to-video.md b/model-api-reference/video-generation/lightricks/ltx-video-13b-distilled/image-to-video.md deleted file mode 100644 index f297a01f..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-video-13b-distilled/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX Video-0.9.7 13B Distilled API Reference — Lightricks To Video" -description: "LTX Video-0.9.7 13B Distilled API reference for SandBase. Use model lightricks/ltx-video-13b-distilled/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-video-13b-distilled/image-to-video" -apiReferenceJson: "{\"title\":\"LTX Video-0.9.7 13B Distilled\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx Video 13b Distilled by Lightricks - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-video-13b-distilled/image-to-video.\",\"default\":\"lightricks/ltx-video-13b-distilled/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt to guide generation\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Image URL for Image-to-Video task\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA weights to use for generation\",\"default\":\"\"},{\"name\":\"expand_prompt\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to expand the prompt using a language model.\",\"default\":\"false\"},{\"name\":\"second_pass_skip_initial_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to skip in the initial steps of the second pass. By skipping some steps at the beginning, the second pass can focus on smaller details instead of larger changes.\",\"default\":\"5\",\"constraints\":\"Range: 1 to 11\"},{\"name\":\"frame_rate\",\"type\":\"integer\",\"required\":false,\"description\":\"The frame rate of the video.\",\"default\":\"24\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"tone_map_compression_ratio\",\"type\":\"number\",\"required\":false,\"description\":\"The compression ratio for tone mapping. This is used to compress the dynamic range of the video to improve visual quality. A value of 0.0 means no compression, while a value of 1.0 means maximum compression.\",\"default\":\"0\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"enable_detail_pass\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use a detail pass. If True, the model will perform a second pass to refine the video and enhance details. This incurs a 2.0x cost multiplier on the base price.\",\"default\":\"false\"},{\"name\":\"first_pass_num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of inference steps during the first pass.\",\"default\":\"8\",\"constraints\":\"Range: 2 to 12\"},{\"name\":\"constant_rate_factor\",\"type\":\"integer\",\"required\":false,\"description\":\"The constant rate factor (CRF) to compress input media with. Compressed input media more closely matches the model's training data, which can improve motion quality.\",\"default\":\"29\",\"constraints\":\"Range: 0 to 51\"},{\"name\":\"temporal_adain_factor\",\"type\":\"number\",\"required\":false,\"description\":\"The factor for adaptive instance normalization (AdaIN) applied to generated video chunks after the first. This can help deal with a gradual increase in saturation/contrast in the generated video by normalizing the color distribution across the video. A high value will ensure the color distribution is more consistent across the video, while a low value will allow for more variation in color distribution.\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"second_pass_num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of inference steps during the second pass.\",\"default\":\"8\",\"constraints\":\"Range: 2 to 12\"},{\"name\":\"reverse_video\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to reverse the video.\",\"default\":\"false\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames in the video.\",\"default\":\"121\",\"constraints\":\"Range: 9 to 1441\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for generation\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-video-13b-distilled/image-to-video\\\",\\n \\\"prompt\\\": \\\"The astronaut gets up and walks away\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-video-13b-distilled/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-video-13b-distilled/image-to-video\\\",\\n \\\"prompt\\\": \\\"The astronaut gets up and walks away\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-video-13b-distilled/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-video-13b-distilled/image-to-video\\\",\\n \\\"prompt\\\": \\\"The astronaut gets up and walks away\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-video-13b-distilled/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-video-13b-distilled/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX Video-0.9.7 13B Distilled" - modelId: "lightricks/ltx-video-13b-distilled/image-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-video-13b-distilled/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-17T01:59:46.017Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-video-lora/image-to-video.md b/model-api-reference/video-generation/lightricks/ltx-video-lora/image-to-video.md deleted file mode 100644 index 66e39718..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-video-lora/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX Video-0.9.7 LoRA API Reference — Lightricks / Image To Video" -description: "LTX Video-0.9.7 LoRA API reference for SandBase. Use model lightricks/ltx-video-lora/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-video-lora/image-to-video" -apiReferenceJson: "{\"title\":\"LTX Video-0.9.7 LoRA\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx Video Lora is Lightricks's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-video-lora/image-to-video.\",\"default\":\"lightricks/ltx-video-lora/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to use as input.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"reverse_video\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to reverse the video.\",\"default\":\"false\"},{\"name\":\"number_of_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames in the video. Deprecated. Use `num_frames` instead.\",\"constraints\":\"Range: 9 to 161\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for generation.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"30\",\"constraints\":\"Range: 2 to 50\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-video-lora/image-to-video\\\",\\n \\\"prompt\\\": \\\"The astronaut gets up and walks away\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-video-lora/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-video-lora/image-to-video\\\",\\n \\\"prompt\\\": \\\"The astronaut gets up and walks away\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-video-lora/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-video-lora/image-to-video\\\",\\n \\\"prompt\\\": \\\"The astronaut gets up and walks away\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-video-lora/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-video-lora/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX Video-0.9.7 LoRA" - modelId: "lightricks/ltx-video-lora/image-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-video-lora/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-15T19:36:01.467Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-video-lora/multiconditioning.md b/model-api-reference/video-generation/lightricks/ltx-video-lora/multiconditioning.md deleted file mode 100644 index 112163c0..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-video-lora/multiconditioning.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX Video-0.9.7 LoRA API Reference — Lightricks Multiconditioning" -description: "LTX Video-0.9.7 LoRA API reference for SandBase. Use model lightricks/ltx-video-lora/multiconditioning with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-video-lora/multiconditioning" -apiReferenceJson: "{\"title\":\"LTX Video-0.9.7 LoRA\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx Video Lora Multiconditioning by Lightricks - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-video-lora/multiconditioning.\",\"default\":\"lightricks/ltx-video-lora/multiconditioning\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"The image conditions to use for generation.\",\"default\":\"\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"The video conditions to use for generation.\",\"default\":\"\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"reverse_video\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to reverse the video.\",\"default\":\"false\"},{\"name\":\"number_of_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames in the video. Deprecated. Use `num_frames` instead.\",\"constraints\":\"Range: 9 to 161\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for generation.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"30\",\"constraints\":\"Range: 2 to 50\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-video-lora/multiconditioning\\\",\\n \\\"prompt\\\": \\\"A vibrant, abstract composition featuring a person with outstretched arms, rendered in a kaleidoscope of colors against a deep, dark background. The figure is composed of intricate, swirling patterns reminiscent of a mosaic, with hues of orange, yellow, blue, and green that evoke the style of artists such as Wassily Kandinsky or Bridget Riley. The camera zooms into the face striking portrait of a man, reimagined through the lens of old-school video-game graphics. The subject's face is rendered in a kaleidoscope of colors, with bold blues and reds set against a vibrant yellow backdrop. His dark hair is pulled back, framing his profile in a dramatic pose\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-video-lora/multiconditioning\\\",\\n \\\"prompt\\\": \\\"A vibrant, abstract composition featuring a person with outstretched arms, rendered in a kaleidoscope of colors against a deep, dark background. The figure is composed of intricate, swirling patterns reminiscent of a mosaic, with hues of orange, yellow, blue, and green that evoke the style of artists such as Wassily Kandinsky or Bridget Riley. The camera zooms into the face striking portrait of a man, reimagined through the lens of old-school video-game graphics. The subject's face is rendered in a kaleidoscope of colors, with bold blues and reds set against a vibrant yellow backdrop. His dark hair is pulled back, framing his profile in a dramatic pose\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-video-lora/multiconditioning\\\",\\n \\\"prompt\\\": \\\"A vibrant, abstract composition featuring a person with outstretched arms, rendered in a kaleidoscope of colors against a deep, dark background. The figure is composed of intricate, swirling patterns reminiscent of a mosaic, with hues of orange, yellow, blue, and green that evoke the style of artists such as Wassily Kandinsky or Bridget Riley. The camera zooms into the face striking portrait of a man, reimagined through the lens of old-school video-game graphics. The subject's face is rendered in a kaleidoscope of colors, with bold blues and reds set against a vibrant yellow backdrop. His dark hair is pulled back, framing his profile in a dramatic pose\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-video-lora/multiconditioning\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX Video-0.9.7 LoRA" - modelId: "lightricks/ltx-video-lora/multiconditioning" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-video-lora/multiconditioning" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-15T19:38:04.992Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-video-v095.md b/model-api-reference/video-generation/lightricks/ltx-video-v095.md deleted file mode 100644 index b4ec6949..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-video-v095.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX Video-0.9.5 API Reference" -description: "LTX Video-0.9.5 API reference for SandBase. Use model lightricks/ltx-video-v095 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-video-v095" -apiReferenceJson: "{\"title\":\"LTX Video-0.9.5\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx Video V095 by Lightricks - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-video-v095.\",\"default\":\"lightricks/ltx-video-v095\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt to guide generation\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (480p or 720p).\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for generation\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"40\",\"constraints\":\"Range: 2 to 50\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-video-v095\\\",\\n \\\"prompt\\\": \\\"A cute cat walking on a sidewalk\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-video-v095\\\",\\n \\\"prompt\\\": \\\"A cute cat walking on a sidewalk\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-video-v095\\\",\\n \\\"prompt\\\": \\\"A cute cat walking on a sidewalk\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-video-v095\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX Video-0.9.5" - modelId: "lightricks/ltx-video-v095" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-video-v095" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-05T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-video.md b/model-api-reference/video-generation/lightricks/ltx-video.md deleted file mode 100644 index f00b373c..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX Video (preview) API Reference — Lightricks Ltx Video API" -description: "LTX Video (preview) API reference for SandBase. Use model lightricks/ltx-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-video" -apiReferenceJson: "{\"title\":\"LTX Video (preview)\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx Video is Lightricks's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-video.\",\"default\":\"lightricks/ltx-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The guidance scale to use.\",\"default\":\"3\",\"constraints\":\"Maximum: 10\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to take.\",\"default\":\"30\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for random number generation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-video\\\",\\n \\\"prompt\\\": \\\"A man stands waist-deep in a crystal-clear mountain pool, his back turned to a massive, thundering waterfall that cascades down jagged cliffs behind him. He wears a dark blue swimming shorts and his muscular back glistens with water droplets. The camera moves in a dynamic circular motion around him, starting from his right side and sweeping left, maintaining a slightly low angle that emphasizes the towering height of the waterfall. As the camera moves, the man slowly turns his head to follow its movement, his expression one of awe as he gazes up at the natural wonder. The waterfall creates a misty atmosphere, with sunlight filtering through the spray to create rainbow refractions. The water churns and ripples around him, reflecting the dramatic landscape. The handheld camera movement adds a subtle shake that enhances the raw, untamed energy of the scene. The lighting is natural and bright, with the sun positioned behind the waterfall, creating a backlit effect that silhouettes the falling water and illuminates the mist.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-video\\\",\\n \\\"prompt\\\": \\\"A man stands waist-deep in a crystal-clear mountain pool, his back turned to a massive, thundering waterfall that cascades down jagged cliffs behind him. He wears a dark blue swimming shorts and his muscular back glistens with water droplets. The camera moves in a dynamic circular motion around him, starting from his right side and sweeping left, maintaining a slightly low angle that emphasizes the towering height of the waterfall. As the camera moves, the man slowly turns his head to follow its movement, his expression one of awe as he gazes up at the natural wonder. The waterfall creates a misty atmosphere, with sunlight filtering through the spray to create rainbow refractions. The water churns and ripples around him, reflecting the dramatic landscape. The handheld camera movement adds a subtle shake that enhances the raw, untamed energy of the scene. The lighting is natural and bright, with the sun positioned behind the waterfall, creating a backlit effect that silhouettes the falling water and illuminates the mist.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-video\\\",\\n \\\"prompt\\\": \\\"A man stands waist-deep in a crystal-clear mountain pool, his back turned to a massive, thundering waterfall that cascades down jagged cliffs behind him. He wears a dark blue swimming shorts and his muscular back glistens with water droplets. The camera moves in a dynamic circular motion around him, starting from his right side and sweeping left, maintaining a slightly low angle that emphasizes the towering height of the waterfall. As the camera moves, the man slowly turns his head to follow its movement, his expression one of awe as he gazes up at the natural wonder. The waterfall creates a misty atmosphere, with sunlight filtering through the spray to create rainbow refractions. The water churns and ripples around him, reflecting the dramatic landscape. The handheld camera movement adds a subtle shake that enhances the raw, untamed energy of the scene. The lighting is natural and bright, with the sun positioned behind the waterfall, creating a backlit effect that silhouettes the falling water and illuminates the mist.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX Video (preview)" - modelId: "lightricks/ltx-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-10-04T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltx-video/image-to-video.md b/model-api-reference/video-generation/lightricks/ltx-video/image-to-video.md deleted file mode 100644 index d9132775..00000000 --- a/model-api-reference/video-generation/lightricks/ltx-video/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX Video (preview) API Reference — Lightricks / Image To Video" -description: "LTX Video (preview) API reference for SandBase. Use model lightricks/ltx-video/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltx-video/image-to-video" -apiReferenceJson: "{\"title\":\"LTX Video (preview)\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltx Video by Lightricks - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltx-video/image-to-video.\",\"default\":\"lightricks/ltx-video/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to generate the video from.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The guidance scale to use.\",\"default\":\"3\",\"constraints\":\"Maximum: 10\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to take.\",\"default\":\"30\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for random number generation.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltx-video/image-to-video\\\",\\n \\\"prompt\\\": \\\"A lone astronaut in a white spacesuit with gold-tinted visor drifts weightlessly through a sleek, cylindrical corridor of a spaceship. Their movements are slow and graceful as they gently push off the metallic walls with their gloved hands, rotating slightly as they float from right to left across the frame. The corridor features brushed aluminum panels with blue LED strips running along the ceiling, casting a cool glow on the astronaut's suit. Various cables, pipes, and control panels line the walls. The camera follows the astronaut's movement in a handheld style, slightly swaying and adjusting focus, maintaining a medium shot that captures both the astronaut and the corridor's depth. Small particles of dust catch the light as they float in the zero-gravity environment. The scene appears cinematic, with lens flares occasionally reflecting off the metallic surfaces and the astronaut's visor.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-video/image-to-video/input_image_0.jpg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltx-video/image-to-video\\\",\\n \\\"prompt\\\": \\\"A lone astronaut in a white spacesuit with gold-tinted visor drifts weightlessly through a sleek, cylindrical corridor of a spaceship. Their movements are slow and graceful as they gently push off the metallic walls with their gloved hands, rotating slightly as they float from right to left across the frame. The corridor features brushed aluminum panels with blue LED strips running along the ceiling, casting a cool glow on the astronaut's suit. Various cables, pipes, and control panels line the walls. The camera follows the astronaut's movement in a handheld style, slightly swaying and adjusting focus, maintaining a medium shot that captures both the astronaut and the corridor's depth. Small particles of dust catch the light as they float in the zero-gravity environment. The scene appears cinematic, with lens flares occasionally reflecting off the metallic surfaces and the astronaut's visor.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-video/image-to-video/input_image_0.jpg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltx-video/image-to-video\\\",\\n \\\"prompt\\\": \\\"A lone astronaut in a white spacesuit with gold-tinted visor drifts weightlessly through a sleek, cylindrical corridor of a spaceship. Their movements are slow and graceful as they gently push off the metallic walls with their gloved hands, rotating slightly as they float from right to left across the frame. The corridor features brushed aluminum panels with blue LED strips running along the ceiling, casting a cool glow on the astronaut's suit. Various cables, pipes, and control panels line the walls. The camera follows the astronaut's movement in a handheld style, slightly swaying and adjusting focus, maintaining a medium shot that captures both the astronaut and the corridor's depth. Small particles of dust catch the light as they float in the zero-gravity environment. The scene appears cinematic, with lens flares occasionally reflecting off the metallic surfaces and the astronaut's visor.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-video/image-to-video/input_image_0.jpg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltx-video/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX Video (preview)" - modelId: "lightricks/ltx-video/image-to-video" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltx-video/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-11-21T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltxv-13b-098-distilled.md b/model-api-reference/video-generation/lightricks/ltxv-13b-098-distilled.md deleted file mode 100644 index 5a7509ba..00000000 --- a/model-api-reference/video-generation/lightricks/ltxv-13b-098-distilled.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-Video 13B 0.9.8 Distilled — epfnxb API" -description: "LTX-Video 13B 0.9.8 Distilled API reference for SandBase. Use model lightricks/ltxv-13b-098-distilled with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltxv-13b-098-distilled" -apiReferenceJson: "{\"title\":\"LTX-Video 13B 0.9.8 Distilled\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltxv 13b 098 Distilled by Lightricks - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltxv-13b-098-distilled.\",\"default\":\"lightricks/ltxv-13b-098-distilled\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt to guide generation\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for generation\"},{\"name\":\"reverse_video\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to reverse the video.\",\"default\":\"false\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltxv-13b-098-distilled\\\",\\n \\\"prompt\\\": \\\"A cinematic fast-tracking shot follows a vintage, teal camper van as it descends a winding mountain trail. The van, slightly weathered but well-maintained, is the central focus, its retro design emphasized by the motion blur. Medium shot reveals the dusty, ochre trail, edged with vibrant green pine trees. Close-up on the van's tires shows the gravel spraying, highlighting the speed and rugged terrain. Sunlight filters through the trees, casting dappled shadows on the van and the trail. The background is a hazy, majestic mountain range bathed in warm, golden light. The overall mood is adventurous and exhilarating. High resolution 4k movie scene.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltxv-13b-098-distilled\\\",\\n \\\"prompt\\\": \\\"A cinematic fast-tracking shot follows a vintage, teal camper van as it descends a winding mountain trail. The van, slightly weathered but well-maintained, is the central focus, its retro design emphasized by the motion blur. Medium shot reveals the dusty, ochre trail, edged with vibrant green pine trees. Close-up on the van's tires shows the gravel spraying, highlighting the speed and rugged terrain. Sunlight filters through the trees, casting dappled shadows on the van and the trail. The background is a hazy, majestic mountain range bathed in warm, golden light. The overall mood is adventurous and exhilarating. High resolution 4k movie scene.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltxv-13b-098-distilled\\\",\\n \\\"prompt\\\": \\\"A cinematic fast-tracking shot follows a vintage, teal camper van as it descends a winding mountain trail. The van, slightly weathered but well-maintained, is the central focus, its retro design emphasized by the motion blur. Medium shot reveals the dusty, ochre trail, edged with vibrant green pine trees. Close-up on the van's tires shows the gravel spraying, highlighting the speed and rugged terrain. Sunlight filters through the trees, casting dappled shadows on the van and the trail. The background is a hazy, majestic mountain range bathed in warm, golden light. The overall mood is adventurous and exhilarating. High resolution 4k movie scene.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltxv-13b-098-distilled\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-Video 13B 0.9.8 Distilled" - modelId: "lightricks/ltxv-13b-098-distilled" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltxv-13b-098-distilled" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-07-17T03:01:15.578Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/lightricks/ltxv-13b-098-distilled/multiconditioning.md b/model-api-reference/video-generation/lightricks/ltxv-13b-098-distilled/multiconditioning.md deleted file mode 100644 index 6198cc2c..00000000 --- a/model-api-reference/video-generation/lightricks/ltxv-13b-098-distilled/multiconditioning.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LTX-Video 13B 0.9.8 Distilled — 8pg6k2 API" -description: "LTX-Video 13B 0.9.8 Distilled API reference for SandBase. Use model lightricks/ltxv-13b-098-distilled/multiconditioning with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/lightricks/ltxv-13b-098-distilled/multiconditioning" -apiReferenceJson: "{\"title\":\"LTX-Video 13B 0.9.8 Distilled\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ltxv 13b 098 Distilled Multiconditioning by Lightricks - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to lightricks/ltxv-13b-098-distilled/multiconditioning.\",\"default\":\"lightricks/ltxv-13b-098-distilled/multiconditioning\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt to guide generation\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"URL of images to use as conditioning\",\"default\":\"\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"Videos to use as conditioning\",\"default\":\"\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"reverse_video\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to reverse the video.\",\"default\":\"false\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for generation\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"LoRA adapters applied to the generation. At most three items are accepted.\",\"default\":\"\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"lightricks/ltxv-13b-098-distilled/multiconditioning\\\",\\n \\\"prompt\\\": \\\"A vibrant, abstract composition featuring a person with outstretched arms, rendered in a kaleidoscope of colors against a deep, dark background. The figure is composed of intricate, swirling patterns reminiscent of a mosaic, with hues of orange, yellow, blue, and green that evoke the style of artists such as Wassily Kandinsky or Bridget Riley. The camera zooms into the face striking portrait of a man, reimagined through the lens of old-school video-game graphics. The subject's face is rendered in a kaleidoscope of colors, with bold blues and reds set against a vibrant yellow backdrop. His dark hair is pulled back, framing his profile in a dramatic pose.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"lightricks/ltxv-13b-098-distilled/multiconditioning\\\",\\n \\\"prompt\\\": \\\"A vibrant, abstract composition featuring a person with outstretched arms, rendered in a kaleidoscope of colors against a deep, dark background. The figure is composed of intricate, swirling patterns reminiscent of a mosaic, with hues of orange, yellow, blue, and green that evoke the style of artists such as Wassily Kandinsky or Bridget Riley. The camera zooms into the face striking portrait of a man, reimagined through the lens of old-school video-game graphics. The subject's face is rendered in a kaleidoscope of colors, with bold blues and reds set against a vibrant yellow backdrop. His dark hair is pulled back, framing his profile in a dramatic pose.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"lightricks/ltxv-13b-098-distilled/multiconditioning\\\",\\n \\\"prompt\\\": \\\"A vibrant, abstract composition featuring a person with outstretched arms, rendered in a kaleidoscope of colors against a deep, dark background. The figure is composed of intricate, swirling patterns reminiscent of a mosaic, with hues of orange, yellow, blue, and green that evoke the style of artists such as Wassily Kandinsky or Bridget Riley. The camera zooms into the face striking portrait of a man, reimagined through the lens of old-school video-game graphics. The subject's face is rendered in a kaleidoscope of colors, with bold blues and reds set against a vibrant yellow backdrop. His dark hair is pulled back, framing his profile in a dramatic pose.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"lightricks/ltxv-13b-098-distilled/multiconditioning\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LTX-Video 13B 0.9.8 Distilled" - modelId: "lightricks/ltxv-13b-098-distilled/multiconditioning" - vendor: "Lightricks" - vendorSlug: "lightricks" - modelSlug: "ltxv-13b-098-distilled/multiconditioning" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-07-17T02:59:51.47Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/luma/agent/ray/3.2/image-to-video.md b/model-api-reference/video-generation/luma/agent/ray/3.2/image-to-video.md deleted file mode 100644 index 1ff58137..00000000 --- a/model-api-reference/video-generation/luma/agent/ray/3.2/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Luma Ray 3.2 Image to Video API Reference" -description: "Luma Ray 3.2 Image to Video API reference for SandBase. Use model luma/agent/ray/3.2/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/luma/agent/ray/3.2/image-to-video" -apiReferenceJson: "{\"title\":\"Luma Ray 3.2 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Agent Ray 3.2 by Luma - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to luma/agent/ray/3.2/image-to-video.\",\"default\":\"luma/agent/ray/3.2/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the motion/scene to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image used as the first frame of the video. Provide either image_url (optionally with end_image_url) or keyframes — the two anchoring modes are mutually exclusive.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional URL of an image used as the last frame. When set, the model interpolates between image_url and end_image_url. Cannot be combined with keyframes.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video. Higher resolutions cost more.\",\"default\":\"540p\",\"constraints\":\"Allowed values: 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated video. 10s requires multi-keyframe input (keyframes / keyframe_indexes); it is not supported with a single image_url / end_image_url anchor.\",\"default\":\"5s\"},{\"name\":\"loop\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a seamless loop. Only valid for standard-dynamic-range generations without an end frame or keyframes.\",\"default\":\"false\"},{\"name\":\"keyframes\",\"type\":\"array\",\"required\":false,\"description\":\"Multi-keyframe image-to-video guide frames: 1-64 image URLs pinned at the positions given by keyframe_indexes. Mutually exclusive with image_url, end_image_url, and loop; unlocks 10s and HDR. Provide keyframes and keyframe_indexes together (same length).\"},{\"name\":\"keyframe_indexes\",\"type\":\"array\",\"required\":false,\"description\":\"Output-frame positions (duration x 24fps: 5s -> 0-120, 10s -> 0-240) where each keyframes[i] is anchored. Non-negative, unique, and the same length as keyframes.\"},{\"name\":\"exr_export\",\"type\":\"boolean\",\"required\":false,\"description\":\"Also export an EXR file alongside the MP4. Requires hdr=true and HDR access.\",\"default\":\"false\"},{\"name\":\"hdr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate an HDR-encoded MP4. Requires HDR access on the account and a resolution of 720p or 1080p; not supported with loop.\",\"default\":\"false\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"luma/agent/ray/3.2/image-to-video\\\",\\n \\\"prompt\\\": \\\"Low-angle shot of a majestic tiger prowling through a snowy landscape, leaving paw prints on the white blanket.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/gallery/example_inputs_liuyifei.png\\\",\\n \\\"duration\\\": \\\"5s\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"luma/agent/ray/3.2/image-to-video\\\",\\n \\\"prompt\\\": \\\"Low-angle shot of a majestic tiger prowling through a snowy landscape, leaving paw prints on the white blanket.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/Falserverless/gallery/example_inputs_liuyifei.png\\\",\\n \\\"duration\\\": \\\"5s\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"luma/agent/ray/3.2/image-to-video\\\",\\n \\\"prompt\\\": \\\"Low-angle shot of a majestic tiger prowling through a snowy landscape, leaving paw prints on the white blanket.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/gallery/example_inputs_liuyifei.png\\\",\\n \\\"duration\\\": \\\"5s\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"luma/agent/ray/3.2/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Luma Ray 3.2 Image to Video" - modelId: "luma/agent/ray/3.2/image-to-video" - vendor: "Luma" - vendorSlug: "luma" - modelSlug: "agent/ray/3.2/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-09T15:14:38.545Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/luma/agent/ray/3.2/reframe.md b/model-api-reference/video-generation/luma/agent/ray/3.2/reframe.md deleted file mode 100644 index 765b5ba2..00000000 --- a/model-api-reference/video-generation/luma/agent/ray/3.2/reframe.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Luma Ray 3.2 Reframe API Reference" -description: "Luma Ray 3.2 Reframe API reference for SandBase. Use model luma/agent/ray/3.2/reframe with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/luma/agent/ray/3.2/reframe" -apiReferenceJson: "{\"title\":\"Luma Ray 3.2 Reframe\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Agent Ray 3.2 is Luma's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to luma/agent/ray/3.2/reframe.\",\"default\":\"luma/agent/ray/3.2/reframe\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the content to paint into the newly exposed canvas area when reframing to the target aspect ratio.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the source video to reframe (must be 10 seconds or less).\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the reframed video. Higher resolutions cost more.\",\"default\":\"540p\",\"constraints\":\"Allowed values: 540p, 720p, 1080p\"},{\"name\":\"source_position\",\"type\":\"string\",\"required\":false,\"description\":\"Optional normalized source rectangle controlling where the source video sits in the output canvas.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"luma/agent/ray/3.2/reframe\\\",\\n \\\"prompt\\\": \\\"Extend the scene into cinematic widescreen with matching lighting and background detail.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/birefnet-video-input.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"luma/agent/ray/3.2/reframe\\\",\\n \\\"prompt\\\": \\\"Extend the scene into cinematic widescreen with matching lighting and background detail.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/Falserverless/example_inputs/birefnet-video-input.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"luma/agent/ray/3.2/reframe\\\",\\n \\\"prompt\\\": \\\"Extend the scene into cinematic widescreen with matching lighting and background detail.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/birefnet-video-input.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"luma/agent/ray/3.2/reframe\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Luma Ray 3.2 Reframe" - modelId: "luma/agent/ray/3.2/reframe" - vendor: "Luma" - vendorSlug: "luma" - modelSlug: "agent/ray/3.2/reframe" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-11T08:25:00.838Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/luma/agent/ray/3.2/text-to-video.md b/model-api-reference/video-generation/luma/agent/ray/3.2/text-to-video.md deleted file mode 100644 index 119580c7..00000000 --- a/model-api-reference/video-generation/luma/agent/ray/3.2/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Luma Ray 3.2 Text to Video API Reference" -description: "Luma Ray 3.2 Text to Video API reference for SandBase. Use model luma/agent/ray/3.2/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/luma/agent/ray/3.2/text-to-video" -apiReferenceJson: "{\"title\":\"Luma Ray 3.2 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Agent Ray 3.2 is Luma's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to luma/agent/ray/3.2/text-to-video.\",\"default\":\"luma/agent/ray/3.2/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the video to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video. Higher resolutions cost more.\",\"default\":\"540p\",\"constraints\":\"Allowed values: 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated video.\",\"default\":\"5s\"},{\"name\":\"loop\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a seamless loop. Only valid for 5s, standard-dynamic-range generations without an end frame.\",\"default\":\"false\"},{\"name\":\"hdr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate an HDR-encoded MP4. Requires HDR access on the account and a resolution of 720p or 1080p; not supported with 10s or loop.\",\"default\":\"false\"},{\"name\":\"exr_export\",\"type\":\"boolean\",\"required\":false,\"description\":\"Also export an EXR file alongside the MP4. Requires hdr=true and HDR access.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"luma/agent/ray/3.2/text-to-video\\\",\\n \\\"prompt\\\": \\\"A herd of wild horses galloping across a dusty desert plain under a blazing midday sun, their manes flying in the wind; wide tracking shot.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": \\\"5s\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"luma/agent/ray/3.2/text-to-video\\\",\\n \\\"prompt\\\": \\\"A herd of wild horses galloping across a dusty desert plain under a blazing midday sun, their manes flying in the wind; wide tracking shot.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": \\\"5s\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"luma/agent/ray/3.2/text-to-video\\\",\\n \\\"prompt\\\": \\\"A herd of wild horses galloping across a dusty desert plain under a blazing midday sun, their manes flying in the wind; wide tracking shot.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": \\\"5s\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"luma/agent/ray/3.2/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Luma Ray 3.2 Text to Video" - modelId: "luma/agent/ray/3.2/text-to-video" - vendor: "Luma" - vendorSlug: "luma" - modelSlug: "agent/ray/3.2/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-09T15:14:43.926Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/luma/agent/ray/3.2/video-to-video.md b/model-api-reference/video-generation/luma/agent/ray/3.2/video-to-video.md deleted file mode 100644 index c6d52211..00000000 --- a/model-api-reference/video-generation/luma/agent/ray/3.2/video-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Luma Ray 3.2 Video to Video API Reference" -description: "Luma Ray 3.2 Video to Video API reference for SandBase. Use model luma/agent/ray/3.2/video-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/luma/agent/ray/3.2/video-to-video" -apiReferenceJson: "{\"title\":\"Luma Ray 3.2 Video to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Agent Ray 3.2 by Luma - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to luma/agent/ray/3.2/video-to-video.\",\"default\":\"luma/agent/ray/3.2/video-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing how to edit the source video.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Optional URL of an image to use as the edited video's first frame — e.g. a restyled version of the source's opening frame to steer the look of the edit. Leave unset to let the model derive the first frame from the source video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the source video to edit.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the edited video. Higher resolutions cost more.\",\"default\":\"540p\",\"constraints\":\"Allowed values: 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the edited video.\",\"default\":\"5s\"},{\"name\":\"edit_strength\",\"type\":\"string\",\"required\":false,\"description\":\"How closely the edit preserves the source video. 'adhere_*' stays closest to the source, 'flex_*' is balanced, and 'reimagine_*' diverges most. Leave unset to use Luma's default. Cannot be combined with auto_controls.\",\"constraints\":\"Allowed values: adhere_1, adhere_2, adhere_3, flex_1, flex_2, flex_3, reimagine_1, reimagine_2, reimagine_3\"},{\"name\":\"keyframes\",\"type\":\"array\",\"required\":false,\"description\":\"Multi-keyframe edit guide frames: up to 64 image URLs pinned at the source-frame positions given by keyframe_indexes. Mutually exclusive with start_image_url. Provide keyframes and keyframe_indexes together (same length).\"},{\"name\":\"hdr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate an HDR-encoded MP4. Requires HDR access on the account and a resolution of 720p or 1080p.\",\"default\":\"false\"},{\"name\":\"keyframe_indexes\",\"type\":\"array\",\"required\":false,\"description\":\"Source-video frame positions where each keyframes[i] is anchored. Non-negative, unique, and the same length as keyframes.\"},{\"name\":\"exr_export\",\"type\":\"boolean\",\"required\":false,\"description\":\"Also export an EXR file alongside the MP4. Requires hdr=true and HDR access.\",\"default\":\"false\"},{\"name\":\"controls\",\"type\":\"string\",\"required\":false,\"description\":\"Per-signal conditioning controls (pose, depth, normals, trajectory, face) for finer control than edit_strength. Cannot be combined with auto_controls.\"},{\"name\":\"auto_controls\",\"type\":\"boolean\",\"required\":false,\"description\":\"Let the model derive the edit conditioning schedule from the source video. Cannot be combined with edit_strength.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"luma/agent/ray/3.2/video-to-video\\\",\\n \\\"prompt\\\": \\\"Restyle the footage as a hand-painted watercolor animation with soft pastel colors.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/gallery/example_inputs_liuyifei.png\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/birefnet-video-input.mp4\\\",\\n \\\"duration\\\": \\\"5s\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"luma/agent/ray/3.2/video-to-video\\\",\\n \\\"prompt\\\": \\\"Restyle the footage as a hand-painted watercolor animation with soft pastel colors.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/Falserverless/gallery/example_inputs_liuyifei.png\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/Falserverless/example_inputs/birefnet-video-input.mp4\\\",\\n \\\"duration\\\": \\\"5s\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"luma/agent/ray/3.2/video-to-video\\\",\\n \\\"prompt\\\": \\\"Restyle the footage as a hand-painted watercolor animation with soft pastel colors.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/gallery/example_inputs_liuyifei.png\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/birefnet-video-input.mp4\\\",\\n \\\"duration\\\": \\\"5s\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"luma/agent/ray/3.2/video-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Luma Ray 3.2 Video to Video" - modelId: "luma/agent/ray/3.2/video-to-video" - vendor: "Luma" - vendorSlug: "luma" - modelSlug: "agent/ray/3.2/video-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-11T08:36:00.57Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/luma/ray-2/image-to-video.md b/model-api-reference/video-generation/luma/ray-2/image-to-video.md deleted file mode 100644 index bd6e4b4b..00000000 --- a/model-api-reference/video-generation/luma/ray-2/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Luma Ray 2 Image to Video API Reference" -description: "Luma Ray 2 Image to Video API reference for SandBase. Use model luma/ray-2/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/luma/ray-2/image-to-video" -apiReferenceJson: "{\"title\":\"Luma Ray 2 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ray 2 by Luma - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to luma/ray-2/image-to-video.\",\"default\":\"luma/ray-2/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Initial image to start the video from. Can be used together with end_image_url.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Final image to end the video with. Can be used together with image_url.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video (720p costs 2x more, 1080p costs 4x more)\",\"default\":\"540p\",\"constraints\":\"Allowed values: 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"string\",\"required\":false,\"description\":\"The duration of the generated video\",\"default\":\"5s\",\"constraints\":\"Allowed values: 5s, 9s\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"luma/ray-2/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/luma/ray-2/image-to-video/input_image_0.jpeg\\\",\\n \\\"duration\\\": \\\"5s\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"luma/ray-2/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/luma/ray-2/image-to-video/input_image_0.jpeg\\\",\\n \\\"duration\\\": \\\"5s\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"luma/ray-2/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/luma/ray-2/image-to-video/input_image_0.jpeg\\\",\\n \\\"duration\\\": \\\"5s\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"luma/ray-2/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Luma Ray 2 Image to Video" - modelId: "luma/ray-2/image-to-video" - vendor: "Luma" - vendorSlug: "luma" - modelSlug: "ray-2/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-02-14T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/luma/ray-2/modify.md b/model-api-reference/video-generation/luma/ray-2/modify.md deleted file mode 100644 index cf401b29..00000000 --- a/model-api-reference/video-generation/luma/ray-2/modify.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Luma Ray 2 Modify API Reference" -description: "Luma Ray 2 Modify API reference for SandBase. Use model luma/ray-2/modify with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/luma/ray-2/modify" -apiReferenceJson: "{\"title\":\"Luma Ray 2 Modify\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ray 2 Modify by Luma - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to luma/ray-2/modify.\",\"default\":\"luma/ray-2/modify\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Instruction for modifying the video\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Optional URL of the first frame image for modification\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input video to modify\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"luma/ray-2/modify\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/luma/ray-2/modify/input_image_0.jpg\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/luma/ray-2/modify/output_url_1.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"luma/ray-2/modify\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/luma/ray-2/modify/input_image_0.jpg\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/luma/ray-2/modify/output_url_1.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"luma/ray-2/modify\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/luma/ray-2/modify/input_image_0.jpg\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/luma/ray-2/modify/output_url_1.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"luma/ray-2/modify\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Luma Ray 2 Modify" - modelId: "luma/ray-2/modify" - vendor: "Luma" - vendorSlug: "luma" - modelSlug: "ray-2/modify" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-28T19:42:05.11Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/luma/ray-2/reframe.md b/model-api-reference/video-generation/luma/ray-2/reframe.md deleted file mode 100644 index f446f8ba..00000000 --- a/model-api-reference/video-generation/luma/ray-2/reframe.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Luma Ray 2 Reframe API Reference" -description: "Luma Ray 2 Reframe API reference for SandBase. Use model luma/ray-2/reframe with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/luma/ray-2/reframe" -apiReferenceJson: "{\"title\":\"Luma Ray 2 Reframe\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ray 2 Reframe is Luma's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to luma/ray-2/reframe.\",\"default\":\"luma/ray-2/reframe\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Optional prompt for reframing\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Optional URL of the first frame image for reframing\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input video to reframe\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"luma/ray-2/reframe\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/luma/ray-2/reframe/output_url_0.mp4\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"luma/ray-2/reframe\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/luma/ray-2/reframe/output_url_0.mp4\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"luma/ray-2/reframe\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/luma/ray-2/reframe/output_url_0.mp4\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"luma/ray-2/reframe\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Luma Ray 2 Reframe" - modelId: "luma/ray-2/reframe" - vendor: "Luma" - vendorSlug: "luma" - modelSlug: "ray-2/reframe" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-03T15:50:57.754Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/luma/ray-2/text-to-video.md b/model-api-reference/video-generation/luma/ray-2/text-to-video.md deleted file mode 100644 index 48e192c6..00000000 --- a/model-api-reference/video-generation/luma/ray-2/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Luma Ray 2 Text to Video API Reference" -description: "Luma Ray 2 Text to Video API reference for SandBase. Use model luma/ray-2/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/luma/ray-2/text-to-video" -apiReferenceJson: "{\"title\":\"Luma Ray 2 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ray 2 is Luma's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to luma/ray-2/text-to-video.\",\"default\":\"luma/ray-2/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video (720p costs 2x more, 1080p costs 4x more)\",\"default\":\"540p\",\"constraints\":\"Allowed values: 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"string\",\"required\":false,\"description\":\"The duration of the generated video\",\"default\":\"5s\",\"constraints\":\"Allowed values: 5s, 9s\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"luma/ray-2/text-to-video\\\",\\n \\\"prompt\\\": \\\"A herd of wild horses galloping across a dusty desert plain under a blazing midday sun, their manes flying in the wind; filmed in a wide tracking shot with dynamic motion, warm natural lighting, and an epic.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": \\\"5s\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"luma/ray-2/text-to-video\\\",\\n \\\"prompt\\\": \\\"A herd of wild horses galloping across a dusty desert plain under a blazing midday sun, their manes flying in the wind; filmed in a wide tracking shot with dynamic motion, warm natural lighting, and an epic.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": \\\"5s\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"luma/ray-2/text-to-video\\\",\\n \\\"prompt\\\": \\\"A herd of wild horses galloping across a dusty desert plain under a blazing midday sun, their manes flying in the wind; filmed in a wide tracking shot with dynamic motion, warm natural lighting, and an epic.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": \\\"5s\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"luma/ray-2/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Luma Ray 2 Text to Video" - modelId: "luma/ray-2/text-to-video" - vendor: "Luma" - vendorSlug: "luma" - modelSlug: "ray-2/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-01-27T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/luma/ray-flash-2/image-to-video.md b/model-api-reference/video-generation/luma/ray-flash-2/image-to-video.md deleted file mode 100644 index 822480b8..00000000 --- a/model-api-reference/video-generation/luma/ray-flash-2/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Luma Ray Flash 2 Image to Video API Reference" -description: "Luma Ray Flash 2 Image to Video API reference for SandBase. Use model luma/ray-flash-2/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/luma/ray-flash-2/image-to-video" -apiReferenceJson: "{\"title\":\"Luma Ray Flash 2 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ray Flash 2 by Luma - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to luma/ray-flash-2/image-to-video.\",\"default\":\"luma/ray-flash-2/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Initial image to start the video from. Can be used together with end_image_url.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Final image to end the video with. Can be used together with image_url.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video (720p costs 2x more, 1080p costs 4x more)\",\"default\":\"540p\",\"constraints\":\"Allowed values: 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"string\",\"required\":false,\"description\":\"The duration of the generated video\",\"default\":\"5s\",\"constraints\":\"Allowed values: 5s, 9s\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"luma/ray-flash-2/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/luma/ray-flash-2/image-to-video/input_image_0.jpeg\\\",\\n \\\"duration\\\": \\\"5s\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"luma/ray-flash-2/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/luma/ray-flash-2/image-to-video/input_image_0.jpeg\\\",\\n \\\"duration\\\": \\\"5s\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"luma/ray-flash-2/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/luma/ray-flash-2/image-to-video/input_image_0.jpeg\\\",\\n \\\"duration\\\": \\\"5s\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"luma/ray-flash-2/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Luma Ray Flash 2 Image to Video" - modelId: "luma/ray-flash-2/image-to-video" - vendor: "Luma" - vendorSlug: "luma" - modelSlug: "ray-flash-2/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-17T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/luma/ray-flash-2/modify.md b/model-api-reference/video-generation/luma/ray-flash-2/modify.md deleted file mode 100644 index 0a42ac63..00000000 --- a/model-api-reference/video-generation/luma/ray-flash-2/modify.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Luma Ray Flash 2 Modify API Reference" -description: "Luma Ray Flash 2 Modify API reference for SandBase. Use model luma/ray-flash-2/modify with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/luma/ray-flash-2/modify" -apiReferenceJson: "{\"title\":\"Luma Ray Flash 2 Modify\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ray Flash 2 Modify by Luma - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to luma/ray-flash-2/modify.\",\"default\":\"luma/ray-flash-2/modify\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Instruction for modifying the video\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Optional URL of the first frame image for modification\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input video to modify\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"luma/ray-flash-2/modify\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/luma/ray-flash-2/modify/input_image_1.jpg\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/luma/ray-flash-2/modify/output_url_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"luma/ray-flash-2/modify\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/luma/ray-flash-2/modify/input_image_1.jpg\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/luma/ray-flash-2/modify/output_url_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"luma/ray-flash-2/modify\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/luma/ray-flash-2/modify/input_image_1.jpg\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/luma/ray-flash-2/modify/output_url_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"luma/ray-flash-2/modify\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Luma Ray Flash 2 Modify" - modelId: "luma/ray-flash-2/modify" - vendor: "Luma" - vendorSlug: "luma" - modelSlug: "ray-flash-2/modify" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-07-17T14:03:02.298Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/luma/ray-flash-2/reframe.md b/model-api-reference/video-generation/luma/ray-flash-2/reframe.md deleted file mode 100644 index 54b70cd4..00000000 --- a/model-api-reference/video-generation/luma/ray-flash-2/reframe.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Luma Ray Flash 2 Reframe API Reference" -description: "Luma Ray Flash 2 Reframe API reference for SandBase. Use model luma/ray-flash-2/reframe with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/luma/ray-flash-2/reframe" -apiReferenceJson: "{\"title\":\"Luma Ray Flash 2 Reframe\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ray Flash 2 Reframe is Luma's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to luma/ray-flash-2/reframe.\",\"default\":\"luma/ray-flash-2/reframe\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Optional prompt for reframing\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Optional URL of the first frame image for reframing\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input video to reframe\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"luma/ray-flash-2/reframe\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/luma/ray-flash-2/reframe/output_url_0.mp4\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"luma/ray-flash-2/reframe\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/luma/ray-flash-2/reframe/output_url_0.mp4\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"luma/ray-flash-2/reframe\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/luma/ray-flash-2/reframe/output_url_0.mp4\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"luma/ray-flash-2/reframe\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Luma Ray Flash 2 Reframe" - modelId: "luma/ray-flash-2/reframe" - vendor: "Luma" - vendorSlug: "luma" - modelSlug: "ray-flash-2/reframe" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-03T15:52:49.571Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/luma/ray-flash-2/text-to-video.md b/model-api-reference/video-generation/luma/ray-flash-2/text-to-video.md deleted file mode 100644 index da2a60da..00000000 --- a/model-api-reference/video-generation/luma/ray-flash-2/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Luma Ray Flash 2 Text to Video API Reference" -description: "Luma Ray Flash 2 Text to Video API reference for SandBase. Use model luma/ray-flash-2/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/luma/ray-flash-2/text-to-video" -apiReferenceJson: "{\"title\":\"Luma Ray Flash 2 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Ray Flash 2 is Luma's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to luma/ray-flash-2/text-to-video.\",\"default\":\"luma/ray-flash-2/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video (720p costs 2x more, 1080p costs 4x more)\",\"default\":\"540p\",\"constraints\":\"Allowed values: 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"string\",\"required\":false,\"description\":\"The duration of the generated video\",\"default\":\"5s\",\"constraints\":\"Allowed values: 5s, 9s\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"luma/ray-flash-2/text-to-video\\\",\\n \\\"prompt\\\": \\\"A herd of wild horses galloping across a dusty desert plain under a blazing midday sun, their manes flying in the wind; filmed in a wide tracking shot with dynamic motion, warm natural lighting, and an epic.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": \\\"5s\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"luma/ray-flash-2/text-to-video\\\",\\n \\\"prompt\\\": \\\"A herd of wild horses galloping across a dusty desert plain under a blazing midday sun, their manes flying in the wind; filmed in a wide tracking shot with dynamic motion, warm natural lighting, and an epic.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": \\\"5s\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"luma/ray-flash-2/text-to-video\\\",\\n \\\"prompt\\\": \\\"A herd of wild horses galloping across a dusty desert plain under a blazing midday sun, their manes flying in the wind; filmed in a wide tracking shot with dynamic motion, warm natural lighting, and an epic.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": \\\"5s\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"luma/ray-flash-2/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Luma Ray Flash 2 Text to Video" - modelId: "luma/ray-flash-2/text-to-video" - vendor: "Luma" - vendorSlug: "luma" - modelSlug: "ray-flash-2/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-17T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/luma/ray/3.2/image-to-video.md b/model-api-reference/video-generation/luma/ray/3.2/image-to-video.md new file mode 100644 index 00000000..1e0b6c73 --- /dev/null +++ b/model-api-reference/video-generation/luma/ray/3.2/image-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Luma Ray 3.2 Image to Video API Reference" +description: "Luma Ray 3.2 Image to Video API reference for SandBase. Use model luma/ray/3.2/image-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/luma/ray/3.2/image-to-video" +apiReferenceJson: "{\"title\":\"Luma Ray 3.2 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Agent Ray 3.2 by Luma - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to luma/ray/3.2/image-to-video.\",\"default\":\"luma/ray/3.2/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the motion/scene to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image used as the first frame of the video. Provide either image_url (optionally with end_image_url) or keyframes — the two anchoring modes are mutually exclusive.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional URL of an image used as the last frame. When set, the model interpolates between image_url and end_image_url. Cannot be combined with keyframes.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video. Higher resolutions cost more.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated video. 10s requires multi-keyframe input (keyframes / keyframe_indexes); it is not supported with a single image_url / end_image_url anchor.\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"loop\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a seamless loop. Only valid for standard-dynamic-range generations without an end frame or keyframes.\",\"default\":\"false\"},{\"name\":\"keyframes\",\"type\":\"array\",\"required\":false,\"description\":\"Multi-keyframe image-to-video guide frames: 1-64 image URLs pinned at the positions given by keyframe_indexes. Mutually exclusive with image_url, end_image_url, and loop; unlocks 10s and HDR. Provide keyframes and keyframe_indexes together (same length).\"},{\"name\":\"keyframe_indexes\",\"type\":\"array\",\"required\":false,\"description\":\"Output-frame positions (duration x 24fps: 5s -> 0-120, 10s -> 0-240) where each keyframes[i] is anchored. Non-negative, unique, and the same length as keyframes.\"},{\"name\":\"exr_export\",\"type\":\"boolean\",\"required\":false,\"description\":\"Also export an EXR file alongside the MP4. Requires hdr=true and HDR access.\",\"default\":\"false\"},{\"name\":\"hdr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate an HDR-encoded MP4. Requires HDR access on the account and a resolution of 720p or 1080p; not supported with loop.\",\"default\":\"false\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"luma/ray/3.2/image-to-video\\\",\\n \\\"prompt\\\": \\\"Low-angle shot of a majestic tiger prowling through a snowy landscape, leaving paw prints on the white blanket.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/gallery/example_inputs_liuyifei.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"luma/ray/3.2/image-to-video\\\",\\n \\\"prompt\\\": \\\"Low-angle shot of a majestic tiger prowling through a snowy landscape, leaving paw prints on the white blanket.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/Falserverless/gallery/example_inputs_liuyifei.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"luma/ray/3.2/image-to-video\\\",\\n \\\"prompt\\\": \\\"Low-angle shot of a majestic tiger prowling through a snowy landscape, leaving paw prints on the white blanket.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/gallery/example_inputs_liuyifei.png\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"luma/ray/3.2/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Luma Ray 3.2 Image to Video" + modelId: "luma/ray/3.2/image-to-video" + vendor: "Luma" + vendorSlug: "luma" + modelSlug: "ray/3.2/image-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-06-09T15:14:38.545Z" + capabilities: ["image-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/luma/ray/3.2/text-to-video.md b/model-api-reference/video-generation/luma/ray/3.2/text-to-video.md new file mode 100644 index 00000000..1b68f797 --- /dev/null +++ b/model-api-reference/video-generation/luma/ray/3.2/text-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Luma Ray 3.2 Text to Video API Reference" +description: "Luma Ray 3.2 Text to Video API reference for SandBase. Use model luma/ray/3.2/text-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/luma/ray/3.2/text-to-video" +apiReferenceJson: "{\"title\":\"Luma Ray 3.2 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Agent Ray 3.2 is Luma's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to luma/ray/3.2/text-to-video.\",\"default\":\"luma/ray/3.2/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the video to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video. Higher resolutions cost more.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated video.\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"loop\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate a seamless loop. Only valid for 5s, standard-dynamic-range generations without an end frame.\",\"default\":\"false\"},{\"name\":\"hdr\",\"type\":\"boolean\",\"required\":false,\"description\":\"Generate an HDR-encoded MP4. Requires HDR access on the account and a resolution of 720p or 1080p; not supported with 10s or loop.\",\"default\":\"false\"},{\"name\":\"exr_export\",\"type\":\"boolean\",\"required\":false,\"description\":\"Also export an EXR file alongside the MP4. Requires hdr=true and HDR access.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"luma/ray/3.2/text-to-video\\\",\\n \\\"prompt\\\": \\\"A herd of wild horses galloping across a dusty desert plain under a blazing midday sun, their manes flying in the wind; wide tracking shot.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"luma/ray/3.2/text-to-video\\\",\\n \\\"prompt\\\": \\\"A herd of wild horses galloping across a dusty desert plain under a blazing midday sun, their manes flying in the wind; wide tracking shot.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"luma/ray/3.2/text-to-video\\\",\\n \\\"prompt\\\": \\\"A herd of wild horses galloping across a dusty desert plain under a blazing midday sun, their manes flying in the wind; wide tracking shot.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"luma/ray/3.2/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Luma Ray 3.2 Text to Video" + modelId: "luma/ray/3.2/text-to-video" + vendor: "Luma" + vendorSlug: "luma" + modelSlug: "ray/3.2/text-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-06-09T15:14:43.926Z" + capabilities: ["text-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/meigen/infinitetalk/image-to-video.md b/model-api-reference/video-generation/meigen/infinitetalk/image-to-video.md new file mode 100644 index 00000000..64ab6cfb --- /dev/null +++ b/model-api-reference/video-generation/meigen/infinitetalk/image-to-video.md @@ -0,0 +1,21 @@ +--- +title: "InfiniteTalk Image to Video API Reference" +description: "InfiniteTalk Image to Video API reference for SandBase. Use model meigen/infinitetalk/image-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/meigen/infinitetalk/image-to-video" +apiReferenceJson: "{\"title\":\"InfiniteTalk Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"InfiniteTalk turns a portrait image and speech audio into a long-form talking video with natural lip sync, head and body motion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meigen/infinitetalk/image-to-video.\",\"default\":\"meigen/infinitetalk/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt guiding the generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image URL (face / character).\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility.\",\"constraints\":\"Range: 0 to 2147483647\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":true,\"description\":\"Input audio URL.\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum frames to generate (41–721, 25 fps); output also stops at the end of the audio.\",\"default\":\"145\",\"constraints\":\"Range: 41 to 721\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution (720p costs 2x).\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meigen/infinitetalk/image-to-video\\\",\\n \\\"audio\\\": \\\"https://v3.fal.media/files/penguin/PtiCYda53E9Dav25QmQYI_output.mp3\\\",\\n \\\"image\\\": \\\"https://v3.fal.media/files/koala/gmpc0QevDF9bBsL1EAYVF_1c637094161147559f0910a68275dc34.png\\\",\\n \\\"prompt\\\": \\\"A woman with colorful hair talking on a podcast.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meigen/infinitetalk/image-to-video\\\",\\n \\\"audio\\\": \\\"https://v3.fal.media/files/penguin/PtiCYda53E9Dav25QmQYI_output.mp3\\\",\\n \\\"image\\\": \\\"https://v3.fal.media/files/koala/gmpc0QevDF9bBsL1EAYVF_1c637094161147559f0910a68275dc34.png\\\",\\n \\\"prompt\\\": \\\"A woman with colorful hair talking on a podcast.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meigen/infinitetalk/image-to-video\\\",\\n \\\"audio\\\": \\\"https://v3.fal.media/files/penguin/PtiCYda53E9Dav25QmQYI_output.mp3\\\",\\n \\\"image\\\": \\\"https://v3.fal.media/files/koala/gmpc0QevDF9bBsL1EAYVF_1c637094161147559f0910a68275dc34.png\\\",\\n \\\"prompt\\\": \\\"A woman with colorful hair talking on a podcast.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meigen/infinitetalk/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "InfiniteTalk Image to Video" + modelId: "meigen/infinitetalk/image-to-video" + vendor: "MeiGen-AI" + vendorSlug: "meigen" + modelSlug: "infinitetalk/image-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2025-08-21T13:55:42.331Z" + capabilities: ["image-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/meigen/infinitetalk/text-to-video.md b/model-api-reference/video-generation/meigen/infinitetalk/text-to-video.md new file mode 100644 index 00000000..6de05461 --- /dev/null +++ b/model-api-reference/video-generation/meigen/infinitetalk/text-to-video.md @@ -0,0 +1,21 @@ +--- +title: "InfiniteTalk Text to Video API Reference" +description: "InfiniteTalk Text to Video API reference for SandBase. Use model meigen/infinitetalk/text-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/meigen/infinitetalk/text-to-video" +apiReferenceJson: "{\"title\":\"InfiniteTalk Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"InfiniteTalk speaks the given text with a chosen voice and animates the portrait into a talking video.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meigen/infinitetalk/text-to-video.\",\"default\":\"meigen/infinitetalk/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt guiding the generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image URL (face / character).\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility.\",\"constraints\":\"Range: 0 to 2147483647\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum frames to generate (41–721, 25 fps); output also stops at the end of the audio.\",\"default\":\"145\",\"constraints\":\"Range: 41 to 721\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution (720p costs 2x).\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"text\",\"type\":\"string\",\"required\":true,\"description\":\"Text the person speaks.\"},{\"name\":\"voice\",\"type\":\"string\",\"required\":true,\"description\":\"Voice used to speak the text.\",\"constraints\":\"Allowed values: Aria, Roger, Sarah, Laura, Charlie, George, Callum, River, Liam, Charlotte, Alice, Matilda, Will, Jessica, Eric, Chris, Brian, Daniel, Lily, Bill\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meigen/infinitetalk/text-to-video\\\",\\n \\\"text\\\": \\\"Spend more time with people who make you feel alive, and less with things that drain your soul.\\\",\\n \\\"image\\\": \\\"https://v3.fal.media/files/panda/HuM21CXMf0q7OO2zbvwhV_c4533aada79a495b90e50e32dc9b83a8.png\\\",\\n \\\"voice\\\": \\\"Bill\\\",\\n \\\"prompt\\\": \\\"An elderly man with a white beard and headphones records audio with a microphone. He appears engaged and expressive, suggesting a podcast or voiceover.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meigen/infinitetalk/text-to-video\\\",\\n \\\"text\\\": \\\"Spend more time with people who make you feel alive, and less with things that drain your soul.\\\",\\n \\\"image\\\": \\\"https://v3.fal.media/files/panda/HuM21CXMf0q7OO2zbvwhV_c4533aada79a495b90e50e32dc9b83a8.png\\\",\\n \\\"voice\\\": \\\"Bill\\\",\\n \\\"prompt\\\": \\\"An elderly man with a white beard and headphones records audio with a microphone. He appears engaged and expressive, suggesting a podcast or voiceover.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meigen/infinitetalk/text-to-video\\\",\\n \\\"text\\\": \\\"Spend more time with people who make you feel alive, and less with things that drain your soul.\\\",\\n \\\"image\\\": \\\"https://v3.fal.media/files/panda/HuM21CXMf0q7OO2zbvwhV_c4533aada79a495b90e50e32dc9b83a8.png\\\",\\n \\\"voice\\\": \\\"Bill\\\",\\n \\\"prompt\\\": \\\"An elderly man with a white beard and headphones records audio with a microphone. He appears engaged and expressive, suggesting a podcast or voiceover.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meigen/infinitetalk/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "InfiniteTalk Text to Video" + modelId: "meigen/infinitetalk/text-to-video" + vendor: "MeiGen-AI" + vendorSlug: "meigen" + modelSlug: "infinitetalk/text-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2025-08-22T15:48:52.311Z" + capabilities: ["text-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/meigen/infinitetalk/video-to-video.md b/model-api-reference/video-generation/meigen/infinitetalk/video-to-video.md new file mode 100644 index 00000000..56db079e --- /dev/null +++ b/model-api-reference/video-generation/meigen/infinitetalk/video-to-video.md @@ -0,0 +1,21 @@ +--- +title: "InfiniteTalk Video to Video API Reference" +description: "InfiniteTalk Video to Video API reference for SandBase. Use model meigen/infinitetalk/video-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/meigen/infinitetalk/video-to-video" +apiReferenceJson: "{\"title\":\"InfiniteTalk Video to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"InfiniteTalk dubs an existing video: it re-animates lips, face and body to match new speech audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meigen/infinitetalk/video-to-video.\",\"default\":\"meigen/infinitetalk/video-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt guiding the generation.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility.\",\"constraints\":\"Range: 0 to 2147483647\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":true,\"description\":\"Input audio URL.\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum frames to generate (41–241, 25 fps); output also stops at the end of the audio.\",\"default\":\"145\",\"constraints\":\"Range: 41 to 241\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution (720p costs 2x).\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Input video URL.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meigen/infinitetalk/video-to-video\\\",\\n \\\"audio\\\": \\\"https://v3.fal.media/files/penguin/PtiCYda53E9Dav25QmQYI_output.mp3\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/falserverless/model_tests/video_models/ref_video.mp4\\\",\\n \\\"prompt\\\": \\\"A woman with colorful hair talking on a podcast.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meigen/infinitetalk/video-to-video\\\",\\n \\\"audio\\\": \\\"https://v3.fal.media/files/penguin/PtiCYda53E9Dav25QmQYI_output.mp3\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/Falserverless/model_tests/video_models/ref_video.mp4\\\",\\n \\\"prompt\\\": \\\"A woman with colorful hair talking on a podcast.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meigen/infinitetalk/video-to-video\\\",\\n \\\"audio\\\": \\\"https://v3.fal.media/files/penguin/PtiCYda53E9Dav25QmQYI_output.mp3\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/falserverless/model_tests/video_models/ref_video.mp4\\\",\\n \\\"prompt\\\": \\\"A woman with colorful hair talking on a podcast.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meigen/infinitetalk/video-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "InfiniteTalk Video to Video" + modelId: "meigen/infinitetalk/video-to-video" + vendor: "MeiGen-AI" + vendorSlug: "meigen" + modelSlug: "infinitetalk/video-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2025-09-22T20:17:35.243Z" + capabilities: ["video-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/meituan/longcat-multi-avatar/image-audio-to-video.md b/model-api-reference/video-generation/meituan/longcat-multi-avatar/image-audio-to-video.md deleted file mode 100644 index afd719e3..00000000 --- a/model-api-reference/video-generation/meituan/longcat-multi-avatar/image-audio-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Longcat Multi Avatar API Reference" -description: "Longcat Multi Avatar API reference for SandBase. Use model meituan/longcat-multi-avatar/image-audio-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/meituan/longcat-multi-avatar/image-audio-to-video" -apiReferenceJson: "{\"title\":\"Longcat Multi Avatar\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Longcat Multi Avatar Image Audio To Video by meituan - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meituan/longcat-multi-avatar/image-audio-to-video.\",\"default\":\"meituan/longcat-multi-avatar/image-audio-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to guide the video generation.\",\"default\":\"Two people are having a conversation with natural expressions and movements.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image containing two speakers.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (480p or 720p). Billing is per video-second (16 frames): 480p is 1 unit per second and 720p is 4 units per second.\",\"default\":\"480p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to use.\",\"default\":\"30\",\"constraints\":\"Range: 10 to 100\"},{\"name\":\"audio_url_person2\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the audio file for person 2 (right side).\",\"default\":\"https://raw.githubusercontent.com/meituan-longcat/LongCat-Video/refs/heads/main/assets/avatar/multi/sing_woman.WAV\"},{\"name\":\"num_segments\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of video segments to generate. Each segment adds ~5 seconds of video. First segment is ~5.8s, additional segments are 5s each.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"audio_url_person1\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the audio file for person 1 (left side).\",\"default\":\"https://raw.githubusercontent.com/meituan-longcat/LongCat-Video/refs/heads/main/assets/avatar/multi/sing_man.WAV\"},{\"name\":\"audio_type\",\"type\":\"string\",\"required\":false,\"description\":\"How to combine the two audio tracks. 'para' (parallel) plays both simultaneously, 'add' (sequential) plays person 1 first then person 2.\",\"default\":\"para\",\"constraints\":\"Allowed values: para, add\"},{\"name\":\"bbox_person2\",\"type\":\"string\",\"required\":false,\"description\":\"Bounding box for person 2. If not provided, defaults to right half of image.\"},{\"name\":\"audio_guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The audio guidance scale. Higher values may lead to exaggerated mouth movements.\",\"default\":\"4\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"bbox_person1\",\"type\":\"string\",\"required\":false,\"description\":\"Bounding box for person 1. If not provided, defaults to left half of image.\"},{\"name\":\"text_guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The text guidance scale for classifier-free guidance.\",\"default\":\"4\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meituan/longcat-multi-avatar/image-audio-to-video\\\",\\n \\\"prompt\\\": \\\"Two people are having a conversation with natural expressions and movements.\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/meituan-longcat/LongCat-Video/refs/heads/main/assets/avatar/multi/sing.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meituan/longcat-multi-avatar/image-audio-to-video\\\",\\n \\\"prompt\\\": \\\"Two people are having a conversation with natural expressions and movements.\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/meituan-longcat/LongCat-Video/refs/heads/main/assets/avatar/multi/sing.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meituan/longcat-multi-avatar/image-audio-to-video\\\",\\n \\\"prompt\\\": \\\"Two people are having a conversation with natural expressions and movements.\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/meituan-longcat/LongCat-Video/refs/heads/main/assets/avatar/multi/sing.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meituan/longcat-multi-avatar/image-audio-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Longcat Multi Avatar" - modelId: "meituan/longcat-multi-avatar/image-audio-to-video" - vendor: "meituan" - vendorSlug: "meituan" - modelSlug: "longcat-multi-avatar/image-audio-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-08T20:17:00.208Z" - capabilities: ["audio-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/meituan/longcat-single-avatar/audio-to-video.md b/model-api-reference/video-generation/meituan/longcat-single-avatar/audio-to-video.md deleted file mode 100644 index a9af2747..00000000 --- a/model-api-reference/video-generation/meituan/longcat-single-avatar/audio-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Longcat Single Avatar API Reference" -description: "Longcat Single Avatar API reference for SandBase. Use model meituan/longcat-single-avatar/audio-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/meituan/longcat-single-avatar/audio-to-video" -apiReferenceJson: "{\"title\":\"Longcat Single Avatar\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Longcat Single Avatar Audio To Video by meituan - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meituan/longcat-single-avatar/audio-to-video.\",\"default\":\"meituan/longcat-single-avatar/audio-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to guide the video generation.\",\"default\":\"A person is talking naturally with natural expressions and movements.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the audio file to drive the avatar.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (480p or 720p). Billing is per video-second (16 frames): 480p is 1 unit per second and 720p is 4 units per second.\",\"default\":\"480p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to use.\",\"default\":\"50\",\"constraints\":\"Range: 10 to 100\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"audio_guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The audio guidance scale. Higher values may lead to exaggerated mouth movements.\",\"default\":\"4\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"text_guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The text guidance scale for classifier-free guidance.\",\"default\":\"4\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"num_segments\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of video segments to generate. Each segment adds ~5 seconds of video. First segment is ~5.8s, additional segments are 5s each.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meituan/longcat-single-avatar/audio-to-video\\\",\\n \\\"prompt\\\": \\\"A person is talking naturally with natural expressions and movements.\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/meituan/longcat-single-avatar/audio-to-video/input_audio_0.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meituan/longcat-single-avatar/audio-to-video\\\",\\n \\\"prompt\\\": \\\"A person is talking naturally with natural expressions and movements.\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/meituan/longcat-single-avatar/audio-to-video/input_audio_0.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meituan/longcat-single-avatar/audio-to-video\\\",\\n \\\"prompt\\\": \\\"A person is talking naturally with natural expressions and movements.\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/meituan/longcat-single-avatar/audio-to-video/input_audio_0.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meituan/longcat-single-avatar/audio-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Longcat Single Avatar" - modelId: "meituan/longcat-single-avatar/audio-to-video" - vendor: "meituan" - vendorSlug: "meituan" - modelSlug: "longcat-single-avatar/audio-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-30T17:00:38.944Z" - capabilities: ["audio-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/meituan/longcat-single-avatar/image-audio-to-video.md b/model-api-reference/video-generation/meituan/longcat-single-avatar/image-audio-to-video.md deleted file mode 100644 index 0ef438ec..00000000 --- a/model-api-reference/video-generation/meituan/longcat-single-avatar/image-audio-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LongCat Single Avatar API Reference" -description: "LongCat Single Avatar API reference for SandBase. Use model meituan/longcat-single-avatar/image-audio-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/meituan/longcat-single-avatar/image-audio-to-video" -apiReferenceJson: "{\"title\":\"LongCat Single Avatar\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Longcat Single Avatar Image Audio To Video by sandbase-ai - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meituan/longcat-single-avatar/image-audio-to-video.\",\"default\":\"meituan/longcat-single-avatar/image-audio-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to guide the video generation.\",\"default\":\"A person is talking naturally with natural expressions and movements.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to animate.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the audio file to drive the avatar.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the generated video (480p or 720p). Billing is per video-second (16 frames): 480p is 1 unit per second and 720p is 4 units per second.\",\"default\":\"480p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"audio_guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The audio guidance scale. Higher values may lead to exaggerated mouth movements.\",\"default\":\"4\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"text_guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The text guidance scale for classifier-free guidance.\",\"default\":\"4\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"num_segments\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of video segments to generate. Each segment adds ~5 seconds of video. First segment is ~5.8s, additional segments are 5s each.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"50\",\"constraints\":\"Range: 10 to 100\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meituan/longcat-single-avatar/image-audio-to-video\\\",\\n \\\"prompt\\\": \\\"A person is talking naturally with natural expressions and movements.\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/meituan-longcat/LongCat-Video/refs/heads/main/assets/avatar/single/man.png\\\",\\n \\\"audio\\\": \\\"https://raw.githubusercontent.com/meituan-longcat/LongCat-Video/refs/heads/main/assets/avatar/single/man.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meituan/longcat-single-avatar/image-audio-to-video\\\",\\n \\\"prompt\\\": \\\"A person is talking naturally with natural expressions and movements.\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/meituan-longcat/LongCat-Video/refs/heads/main/assets/avatar/single/man.png\\\",\\n \\\"audio\\\": \\\"https://raw.githubusercontent.com/meituan-longcat/LongCat-Video/refs/heads/main/assets/avatar/single/man.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meituan/longcat-single-avatar/image-audio-to-video\\\",\\n \\\"prompt\\\": \\\"A person is talking naturally with natural expressions and movements.\\\",\\n \\\"image\\\": \\\"https://raw.githubusercontent.com/meituan-longcat/LongCat-Video/refs/heads/main/assets/avatar/single/man.png\\\",\\n \\\"audio\\\": \\\"https://raw.githubusercontent.com/meituan-longcat/LongCat-Video/refs/heads/main/assets/avatar/single/man.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meituan/longcat-single-avatar/image-audio-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LongCat Single Avatar" - modelId: "meituan/longcat-single-avatar/image-audio-to-video" - vendor: "meituan" - vendorSlug: "meituan" - modelSlug: "longcat-single-avatar/image-audio-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-30T17:14:46.673Z" - capabilities: ["audio-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/meituan/longcat-video/distilled/image-to-video-480p.md b/model-api-reference/video-generation/meituan/longcat-video/distilled/image-to-video-480p.md deleted file mode 100644 index af594c9c..00000000 --- a/model-api-reference/video-generation/meituan/longcat-video/distilled/image-to-video-480p.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LongCat Video Distilled API Reference — Meituan To Video 480p" -description: "LongCat Video Distilled API reference for SandBase. Use model meituan/longcat-video/distilled/image-to-video-480p with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/meituan/longcat-video/distilled/image-to-video-480p" -apiReferenceJson: "{\"title\":\"LongCat Video Distilled\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Longcat Video Distilled Image To Video 480p is meituan's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meituan/longcat-video/distilled/image-to-video-480p.\",\"default\":\"meituan/longcat-video/distilled/image-to-video-480p\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to guide the video generation.\",\"default\":\"First-person view from the cockpit of a Formula 1 car. The driver's gloved hands firmly grip the intricate, carbon-fiber steering wheel adorned with numerous colorful buttons and a vibrant digital display showing race data. Beyond the windshield, a sun-drenched racetrack stretches ahead, lined with cheering spectators in the grandstands. Several rival cars are visible in the distance, creating a dynamic sense of competition. The sky above is a clear, brilliant blue, reflecting the exhilarating atmosphere of a high-speed race. high resolution 4k\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to generate a video from.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"12\",\"constraints\":\"Range: 2 to 16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meituan/longcat-video/distilled/image-to-video-480p\\\",\\n \\\"prompt\\\": \\\"First-person view from the cockpit of a Formula 1 car. The driver's gloved hands firmly grip the intricate, carbon-fiber steering wheel adorned with numerous colorful buttons and a vibrant digital display showing race data. Beyond the windshield, a sun-drenched racetrack stretches ahead, lined with cheering spectators in the grandstands. Several rival cars are visible in the distance, creating a dynamic sense of competition. The sky above is a clear, brilliant blue, reflecting the exhilarating atmosphere of a high-speed race. high resolution 4k\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/image-to-video/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meituan/longcat-video/distilled/image-to-video-480p\\\",\\n \\\"prompt\\\": \\\"First-person view from the cockpit of a Formula 1 car. The driver's gloved hands firmly grip the intricate, carbon-fiber steering wheel adorned with numerous colorful buttons and a vibrant digital display showing race data. Beyond the windshield, a sun-drenched racetrack stretches ahead, lined with cheering spectators in the grandstands. Several rival cars are visible in the distance, creating a dynamic sense of competition. The sky above is a clear, brilliant blue, reflecting the exhilarating atmosphere of a high-speed race. high resolution 4k\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/image-to-video/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meituan/longcat-video/distilled/image-to-video-480p\\\",\\n \\\"prompt\\\": \\\"First-person view from the cockpit of a Formula 1 car. The driver's gloved hands firmly grip the intricate, carbon-fiber steering wheel adorned with numerous colorful buttons and a vibrant digital display showing race data. Beyond the windshield, a sun-drenched racetrack stretches ahead, lined with cheering spectators in the grandstands. Several rival cars are visible in the distance, creating a dynamic sense of competition. The sky above is a clear, brilliant blue, reflecting the exhilarating atmosphere of a high-speed race. high resolution 4k\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/image-to-video/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meituan/longcat-video/distilled/image-to-video-480p\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LongCat Video Distilled" - modelId: "meituan/longcat-video/distilled/image-to-video-480p" - vendor: "meituan" - vendorSlug: "meituan" - modelSlug: "longcat-video/distilled/image-to-video-480p" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-29T00:26:46.2Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/meituan/longcat-video/distilled/image-to-video.md b/model-api-reference/video-generation/meituan/longcat-video/distilled/image-to-video.md deleted file mode 100644 index 3caa223c..00000000 --- a/model-api-reference/video-generation/meituan/longcat-video/distilled/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LongCat Video Distilled API Reference — Meituan / Image To Video" -description: "LongCat Video Distilled API reference for SandBase. Use model meituan/longcat-video/distilled/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/meituan/longcat-video/distilled/image-to-video" -apiReferenceJson: "{\"title\":\"LongCat Video Distilled\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Longcat Video Distilled is meituan's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meituan/longcat-video/distilled/image-to-video.\",\"default\":\"meituan/longcat-video/distilled/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to guide the video generation.\",\"default\":\"First-person view from the cockpit of a Formula 1 car. The driver's gloved hands firmly grip the intricate, carbon-fiber steering wheel adorned with numerous colorful buttons and a vibrant digital display showing race data. Beyond the windshield, a sun-drenched racetrack stretches ahead, lined with cheering spectators in the grandstands. Several rival cars are visible in the distance, creating a dynamic sense of competition. The sky above is a clear, brilliant blue, reflecting the exhilarating atmosphere of a high-speed race. high resolution 4k\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to generate a video from.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to use.\",\"default\":\"12\",\"constraints\":\"Range: 2 to 16\"},{\"name\":\"num_refine_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to use for refinement.\",\"default\":\"12\",\"constraints\":\"Range: 2 to 16\"},{\"name\":\"video_output_type\",\"type\":\"string\",\"required\":false,\"description\":\"The output type of the generated video.\",\"default\":\"X264 (.mp4)\",\"constraints\":\"Allowed values: X264 (.mp4), VP9 (.webm), PRORES4444 (.mov), GIF (.gif)\"},{\"name\":\"video_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality of the generated video.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate.\",\"default\":\"162\",\"constraints\":\"Range: 17 to 961\"},{\"name\":\"video_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the generated video.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"},{\"name\":\"fps\",\"type\":\"integer\",\"required\":false,\"description\":\"The frame rate of the generated video.\",\"default\":\"30\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meituan/longcat-video/distilled/image-to-video\\\",\\n \\\"prompt\\\": \\\"First-person view from the cockpit of a Formula 1 car. The driver's gloved hands firmly grip the intricate, carbon-fiber steering wheel adorned with numerous colorful buttons and a vibrant digital display showing race data. Beyond the windshield, a sun-drenched racetrack stretches ahead, lined with cheering spectators in the grandstands. Several rival cars are visible in the distance, creating a dynamic sense of competition. The sky above is a clear, brilliant blue, reflecting the exhilarating atmosphere of a high-speed race. high resolution 4k\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/image-to-video/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meituan/longcat-video/distilled/image-to-video\\\",\\n \\\"prompt\\\": \\\"First-person view from the cockpit of a Formula 1 car. The driver's gloved hands firmly grip the intricate, carbon-fiber steering wheel adorned with numerous colorful buttons and a vibrant digital display showing race data. Beyond the windshield, a sun-drenched racetrack stretches ahead, lined with cheering spectators in the grandstands. Several rival cars are visible in the distance, creating a dynamic sense of competition. The sky above is a clear, brilliant blue, reflecting the exhilarating atmosphere of a high-speed race. high resolution 4k\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/image-to-video/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meituan/longcat-video/distilled/image-to-video\\\",\\n \\\"prompt\\\": \\\"First-person view from the cockpit of a Formula 1 car. The driver's gloved hands firmly grip the intricate, carbon-fiber steering wheel adorned with numerous colorful buttons and a vibrant digital display showing race data. Beyond the windshield, a sun-drenched racetrack stretches ahead, lined with cheering spectators in the grandstands. Several rival cars are visible in the distance, creating a dynamic sense of competition. The sky above is a clear, brilliant blue, reflecting the exhilarating atmosphere of a high-speed race. high resolution 4k\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/image-to-video/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meituan/longcat-video/distilled/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LongCat Video Distilled" - modelId: "meituan/longcat-video/distilled/image-to-video" - vendor: "meituan" - vendorSlug: "meituan" - modelSlug: "longcat-video/distilled/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-30T14:43:43.65Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/meituan/longcat-video/distilled/text-to-video-720p.md b/model-api-reference/video-generation/meituan/longcat-video/distilled/text-to-video-720p.md deleted file mode 100644 index 18e09ba2..00000000 --- a/model-api-reference/video-generation/meituan/longcat-video/distilled/text-to-video-720p.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LongCat Video Distilled API Reference — Meituan To Video 720p" -description: "LongCat Video Distilled API reference for SandBase. Use model meituan/longcat-video/distilled/text-to-video-720p with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/meituan/longcat-video/distilled/text-to-video-720p" -apiReferenceJson: "{\"title\":\"LongCat Video Distilled\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Longcat Video Distilled Text To Video 720p by sandbase-ai - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meituan/longcat-video/distilled/text-to-video-720p.\",\"default\":\"meituan/longcat-video/distilled/text-to-video-720p\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to guide the video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"num_refine_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to use for refinement.\",\"default\":\"12\",\"constraints\":\"Range: 2 to 16\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"12\",\"constraints\":\"Range: 2 to 16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meituan/longcat-video/distilled/text-to-video-720p\\\",\\n \\\"prompt\\\": \\\"realistic filming style, a person wearing a dark helmet, a deep-colored jacket, blue jeans, and bright yellow shoes rides a skateboard along a winding mountain road. The skateboarder starts in a standing position, then gradually lowers into a crouch, extending one hand to touch the road surface while maintaining a low center of gravity to navigate a sharp curve. After completing the turn, the skateboarder rises back to a standing position and continues gliding forward. The background features lush green hills flanking both sides of the road, with distant snow-capped mountain peaks rising against a clear, bright blue sky. The camera follows closely from behind, smoothly tracking the skateboarder’s movements and capturing the dynamic scenery along the route. The scene is shot in natural daylight, highlighting the vivid outdoor environment and the skateboarder’s fluid actions.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meituan/longcat-video/distilled/text-to-video-720p\\\",\\n \\\"prompt\\\": \\\"realistic filming style, a person wearing a dark helmet, a deep-colored jacket, blue jeans, and bright yellow shoes rides a skateboard along a winding mountain road. The skateboarder starts in a standing position, then gradually lowers into a crouch, extending one hand to touch the road surface while maintaining a low center of gravity to navigate a sharp curve. After completing the turn, the skateboarder rises back to a standing position and continues gliding forward. The background features lush green hills flanking both sides of the road, with distant snow-capped mountain peaks rising against a clear, bright blue sky. The camera follows closely from behind, smoothly tracking the skateboarder’s movements and capturing the dynamic scenery along the route. The scene is shot in natural daylight, highlighting the vivid outdoor environment and the skateboarder’s fluid actions.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meituan/longcat-video/distilled/text-to-video-720p\\\",\\n \\\"prompt\\\": \\\"realistic filming style, a person wearing a dark helmet, a deep-colored jacket, blue jeans, and bright yellow shoes rides a skateboard along a winding mountain road. The skateboarder starts in a standing position, then gradually lowers into a crouch, extending one hand to touch the road surface while maintaining a low center of gravity to navigate a sharp curve. After completing the turn, the skateboarder rises back to a standing position and continues gliding forward. The background features lush green hills flanking both sides of the road, with distant snow-capped mountain peaks rising against a clear, bright blue sky. The camera follows closely from behind, smoothly tracking the skateboarder’s movements and capturing the dynamic scenery along the route. The scene is shot in natural daylight, highlighting the vivid outdoor environment and the skateboarder’s fluid actions.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meituan/longcat-video/distilled/text-to-video-720p\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LongCat Video Distilled" - modelId: "meituan/longcat-video/distilled/text-to-video-720p" - vendor: "meituan" - vendorSlug: "meituan" - modelSlug: "longcat-video/distilled/text-to-video-720p" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-30T14:41:43.38Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/meituan/longcat-video/distilled/text-to-video/480p.md b/model-api-reference/video-generation/meituan/longcat-video/distilled/text-to-video/480p.md deleted file mode 100644 index 3b80acd2..00000000 --- a/model-api-reference/video-generation/meituan/longcat-video/distilled/text-to-video/480p.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LongCat Video Distilled API Reference — Meituan To Video / 480p" -description: "LongCat Video Distilled API reference for SandBase. Use model meituan/longcat-video/distilled/text-to-video/480p with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/meituan/longcat-video/distilled/text-to-video/480p" -apiReferenceJson: "{\"title\":\"LongCat Video Distilled\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Longcat Video Distilled 480p by meituan - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meituan/longcat-video/distilled/text-to-video/480p.\",\"default\":\"meituan/longcat-video/distilled/text-to-video/480p\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to guide the video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to use.\",\"default\":\"12\",\"constraints\":\"Range: 2 to 16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"fps\",\"type\":\"integer\",\"required\":false,\"description\":\"The frame rate of the generated video.\",\"default\":\"15\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"video_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality of the generated video.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate.\",\"default\":\"162\",\"constraints\":\"Range: 17 to 961\"},{\"name\":\"video_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the generated video.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"},{\"name\":\"video_output_type\",\"type\":\"string\",\"required\":false,\"description\":\"The output type of the generated video.\",\"default\":\"X264 (.mp4)\",\"constraints\":\"Allowed values: X264 (.mp4), VP9 (.webm), PRORES4444 (.mov), GIF (.gif)\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meituan/longcat-video/distilled/text-to-video/480p\\\",\\n \\\"prompt\\\": \\\"realistic filming style, a person wearing a dark helmet, a deep-colored jacket, blue jeans, and bright yellow shoes rides a skateboard along a winding mountain road. The skateboarder starts in a standing position, then gradually lowers into a crouch, extending one hand to touch the road surface while maintaining a low center of gravity to navigate a sharp curve. After completing the turn, the skateboarder rises back to a standing position and continues gliding forward. The background features lush green hills flanking both sides of the road, with distant snow-capped mountain peaks rising against a clear, bright blue sky. The camera follows closely from behind, smoothly tracking the skateboarder’s movements and capturing the dynamic scenery along the route. The scene is shot in natural daylight, highlighting the vivid outdoor environment and the skateboarder’s fluid actions.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meituan/longcat-video/distilled/text-to-video/480p\\\",\\n \\\"prompt\\\": \\\"realistic filming style, a person wearing a dark helmet, a deep-colored jacket, blue jeans, and bright yellow shoes rides a skateboard along a winding mountain road. The skateboarder starts in a standing position, then gradually lowers into a crouch, extending one hand to touch the road surface while maintaining a low center of gravity to navigate a sharp curve. After completing the turn, the skateboarder rises back to a standing position and continues gliding forward. The background features lush green hills flanking both sides of the road, with distant snow-capped mountain peaks rising against a clear, bright blue sky. The camera follows closely from behind, smoothly tracking the skateboarder’s movements and capturing the dynamic scenery along the route. The scene is shot in natural daylight, highlighting the vivid outdoor environment and the skateboarder’s fluid actions.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meituan/longcat-video/distilled/text-to-video/480p\\\",\\n \\\"prompt\\\": \\\"realistic filming style, a person wearing a dark helmet, a deep-colored jacket, blue jeans, and bright yellow shoes rides a skateboard along a winding mountain road. The skateboarder starts in a standing position, then gradually lowers into a crouch, extending one hand to touch the road surface while maintaining a low center of gravity to navigate a sharp curve. After completing the turn, the skateboarder rises back to a standing position and continues gliding forward. The background features lush green hills flanking both sides of the road, with distant snow-capped mountain peaks rising against a clear, bright blue sky. The camera follows closely from behind, smoothly tracking the skateboarder’s movements and capturing the dynamic scenery along the route. The scene is shot in natural daylight, highlighting the vivid outdoor environment and the skateboarder’s fluid actions.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meituan/longcat-video/distilled/text-to-video/480p\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LongCat Video Distilled" - modelId: "meituan/longcat-video/distilled/text-to-video/480p" - vendor: "meituan" - vendorSlug: "meituan" - modelSlug: "longcat-video/distilled/text-to-video/480p" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-28T23:29:22.398Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/meituan/longcat-video/image-to-video-480p.md b/model-api-reference/video-generation/meituan/longcat-video/image-to-video-480p.md deleted file mode 100644 index 199dbfb8..00000000 --- a/model-api-reference/video-generation/meituan/longcat-video/image-to-video-480p.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LongCat Video API Reference — Meituan Video / Image To Video 480p" -description: "LongCat Video API reference for SandBase. Use model meituan/longcat-video/image-to-video-480p with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/meituan/longcat-video/image-to-video-480p" -apiReferenceJson: "{\"title\":\"LongCat Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Longcat Video Image To Video 480p is meituan's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meituan/longcat-video/image-to-video-480p.\",\"default\":\"meituan/longcat-video/image-to-video-480p\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to guide the video generation.\",\"default\":\"First-person view from the cockpit of a Formula 1 car. The driver's gloved hands firmly grip the intricate, carbon-fiber steering wheel adorned with numerous colorful buttons and a vibrant digital display showing race data. Beyond the windshield, a sun-drenched racetrack stretches ahead, lined with cheering spectators in the grandstands. Several rival cars are visible in the distance, creating a dynamic sense of competition. The sky above is a clear, brilliant blue, reflecting the exhilarating atmosphere of a high-speed race. high resolution 4k\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to generate a video from.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising or inference steps to run when supported.\",\"default\":\"40\",\"constraints\":\"Range: 8 to 50\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Request parameter supported by this model.\",\"default\":\"4\",\"constraints\":\"Range: 1 to 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meituan/longcat-video/image-to-video-480p\\\",\\n \\\"prompt\\\": \\\"First-person view from the cockpit of a Formula 1 car. The driver's gloved hands firmly grip the intricate, carbon-fiber steering wheel adorned with numerous colorful buttons and a vibrant digital display showing race data. Beyond the windshield, a sun-drenched racetrack stretches ahead, lined with cheering spectators in the grandstands. Several rival cars are visible in the distance, creating a dynamic sense of competition. The sky above is a clear, brilliant blue, reflecting the exhilarating atmosphere of a high-speed race. high resolution 4k\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/image-to-video/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meituan/longcat-video/image-to-video-480p\\\",\\n \\\"prompt\\\": \\\"First-person view from the cockpit of a Formula 1 car. The driver's gloved hands firmly grip the intricate, carbon-fiber steering wheel adorned with numerous colorful buttons and a vibrant digital display showing race data. Beyond the windshield, a sun-drenched racetrack stretches ahead, lined with cheering spectators in the grandstands. Several rival cars are visible in the distance, creating a dynamic sense of competition. The sky above is a clear, brilliant blue, reflecting the exhilarating atmosphere of a high-speed race. high resolution 4k\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/image-to-video/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meituan/longcat-video/image-to-video-480p\\\",\\n \\\"prompt\\\": \\\"First-person view from the cockpit of a Formula 1 car. The driver's gloved hands firmly grip the intricate, carbon-fiber steering wheel adorned with numerous colorful buttons and a vibrant digital display showing race data. Beyond the windshield, a sun-drenched racetrack stretches ahead, lined with cheering spectators in the grandstands. Several rival cars are visible in the distance, creating a dynamic sense of competition. The sky above is a clear, brilliant blue, reflecting the exhilarating atmosphere of a high-speed race. high resolution 4k\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/image-to-video/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meituan/longcat-video/image-to-video-480p\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LongCat Video" - modelId: "meituan/longcat-video/image-to-video-480p" - vendor: "meituan" - vendorSlug: "meituan" - modelSlug: "longcat-video/image-to-video-480p" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-30T14:54:52.837Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/meituan/longcat-video/image-to-video.md b/model-api-reference/video-generation/meituan/longcat-video/image-to-video.md deleted file mode 100644 index e5577f4c..00000000 --- a/model-api-reference/video-generation/meituan/longcat-video/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LongCat Video API Reference — Meituan Video / Image To Video" -description: "LongCat Video API reference for SandBase. Use model meituan/longcat-video/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/meituan/longcat-video/image-to-video" -apiReferenceJson: "{\"title\":\"LongCat Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Longcat Video is meituan's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meituan/longcat-video/image-to-video.\",\"default\":\"meituan/longcat-video/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to guide the video generation.\",\"default\":\"First-person view from the cockpit of a Formula 1 car. The driver's gloved hands firmly grip the intricate, carbon-fiber steering wheel adorned with numerous colorful buttons and a vibrant digital display showing race data. Beyond the windshield, a sun-drenched racetrack stretches ahead, lined with cheering spectators in the grandstands. Several rival cars are visible in the distance, creating a dynamic sense of competition. The sky above is a clear, brilliant blue, reflecting the exhilarating atmosphere of a high-speed race. high resolution 4k\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to generate a video from.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The guidance scale to use for the video generation.\",\"default\":\"4\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to use for the video generation.\",\"default\":\"40\",\"constraints\":\"Range: 8 to 50\"},{\"name\":\"fps\",\"type\":\"integer\",\"required\":false,\"description\":\"The frame rate of the generated video.\",\"default\":\"30\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"num_refine_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to use for refinement.\",\"default\":\"40\",\"constraints\":\"Range: 8 to 50\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate.\",\"default\":\"162\",\"constraints\":\"Range: 17 to 961\"},{\"name\":\"video_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality of the generated video.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"},{\"name\":\"video_output_type\",\"type\":\"string\",\"required\":false,\"description\":\"The output type of the generated video.\",\"default\":\"X264 (.mp4)\",\"constraints\":\"Allowed values: X264 (.mp4), VP9 (.webm), PRORES4444 (.mov), GIF (.gif)\"},{\"name\":\"video_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the generated video.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meituan/longcat-video/image-to-video\\\",\\n \\\"prompt\\\": \\\"First-person view from the cockpit of a Formula 1 car. The driver's gloved hands firmly grip the intricate, carbon-fiber steering wheel adorned with numerous colorful buttons and a vibrant digital display showing race data. Beyond the windshield, a sun-drenched racetrack stretches ahead, lined with cheering spectators in the grandstands. Several rival cars are visible in the distance, creating a dynamic sense of competition. The sky above is a clear, brilliant blue, reflecting the exhilarating atmosphere of a high-speed race. high resolution 4k\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/image-to-video/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meituan/longcat-video/image-to-video\\\",\\n \\\"prompt\\\": \\\"First-person view from the cockpit of a Formula 1 car. The driver's gloved hands firmly grip the intricate, carbon-fiber steering wheel adorned with numerous colorful buttons and a vibrant digital display showing race data. Beyond the windshield, a sun-drenched racetrack stretches ahead, lined with cheering spectators in the grandstands. Several rival cars are visible in the distance, creating a dynamic sense of competition. The sky above is a clear, brilliant blue, reflecting the exhilarating atmosphere of a high-speed race. high resolution 4k\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/image-to-video/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meituan/longcat-video/image-to-video\\\",\\n \\\"prompt\\\": \\\"First-person view from the cockpit of a Formula 1 car. The driver's gloved hands firmly grip the intricate, carbon-fiber steering wheel adorned with numerous colorful buttons and a vibrant digital display showing race data. Beyond the windshield, a sun-drenched racetrack stretches ahead, lined with cheering spectators in the grandstands. Several rival cars are visible in the distance, creating a dynamic sense of competition. The sky above is a clear, brilliant blue, reflecting the exhilarating atmosphere of a high-speed race. high resolution 4k\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/lightricks/ltx-2.3-pro/image-to-video/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meituan/longcat-video/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LongCat Video" - modelId: "meituan/longcat-video/image-to-video" - vendor: "meituan" - vendorSlug: "meituan" - modelSlug: "longcat-video/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-30T16:23:09.789Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/meituan/longcat-video/text-to-video/480p.md b/model-api-reference/video-generation/meituan/longcat-video/text-to-video/480p.md deleted file mode 100644 index 817b2e2e..00000000 --- a/model-api-reference/video-generation/meituan/longcat-video/text-to-video/480p.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LongCat Video API Reference — Meituan / Text To Video / 480p" -description: "LongCat Video API reference for SandBase. Use model meituan/longcat-video/text-to-video/480p with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/meituan/longcat-video/text-to-video/480p" -apiReferenceJson: "{\"title\":\"LongCat Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Longcat Video 480p by meituan - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meituan/longcat-video/text-to-video/480p.\",\"default\":\"meituan/longcat-video/text-to-video/480p\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to guide the video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The guidance scale to use for the video generation.\",\"default\":\"4\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to use for the video generation.\",\"default\":\"40\",\"constraints\":\"Range: 8 to 50\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"video_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the generated video.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"},{\"name\":\"video_output_type\",\"type\":\"string\",\"required\":false,\"description\":\"The output type of the generated video.\",\"default\":\"X264 (.mp4)\",\"constraints\":\"Allowed values: X264 (.mp4), VP9 (.webm), PRORES4444 (.mov), GIF (.gif)\"},{\"name\":\"fps\",\"type\":\"integer\",\"required\":false,\"description\":\"The frame rate of the generated video.\",\"default\":\"15\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate.\",\"default\":\"162\",\"constraints\":\"Range: 17 to 961\"},{\"name\":\"video_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality of the generated video.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meituan/longcat-video/text-to-video/480p\\\",\\n \\\"prompt\\\": \\\"realistic filming style, a person wearing a dark helmet, a deep-colored jacket, blue jeans, and bright yellow shoes rides a skateboard along a winding mountain road. The skateboarder starts in a standing position, then gradually lowers into a crouch, extending one hand to touch the road surface while maintaining a low center of gravity to navigate a sharp curve. After completing the turn, the skateboarder rises back to a standing position and continues gliding forward. The background features lush green hills flanking both sides of the road, with distant snow-capped mountain peaks rising against a clear, bright blue sky. The camera follows closely from behind, smoothly tracking the skateboarder’s movements and capturing the dynamic scenery along the route. The scene is shot in natural daylight, highlighting the vivid outdoor environment and the skateboarder’s fluid actions.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meituan/longcat-video/text-to-video/480p\\\",\\n \\\"prompt\\\": \\\"realistic filming style, a person wearing a dark helmet, a deep-colored jacket, blue jeans, and bright yellow shoes rides a skateboard along a winding mountain road. The skateboarder starts in a standing position, then gradually lowers into a crouch, extending one hand to touch the road surface while maintaining a low center of gravity to navigate a sharp curve. After completing the turn, the skateboarder rises back to a standing position and continues gliding forward. The background features lush green hills flanking both sides of the road, with distant snow-capped mountain peaks rising against a clear, bright blue sky. The camera follows closely from behind, smoothly tracking the skateboarder’s movements and capturing the dynamic scenery along the route. The scene is shot in natural daylight, highlighting the vivid outdoor environment and the skateboarder’s fluid actions.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meituan/longcat-video/text-to-video/480p\\\",\\n \\\"prompt\\\": \\\"realistic filming style, a person wearing a dark helmet, a deep-colored jacket, blue jeans, and bright yellow shoes rides a skateboard along a winding mountain road. The skateboarder starts in a standing position, then gradually lowers into a crouch, extending one hand to touch the road surface while maintaining a low center of gravity to navigate a sharp curve. After completing the turn, the skateboarder rises back to a standing position and continues gliding forward. The background features lush green hills flanking both sides of the road, with distant snow-capped mountain peaks rising against a clear, bright blue sky. The camera follows closely from behind, smoothly tracking the skateboarder’s movements and capturing the dynamic scenery along the route. The scene is shot in natural daylight, highlighting the vivid outdoor environment and the skateboarder’s fluid actions.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meituan/longcat-video/text-to-video/480p\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LongCat Video" - modelId: "meituan/longcat-video/text-to-video/480p" - vendor: "meituan" - vendorSlug: "meituan" - modelSlug: "longcat-video/text-to-video/480p" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-30T14:50:01.405Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/meituan/longcat-video/text-to-video/720p.md b/model-api-reference/video-generation/meituan/longcat-video/text-to-video/720p.md deleted file mode 100644 index b621f32e..00000000 --- a/model-api-reference/video-generation/meituan/longcat-video/text-to-video/720p.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "LongCat Video API Reference — Meituan / Text To Video / 720p" -description: "LongCat Video API reference for SandBase. Use model meituan/longcat-video/text-to-video/720p with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/meituan/longcat-video/text-to-video/720p" -apiReferenceJson: "{\"title\":\"LongCat Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Longcat Video 720p by meituan - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meituan/longcat-video/text-to-video/720p.\",\"default\":\"meituan/longcat-video/text-to-video/720p\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to guide the video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"The guidance scale to use for the video generation.\",\"default\":\"4\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to use for the video generation.\",\"default\":\"40\",\"constraints\":\"Range: 8 to 50\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator.\"},{\"name\":\"video_quality\",\"type\":\"string\",\"required\":false,\"description\":\"The quality of the generated video.\",\"default\":\"high\",\"constraints\":\"Allowed values: low, medium, high, maximum\"},{\"name\":\"num_refine_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of inference steps to use for refinement.\",\"default\":\"40\",\"constraints\":\"Range: 8 to 50\"},{\"name\":\"fps\",\"type\":\"integer\",\"required\":false,\"description\":\"The frame rate of the generated video.\",\"default\":\"30\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"video_write_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The write mode of the generated video.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: fast, balanced, small\"},{\"name\":\"video_output_type\",\"type\":\"string\",\"required\":false,\"description\":\"The output type of the generated video.\",\"default\":\"X264 (.mp4)\",\"constraints\":\"Allowed values: X264 (.mp4), VP9 (.webm), PRORES4444 (.mov), GIF (.gif)\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"The number of frames to generate.\",\"default\":\"162\",\"constraints\":\"Range: 17 to 961\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meituan/longcat-video/text-to-video/720p\\\",\\n \\\"prompt\\\": \\\"realistic filming style, a person wearing a dark helmet, a deep-colored jacket, blue jeans, and bright yellow shoes rides a skateboard along a winding mountain road. The skateboarder starts in a standing position, then gradually lowers into a crouch, extending one hand to touch the road surface while maintaining a low center of gravity to navigate a sharp curve. After completing the turn, the skateboarder rises back to a standing position and continues gliding forward. The background features lush green hills flanking both sides of the road, with distant snow-capped mountain peaks rising against a clear, bright blue sky. The camera follows closely from behind, smoothly tracking the skateboarder’s movements and capturing the dynamic scenery along the route. The scene is shot in natural daylight, highlighting the vivid outdoor environment and the skateboarder’s fluid actions.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meituan/longcat-video/text-to-video/720p\\\",\\n \\\"prompt\\\": \\\"realistic filming style, a person wearing a dark helmet, a deep-colored jacket, blue jeans, and bright yellow shoes rides a skateboard along a winding mountain road. The skateboarder starts in a standing position, then gradually lowers into a crouch, extending one hand to touch the road surface while maintaining a low center of gravity to navigate a sharp curve. After completing the turn, the skateboarder rises back to a standing position and continues gliding forward. The background features lush green hills flanking both sides of the road, with distant snow-capped mountain peaks rising against a clear, bright blue sky. The camera follows closely from behind, smoothly tracking the skateboarder’s movements and capturing the dynamic scenery along the route. The scene is shot in natural daylight, highlighting the vivid outdoor environment and the skateboarder’s fluid actions.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meituan/longcat-video/text-to-video/720p\\\",\\n \\\"prompt\\\": \\\"realistic filming style, a person wearing a dark helmet, a deep-colored jacket, blue jeans, and bright yellow shoes rides a skateboard along a winding mountain road. The skateboarder starts in a standing position, then gradually lowers into a crouch, extending one hand to touch the road surface while maintaining a low center of gravity to navigate a sharp curve. After completing the turn, the skateboarder rises back to a standing position and continues gliding forward. The background features lush green hills flanking both sides of the road, with distant snow-capped mountain peaks rising against a clear, bright blue sky. The camera follows closely from behind, smoothly tracking the skateboarder’s movements and capturing the dynamic scenery along the route. The scene is shot in natural daylight, highlighting the vivid outdoor environment and the skateboarder’s fluid actions.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meituan/longcat-video/text-to-video/720p\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "LongCat Video" - modelId: "meituan/longcat-video/text-to-video/720p" - vendor: "meituan" - vendorSlug: "meituan" - modelSlug: "longcat-video/text-to-video/720p" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-30T16:24:45.138Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/meta/sam-3-1/video-rle.md b/model-api-reference/video-generation/meta/sam-3-1/video-rle.md deleted file mode 100644 index 0d679371..00000000 --- a/model-api-reference/video-generation/meta/sam-3-1/video-rle.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "SAM 3.1 Video API Reference" -description: "SAM 3.1 Video API reference for SandBase. Use model meta/sam-3-1/video-rle with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/meta/sam-3-1/video-rle" -apiReferenceJson: "{\"title\":\"SAM 3.1 Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sam 3 1 Video Rle is Meta's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/sam-3-1/video-rle.\",\"default\":\"meta/sam-3-1/video-rle\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for segmentation. Use commas to track multiple objects (e.g., 'person, cloth').\",\"default\":\"\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the mask to be applied initially.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to be segmented.\"},{\"name\":\"max_num_objects\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of objects to track in the video.\",\"default\":\"16\",\"constraints\":\"Range: 1 to 128\"},{\"name\":\"box_prompts\",\"type\":\"array\",\"required\":false,\"description\":\"List of box prompts with optional frame_index.\",\"default\":\"\"},{\"name\":\"point_prompts\",\"type\":\"array\",\"required\":false,\"description\":\"List of point prompts with frame indices.\",\"default\":\"\"},{\"name\":\"frame_index\",\"type\":\"integer\",\"required\":false,\"description\":\"Frame index used for initial interaction when mask_url is provided.\",\"default\":\"0\"},{\"name\":\"detection_threshold\",\"type\":\"number\",\"required\":false,\"description\":\"Detection confidence threshold (0.0-1.0). Lower = more detections but less precise. Defaults: 0.5 for existing, 0.7 for new objects. Try 0.2-0.3 if text prompts fail.\",\"default\":\"0.5\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"apply_mask\",\"type\":\"boolean\",\"required\":false,\"description\":\"Apply the mask on the video.\",\"default\":\"false\"},{\"name\":\"boundingbox_zip\",\"type\":\"boolean\",\"required\":false,\"description\":\"Return per-frame bounding box overlays as a zip archive.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/sam-3-1/video-rle\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/meta/sam-3-1/video-rle/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meta/sam-3-1/video-rle\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/meta/sam-3-1/video-rle/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meta/sam-3-1/video-rle\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/meta/sam-3-1/video-rle/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meta/sam-3-1/video-rle\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "SAM 3.1 Video" - modelId: "meta/sam-3-1/video-rle" - vendor: "Meta" - vendorSlug: "meta" - modelSlug: "sam-3-1/video-rle" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-30T16:44:14.182Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/meta/sam-3-1/video.md b/model-api-reference/video-generation/meta/sam-3-1/video.md deleted file mode 100644 index e6a6b6ec..00000000 --- a/model-api-reference/video-generation/meta/sam-3-1/video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sam 3 1 API Reference — Meta Sam 3 1 / Video API" -description: "Sam 3 1 API reference for SandBase. Use model meta/sam-3-1/video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/meta/sam-3-1/video" -apiReferenceJson: "{\"title\":\"Sam 3 1\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sam 3 1 Video is Meta's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/sam-3-1/video.\",\"default\":\"meta/sam-3-1/video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for segmentation. Use commas to track multiple objects (e.g., 'person, cloth').\",\"default\":\"\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to be segmented.\"},{\"name\":\"box_prompts\",\"type\":\"array\",\"required\":false,\"description\":\"List of box prompt coordinates (x_min, y_min, x_max, y_max).\",\"default\":\"\"},{\"name\":\"point_prompts\",\"type\":\"array\",\"required\":false,\"description\":\"List of point prompts\",\"default\":\"\"},{\"name\":\"detection_threshold\",\"type\":\"number\",\"required\":false,\"description\":\"Detection confidence threshold (0.0-1.0). Lower = more detections but less precise.\",\"default\":\"0.5\",\"constraints\":\"Range: 0.1 to 1\"},{\"name\":\"apply_mask\",\"type\":\"boolean\",\"required\":false,\"description\":\"Apply the mask on the video.\",\"default\":\"true\"},{\"name\":\"video_output_type\",\"type\":\"string\",\"required\":false,\"description\":\"The output type of the generated video.\",\"default\":\"X264 (.mp4)\",\"constraints\":\"Allowed values: X264 (.mp4), VP9 (.webm)\"},{\"name\":\"max_num_objects\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of objects to track in the video.\",\"default\":\"16\",\"constraints\":\"Range: 1 to 128\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/sam-3-1/video\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/meta/sam-3-1/video/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meta/sam-3-1/video\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/meta/sam-3-1/video/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meta/sam-3-1/video\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/meta/sam-3-1/video/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meta/sam-3-1/video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Sam 3 1" - modelId: "meta/sam-3-1/video" - vendor: "Meta" - vendorSlug: "meta" - modelSlug: "sam-3-1/video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-30T16:39:11.488Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/meta/sam-3/video-rle.md b/model-api-reference/video-generation/meta/sam-3/video-rle.md deleted file mode 100644 index 4678c305..00000000 --- a/model-api-reference/video-generation/meta/sam-3/video-rle.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sam 3 API Reference — Meta Sam 3 / Video Rle API" -description: "Sam 3 API reference for SandBase. Use model meta/sam-3/video-rle with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/meta/sam-3/video-rle" -apiReferenceJson: "{\"title\":\"Sam 3\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sam 3 Video Rle is Meta's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/sam-3/video-rle.\",\"default\":\"meta/sam-3/video-rle\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for segmentation. Use commas to track multiple objects (e.g., 'person, cloth').\",\"default\":\"\"},{\"name\":\"mask\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the mask to be applied initially.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to be segmented.\"},{\"name\":\"apply_mask\",\"type\":\"boolean\",\"required\":false,\"description\":\"Apply the mask on the video.\",\"default\":\"false\"},{\"name\":\"boundingbox_zip\",\"type\":\"boolean\",\"required\":false,\"description\":\"Return per-frame bounding box overlays as a zip archive.\",\"default\":\"false\"},{\"name\":\"box_prompts\",\"type\":\"array\",\"required\":false,\"description\":\"List of box prompts with optional frame_index.\",\"default\":\"\"},{\"name\":\"point_prompts\",\"type\":\"array\",\"required\":false,\"description\":\"List of point prompts with frame indices.\",\"default\":\"\"},{\"name\":\"detection_threshold\",\"type\":\"number\",\"required\":false,\"description\":\"Detection confidence threshold (0.0-1.0). Lower = more detections but less precise. Defaults: 0.5 for existing, 0.7 for new objects. Try 0.2-0.3 if text prompts fail.\",\"default\":\"0.5\",\"constraints\":\"Range: 0.01 to 1\"},{\"name\":\"frame_index\",\"type\":\"integer\",\"required\":false,\"description\":\"Frame index used for initial interaction when mask_url is provided.\",\"default\":\"0\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/sam-3/video-rle\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/meta/sam-3/video-rle/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meta/sam-3/video-rle\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/meta/sam-3/video-rle/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meta/sam-3/video-rle\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/meta/sam-3/video-rle/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meta/sam-3/video-rle\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Sam 3" - modelId: "meta/sam-3/video-rle" - vendor: "Meta" - vendorSlug: "meta" - modelSlug: "sam-3/video-rle" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-20T20:18:27.813Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/meta/sam-3/video.md b/model-api-reference/video-generation/meta/sam-3/video.md deleted file mode 100644 index e8c71a39..00000000 --- a/model-api-reference/video-generation/meta/sam-3/video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sam 3 API Reference — Meta Sam 3 / Video API" -description: "Sam 3 API reference for SandBase. Use model meta/sam-3/video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/meta/sam-3/video" -apiReferenceJson: "{\"title\":\"Sam 3\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sam 3 Video is Meta's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to meta/sam-3/video.\",\"default\":\"meta/sam-3/video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for segmentation. Use commas to track multiple objects (e.g., 'person, cloth').\",\"default\":\"\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to be segmented.\"},{\"name\":\"apply_mask\",\"type\":\"boolean\",\"required\":false,\"description\":\"Apply the mask on the video.\",\"default\":\"true\"},{\"name\":\"text_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"[DEPRECATED] Use 'prompt' instead. Kept for backward compatibility.\"},{\"name\":\"point_prompts\",\"type\":\"array\",\"required\":false,\"description\":\"List of point prompts\",\"default\":\"\"},{\"name\":\"box_prompts\",\"type\":\"array\",\"required\":false,\"description\":\"List of box prompt coordinates (x_min, y_min, x_max, y_max).\",\"default\":\"\"},{\"name\":\"video_output_type\",\"type\":\"string\",\"required\":false,\"description\":\"The output type of the generated video.\",\"default\":\"X264 (.mp4)\",\"constraints\":\"Allowed values: X264 (.mp4), VP9 (.webm)\"},{\"name\":\"detection_threshold\",\"type\":\"number\",\"required\":false,\"description\":\"Detection confidence threshold (0.0-1.0). Lower = more detections but less precise.\",\"default\":\"0.5\",\"constraints\":\"Range: 0.1 to 1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"meta/sam-3/video\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"meta/sam-3/video\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"meta/sam-3/video\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"meta/sam-3/video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Sam 3" - modelId: "meta/sam-3/video" - vendor: "Meta" - vendorSlug: "meta" - modelSlug: "sam-3/video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-20T20:08:20.592Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/minimax/h3-max-turbo/image-to-video.md b/model-api-reference/video-generation/minimax/h3-max-turbo/image-to-video.md new file mode 100644 index 00000000..3866223b --- /dev/null +++ b/model-api-reference/video-generation/minimax/h3-max-turbo/image-to-video.md @@ -0,0 +1,21 @@ +--- +title: "MiniMax H3 Max Turbo Image to Video API Reference" +description: "MiniMax H3 Max Turbo Image to Video API reference for SandBase. Use model minimax/h3-max-turbo/image-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/minimax/h3-max-turbo/image-to-video" +apiReferenceJson: "{\"title\":\"MiniMax H3 Max Turbo Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax H3 Max Turbo, the fastest tier of the H3 family post-trained by fal, animates a first frame (and optional last frame) into a 5-15 second video with native audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/h3-max-turbo/image-to-video.\",\"default\":\"minimax/h3-max-turbo/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Optional URL of the image to use as the first frame. When provided, the output canvas follows this image. If only end_image_url is provided, the canvas follows that last frame instead. If both images are omitted, the request is handled as text-to-video (16:9 by default).\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional URL of the image to use as the last frame. It may be provided alone for end-only keyframe generation; in that case the output canvas follows this image.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The native generation resolution, or 1080P latent refinement from a native 768P source.\",\"default\":\"768P\",\"constraints\":\"Allowed values: 480P, 768P, 1080P\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (5-15).\",\"default\":\"5\",\"constraints\":\"Range: 5 to 15\"},{\"name\":\"target_audio_url\",\"type\":\"string\",\"required\":false,\"description\":\"Optional URL of an audio clip at least 2 seconds long (maximum 15 MB) to pin to the generated soundtrack. Longer clips are trimmed to the requested video duration, keeping the beginning. The original audio replaces the output soundtrack, padded with silence if shorter than the video, without changing playback speed. Exceptionally high sample rates may be resampled to 96 kHz. Accepts an HTTP(S) URL or a base64 data URI.\"},{\"name\":\"prompt_expansion_mode\",\"type\":\"string\",\"required\":false,\"description\":\"How much effort to spend rewriting the prompt before generation. 'disabled' skips prompt expansion. 'balanced' returns in about a second. 'quality' spends up to ~30s on a richer prompt.\",\"default\":\"balanced\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed. A random seed is selected when omitted.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/h3-max-turbo/image-to-video\\\",\\n \\\"prompt\\\": \\\"The camera slowly pulls back from the scene, revealing the full landscape as clouds drift overhead and light shifts across the terrain.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/hailuo23/pro_i2v_in.jpg\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/h3-max-turbo/image-to-video\\\",\\n \\\"prompt\\\": \\\"The camera slowly pulls back from the scene, revealing the full landscape as clouds drift overhead and light shifts across the terrain.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/Falserverless/example_inputs/hailuo23/pro_i2v_in.jpg\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/h3-max-turbo/image-to-video\\\",\\n \\\"prompt\\\": \\\"The camera slowly pulls back from the scene, revealing the full landscape as clouds drift overhead and light shifts across the terrain.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/hailuo23/pro_i2v_in.jpg\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/h3-max-turbo/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "MiniMax H3 Max Turbo Image to Video" + modelId: "minimax/h3-max-turbo/image-to-video" + vendor: "MiniMax" + vendorSlug: "minimax" + modelSlug: "h3-max-turbo/image-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-09-02T17:55:11.477Z" + capabilities: ["image-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/minimax/h3-max-turbo/text-to-video.md b/model-api-reference/video-generation/minimax/h3-max-turbo/text-to-video.md new file mode 100644 index 00000000..b81377f3 --- /dev/null +++ b/model-api-reference/video-generation/minimax/h3-max-turbo/text-to-video.md @@ -0,0 +1,21 @@ +--- +title: "MiniMax H3 Max Turbo Text to Video API Reference" +description: "MiniMax H3 Max Turbo Text to Video API reference for SandBase. Use model minimax/h3-max-turbo/text-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/minimax/h3-max-turbo/text-to-video" +apiReferenceJson: "{\"title\":\"MiniMax H3 Max Turbo Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax H3 Max Turbo, the fastest tier of the H3 family post-trained by fal, turns a text prompt into a 5-15 second video with native audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/h3-max-turbo/text-to-video.\",\"default\":\"minimax/h3-max-turbo/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The native generation resolution, or 1080P latent refinement from a native 768P source.\",\"default\":\"768P\",\"constraints\":\"Allowed values: 480P, 768P, 1080P\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds (5-15).\",\"default\":\"5\",\"constraints\":\"Range: 5 to 15\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed. A random seed is selected when omitted.\"},{\"name\":\"target_audio_url\",\"type\":\"string\",\"required\":false,\"description\":\"Optional URL of an audio clip at least 2 seconds long (maximum 15 MB) to pin to the generated soundtrack. Longer clips are trimmed to the requested video duration, keeping the beginning. The original audio replaces the output soundtrack, padded with silence if shorter than the video, without changing playback speed. Exceptionally high sample rates may be resampled to 96 kHz. Accepts an HTTP(S) URL or a base64 data URI.\"},{\"name\":\"prompt_expansion_mode\",\"type\":\"string\",\"required\":false,\"description\":\"How much effort to spend rewriting the prompt before generation. 'disabled' skips prompt expansion. 'balanced' returns in about a second. 'quality' spends up to ~30s on a richer prompt.\",\"default\":\"balanced\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/h3-max-turbo/text-to-video\\\",\\n \\\"prompt\\\": \\\"A white kitten chases a butterfly across a sunlit garden. Gentle camera tracking, natural movement, soft afternoon light filtering through the leaves.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/h3-max-turbo/text-to-video\\\",\\n \\\"prompt\\\": \\\"A white kitten chases a butterfly across a sunlit garden. Gentle camera tracking, natural movement, soft afternoon light filtering through the leaves.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/h3-max-turbo/text-to-video\\\",\\n \\\"prompt\\\": \\\"A white kitten chases a butterfly across a sunlit garden. Gentle camera tracking, natural movement, soft afternoon light filtering through the leaves.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/h3-max-turbo/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "MiniMax H3 Max Turbo Text to Video" + modelId: "minimax/h3-max-turbo/text-to-video" + vendor: "MiniMax" + vendorSlug: "minimax" + modelSlug: "h3-max-turbo/text-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-09-02T17:55:19.999Z" + capabilities: ["text-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/minimax/h3-max-turbo/video-extend.md b/model-api-reference/video-generation/minimax/h3-max-turbo/video-extend.md new file mode 100644 index 00000000..1d99b091 --- /dev/null +++ b/model-api-reference/video-generation/minimax/h3-max-turbo/video-extend.md @@ -0,0 +1,21 @@ +--- +title: "MiniMax H3 Max Turbo Video Extend API Reference" +description: "MiniMax H3 Max Turbo Video Extend API reference for SandBase. Use model minimax/h3-max-turbo/video-extend with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/minimax/h3-max-turbo/video-extend" +apiReferenceJson: "{\"title\":\"MiniMax H3 Max Turbo Video Extend\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax H3 Max Turbo, the fastest tier of the H3 family post-trained by fal, continues an existing video with 1-15 seconds of new footage with native audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/h3-max-turbo/video-extend.\",\"default\":\"minimax/h3-max-turbo/video-extend\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"What happens next. Describe the continuation, not the source.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Matches the source video when omitted.\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the video to extend. Must be 1.625 s to 60 s long, up to 50 MB, aspect ratio between 0.4 and 2.5.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution.\",\"default\":\"768P\",\"constraints\":\"Allowed values: 480P, 768P, 1080P, 2K\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Seconds of new footage to add after the source. The actual duration may be slightly longer.\",\"default\":\"5\",\"constraints\":\"Range: 1 to 15\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the continuation. Random when omitted.\"},{\"name\":\"reference_audio_urls\",\"type\":\"array\",\"required\":false,\"description\":\"Optional audio references for the continuation (2–15 seconds each, 15 seconds combined). The full extended video retains its original source soundtrack, and its ending still conditions the transition. These clips guide the newly generated audio instead of using that soundtrack as an audio reference. Assign each clip a role in the prompt, such as 'Audio 1 for the voice' and 'Audio 2 for background music'.\"},{\"name\":\"output\",\"type\":\"string\",\"required\":false,\"description\":\"'extended' returns the whole source video followed by the new footage. 'continuation' returns only the generated continuation.\",\"default\":\"extended\",\"constraints\":\"Allowed values: extended, continuation\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/h3-max-turbo/video-extend\\\",\\n \\\"prompt\\\": \\\"The red panda keeps walking along the log, then looks up at a bird.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/flux-3-red-panda.mp4\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/h3-max-turbo/video-extend\\\",\\n \\\"prompt\\\": \\\"The red panda keeps walking along the log, then looks up at a bird.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/Falserverless/example_inputs/flux-3-red-panda.mp4\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/h3-max-turbo/video-extend\\\",\\n \\\"prompt\\\": \\\"The red panda keeps walking along the log, then looks up at a bird.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/flux-3-red-panda.mp4\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/h3-max-turbo/video-extend\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "MiniMax H3 Max Turbo Video Extend" + modelId: "minimax/h3-max-turbo/video-extend" + vendor: "MiniMax" + vendorSlug: "minimax" + modelSlug: "h3-max-turbo/video-extend" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-10-01T21:41:34.675Z" + capabilities: ["video-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/minimax/h3-max/image-to-video.md b/model-api-reference/video-generation/minimax/h3-max/image-to-video.md index 4a1266eb..ad5d1b05 100644 --- a/model-api-reference/video-generation/minimax/h3-max/image-to-video.md +++ b/model-api-reference/video-generation/minimax/h3-max/image-to-video.md @@ -1,12 +1,12 @@ --- -title: "H3 Max Image to Video API Reference" -description: "H3 Max Image to Video API reference for SandBase. Use model minimax/h3-max/image-to-video with /v1/run; see request and response examples." +title: "MiniMax H3 Max Image to Video API Reference" +description: "MiniMax H3 Max Image to Video API reference for SandBase. Use model minimax/h3-max/image-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/minimax/h3-max/image-to-video" -apiReferenceJson: "{\"title\":\"H3 Max Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"H3 Max is MiniMax's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/h3-max/image-to-video.\",\"default\":\"minimax/h3-max/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Optional URL of the image to use as the first frame. When provided, the output aspect ratio follows this image. When omitted, the request is handled as text-to-video (16:9 by default).\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional URL of the image to use as the last frame, for first-to-last keyframe generation.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The native generation resolution of the video.\",\"default\":\"768P\",\"constraints\":\"Allowed values: 480P, 768P\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the video in seconds.\",\"default\":\"5\",\"constraints\":\"Range: 5 to 15\"},{\"name\":\"prompt_expansion_mode\",\"type\":\"string\",\"required\":false,\"description\":\"How much effort to spend rewriting the prompt before generation. 'balanced' returns in about a second. 'quality' spends up to ~30s on a richer prompt.\",\"default\":\"balanced\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed. A random seed is selected when omitted.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/h3-max/image-to-video\\\",\\n \\\"prompt\\\": \\\"The camera slowly pulls back from the scene, revealing the full landscape as clouds drift overhead and light shifts across the terrain.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/hailuo23/pro_i2v_in.jpg\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/h3-max/image-to-video\\\",\\n \\\"prompt\\\": \\\"The camera slowly pulls back from the scene, revealing the full landscape as clouds drift overhead and light shifts across the terrain.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/Falserverless/example_inputs/hailuo23/pro_i2v_in.jpg\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/h3-max/image-to-video\\\",\\n \\\"prompt\\\": \\\"The camera slowly pulls back from the scene, revealing the full landscape as clouds drift overhead and light shifts across the terrain.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/hailuo23/pro_i2v_in.jpg\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/h3-max/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"MiniMax H3 Max Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax H3 Max by MiniMax animates a first frame, optionally toward a last frame, into a 5-15 second video with native audio at 480P or 768P.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/h3-max/image-to-video.\",\"default\":\"minimax/h3-max/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Optional URL of the image to use as the first frame. When provided, the output aspect ratio follows this image. When omitted, the request is handled as text-to-video (16:9 by default).\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional URL of the image to use as the last frame, for first-to-last keyframe generation.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The native generation resolution of the video.\",\"default\":\"768P\",\"constraints\":\"Allowed values: 480P, 768P\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the video in seconds.\",\"default\":\"5\",\"constraints\":\"Range: 5 to 15\"},{\"name\":\"prompt_expansion_mode\",\"type\":\"string\",\"required\":false,\"description\":\"How much effort to spend rewriting the prompt before generation. `balanced` returns in about a second; `quality` spends up to ~30 seconds on a richer prompt.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: balanced, quality\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/h3-max/image-to-video\\\",\\n \\\"prompt\\\": \\\"The camera slowly pulls back from the scene, revealing the full landscape as clouds drift overhead and light shifts across the terrain.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/mirrored/example_inputs/hailuo23/pro_i2v_in.jpg\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/h3-max/image-to-video\\\",\\n \\\"prompt\\\": \\\"The camera slowly pulls back from the scene, revealing the full landscape as clouds drift overhead and light shifts across the terrain.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/mirrored/example_inputs/hailuo23/pro_i2v_in.jpg\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/h3-max/image-to-video\\\",\\n \\\"prompt\\\": \\\"The camera slowly pulls back from the scene, revealing the full landscape as clouds drift overhead and light shifts across the terrain.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/mirrored/example_inputs/hailuo23/pro_i2v_in.jpg\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/h3-max/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "H3 Max Image to Video" + modelName: "MiniMax H3 Max Image to Video" modelId: "minimax/h3-max/image-to-video" vendor: "MiniMax" vendorSlug: "minimax" diff --git a/model-api-reference/video-generation/minimax/h3-max/reference-to-video.md b/model-api-reference/video-generation/minimax/h3-max/reference-to-video.md index 8cc6fbc1..4d53c426 100644 --- a/model-api-reference/video-generation/minimax/h3-max/reference-to-video.md +++ b/model-api-reference/video-generation/minimax/h3-max/reference-to-video.md @@ -1,12 +1,12 @@ --- -title: "H3 Max Reference to Video API Reference" -description: "H3 Max Reference to Video API reference for SandBase. Use model minimax/h3-max/reference-to-video with /v1/run; see request and response examples." +title: "MiniMax H3 Max Reference to Video API Reference" +description: "MiniMax H3 Max Reference to Video API reference for SandBase. Use model minimax/h3-max/reference-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/minimax/h3-max/reference-to-video" -apiReferenceJson: "{\"title\":\"H3 Max Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"H3 Max is MiniMax's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/h3-max/reference-to-video.\",\"default\":\"minimax/h3-max/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Refer to reference assets by their modality and order in the reference lists: Image 1, Image 2, Video 1, Audio 1, and so on.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The native generation resolution of the video.\",\"default\":\"768P\",\"constraints\":\"Allowed values: 480P, 768P\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the video in seconds.\",\"default\":\"5\",\"constraints\":\"Range: 5 to 15\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed. A random seed is selected when omitted.\"},{\"name\":\"reference_image_urls\",\"type\":\"array\",\"required\":false,\"description\":\"URLs of subject/style reference images, referenced in the prompt as Image 1, Image 2, and so on. Reference images, videos, and audio clips must add up to at most 12 files.\"},{\"name\":\"prompt_expansion_mode\",\"type\":\"string\",\"required\":false,\"description\":\"How much effort to spend rewriting the prompt before generation. 'balanced' returns in about a second. 'quality' spends up to ~30s on a richer prompt.\",\"default\":\"balanced\"},{\"name\":\"reference_video_urls\",\"type\":\"array\",\"required\":false,\"description\":\"URLs of motion/reference video clips (2-15 seconds each, combined duration at most 15 seconds), referenced in the prompt as Video 1, Video 2, and so on. Reference images, videos, and audio clips must add up to at most 12 files.\"},{\"name\":\"reference_audio_urls\",\"type\":\"array\",\"required\":false,\"description\":\"URLs of reference audio clips (2-15 seconds each, combined duration at most 15 seconds), referenced in the prompt as Audio 1, Audio 2, and so on. Audio cannot be the only reference input; provide at least one reference image or video with it. Reference images, videos, and audio clips must add up to at most 12 files.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/h3-max/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Image 1 is the female protagonist. Image 2 is her small dog. Keep the woman and dog consistent with their respective reference images while they walk together through a sunlit garden.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/h3-max/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Image 1 is the female protagonist. Image 2 is her small dog. Keep the woman and dog consistent with their respective reference images while they walk together through a sunlit garden.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/h3-max/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Image 1 is the female protagonist. Image 2 is her small dog. Keep the woman and dog consistent with their respective reference images while they walk together through a sunlit garden.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/h3-max/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"MiniMax H3 Max Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax H3 Max by MiniMax generates a 5-15 second video with native audio at 480P or 768P that keeps subjects, motion, and voice consistent with reference images, videos, and audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/h3-max/reference-to-video.\",\"default\":\"minimax/h3-max/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Refer to reference assets by their modality and order in the reference lists: Image 1, Image 2, Video 1, Audio 1, and so on.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to let the model choose from the prompt and reference inputs.\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The native generation resolution of the video.\",\"default\":\"768P\",\"constraints\":\"Allowed values: 480P, 768P\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the video in seconds.\",\"default\":\"5\",\"constraints\":\"Range: 5 to 15\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Up to 9 subject or style reference image URLs, referenced in the prompt as Image 1, Image 2, and so on.\"},{\"name\":\"prompt_expansion_mode\",\"type\":\"string\",\"required\":false,\"description\":\"How much effort to spend rewriting the prompt before generation. `balanced` returns in about a second; `quality` spends up to ~30 seconds on a richer prompt.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: balanced, quality\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"Up to 3 motion or reference video URLs (2-15 seconds each, at most 15 seconds combined), referenced in the prompt as Video 1, Video 2, and so on.\"},{\"name\":\"audios\",\"type\":\"array\",\"required\":false,\"description\":\"Up to 3 reference audio URLs (2-15 seconds each, at most 15 seconds combined), referenced in the prompt as Audio 1, Audio 2, and so on. Audio requires at least one reference image or video.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/h3-max/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Image 1 is the female protagonist. Image 2 is her small dog. Keep the woman and dog consistent with their respective reference images while they walk together through a sunlit garden.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/h3-max/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Image 1 is the female protagonist. Image 2 is her small dog. Keep the woman and dog consistent with their respective reference images while they walk together through a sunlit garden.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/h3-max/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Image 1 is the female protagonist. Image 2 is her small dog. Keep the woman and dog consistent with their respective reference images while they walk together through a sunlit garden.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/h3-max/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "H3 Max Reference to Video" + modelName: "MiniMax H3 Max Reference to Video" modelId: "minimax/h3-max/reference-to-video" vendor: "MiniMax" vendorSlug: "minimax" @@ -14,7 +14,7 @@ seo: protocol: "Video Generation Reference" endpoint: "/v1/run" publishedAt: "2026-08-31T20:32:22.303Z" - capabilities: ["image-to-video"] + capabilities: ["reference-to-video"] category: "Video Generation" --- diff --git a/model-api-reference/video-generation/minimax/h3-max/text-to-video.md b/model-api-reference/video-generation/minimax/h3-max/text-to-video.md index be720b84..f4ac8ead 100644 --- a/model-api-reference/video-generation/minimax/h3-max/text-to-video.md +++ b/model-api-reference/video-generation/minimax/h3-max/text-to-video.md @@ -4,7 +4,7 @@ description: "MiniMax H3 Max Text to Video API reference for SandBase. Use model aside: false outline: false apiReferenceKey: "video/minimax/h3-max/text-to-video" -apiReferenceJson: "{\"title\":\"MiniMax H3 Max Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"H3 Max by MiniMax - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/h3-max/text-to-video.\",\"default\":\"minimax/h3-max/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The native generation resolution of the video.\",\"default\":\"768P\",\"constraints\":\"Allowed values: 480P, 768P\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the video in seconds.\",\"default\":\"5\",\"constraints\":\"Range: 5 to 15\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed. A random seed is selected when omitted.\"},{\"name\":\"prompt_expansion_mode\",\"type\":\"string\",\"required\":false,\"description\":\"How much effort to spend rewriting the prompt before generation. 'balanced' returns in about a second. 'quality' spends up to ~30s on a richer prompt.\",\"default\":\"balanced\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/h3-max/text-to-video\\\",\\n \\\"prompt\\\": \\\"A white kitten chases a butterfly across a sunlit garden. Gentle camera tracking, natural movement, soft afternoon light filtering through the leaves.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/h3-max/text-to-video\\\",\\n \\\"prompt\\\": \\\"A white kitten chases a butterfly across a sunlit garden. Gentle camera tracking, natural movement, soft afternoon light filtering through the leaves.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/h3-max/text-to-video\\\",\\n \\\"prompt\\\": \\\"A white kitten chases a butterfly across a sunlit garden. Gentle camera tracking, natural movement, soft afternoon light filtering through the leaves.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/h3-max/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"MiniMax H3 Max Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax H3 Max by MiniMax turns a text prompt into a 5-15 second video with native audio at 480P or 768P, generating faster than MiniMax H3.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/h3-max/text-to-video.\",\"default\":\"minimax/h3-max/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Aspect ratio of the generated video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The native generation resolution of the video.\",\"default\":\"768P\",\"constraints\":\"Allowed values: 480P, 768P\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the video in seconds.\",\"default\":\"5\",\"constraints\":\"Range: 5 to 15\"},{\"name\":\"prompt_expansion_mode\",\"type\":\"string\",\"required\":false,\"description\":\"How much effort to spend rewriting the prompt before generation. `balanced` returns in about a second; `quality` spends up to ~30 seconds on a richer prompt.\",\"default\":\"balanced\",\"constraints\":\"Allowed values: balanced, quality\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/h3-max/text-to-video\\\",\\n \\\"prompt\\\": \\\"A white kitten chases a butterfly across a sunlit garden. Gentle camera tracking, natural movement, soft afternoon light filtering through the leaves.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/h3-max/text-to-video\\\",\\n \\\"prompt\\\": \\\"A white kitten chases a butterfly across a sunlit garden. Gentle camera tracking, natural movement, soft afternoon light filtering through the leaves.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/h3-max/text-to-video\\\",\\n \\\"prompt\\\": \\\"A white kitten chases a butterfly across a sunlit garden. Gentle camera tracking, natural movement, soft afternoon light filtering through the leaves.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/h3-max/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "MiniMax H3 Max Text to Video" modelId: "minimax/h3-max/text-to-video" diff --git a/model-api-reference/video-generation/minimax/h3/image-to-video.md b/model-api-reference/video-generation/minimax/h3/image-to-video.md index 6cbe4eb3..8d3f210e 100644 --- a/model-api-reference/video-generation/minimax/h3/image-to-video.md +++ b/model-api-reference/video-generation/minimax/h3/image-to-video.md @@ -1,12 +1,12 @@ --- -title: "MiniMax H3 (Image to Video) API Reference" -description: "MiniMax H3 (Image to Video) API reference for SandBase. Use model minimax/h3/image-to-video with /v1/run; see request and response examples." +title: "MiniMax H3 Image to Video API Reference" +description: "MiniMax H3 Image to Video API reference for SandBase. Use model minimax/h3/image-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/minimax/h3/image-to-video" -apiReferenceJson: "{\"title\":\"MiniMax H3 (Image to Video)\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Generate native-stereo 2K video from a first frame and optional last frame with MiniMax H3.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/h3/image-to-video.\",\"default\":\"minimax/h3/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\",\"default\":\"The camera slowly pulls back, revealing the full landscape as clouds drift overhead and light shifts across the terrain.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The first frame of the generated video.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional last frame for first-to-last keyframe control.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":true,\"description\":\"Request parameter supported by this model.\",\"default\":\"5\",\"constraints\":\"Allowed values: 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution. 768P is generated natively; 2K is upscaled via an in-context regeneration pass.\",\"default\":\"2K\",\"constraints\":\"Allowed values: 768P, 2K\"},{\"name\":\"aigc_watermark\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to add an AIGC label watermark to the generated video.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"},{\"name\":\"usage.input_image_count\",\"type\":\"integer\",\"required\":false,\"description\":\"Input image count reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"usage.input_seconds\",\"type\":\"number\",\"required\":false,\"description\":\"Input video seconds reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"usage.output_seconds\",\"type\":\"number\",\"required\":false,\"description\":\"Generated video seconds reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"usage.total_seconds\",\"type\":\"number\",\"required\":false,\"description\":\"Total seconds reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video, first-last-frame-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/h3/image-to-video\\\",\\n \\\"prompt\\\": \\\"The camera slowly pulls back, revealing the full landscape as clouds drift overhead and light shifts across the terrain.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/h3/image-to-video\\\",\\n \\\"prompt\\\": \\\"The camera slowly pulls back, revealing the full landscape as clouds drift overhead and light shifts across the terrain.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/h3/image-to-video\\\",\\n \\\"prompt\\\": \\\"The camera slowly pulls back, revealing the full landscape as clouds drift overhead and light shifts across the terrain.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/h3/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"MiniMax H3 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Generate native-stereo 2K video from a first frame and optional last frame with MiniMax H3.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/h3/image-to-video.\",\"default\":\"minimax/h3/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\",\"default\":\"The camera slowly pulls back, revealing the full landscape as clouds drift overhead and light shifts across the terrain.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The first frame of the generated video.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional last frame for first-to-last keyframe control.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":true,\"description\":\"Request parameter supported by this model.\",\"default\":\"5\",\"constraints\":\"Allowed values: 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution. 768P is generated natively; 2K is upscaled via an in-context regeneration pass.\",\"default\":\"2K\",\"constraints\":\"Allowed values: 768P, 2K\"},{\"name\":\"aigc_watermark\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to add an AIGC label watermark to the generated video.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"},{\"name\":\"usage.input_image_count\",\"type\":\"integer\",\"required\":false,\"description\":\"Input image count reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"usage.input_seconds\",\"type\":\"number\",\"required\":false,\"description\":\"Input video seconds reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"usage.output_seconds\",\"type\":\"number\",\"required\":false,\"description\":\"Generated video seconds reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"usage.total_seconds\",\"type\":\"number\",\"required\":false,\"description\":\"Total seconds reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video, first-last-frame-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/h3/image-to-video\\\",\\n \\\"prompt\\\": \\\"The camera slowly pulls back, revealing the full landscape as clouds drift overhead and light shifts across the terrain.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/h3/image-to-video\\\",\\n \\\"prompt\\\": \\\"The camera slowly pulls back, revealing the full landscape as clouds drift overhead and light shifts across the terrain.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/h3/image-to-video\\\",\\n \\\"prompt\\\": \\\"The camera slowly pulls back, revealing the full landscape as clouds drift overhead and light shifts across the terrain.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/input.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/h3/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "MiniMax H3 (Image to Video)" + modelName: "MiniMax H3 Image to Video" modelId: "minimax/h3/image-to-video" vendor: "MiniMax" vendorSlug: "minimax" diff --git a/model-api-reference/video-generation/minimax/h3/reference-to-video.md b/model-api-reference/video-generation/minimax/h3/reference-to-video.md index 988396b9..1914ff0d 100644 --- a/model-api-reference/video-generation/minimax/h3/reference-to-video.md +++ b/model-api-reference/video-generation/minimax/h3/reference-to-video.md @@ -1,12 +1,12 @@ --- -title: "MiniMax H3 (Reference to Video) API Reference" -description: "MiniMax H3 (Reference to Video) API reference for SandBase. Use model minimax/h3/reference-to-video with /v1/run; see request and response examples." +title: "MiniMax H3 Reference to Video API Reference" +description: "MiniMax H3 Reference to Video API reference for SandBase. Use model minimax/h3/reference-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/minimax/h3/reference-to-video" -apiReferenceJson: "{\"title\":\"MiniMax H3 (Reference to Video)\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Generate native-stereo 2K video guided by image, video, and audio references with MiniMax H3.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/h3/reference-to-video.\",\"default\":\"minimax/h3/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\",\"default\":\"Keep the referenced character and motion consistent while creating a cinematic garden scene with synchronized ambient sound.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Request parameter supported by this model.\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"Each clip must be 2–15 seconds; combined duration must not exceed 15 seconds.\"},{\"name\":\"audios\",\"type\":\"array\",\"required\":false,\"description\":\"Audio requires at least one reference image or video.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":true,\"description\":\"Request parameter supported by this model.\",\"default\":\"5\",\"constraints\":\"Allowed values: 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Aspect ratio of the generated image.\",\"default\":\"adaptive\",\"constraints\":\"Allowed values: adaptive, 21:9, 16:9, 4:3, 1:1, 3:4, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution. 768P is generated natively; 2K is upscaled via an in-context regeneration pass.\",\"default\":\"2K\",\"constraints\":\"Allowed values: 768P, 2K\"},{\"name\":\"aigc_watermark\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to add an AIGC label watermark to the generated video.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"},{\"name\":\"usage.input_image_count\",\"type\":\"integer\",\"required\":false,\"description\":\"Input image count reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"usage.input_seconds\",\"type\":\"number\",\"required\":false,\"description\":\"Input video seconds reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"usage.output_seconds\",\"type\":\"number\",\"required\":false,\"description\":\"Generated video seconds reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"usage.total_seconds\",\"type\":\"number\",\"required\":false,\"description\":\"Total seconds reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video, video-to-video, audio-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/h3/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Keep the referenced character and motion consistent while creating a cinematic garden scene with synchronized ambient sound.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"adaptive\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/h3/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Keep the referenced character and motion consistent while creating a cinematic garden scene with synchronized ambient sound.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"adaptive\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/h3/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Keep the referenced character and motion consistent while creating a cinematic garden scene with synchronized ambient sound.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"adaptive\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/h3/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"MiniMax H3 Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Generate native-stereo 2K video guided by image, video, and audio references with MiniMax H3.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/h3/reference-to-video.\",\"default\":\"minimax/h3/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\",\"default\":\"Keep the referenced character and motion consistent while creating a cinematic garden scene with synchronized ambient sound.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"Request parameter supported by this model.\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":false,\"description\":\"Each clip must be 2–15 seconds; combined duration must not exceed 15 seconds.\"},{\"name\":\"audios\",\"type\":\"array\",\"required\":false,\"description\":\"Audio requires at least one reference image or video.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":true,\"description\":\"Request parameter supported by this model.\",\"default\":\"5\",\"constraints\":\"Allowed values: 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to let the model choose from the prompt and reference inputs.\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution. 768P is generated natively; 2K is upscaled via an in-context regeneration pass.\",\"default\":\"2K\",\"constraints\":\"Allowed values: 768P, 2K\"},{\"name\":\"aigc_watermark\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to add an AIGC label watermark to the generated video.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"},{\"name\":\"usage.input_image_count\",\"type\":\"integer\",\"required\":false,\"description\":\"Input image count reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"usage.input_seconds\",\"type\":\"number\",\"required\":false,\"description\":\"Input video seconds reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"usage.output_seconds\",\"type\":\"number\",\"required\":false,\"description\":\"Generated video seconds reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"usage.total_seconds\",\"type\":\"number\",\"required\":false,\"description\":\"Total seconds reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video, video-to-video, audio-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/h3/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Keep the referenced character and motion consistent while creating a cinematic garden scene with synchronized ambient sound.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/h3/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Keep the referenced character and motion consistent while creating a cinematic garden scene with synchronized ambient sound.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/h3/reference-to-video\\\",\\n \\\"prompt\\\": \\\"Keep the referenced character and motion consistent while creating a cinematic garden scene with synchronized ambient sound.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/h3/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "MiniMax H3 (Reference to Video)" + modelName: "MiniMax H3 Reference to Video" modelId: "minimax/h3/reference-to-video" vendor: "MiniMax" vendorSlug: "minimax" diff --git a/model-api-reference/video-generation/minimax/h3/text-to-video.md b/model-api-reference/video-generation/minimax/h3/text-to-video.md index ef4dc238..33464108 100644 --- a/model-api-reference/video-generation/minimax/h3/text-to-video.md +++ b/model-api-reference/video-generation/minimax/h3/text-to-video.md @@ -1,12 +1,12 @@ --- -title: "MiniMax H3 (Text to Video) API Reference" -description: "MiniMax H3 (Text to Video) API reference for SandBase. Use model minimax/h3/text-to-video with /v1/run; see request and response examples." +title: "MiniMax H3 Text to Video API Reference" +description: "MiniMax H3 Text to Video API reference for SandBase. Use model minimax/h3/text-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/minimax/h3/text-to-video" -apiReferenceJson: "{\"title\":\"MiniMax H3 (Text to Video)\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Generate native-stereo 2K video from text with MiniMax H3.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/h3/text-to-video.\",\"default\":\"minimax/h3/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\",\"default\":\"A cinematic wide shot of an astronaut walking across a red desert at sunset, wind lifting fine dust, with natural footsteps and distant ambient sound.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":true,\"description\":\"Request parameter supported by this model.\",\"default\":\"5\",\"constraints\":\"Allowed values: 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution. 768P is generated natively; 2K is upscaled via an in-context regeneration pass.\",\"default\":\"2K\",\"constraints\":\"Allowed values: 768P, 2K\"},{\"name\":\"aigc_watermark\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to add an AIGC label watermark to the generated video.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"},{\"name\":\"usage.input_image_count\",\"type\":\"integer\",\"required\":false,\"description\":\"Input image count reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"usage.input_seconds\",\"type\":\"number\",\"required\":false,\"description\":\"Input video seconds reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"usage.output_seconds\",\"type\":\"number\",\"required\":false,\"description\":\"Generated video seconds reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"usage.total_seconds\",\"type\":\"number\",\"required\":false,\"description\":\"Total seconds reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/h3/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic wide shot of an astronaut walking across a red desert at sunset, wind lifting fine dust, with natural footsteps and distant ambient sound.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/h3/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic wide shot of an astronaut walking across a red desert at sunset, wind lifting fine dust, with natural footsteps and distant ambient sound.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/h3/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic wide shot of an astronaut walking across a red desert at sunset, wind lifting fine dust, with natural footsteps and distant ambient sound.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/h3/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"MiniMax H3 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Generate native-stereo 2K video from text with MiniMax H3.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/h3/text-to-video.\",\"default\":\"minimax/h3/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\",\"default\":\"A cinematic wide shot of an astronaut walking across a red desert at sunset, wind lifting fine dust, with natural footsteps and distant ambient sound.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":true,\"description\":\"Request parameter supported by this model.\",\"default\":\"5\",\"constraints\":\"Allowed values: 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output resolution. 768P is generated natively; 2K is upscaled via an in-context regeneration pass.\",\"default\":\"2K\",\"constraints\":\"Allowed values: 768P, 2K\"},{\"name\":\"aigc_watermark\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to add an AIGC label watermark to the generated video.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"},{\"name\":\"usage.input_image_count\",\"type\":\"integer\",\"required\":false,\"description\":\"Input image count reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"usage.input_seconds\",\"type\":\"number\",\"required\":false,\"description\":\"Input video seconds reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"usage.output_seconds\",\"type\":\"number\",\"required\":false,\"description\":\"Generated video seconds reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"usage.total_seconds\",\"type\":\"number\",\"required\":false,\"description\":\"Total seconds reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/h3/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic wide shot of an astronaut walking across a red desert at sunset, wind lifting fine dust, with natural footsteps and distant ambient sound.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/h3/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic wide shot of an astronaut walking across a red desert at sunset, wind lifting fine dust, with natural footsteps and distant ambient sound.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/h3/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic wide shot of an astronaut walking across a red desert at sunset, wind lifting fine dust, with natural footsteps and distant ambient sound.\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/h3/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "MiniMax H3 (Text to Video)" + modelName: "MiniMax H3 Text to Video" modelId: "minimax/h3/text-to-video" vendor: "MiniMax" vendorSlug: "minimax" diff --git a/model-api-reference/video-generation/minimax/h3/video-regeneration.md b/model-api-reference/video-generation/minimax/h3/video-regeneration.md deleted file mode 100644 index c5cc3a64..00000000 --- a/model-api-reference/video-generation/minimax/h3/video-regeneration.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiniMax H3 Video Regeneration API Reference" -description: "MiniMax H3 Video Regeneration API reference for SandBase. Use model minimax/h3/video-regeneration with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/minimax/h3/video-regeneration" -apiReferenceJson: "{\"title\":\"MiniMax H3 Video Regeneration\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Regenerate a single base video from a text prompt as a 2K MiniMax H3 video.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/h3/video-regeneration.\",\"default\":\"minimax/h3/video-regeneration\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text instruction used to regenerate the base video.\"},{\"name\":\"videos\",\"type\":\"array\",\"required\":true,\"description\":\"Exactly one base video URL to regenerate.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":true,\"description\":\"Regeneration output resolution. MiniMax H3 regeneration supports 2K only.\",\"default\":\"2K\",\"constraints\":\"Allowed values: 2K\"},{\"name\":\"aigc_watermark\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to add an AIGC label watermark to the regenerated video.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"},{\"name\":\"usage.input_image_count\",\"type\":\"integer\",\"required\":false,\"description\":\"Input image count reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"usage.input_seconds\",\"type\":\"number\",\"required\":false,\"description\":\"Input video seconds reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"usage.output_seconds\",\"type\":\"number\",\"required\":false,\"description\":\"Generated video seconds reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"},{\"name\":\"usage.total_seconds\",\"type\":\"number\",\"required\":false,\"description\":\"Total seconds reported by the MiniMax H3 official completed task.\",\"constraints\":\"Minimum: 0\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-regeneration\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/h3/video-regeneration\\\",\\n \\\"prompt\\\": \\\"Enhance the scene with cinematic lighting\\\",\\n \\\"videos\\\": [\\n \\\"https://static.sandbase.ai/examples/pixverse/sound-effects/input_video_0.mp4\\\"\\n ],\\n \\\"resolution\\\": \\\"2K\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/h3/video-regeneration\\\",\\n \\\"prompt\\\": \\\"Enhance the scene with cinematic lighting\\\",\\n \\\"videos\\\": [\\n \\\"https://static.sandbase.ai/examples/pixverse/sound-effects/input_video_0.mp4\\\"\\n ],\\n \\\"resolution\\\": \\\"2K\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/h3/video-regeneration\\\",\\n \\\"prompt\\\": \\\"Enhance the scene with cinematic lighting\\\",\\n \\\"videos\\\": [\\n \\\"https://static.sandbase.ai/examples/pixverse/sound-effects/input_video_0.mp4\\\"\\n ],\\n \\\"resolution\\\": \\\"2K\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/h3/video-regeneration\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "MiniMax H3 Video Regeneration" - modelId: "minimax/h3/video-regeneration" - vendor: "MiniMax" - vendorSlug: "minimax" - modelSlug: "h3/video-regeneration" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-08-14T00:00:00Z" - capabilities: ["video-regeneration"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/minimax/hailuo/02-fast/image-to-video.md b/model-api-reference/video-generation/minimax/hailuo/02-fast/image-to-video.md deleted file mode 100644 index d868a0f1..00000000 --- a/model-api-reference/video-generation/minimax/hailuo/02-fast/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiniMax Hailuo 02 Fast (Image to Video) API Reference" -description: "MiniMax Hailuo 02 Fast (Image to Video) API reference for SandBase. Use model minimax/hailuo/02-fast/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/minimax/hailuo/02-fast/image-to-video" -apiReferenceJson: "{\"title\":\"MiniMax Hailuo 02 Fast (Image to Video)\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hailuo 02 Fast is MiniMax's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/hailuo/02-fast/image-to-video.\",\"default\":\"minimax/hailuo/02-fast/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image URL or image data used by this model.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the video in seconds. 10 seconds videos are not supported for 1080p resolution.\",\"default\":\"6\",\"constraints\":\"Allowed values: 6, 10\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the model's prompt optimizer\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/hailuo/02-fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"Extremely realistic movement An old samurai is breaking a stone in half\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/02-fast/image-to-video/input_image_0.webp\\\",\\n \\\"duration\\\": 6\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/hailuo/02-fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"Extremely realistic movement An old samurai is breaking a stone in half\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/02-fast/image-to-video/input_image_0.webp\\\",\\n \\\"duration\\\": 6\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/hailuo/02-fast/image-to-video\\\",\\n \\\"prompt\\\": \\\"Extremely realistic movement An old samurai is breaking a stone in half\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/02-fast/image-to-video/input_image_0.webp\\\",\\n \\\"duration\\\": 6\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/hailuo/02-fast/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "MiniMax Hailuo 02 Fast (Image to Video)" - modelId: "minimax/hailuo/02-fast/image-to-video" - vendor: "MiniMax" - vendorSlug: "minimax" - modelSlug: "hailuo/02-fast/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-06T17:29:12.95Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/minimax/hailuo/02/pro/image-to-video.md b/model-api-reference/video-generation/minimax/hailuo/02/pro/image-to-video.md deleted file mode 100644 index 656c68a5..00000000 --- a/model-api-reference/video-generation/minimax/hailuo/02/pro/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiniMax Hailuo 02 [Pro] (Image to Video) API Reference" -description: "MiniMax Hailuo 02 [Pro] (Image to Video) API reference for SandBase. Use model minimax/hailuo/02/pro/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/minimax/hailuo/02/pro/image-to-video" -apiReferenceJson: "{\"title\":\"MiniMax Hailuo 02 [Pro] (Image to Video)\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hailuo 02 Pro by MiniMax - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/hailuo/02/pro/image-to-video.\",\"default\":\"minimax/hailuo/02/pro/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image URL or image data used by this model.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional URL of the image to use as the last frame of the video\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the model's prompt optimizer\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/hailuo/02/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Man walked into winter cave with polar bear\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/02/pro/image-to-video/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/hailuo/02/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Man walked into winter cave with polar bear\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/02/pro/image-to-video/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/hailuo/02/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Man walked into winter cave with polar bear\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/02/pro/image-to-video/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/hailuo/02/pro/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "MiniMax Hailuo 02 [Pro] (Image to Video)" - modelId: "minimax/hailuo/02/pro/image-to-video" - vendor: "MiniMax" - vendorSlug: "minimax" - modelSlug: "hailuo/02/pro/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-18T00:46:50.998Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/minimax/hailuo/02/pro/text-to-video.md b/model-api-reference/video-generation/minimax/hailuo/02/pro/text-to-video.md deleted file mode 100644 index 90b3b5ba..00000000 --- a/model-api-reference/video-generation/minimax/hailuo/02/pro/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiniMax Hailuo 02 [Pro] (Text to Video) API Reference" -description: "MiniMax Hailuo 02 [Pro] (Text to Video) API reference for SandBase. Use model minimax/hailuo/02/pro/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/minimax/hailuo/02/pro/text-to-video" -apiReferenceJson: "{\"title\":\"MiniMax Hailuo 02 [Pro] (Text to Video)\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hailuo 02 Pro is MiniMax's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/hailuo/02/pro/text-to-video.\",\"default\":\"minimax/hailuo/02/pro/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the model's prompt optimizer\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/hailuo/02/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A Galactic Smuggler is a rogue figure with a cybernetic arm and a well-worn coat that hints at many dangerous escapades across the galaxy. Their ship is filled with rare and exotic treasures from distant planets, concealed in hidden compartments, showing their expertise in illicit trade. Their belt is adorned with energy-based weapons, ready to be drawn at any moment to protect themselves or escape from tight situations. This character thrives in the shadows of space, navigating between the law and chaos with stealth and wit, always seeking the next big score while evading bounty hunters and law enforcement. The rogue's ship, rugged yet efficient, serves as both a home and a tool for their dangerous lifestyle. The treasures they collect reflect the diverse and intriguing worlds they've encountered—alien artifacts, rare minerals, and artifacts of unknown origin. Their reputation precedes them, with whispers of their dealings and the deadly encounters that often follow. A master of negotiation and deception, the Galactic Smuggler navigates the cosmos with an eye on the horizon, always one step ahead of those who pursue them.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/hailuo/02/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A Galactic Smuggler is a rogue figure with a cybernetic arm and a well-worn coat that hints at many dangerous escapades across the galaxy. Their ship is filled with rare and exotic treasures from distant planets, concealed in hidden compartments, showing their expertise in illicit trade. Their belt is adorned with energy-based weapons, ready to be drawn at any moment to protect themselves or escape from tight situations. This character thrives in the shadows of space, navigating between the law and chaos with stealth and wit, always seeking the next big score while evading bounty hunters and law enforcement. The rogue's ship, rugged yet efficient, serves as both a home and a tool for their dangerous lifestyle. The treasures they collect reflect the diverse and intriguing worlds they've encountered—alien artifacts, rare minerals, and artifacts of unknown origin. Their reputation precedes them, with whispers of their dealings and the deadly encounters that often follow. A master of negotiation and deception, the Galactic Smuggler navigates the cosmos with an eye on the horizon, always one step ahead of those who pursue them.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/hailuo/02/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"A Galactic Smuggler is a rogue figure with a cybernetic arm and a well-worn coat that hints at many dangerous escapades across the galaxy. Their ship is filled with rare and exotic treasures from distant planets, concealed in hidden compartments, showing their expertise in illicit trade. Their belt is adorned with energy-based weapons, ready to be drawn at any moment to protect themselves or escape from tight situations. This character thrives in the shadows of space, navigating between the law and chaos with stealth and wit, always seeking the next big score while evading bounty hunters and law enforcement. The rogue's ship, rugged yet efficient, serves as both a home and a tool for their dangerous lifestyle. The treasures they collect reflect the diverse and intriguing worlds they've encountered—alien artifacts, rare minerals, and artifacts of unknown origin. Their reputation precedes them, with whispers of their dealings and the deadly encounters that often follow. A master of negotiation and deception, the Galactic Smuggler navigates the cosmos with an eye on the horizon, always one step ahead of those who pursue them.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/hailuo/02/pro/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "MiniMax Hailuo 02 [Pro] (Text to Video)" - modelId: "minimax/hailuo/02/pro/text-to-video" - vendor: "MiniMax" - vendorSlug: "minimax" - modelSlug: "hailuo/02/pro/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-18T00:41:11.159Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/minimax/hailuo/02/standard/image-to-video.md b/model-api-reference/video-generation/minimax/hailuo/02/standard/image-to-video.md deleted file mode 100644 index 642c6e24..00000000 --- a/model-api-reference/video-generation/minimax/hailuo/02/standard/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiniMax Hailuo 02 [Standard] (Image to Video) API Reference" -description: "SandBase API reference for model minimax/hailuo/02/standard/image-to-video. Call /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/minimax/hailuo/02/standard/image-to-video" -apiReferenceJson: "{\"title\":\"MiniMax Hailuo 02 [Standard] (Image to Video)\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hailuo 02 Standard is MiniMax's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/hailuo/02/standard/image-to-video.\",\"default\":\"minimax/hailuo/02/standard/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image URL or image data used by this model.\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"Optional URL of the image to use as the last frame of the video\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"768P\",\"constraints\":\"Allowed values: 512P, 768P\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the video in seconds. 10 seconds videos are not supported for 1080p resolution.\",\"default\":\"6\",\"constraints\":\"Allowed values: 6, 10\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the model's prompt optimizer\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/hailuo/02/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Man walked into winter cave with polar bear\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/02/standard/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/hailuo/02/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Man walked into winter cave with polar bear\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/02/standard/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/hailuo/02/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Man walked into winter cave with polar bear\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/02/standard/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/hailuo/02/standard/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "MiniMax Hailuo 02 [Standard] (Image to Video)" - modelId: "minimax/hailuo/02/standard/image-to-video" - vendor: "MiniMax" - vendorSlug: "minimax" - modelSlug: "hailuo/02/standard/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-18T00:47:27.952Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/minimax/hailuo/02/standard/text-to-video.md b/model-api-reference/video-generation/minimax/hailuo/02/standard/text-to-video.md deleted file mode 100644 index 4d52f038..00000000 --- a/model-api-reference/video-generation/minimax/hailuo/02/standard/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiniMax Hailuo 02 [Standard] (Text to Video) API Reference" -description: "SandBase API reference for model minimax/hailuo/02/standard/text-to-video. Call /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/minimax/hailuo/02/standard/text-to-video" -apiReferenceJson: "{\"title\":\"MiniMax Hailuo 02 [Standard] (Text to Video)\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hailuo 02 Standard by MiniMax - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/hailuo/02/standard/text-to-video.\",\"default\":\"minimax/hailuo/02/standard/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the video in seconds. 10 seconds videos are not supported for 1080p resolution.\",\"default\":\"6\",\"constraints\":\"Allowed values: 6, 10\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the model's prompt optimizer\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/hailuo/02/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"A Galactic Smuggler is a rogue figure with a cybernetic arm and a well-worn coat that hints at many dangerous escapades across the galaxy. Their ship is filled with rare and exotic treasures from distant planets, concealed in hidden compartments, showing their expertise in illicit trade. Their belt is adorned with energy-based weapons, ready to be drawn at any moment to protect themselves or escape from tight situations. This character thrives in the shadows of space, navigating between the law and chaos with stealth and wit, always seeking the next big score while evading bounty hunters and law enforcement. The rogue's ship, rugged yet efficient, serves as both a home and a tool for their dangerous lifestyle. The treasures they collect reflect the diverse and intriguing worlds they've encountered—alien artifacts, rare minerals, and artifacts of unknown origin. Their reputation precedes them, with whispers of their dealings and the deadly encounters that often follow. A master of negotiation and deception, the Galactic Smuggler navigates the cosmos with an eye on the horizon, always one step ahead of those who pursue them.\\\",\\n \\\"duration\\\": 6\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/hailuo/02/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"A Galactic Smuggler is a rogue figure with a cybernetic arm and a well-worn coat that hints at many dangerous escapades across the galaxy. Their ship is filled with rare and exotic treasures from distant planets, concealed in hidden compartments, showing their expertise in illicit trade. Their belt is adorned with energy-based weapons, ready to be drawn at any moment to protect themselves or escape from tight situations. This character thrives in the shadows of space, navigating between the law and chaos with stealth and wit, always seeking the next big score while evading bounty hunters and law enforcement. The rogue's ship, rugged yet efficient, serves as both a home and a tool for their dangerous lifestyle. The treasures they collect reflect the diverse and intriguing worlds they've encountered—alien artifacts, rare minerals, and artifacts of unknown origin. Their reputation precedes them, with whispers of their dealings and the deadly encounters that often follow. A master of negotiation and deception, the Galactic Smuggler navigates the cosmos with an eye on the horizon, always one step ahead of those who pursue them.\\\",\\n \\\"duration\\\": 6\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/hailuo/02/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"A Galactic Smuggler is a rogue figure with a cybernetic arm and a well-worn coat that hints at many dangerous escapades across the galaxy. Their ship is filled with rare and exotic treasures from distant planets, concealed in hidden compartments, showing their expertise in illicit trade. Their belt is adorned with energy-based weapons, ready to be drawn at any moment to protect themselves or escape from tight situations. This character thrives in the shadows of space, navigating between the law and chaos with stealth and wit, always seeking the next big score while evading bounty hunters and law enforcement. The rogue's ship, rugged yet efficient, serves as both a home and a tool for their dangerous lifestyle. The treasures they collect reflect the diverse and intriguing worlds they've encountered—alien artifacts, rare minerals, and artifacts of unknown origin. Their reputation precedes them, with whispers of their dealings and the deadly encounters that often follow. A master of negotiation and deception, the Galactic Smuggler navigates the cosmos with an eye on the horizon, always one step ahead of those who pursue them.\\\",\\n \\\"duration\\\": 6\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/hailuo/02/standard/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "MiniMax Hailuo 02 [Standard] (Text to Video)" - modelId: "minimax/hailuo/02/standard/text-to-video" - vendor: "MiniMax" - vendorSlug: "minimax" - modelSlug: "hailuo/02/standard/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-18T00:40:08.84Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/minimax/hailuo/2.3-fast/pro/image-to-video.md b/model-api-reference/video-generation/minimax/hailuo/2.3-fast/pro/image-to-video.md index e3dbeefa..770c0dcf 100644 --- a/model-api-reference/video-generation/minimax/hailuo/2.3-fast/pro/image-to-video.md +++ b/model-api-reference/video-generation/minimax/hailuo/2.3-fast/pro/image-to-video.md @@ -1,12 +1,12 @@ --- -title: "MiniMax Hailuo 2.3 Fast [Pro] (Image to Video) API Reference" +title: "MiniMax Hailuo 2.3 Fast Pro Image to Video API Reference" description: "SandBase API reference for model minimax/hailuo/2.3-fast/pro/image-to-video. Call /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/minimax/hailuo/2.3-fast/pro/image-to-video" -apiReferenceJson: "{\"title\":\"MiniMax Hailuo 2.3 Fast [Pro] (Image to Video)\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hailuo 2.3 Fast Pro by MiniMax - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/hailuo/2.3-fast/pro/image-to-video.\",\"default\":\"minimax/hailuo/2.3-fast/pro/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the model's prompt optimizer\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/hailuo/2.3-fast/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Subject-tracking orbit: camera glides parallel to astronaut, Earth rotates beneath, sun crest reveals lens flare, astronaut tethers and spins slowly, 8K 60 fps slow-motion, ends with spacecraft blackout on sun disk\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/2.3-fast/pro/image-to-video/input_image_0.jpg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/hailuo/2.3-fast/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Subject-tracking orbit: camera glides parallel to astronaut, Earth rotates beneath, sun crest reveals lens flare, astronaut tethers and spins slowly, 8K 60 fps slow-motion, ends with spacecraft blackout on sun disk\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/2.3-fast/pro/image-to-video/input_image_0.jpg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/hailuo/2.3-fast/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Subject-tracking orbit: camera glides parallel to astronaut, Earth rotates beneath, sun crest reveals lens flare, astronaut tethers and spins slowly, 8K 60 fps slow-motion, ends with spacecraft blackout on sun disk\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/2.3-fast/pro/image-to-video/input_image_0.jpg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/hailuo/2.3-fast/pro/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"MiniMax Hailuo 2.3 Fast Pro Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax Hailuo 2.3 Fast Pro by MiniMax animates a still image into a 6-second 1080P video at lower cost and latency than Hailuo 2.3 Pro.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/hailuo/2.3-fast/pro/image-to-video.\",\"default\":\"minimax/hailuo/2.3-fast/pro/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the model's prompt optimizer\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/hailuo/2.3-fast/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Subject-tracking orbit: camera glides parallel to astronaut, Earth rotates beneath, sun crest reveals lens flare, astronaut tethers and spins slowly, 8K 60 fps slow-motion, ends with spacecraft blackout on sun disk\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/2.3-fast/pro/image-to-video/input_image_0.jpg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/hailuo/2.3-fast/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Subject-tracking orbit: camera glides parallel to astronaut, Earth rotates beneath, sun crest reveals lens flare, astronaut tethers and spins slowly, 8K 60 fps slow-motion, ends with spacecraft blackout on sun disk\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/2.3-fast/pro/image-to-video/input_image_0.jpg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/hailuo/2.3-fast/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"Subject-tracking orbit: camera glides parallel to astronaut, Earth rotates beneath, sun crest reveals lens flare, astronaut tethers and spins slowly, 8K 60 fps slow-motion, ends with spacecraft blackout on sun disk\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/2.3-fast/pro/image-to-video/input_image_0.jpg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/hailuo/2.3-fast/pro/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "MiniMax Hailuo 2.3 Fast [Pro] (Image to Video)" + modelName: "MiniMax Hailuo 2.3 Fast Pro Image to Video" modelId: "minimax/hailuo/2.3-fast/pro/image-to-video" vendor: "MiniMax" vendorSlug: "minimax" diff --git a/model-api-reference/video-generation/minimax/hailuo/2.3-fast/standard/image-to-video.md b/model-api-reference/video-generation/minimax/hailuo/2.3-fast/standard/image-to-video.md index 89ca4b69..fa7ed55e 100644 --- a/model-api-reference/video-generation/minimax/hailuo/2.3-fast/standard/image-to-video.md +++ b/model-api-reference/video-generation/minimax/hailuo/2.3-fast/standard/image-to-video.md @@ -1,12 +1,12 @@ --- -title: "MiniMax Hailuo 2.3 Fast [Standard] (Image to Video) API Reference" +title: "MiniMax Hailuo 2.3 Fast Standard Image to Video API Reference" description: "SandBase API reference for model minimax/hailuo/2.3-fast/standard/image-to-video. Call /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/minimax/hailuo/2.3-fast/standard/image-to-video" -apiReferenceJson: "{\"title\":\"MiniMax Hailuo 2.3 Fast [Standard] (Image to Video)\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hailuo 2.3 Fast Standard is MiniMax's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/hailuo/2.3-fast/standard/image-to-video.\",\"default\":\"minimax/hailuo/2.3-fast/standard/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the video in seconds.\",\"default\":\"6\",\"constraints\":\"Allowed values: 6, 10\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the model's prompt optimizer\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/hailuo/2.3-fast/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Athlete running powerfully on beach, dynamic camera movement tracking the runner, waves and sunset in motion, Hollywood movie cinematography, professional sports filming, inspiring atmosphere\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/2.3-fast/standard/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 6\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/hailuo/2.3-fast/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Athlete running powerfully on beach, dynamic camera movement tracking the runner, waves and sunset in motion, Hollywood movie cinematography, professional sports filming, inspiring atmosphere\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/2.3-fast/standard/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 6\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/hailuo/2.3-fast/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Athlete running powerfully on beach, dynamic camera movement tracking the runner, waves and sunset in motion, Hollywood movie cinematography, professional sports filming, inspiring atmosphere\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/2.3-fast/standard/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 6\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/hailuo/2.3-fast/standard/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"MiniMax Hailuo 2.3 Fast Standard Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax Hailuo 2.3 Fast Standard by MiniMax animates a still image into a 6 or 10 second 768P video at lower cost and latency than Hailuo 2.3 Standard.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/hailuo/2.3-fast/standard/image-to-video.\",\"default\":\"minimax/hailuo/2.3-fast/standard/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the video in seconds.\",\"default\":\"6\",\"constraints\":\"Allowed values: 6, 10\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the model's prompt optimizer\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/hailuo/2.3-fast/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Athlete running powerfully on beach, dynamic camera movement tracking the runner, waves and sunset in motion, Hollywood movie cinematography, professional sports filming, inspiring atmosphere\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/2.3-fast/standard/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 6\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/hailuo/2.3-fast/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Athlete running powerfully on beach, dynamic camera movement tracking the runner, waves and sunset in motion, Hollywood movie cinematography, professional sports filming, inspiring atmosphere\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/2.3-fast/standard/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 6\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/hailuo/2.3-fast/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"Athlete running powerfully on beach, dynamic camera movement tracking the runner, waves and sunset in motion, Hollywood movie cinematography, professional sports filming, inspiring atmosphere\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/2.3-fast/standard/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 6\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/hailuo/2.3-fast/standard/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "MiniMax Hailuo 2.3 Fast [Standard] (Image to Video)" + modelName: "MiniMax Hailuo 2.3 Fast Standard Image to Video" modelId: "minimax/hailuo/2.3-fast/standard/image-to-video" vendor: "MiniMax" vendorSlug: "minimax" diff --git a/model-api-reference/video-generation/minimax/hailuo/2.3/pro/image-to-video.md b/model-api-reference/video-generation/minimax/hailuo/2.3/pro/image-to-video.md index 244d7fca..65cd3583 100644 --- a/model-api-reference/video-generation/minimax/hailuo/2.3/pro/image-to-video.md +++ b/model-api-reference/video-generation/minimax/hailuo/2.3/pro/image-to-video.md @@ -1,12 +1,12 @@ --- -title: "MiniMax Hailuo 2.3 [Pro] (Image to Video) API Reference" -description: "MiniMax Hailuo 2.3 [Pro] (Image to Video) API reference for SandBase. Use model minimax/hailuo/2.3/pro/image-to-video with /v1/run; see request and response examples." +title: "MiniMax Hailuo 2.3 Pro Image to Video API Reference" +description: "MiniMax Hailuo 2.3 Pro Image to Video API reference for SandBase. Use model minimax/hailuo/2.3/pro/image-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/minimax/hailuo/2.3/pro/image-to-video" -apiReferenceJson: "{\"title\":\"MiniMax Hailuo 2.3 [Pro] (Image to Video)\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hailuo 2.3 Pro is MiniMax's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/hailuo/2.3/pro/image-to-video.\",\"default\":\"minimax/hailuo/2.3/pro/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the model's prompt optimizer\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/hailuo/2.3/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"The camera follows the mountain biker as they navigate a technical forest trail at high speed, wheels bouncing over roots and rocks. The rider approaches a jump, launching into the air with the bike, both rider and machine perfectly synchronized. They land smoothly and continue through tight turns, splashing through a stream crossing. Mud and water spray as the bike powers through challenging terrain. The atmosphere is wild and adventurous. Audio: Tires gripping dirt, gears shifting, heavy breathing, branches whipping past, and water splashing.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/2.3/pro/image-to-video/input_image_0.jpg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/hailuo/2.3/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"The camera follows the mountain biker as they navigate a technical forest trail at high speed, wheels bouncing over roots and rocks. The rider approaches a jump, launching into the air with the bike, both rider and machine perfectly synchronized. They land smoothly and continue through tight turns, splashing through a stream crossing. Mud and water spray as the bike powers through challenging terrain. The atmosphere is wild and adventurous. Audio: Tires gripping dirt, gears shifting, heavy breathing, branches whipping past, and water splashing.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/2.3/pro/image-to-video/input_image_0.jpg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/hailuo/2.3/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"The camera follows the mountain biker as they navigate a technical forest trail at high speed, wheels bouncing over roots and rocks. The rider approaches a jump, launching into the air with the bike, both rider and machine perfectly synchronized. They land smoothly and continue through tight turns, splashing through a stream crossing. Mud and water spray as the bike powers through challenging terrain. The atmosphere is wild and adventurous. Audio: Tires gripping dirt, gears shifting, heavy breathing, branches whipping past, and water splashing.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/2.3/pro/image-to-video/input_image_0.jpg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/hailuo/2.3/pro/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"MiniMax Hailuo 2.3 Pro Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax Hailuo 2.3 Pro by MiniMax animates a still image into a 6-second 1080P video with realistic motion and expressive characters.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/hailuo/2.3/pro/image-to-video.\",\"default\":\"minimax/hailuo/2.3/pro/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the model's prompt optimizer\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/hailuo/2.3/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"The camera follows the mountain biker as they navigate a technical forest trail at high speed, wheels bouncing over roots and rocks. The rider approaches a jump, launching into the air with the bike, both rider and machine perfectly synchronized. They land smoothly and continue through tight turns, splashing through a stream crossing. Mud and water spray as the bike powers through challenging terrain. The atmosphere is wild and adventurous. Audio: Tires gripping dirt, gears shifting, heavy breathing, branches whipping past, and water splashing.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/2.3/pro/image-to-video/input_image_0.jpg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/hailuo/2.3/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"The camera follows the mountain biker as they navigate a technical forest trail at high speed, wheels bouncing over roots and rocks. The rider approaches a jump, launching into the air with the bike, both rider and machine perfectly synchronized. They land smoothly and continue through tight turns, splashing through a stream crossing. Mud and water spray as the bike powers through challenging terrain. The atmosphere is wild and adventurous. Audio: Tires gripping dirt, gears shifting, heavy breathing, branches whipping past, and water splashing.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/2.3/pro/image-to-video/input_image_0.jpg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/hailuo/2.3/pro/image-to-video\\\",\\n \\\"prompt\\\": \\\"The camera follows the mountain biker as they navigate a technical forest trail at high speed, wheels bouncing over roots and rocks. The rider approaches a jump, launching into the air with the bike, both rider and machine perfectly synchronized. They land smoothly and continue through tight turns, splashing through a stream crossing. Mud and water spray as the bike powers through challenging terrain. The atmosphere is wild and adventurous. Audio: Tires gripping dirt, gears shifting, heavy breathing, branches whipping past, and water splashing.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/2.3/pro/image-to-video/input_image_0.jpg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/hailuo/2.3/pro/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "MiniMax Hailuo 2.3 [Pro] (Image to Video)" + modelName: "MiniMax Hailuo 2.3 Pro Image to Video" modelId: "minimax/hailuo/2.3/pro/image-to-video" vendor: "MiniMax" vendorSlug: "minimax" diff --git a/model-api-reference/video-generation/minimax/hailuo/2.3/pro/text-to-video.md b/model-api-reference/video-generation/minimax/hailuo/2.3/pro/text-to-video.md index c195c72b..ec2e5f7e 100644 --- a/model-api-reference/video-generation/minimax/hailuo/2.3/pro/text-to-video.md +++ b/model-api-reference/video-generation/minimax/hailuo/2.3/pro/text-to-video.md @@ -1,12 +1,12 @@ --- -title: "MiniMax Hailuo 2.3 [Pro] (Text to Video) API Reference" -description: "MiniMax Hailuo 2.3 [Pro] (Text to Video) API reference for SandBase. Use model minimax/hailuo/2.3/pro/text-to-video with /v1/run; see request and response examples." +title: "MiniMax Hailuo 2.3 Pro Text to Video API Reference" +description: "MiniMax Hailuo 2.3 Pro Text to Video API reference for SandBase. Use model minimax/hailuo/2.3/pro/text-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/minimax/hailuo/2.3/pro/text-to-video" -apiReferenceJson: "{\"title\":\"MiniMax Hailuo 2.3 [Pro] (Text to Video)\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hailuo 2.3 Pro by MiniMax - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/hailuo/2.3/pro/text-to-video.\",\"default\":\"minimax/hailuo/2.3/pro/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the model's prompt optimizer\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/hailuo/2.3/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"The camera follows the snowboarder as they carve down the mountain through deep powder, each turn sending up huge rooster tails of snow. They navigate between trees, floating through the powder with smooth, flowing movements. The rider launches off a natural jump, grabbing the board mid-air before landing softly in deep snow and continuing down. Powder sprays continuously as they link turns together. The atmosphere is exhilarating and free. Audio: Board cutting through snow, powder spraying, wind rushing, the rider's excited shouts, and the soft thuds of landing in deep snow.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/hailuo/2.3/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"The camera follows the snowboarder as they carve down the mountain through deep powder, each turn sending up huge rooster tails of snow. They navigate between trees, floating through the powder with smooth, flowing movements. The rider launches off a natural jump, grabbing the board mid-air before landing softly in deep snow and continuing down. Powder sprays continuously as they link turns together. The atmosphere is exhilarating and free. Audio: Board cutting through snow, powder spraying, wind rushing, the rider's excited shouts, and the soft thuds of landing in deep snow.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/hailuo/2.3/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"The camera follows the snowboarder as they carve down the mountain through deep powder, each turn sending up huge rooster tails of snow. They navigate between trees, floating through the powder with smooth, flowing movements. The rider launches off a natural jump, grabbing the board mid-air before landing softly in deep snow and continuing down. Powder sprays continuously as they link turns together. The atmosphere is exhilarating and free. Audio: Board cutting through snow, powder spraying, wind rushing, the rider's excited shouts, and the soft thuds of landing in deep snow.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/hailuo/2.3/pro/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"MiniMax Hailuo 2.3 Pro Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax Hailuo 2.3 Pro by MiniMax turns a text prompt into a 6-second 1080P video with realistic motion and strong prompt following.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/hailuo/2.3/pro/text-to-video.\",\"default\":\"minimax/hailuo/2.3/pro/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the model's prompt optimizer\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/hailuo/2.3/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"The camera follows the snowboarder as they carve down the mountain through deep powder, each turn sending up huge rooster tails of snow. They navigate between trees, floating through the powder with smooth, flowing movements. The rider launches off a natural jump, grabbing the board mid-air before landing softly in deep snow and continuing down. Powder sprays continuously as they link turns together. The atmosphere is exhilarating and free. Audio: Board cutting through snow, powder spraying, wind rushing, the rider's excited shouts, and the soft thuds of landing in deep snow.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/hailuo/2.3/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"The camera follows the snowboarder as they carve down the mountain through deep powder, each turn sending up huge rooster tails of snow. They navigate between trees, floating through the powder with smooth, flowing movements. The rider launches off a natural jump, grabbing the board mid-air before landing softly in deep snow and continuing down. Powder sprays continuously as they link turns together. The atmosphere is exhilarating and free. Audio: Board cutting through snow, powder spraying, wind rushing, the rider's excited shouts, and the soft thuds of landing in deep snow.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/hailuo/2.3/pro/text-to-video\\\",\\n \\\"prompt\\\": \\\"The camera follows the snowboarder as they carve down the mountain through deep powder, each turn sending up huge rooster tails of snow. They navigate between trees, floating through the powder with smooth, flowing movements. The rider launches off a natural jump, grabbing the board mid-air before landing softly in deep snow and continuing down. Powder sprays continuously as they link turns together. The atmosphere is exhilarating and free. Audio: Board cutting through snow, powder spraying, wind rushing, the rider's excited shouts, and the soft thuds of landing in deep snow.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/hailuo/2.3/pro/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "MiniMax Hailuo 2.3 [Pro] (Text to Video)" + modelName: "MiniMax Hailuo 2.3 Pro Text to Video" modelId: "minimax/hailuo/2.3/pro/text-to-video" vendor: "MiniMax" vendorSlug: "minimax" diff --git a/model-api-reference/video-generation/minimax/hailuo/2.3/standard/image-to-video.md b/model-api-reference/video-generation/minimax/hailuo/2.3/standard/image-to-video.md index 061c121e..1f4c1dc6 100644 --- a/model-api-reference/video-generation/minimax/hailuo/2.3/standard/image-to-video.md +++ b/model-api-reference/video-generation/minimax/hailuo/2.3/standard/image-to-video.md @@ -1,12 +1,12 @@ --- -title: "MiniMax Hailuo 2.3 [Standard] (Image to Video) API Reference" +title: "MiniMax Hailuo 2.3 Standard Image to Video API Reference" description: "SandBase API reference for model minimax/hailuo/2.3/standard/image-to-video. Call /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/minimax/hailuo/2.3/standard/image-to-video" -apiReferenceJson: "{\"title\":\"MiniMax Hailuo 2.3 [Standard] (Image to Video)\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hailuo 2.3 Standard by MiniMax - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/hailuo/2.3/standard/image-to-video.\",\"default\":\"minimax/hailuo/2.3/standard/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the video in seconds.\",\"default\":\"6\",\"constraints\":\"Allowed values: 6, 10\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the model's prompt optimizer\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/hailuo/2.3/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"The space station slowly rotates in orbit, its solar panels tracking the sun. Earth rotates majestically in the background with weather patterns and landmasses drifting by. The station's communication arrays adjust position. A small spacecraft approaches one of the docking ports. The scene captures the silent majesty of space and human engineering.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/2.3/standard/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 6\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/hailuo/2.3/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"The space station slowly rotates in orbit, its solar panels tracking the sun. Earth rotates majestically in the background with weather patterns and landmasses drifting by. The station's communication arrays adjust position. A small spacecraft approaches one of the docking ports. The scene captures the silent majesty of space and human engineering.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/2.3/standard/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 6\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/hailuo/2.3/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"The space station slowly rotates in orbit, its solar panels tracking the sun. Earth rotates majestically in the background with weather patterns and landmasses drifting by. The station's communication arrays adjust position. A small spacecraft approaches one of the docking ports. The scene captures the silent majesty of space and human engineering.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/2.3/standard/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 6\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/hailuo/2.3/standard/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"MiniMax Hailuo 2.3 Standard Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax Hailuo 2.3 Standard by MiniMax animates a still image into a 6 or 10 second 768P video with realistic motion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/hailuo/2.3/standard/image-to-video.\",\"default\":\"minimax/hailuo/2.3/standard/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the video in seconds.\",\"default\":\"6\",\"constraints\":\"Allowed values: 6, 10\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the model's prompt optimizer\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/hailuo/2.3/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"The space station slowly rotates in orbit, its solar panels tracking the sun. Earth rotates majestically in the background with weather patterns and landmasses drifting by. The station's communication arrays adjust position. A small spacecraft approaches one of the docking ports. The scene captures the silent majesty of space and human engineering.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/2.3/standard/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 6\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/hailuo/2.3/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"The space station slowly rotates in orbit, its solar panels tracking the sun. Earth rotates majestically in the background with weather patterns and landmasses drifting by. The station's communication arrays adjust position. A small spacecraft approaches one of the docking ports. The scene captures the silent majesty of space and human engineering.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/2.3/standard/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 6\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/hailuo/2.3/standard/image-to-video\\\",\\n \\\"prompt\\\": \\\"The space station slowly rotates in orbit, its solar panels tracking the sun. Earth rotates majestically in the background with weather patterns and landmasses drifting by. The station's communication arrays adjust position. A small spacecraft approaches one of the docking ports. The scene captures the silent majesty of space and human engineering.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/hailuo/2.3/standard/image-to-video/input_image_0.jpg\\\",\\n \\\"duration\\\": 6\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/hailuo/2.3/standard/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "MiniMax Hailuo 2.3 [Standard] (Image to Video)" + modelName: "MiniMax Hailuo 2.3 Standard Image to Video" modelId: "minimax/hailuo/2.3/standard/image-to-video" vendor: "MiniMax" vendorSlug: "minimax" diff --git a/model-api-reference/video-generation/minimax/hailuo/2.3/standard/text-to-video.md b/model-api-reference/video-generation/minimax/hailuo/2.3/standard/text-to-video.md index 445a2457..7413836e 100644 --- a/model-api-reference/video-generation/minimax/hailuo/2.3/standard/text-to-video.md +++ b/model-api-reference/video-generation/minimax/hailuo/2.3/standard/text-to-video.md @@ -1,12 +1,12 @@ --- -title: "MiniMax Hailuo 2.3 [Standard] (Text to Video) API Reference" -description: "SandBase API reference for model minimax/hailuo/2.3/standard/text-to-video. Call /v1/run; see request and response examples." +title: "MiniMax Hailuo 2.3 Standard Text to Video API Reference" +description: "MiniMax Hailuo 2.3 Standard Text to Video API reference for SandBase. Use model minimax/hailuo/2.3/standard/text-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/minimax/hailuo/2.3/standard/text-to-video" -apiReferenceJson: "{\"title\":\"MiniMax Hailuo 2.3 [Standard] (Text to Video)\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hailuo 2.3 Standard is MiniMax's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/hailuo/2.3/standard/text-to-video.\",\"default\":\"minimax/hailuo/2.3/standard/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the video in seconds.\",\"default\":\"6\",\"constraints\":\"Allowed values: 6, 10\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the model's prompt optimizer\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/hailuo/2.3/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"An intense electrical storm rages over a modern city skyline at night. Multiple lightning bolts strike simultaneously, illuminating the towering skyscrapers in brilliant white flashes. Thunder clouds roil and churn overhead while constant lightning creates a strobe effect. Rain pours in heavy sheets, visible in the glow of city lights. The camera captures the drama from across a river as lightning reflects in the water. Lightning branches across the sky in intricate patterns. Atmosphere: dramatic, powerful, electrifying urban storm.\\\",\\n \\\"duration\\\": 6\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/hailuo/2.3/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"An intense electrical storm rages over a modern city skyline at night. Multiple lightning bolts strike simultaneously, illuminating the towering skyscrapers in brilliant white flashes. Thunder clouds roil and churn overhead while constant lightning creates a strobe effect. Rain pours in heavy sheets, visible in the glow of city lights. The camera captures the drama from across a river as lightning reflects in the water. Lightning branches across the sky in intricate patterns. Atmosphere: dramatic, powerful, electrifying urban storm.\\\",\\n \\\"duration\\\": 6\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/hailuo/2.3/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"An intense electrical storm rages over a modern city skyline at night. Multiple lightning bolts strike simultaneously, illuminating the towering skyscrapers in brilliant white flashes. Thunder clouds roil and churn overhead while constant lightning creates a strobe effect. Rain pours in heavy sheets, visible in the glow of city lights. The camera captures the drama from across a river as lightning reflects in the water. Lightning branches across the sky in intricate patterns. Atmosphere: dramatic, powerful, electrifying urban storm.\\\",\\n \\\"duration\\\": 6\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/hailuo/2.3/standard/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"MiniMax Hailuo 2.3 Standard Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"MiniMax Hailuo 2.3 Standard by MiniMax turns a text prompt into a 6 or 10 second 768P video with realistic motion.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/hailuo/2.3/standard/text-to-video.\",\"default\":\"minimax/hailuo/2.3/standard/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the video in seconds.\",\"default\":\"6\",\"constraints\":\"Allowed values: 6, 10\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the model's prompt optimizer\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/hailuo/2.3/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"An intense electrical storm rages over a modern city skyline at night. Multiple lightning bolts strike simultaneously, illuminating the towering skyscrapers in brilliant white flashes. Thunder clouds roil and churn overhead while constant lightning creates a strobe effect. Rain pours in heavy sheets, visible in the glow of city lights. The camera captures the drama from across a river as lightning reflects in the water. Lightning branches across the sky in intricate patterns. Atmosphere: dramatic, powerful, electrifying urban storm.\\\",\\n \\\"duration\\\": 6\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/hailuo/2.3/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"An intense electrical storm rages over a modern city skyline at night. Multiple lightning bolts strike simultaneously, illuminating the towering skyscrapers in brilliant white flashes. Thunder clouds roil and churn overhead while constant lightning creates a strobe effect. Rain pours in heavy sheets, visible in the glow of city lights. The camera captures the drama from across a river as lightning reflects in the water. Lightning branches across the sky in intricate patterns. Atmosphere: dramatic, powerful, electrifying urban storm.\\\",\\n \\\"duration\\\": 6\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/hailuo/2.3/standard/text-to-video\\\",\\n \\\"prompt\\\": \\\"An intense electrical storm rages over a modern city skyline at night. Multiple lightning bolts strike simultaneously, illuminating the towering skyscrapers in brilliant white flashes. Thunder clouds roil and churn overhead while constant lightning creates a strobe effect. Rain pours in heavy sheets, visible in the glow of city lights. The camera captures the drama from across a river as lightning reflects in the water. Lightning branches across the sky in intricate patterns. Atmosphere: dramatic, powerful, electrifying urban storm.\\\",\\n \\\"duration\\\": 6\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/hailuo/2.3/standard/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "MiniMax Hailuo 2.3 [Standard] (Text to Video)" + modelName: "MiniMax Hailuo 2.3 Standard Text to Video" modelId: "minimax/hailuo/2.3/standard/text-to-video" vendor: "MiniMax" vendorSlug: "minimax" diff --git a/model-api-reference/video-generation/minimax/video-01-director/image-to-video.md b/model-api-reference/video-generation/minimax/video-01-director/image-to-video.md deleted file mode 100644 index 6adb0635..00000000 --- a/model-api-reference/video-generation/minimax/video-01-director/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiniMax (Hailuo AI) Video 01 Director - Image to API Ref" -description: "SandBase API reference for model minimax/video-01-director/image-to-video. Call /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/minimax/video-01-director/image-to-video" -apiReferenceJson: "{\"title\":\"MiniMax (Hailuo AI) Video 01 Director - Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Video 01 Director by MiniMax - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/video-01-director/image-to-video.\",\"default\":\"minimax/video-01-director/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Camera movement instructions can be added using square brackets (e.g. [Pan left] or [Zoom in]). You can use up to 3 combined movements per prompt. Supported movements: Truck left/right, Pan left/right, Push in/Pull out, Pedestal up/down, Tilt up/down, Zoom in/out, Shake, Tracking shot, Static shot. For example: [Truck left, Pan right, Zoom in]. For a more detailed guide, refer https://sixth-switch-2ac.notion.site/T2V-01-Director-Model-Tutorial-with-camera-movement-1886c20a98eb80f395b8e05291ad8645\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the model's prompt optimizer\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/video-01-director/image-to-video\\\",\\n \\\"prompt\\\": \\\"[Push in, Follow]A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.[Pan left] The street opens into a small plaza where street vendors sell steaming food under colorful awnings.\\\",\\n \\\"image\\\": \\\"https://fal.media/files/elephant/8kkhB12hEZI2kkbU8pZPA_test.jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/video-01-director/image-to-video\\\",\\n \\\"prompt\\\": \\\"[Push in, Follow]A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.[Pan left] The street opens into a small plaza where street vendors sell steaming food under colorful awnings.\\\",\\n \\\"image\\\": \\\"https://fal.media/files/elephant/8kkhB12hEZI2kkbU8pZPA_test.jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/video-01-director/image-to-video\\\",\\n \\\"prompt\\\": \\\"[Push in, Follow]A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.[Pan left] The street opens into a small plaza where street vendors sell steaming food under colorful awnings.\\\",\\n \\\"image\\\": \\\"https://fal.media/files/elephant/8kkhB12hEZI2kkbU8pZPA_test.jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/video-01-director/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "MiniMax (Hailuo AI) Video 01 Director - Image to Video" - modelId: "minimax/video-01-director/image-to-video" - vendor: "MiniMax" - vendorSlug: "minimax" - modelSlug: "video-01-director/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-02-24T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/minimax/video-01-director/text-to-video.md b/model-api-reference/video-generation/minimax/video-01-director/text-to-video.md deleted file mode 100644 index 056aed1d..00000000 --- a/model-api-reference/video-generation/minimax/video-01-director/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiniMax (Hailuo AI) Video 01 Director API Reference" -description: "MiniMax (Hailuo AI) Video 01 Director API reference for SandBase. Use model minimax/video-01-director/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/minimax/video-01-director/text-to-video" -apiReferenceJson: "{\"title\":\"MiniMax (Hailuo AI) Video 01 Director\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Video 01 Director is MiniMax's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/video-01-director/text-to-video.\",\"default\":\"minimax/video-01-director/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation. Camera movement instructions can be added using square brackets (e.g. [Pan left] or [Zoom in]). You can use up to 3 combined movements per prompt. Supported movements: Truck left/right, Pan left/right, Push in/Pull out, Pedestal up/down, Tilt up/down, Zoom in/out, Shake, Tracking shot, Static shot. For example: [Truck left, Pan right, Zoom in]. For a more detailed guide, refer https://sixth-switch-2ac.notion.site/T2V-01-Director-Model-Tutorial-with-camera-movement-1886c20a98eb80f395b8e05291ad8645\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the model's prompt optimizer\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/video-01-director/text-to-video\\\",\\n \\\"prompt\\\": \\\"[Push in]Close up of a tense woman looks to the left, startled by a sound, in a darkened kitchen, Pots and pans hang ominously, the window in the kitchen is open and the wind softly blows the pans and creates an ominous mood. [Shake]the woman's shock turns to fear. Black-and-white film noir shot dimly lit, 1950s-style, with dramatic, high-contrast shadows. The overall atmosphere is reminiscent of Alfred Hitchcock's suspenseful storytelling, evoking a looming sense of dread with stark chiaroscuro lighting and a slight film-grain texture.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/video-01-director/text-to-video\\\",\\n \\\"prompt\\\": \\\"[Push in]Close up of a tense woman looks to the left, startled by a sound, in a darkened kitchen, Pots and pans hang ominously, the window in the kitchen is open and the wind softly blows the pans and creates an ominous mood. [Shake]the woman's shock turns to fear. Black-and-white film noir shot dimly lit, 1950s-style, with dramatic, high-contrast shadows. The overall atmosphere is reminiscent of Alfred Hitchcock's suspenseful storytelling, evoking a looming sense of dread with stark chiaroscuro lighting and a slight film-grain texture.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/video-01-director/text-to-video\\\",\\n \\\"prompt\\\": \\\"[Push in]Close up of a tense woman looks to the left, startled by a sound, in a darkened kitchen, Pots and pans hang ominously, the window in the kitchen is open and the wind softly blows the pans and creates an ominous mood. [Shake]the woman's shock turns to fear. Black-and-white film noir shot dimly lit, 1950s-style, with dramatic, high-contrast shadows. The overall atmosphere is reminiscent of Alfred Hitchcock's suspenseful storytelling, evoking a looming sense of dread with stark chiaroscuro lighting and a slight film-grain texture.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/video-01-director/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "MiniMax (Hailuo AI) Video 01 Director" - modelId: "minimax/video-01-director/text-to-video" - vendor: "MiniMax" - vendorSlug: "minimax" - modelSlug: "video-01-director/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-02-11T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/minimax/video-01-live/image-to-video.md b/model-api-reference/video-generation/minimax/video-01-live/image-to-video.md deleted file mode 100644 index 21beab8f..00000000 --- a/model-api-reference/video-generation/minimax/video-01-live/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiniMax (Hailuo AI) Video 01 API Reference — MiniMax To Video" -description: "MiniMax (Hailuo AI) Video 01 API reference for SandBase. Use model minimax/video-01-live/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/minimax/video-01-live/image-to-video" -apiReferenceJson: "{\"title\":\"MiniMax (Hailuo AI) Video 01\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Video 01 Live by MiniMax - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/video-01-live/image-to-video.\",\"default\":\"minimax/video-01-live/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the model's prompt optimizer\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/video-01-live/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/video-01-live/image-to-video/input_image_0.jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/video-01-live/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/video-01-live/image-to-video/input_image_0.jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/video-01-live/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/minimax/video-01-live/image-to-video/input_image_0.jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/video-01-live/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "MiniMax (Hailuo AI) Video 01" - modelId: "minimax/video-01-live/image-to-video" - vendor: "MiniMax" - vendorSlug: "minimax" - modelSlug: "video-01-live/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-12-16T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/minimax/video-01-live/text-to-video.md b/model-api-reference/video-generation/minimax/video-01-live/text-to-video.md deleted file mode 100644 index c48ad191..00000000 --- a/model-api-reference/video-generation/minimax/video-01-live/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiniMax (Hailuo AI) Video 01 Live API Reference" -description: "MiniMax (Hailuo AI) Video 01 Live API reference for SandBase. Use model minimax/video-01-live/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/minimax/video-01-live/text-to-video" -apiReferenceJson: "{\"title\":\"MiniMax (Hailuo AI) Video 01 Live\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Video 01 Live is MiniMax's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/video-01-live/text-to-video.\",\"default\":\"minimax/video-01-live/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the model's prompt optimizer\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/video-01-live/text-to-video\\\",\\n \\\"prompt\\\": \\\"A rugged middle-aged man with wheat-colored skin and a full beard streaked with gray stands in the harsh sunlight of a desert outpost. His curly hair is windswept, and sweat drips down the bridge of his slightly crooked nose. His faded utility jacket and weathered boots are caked in dust, while his sharp, watchful eyes scan the horizon.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/video-01-live/text-to-video\\\",\\n \\\"prompt\\\": \\\"A rugged middle-aged man with wheat-colored skin and a full beard streaked with gray stands in the harsh sunlight of a desert outpost. His curly hair is windswept, and sweat drips down the bridge of his slightly crooked nose. His faded utility jacket and weathered boots are caked in dust, while his sharp, watchful eyes scan the horizon.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/video-01-live/text-to-video\\\",\\n \\\"prompt\\\": \\\"A rugged middle-aged man with wheat-colored skin and a full beard streaked with gray stands in the harsh sunlight of a desert outpost. His curly hair is windswept, and sweat drips down the bridge of his slightly crooked nose. His faded utility jacket and weathered boots are caked in dust, while his sharp, watchful eyes scan the horizon.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/video-01-live/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "MiniMax (Hailuo AI) Video 01 Live" - modelId: "minimax/video-01-live/text-to-video" - vendor: "MiniMax" - vendorSlug: "minimax" - modelSlug: "video-01-live/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-12-16T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/minimax/video-01/image-to-video.md b/model-api-reference/video-generation/minimax/video-01/image-to-video.md deleted file mode 100644 index 494a16cc..00000000 --- a/model-api-reference/video-generation/minimax/video-01/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiniMax (Hailuo AI) Video 01 — 2iuvlh API" -description: "MiniMax (Hailuo AI) Video 01 API reference for SandBase. Use model minimax/video-01/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/minimax/video-01/image-to-video" -apiReferenceJson: "{\"title\":\"MiniMax (Hailuo AI) Video 01\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Video 01 is MiniMax's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/video-01/image-to-video.\",\"default\":\"minimax/video-01/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the model's prompt optimizer\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/video-01/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\",\\n \\\"image\\\": \\\"https://fal.media/files/elephant/8kkhB12hEZI2kkbU8pZPA_test.jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/video-01/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\",\\n \\\"image\\\": \\\"https://fal.media/files/elephant/8kkhB12hEZI2kkbU8pZPA_test.jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/video-01/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\",\\n \\\"image\\\": \\\"https://fal.media/files/elephant/8kkhB12hEZI2kkbU8pZPA_test.jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/video-01/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "MiniMax (Hailuo AI) Video 01" - modelId: "minimax/video-01/image-to-video" - vendor: "MiniMax" - vendorSlug: "minimax" - modelSlug: "video-01/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-10-30T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/minimax/video-01/subject-reference.md b/model-api-reference/video-generation/minimax/video-01/subject-reference.md deleted file mode 100644 index c4248b5e..00000000 --- a/model-api-reference/video-generation/minimax/video-01/subject-reference.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiniMax (Hailuo AI) Video 01 Subject Reference API Reference" -description: "MiniMax (Hailuo AI) Video 01 Subject Reference API reference for SandBase. Use model minimax/video-01/subject-reference with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/minimax/video-01/subject-reference" -apiReferenceJson: "{\"title\":\"MiniMax (Hailuo AI) Video 01 Subject Reference\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Video 01 Subject Reference by MiniMax - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/video-01/subject-reference.\",\"default\":\"minimax/video-01/subject-reference\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the model's prompt optimizer\",\"default\":\"true\"},{\"name\":\"subject_reference_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the subject reference image to use for consistent subject appearance\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/video-01/subject-reference\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/video-01/subject-reference\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/video-01/subject-reference\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/video-01/subject-reference\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "MiniMax (Hailuo AI) Video 01 Subject Reference" - modelId: "minimax/video-01/subject-reference" - vendor: "MiniMax" - vendorSlug: "minimax" - modelSlug: "video-01/subject-reference" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-01-20T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/minimax/video-01/text-to-video.md b/model-api-reference/video-generation/minimax/video-01/text-to-video.md deleted file mode 100644 index 88e0a207..00000000 --- a/model-api-reference/video-generation/minimax/video-01/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "MiniMax (Hailuo AI) Video 01 — 399wv API" -description: "MiniMax (Hailuo AI) Video 01 API reference for SandBase. Use model minimax/video-01/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/minimax/video-01/text-to-video" -apiReferenceJson: "{\"title\":\"MiniMax (Hailuo AI) Video 01\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Video 01 by MiniMax - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to minimax/video-01/text-to-video.\",\"default\":\"minimax/video-01/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"prompt_optimizer\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use the model's prompt optimizer\",\"default\":\"true\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"minimax/video-01/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"minimax/video-01/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"minimax/video-01/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"minimax/video-01/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "MiniMax (Hailuo AI) Video 01" - modelId: "minimax/video-01/text-to-video" - vendor: "MiniMax" - vendorSlug: "minimax" - modelSlug: "video-01/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-02-13T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/mirelo/sfx1.6/video-to-video.md b/model-api-reference/video-generation/mirelo/sfx1.6/video-to-video.md deleted file mode 100644 index 6f15de94..00000000 --- a/model-api-reference/video-generation/mirelo/sfx1.6/video-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Mirelo SFX1.6 API Reference — Mirelo Sfx1.6 / Video To Video API" -description: "Mirelo SFX1.6 API reference for SandBase. Use model mirelo/sfx1.6/video-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/mirelo/sfx1.6/video-to-video" -apiReferenceJson: "{\"title\":\"Mirelo SFX1.6\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sfx1.6 Video To Video is Mirelo's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to mirelo/sfx1.6/video-to-video.\",\"default\":\"mirelo/sfx1.6/video-to-video\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Video URL to add SFX to.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated SFX in seconds. Values >10 use sliding-window extended generation.\",\"default\":\"10\",\"constraints\":\"Range: 1 to 60\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for generation. -1 or None for random.\",\"constraints\":\"Minimum: -1\"},{\"name\":\"text_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Optional text prompt guiding generation.\"},{\"name\":\"num_samples\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of variations to generate.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 4\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"mirelo/sfx1.6/video-to-video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirelo/sfx1.6/video-to-video/input_video_0.mp4\\\",\\n \\\"duration\\\": 10\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"mirelo/sfx1.6/video-to-video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirelo/sfx1.6/video-to-video/input_video_0.mp4\\\",\\n \\\"duration\\\": 10\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"mirelo/sfx1.6/video-to-video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/mirelo/sfx1.6/video-to-video/input_video_0.mp4\\\",\\n \\\"duration\\\": 10\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"mirelo/sfx1.6/video-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Mirelo SFX1.6" - modelId: "mirelo/sfx1.6/video-to-video" - vendor: "Mirelo" - vendorSlug: "mirelo" - modelSlug: "sfx1.6/video-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-05-18T18:43:54.282Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/nvidia/cosmos-3-super/image-to-video.md b/model-api-reference/video-generation/nvidia/cosmos-3-super/image-to-video.md deleted file mode 100644 index 460778f0..00000000 --- a/model-api-reference/video-generation/nvidia/cosmos-3-super/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Cosmos 3 Super Image to Video API Reference" -description: "Cosmos 3 Super Image to Video API reference for SandBase. Use model nvidia/cosmos-3-super/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/nvidia/cosmos-3-super/image-to-video" -apiReferenceJson: "{\"title\":\"Cosmos 3 Super Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Cosmos 3 Super is NVIDIA's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to nvidia/cosmos-3-super/image-to-video.\",\"default\":\"nvidia/cosmos-3-super/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the motion and scene of the video to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the conditioning first-frame image for the video.\"},{\"name\":\"guidance_scale\",\"type\":\"number\",\"required\":false,\"description\":\"Classifier-free guidance scale. Higher values increase prompt adherence at the cost of diversity.\",\"default\":\"6\",\"constraints\":\"Range: 0 to 20\"},{\"name\":\"num_inference_steps\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of denoising steps. More steps yield higher quality but take longer.\",\"default\":\"28\",\"constraints\":\"Range: 1 to 50\"},{\"name\":\"agentic_samples_per_iteration\",\"type\":\"integer\",\"required\":false,\"description\":\"Candidate videos to generate and judge per agentic iteration. The best candidate advances to the next rewrite stage.\",\"default\":\"2\",\"constraints\":\"Range: 1 to 3\"},{\"name\":\"agentic_early_stop\",\"type\":\"boolean\",\"required\":false,\"description\":\"Stop the agentic loop early when the critic score clears the strict quality threshold.\",\"default\":\"true\"},{\"name\":\"enable_agentic_generation\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable the iterative Cosmos agentic loop: prompt upsampling, candidate video generation, VLM critique of sampled frames, and prompt rewrite. Each candidate is a full render, so this is substantially slower and costlier than a single generation.\",\"default\":\"false\"},{\"name\":\"num_frames\",\"type\":\"integer\",\"required\":false,\"description\":\"Number of frames to generate. More frames yield a longer video.\",\"default\":\"189\",\"constraints\":\"Range: 5 to 189\"},{\"name\":\"frames_per_second\",\"type\":\"integer\",\"required\":false,\"description\":\"Frames per second of the output video.\",\"default\":\"24\",\"constraints\":\"Range: 4 to 60\"},{\"name\":\"agentic_max_iterations\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum agentic prompt stages when agentic generation is enabled.\",\"default\":\"2\",\"constraints\":\"Range: 1 to 3\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and prompt given to the same model version will produce the same video every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"nvidia/cosmos-3-super/image-to-video\\\",\\n \\\"prompt\\\": \\\"The camera slowly pushes in as the subject turns their head toward the light, hair drifting in a gentle breeze, dust motes floating through warm afternoon sun.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/hunyuan_i2v.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"nvidia/cosmos-3-super/image-to-video\\\",\\n \\\"prompt\\\": \\\"The camera slowly pushes in as the subject turns their head toward the light, hair drifting in a gentle breeze, dust motes floating through warm afternoon sun.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/Falserverless/example_inputs/hunyuan_i2v.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"nvidia/cosmos-3-super/image-to-video\\\",\\n \\\"prompt\\\": \\\"The camera slowly pushes in as the subject turns their head toward the light, hair drifting in a gentle breeze, dust motes floating through warm afternoon sun.\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/hunyuan_i2v.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"nvidia/cosmos-3-super/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Cosmos 3 Super Image to Video" - modelId: "nvidia/cosmos-3-super/image-to-video" - vendor: "NVIDIA" - vendorSlug: "nvidia" - modelSlug: "cosmos-3-super/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-02T00:21:20.063Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/nvidia/nemotron-3-nano-omni/video.md b/model-api-reference/video-generation/nvidia/nemotron-3-nano-omni/video.md deleted file mode 100644 index 632100d5..00000000 --- a/model-api-reference/video-generation/nvidia/nemotron-3-nano-omni/video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Nemotron 3 Nano Omni API Reference — NVIDIA 3 Nano Omni / Video" -description: "Nemotron 3 Nano Omni API reference for SandBase. Use model nvidia/nemotron-3-nano-omni/video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/nvidia/nemotron-3-nano-omni/video" -apiReferenceJson: "{\"title\":\"Nemotron 3 Nano Omni\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Nemotron 3 Nano Omni Video by NVIDIA - advanced AI model for video-to-text. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to nvidia/nemotron-3-nano-omni/video.\",\"default\":\"nvidia/nemotron-3-nano-omni/video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt to send to the model. English only.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the video to reason about. mp4, up to 1080p, max 2 minutes.\"},{\"name\":\"max_tokens\",\"type\":\"integer\",\"required\":false,\"description\":\"Maximum number of tokens to generate.\",\"default\":\"1024\",\"constraints\":\"Range: 1 to 20000\"},{\"name\":\"top_p\",\"type\":\"number\",\"required\":false,\"description\":\"Nucleus sampling probability mass.\",\"default\":\"0.95\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Sampling temperature. Lower is more deterministic.\",\"default\":\"0.7\",\"constraints\":\"Range: 0 to 2\"},{\"name\":\"system_prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Optional system prompt to steer the model. Reasoning behavior is controlled by the separate `reasoning_mode` field.\"},{\"name\":\"reasoning_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Whether the model should emit an explicit reasoning trace. `no_think` returns a direct answer; `think` returns chain-of-thought followed by the final answer.\",\"default\":\"no_think\",\"constraints\":\"Allowed values: think, no_think\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-text\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"nvidia/nemotron-3-nano-omni/video\\\",\\n \\\"prompt\\\": \\\"Summarize the key capabilities of a multimodal agent.\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/nemotron-3-nano-omni/video_in.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"nvidia/nemotron-3-nano-omni/video\\\",\\n \\\"prompt\\\": \\\"Summarize the key capabilities of a multimodal agent.\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/Falserverless/example_inputs/nemotron-3-nano-omni/video_in.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"nvidia/nemotron-3-nano-omni/video\\\",\\n \\\"prompt\\\": \\\"Summarize the key capabilities of a multimodal agent.\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/nemotron-3-nano-omni/video_in.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"nvidia/nemotron-3-nano-omni/video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Nemotron 3 Nano Omni" - modelId: "nvidia/nemotron-3-nano-omni/video" - vendor: "NVIDIA" - vendorSlug: "nvidia" - modelSlug: "nemotron-3-nano-omni/video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-28T15:51:20.073Z" - capabilities: ["video-to-text"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/openai/sora-2/characters.md b/model-api-reference/video-generation/openai/sora-2/characters.md deleted file mode 100644 index 0cf06d9d..00000000 --- a/model-api-reference/video-generation/openai/sora-2/characters.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sora 2 Characters API Reference" -description: "Sora 2 Characters API reference for SandBase. Use model openai/sora-2/characters with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/openai/sora-2/characters" -apiReferenceJson: "{\"title\":\"Sora 2 Characters\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sora 2 Characters is OpenAI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/sora-2/characters.\",\"default\":\"openai/sora-2/characters\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of an MP4 video (minimum 720p, max ~2.67:1 aspect ratio) to define the character. Videos exceeding 1080p are automatically scaled down. Non-standard aspect ratios are automatically padded to 16:9 (landscape) or 9:16 (portrait). Videos longer than 4 seconds are trimmed to the first 4 seconds.\"},{\"name\":\"name\",\"type\":\"string\",\"required\":false,\"description\":\"Name for the character (1–80 characters). Refer to this name in prompts when using the character.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/sora-2/characters\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/sora-2/characters\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/sora-2/characters\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/input.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/sora-2/characters\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Sora 2 Characters" - modelId: "openai/sora-2/characters" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "sora-2/characters" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-12T23:42:46.575Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/openai/sora-2/image-to-video.md b/model-api-reference/video-generation/openai/sora-2/image-to-video.md deleted file mode 100644 index 0afac504..00000000 --- a/model-api-reference/video-generation/openai/sora-2/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sora 2 API Reference — OpenAI Sora 2 / Image To Video API" -description: "Sora 2 API reference for SandBase. Use model openai/sora-2/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/openai/sora-2/image-to-video" -apiReferenceJson: "{\"title\":\"Sora 2\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sora 2 is OpenAI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/sora-2/image-to-video.\",\"default\":\"openai/sora-2/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to use as the first frame\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, 720p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated video in seconds\",\"default\":\"4\",\"constraints\":\"Allowed values: 4, 8, 12, 16, 20\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/sora-2/image-to-video\\\",\\n \\\"prompt\\\": \\\"Front-facing 'invisible' action-cam on a skydiver in freefall above bright clouds; camera locked on his face. He speaks over the wind with clear lipsync: 'This is insanely fun! You've got to try it—book a tandem and go!' Natural wind roar, voice close-mic'd and slightly compressed so it's intelligible. Midday sun, goggles and jumpsuit flutter, altimeter visible, parachute rig on shoulders. Energetic but stable framing with subtle shake; brief horizon roll. End on first tug of canopy and wind noise dropping.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/openai/sora-2/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 4,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/sora-2/image-to-video\\\",\\n \\\"prompt\\\": \\\"Front-facing 'invisible' action-cam on a skydiver in freefall above bright clouds; camera locked on his face. He speaks over the wind with clear lipsync: 'This is insanely fun! You've got to try it—book a tandem and go!' Natural wind roar, voice close-mic'd and slightly compressed so it's intelligible. Midday sun, goggles and jumpsuit flutter, altimeter visible, parachute rig on shoulders. Energetic but stable framing with subtle shake; brief horizon roll. End on first tug of canopy and wind noise dropping.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/openai/sora-2/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 4,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/sora-2/image-to-video\\\",\\n \\\"prompt\\\": \\\"Front-facing 'invisible' action-cam on a skydiver in freefall above bright clouds; camera locked on his face. He speaks over the wind with clear lipsync: 'This is insanely fun! You've got to try it—book a tandem and go!' Natural wind roar, voice close-mic'd and slightly compressed so it's intelligible. Midday sun, goggles and jumpsuit flutter, altimeter visible, parachute rig on shoulders. Energetic but stable framing with subtle shake; brief horizon roll. End on first tug of canopy and wind noise dropping.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/openai/sora-2/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 4,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/sora-2/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Sora 2" - modelId: "openai/sora-2/image-to-video" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "sora-2/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-06T19:34:52.329Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/openai/sora-2/image-to-video/pro.md b/model-api-reference/video-generation/openai/sora-2/image-to-video/pro.md deleted file mode 100644 index 2bf07b95..00000000 --- a/model-api-reference/video-generation/openai/sora-2/image-to-video/pro.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sora 2 Image to Video Pro API Reference" -description: "Sora 2 Image to Video Pro API reference for SandBase. Use model openai/sora-2/image-to-video/pro with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/openai/sora-2/image-to-video/pro" -apiReferenceJson: "{\"title\":\"Sora 2 Image to Video Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sora 2 Pro is OpenAI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/sora-2/image-to-video/pro.\",\"default\":\"openai/sora-2/image-to-video/pro\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to use as the first frame\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, 720p, 1080p, true_1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated video in seconds\",\"default\":\"4\",\"constraints\":\"Allowed values: 4, 8, 12, 16, 20\"},{\"name\":\"character_ids\",\"type\":\"array\",\"required\":false,\"description\":\"Up to two character IDs (from create-character) to use in the video. Refer to characters by name in the prompt. When set, only the OpenAI provider is used.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/sora-2/image-to-video/pro\\\",\\n \\\"prompt\\\": \\\"Front-facing 'invisible' action-cam on a skydiver in freefall above bright clouds; camera locked on his face. He speaks over the wind with clear lipsync: 'This is insanely fun! You've got to try it—book a tandem and go!' Natural wind roar, voice close-mic'd and slightly compressed so it's intelligible. Midday sun, goggles and jumpsuit flutter, altimeter visible, parachute rig on shoulders. Energetic but stable framing with subtle shake; brief horizon roll. End on first tug of canopy and wind noise dropping.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/openai/sora-2/image-to-video/pro/input_image_0.png\\\",\\n \\\"duration\\\": 4,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/sora-2/image-to-video/pro\\\",\\n \\\"prompt\\\": \\\"Front-facing 'invisible' action-cam on a skydiver in freefall above bright clouds; camera locked on his face. He speaks over the wind with clear lipsync: 'This is insanely fun! You've got to try it—book a tandem and go!' Natural wind roar, voice close-mic'd and slightly compressed so it's intelligible. Midday sun, goggles and jumpsuit flutter, altimeter visible, parachute rig on shoulders. Energetic but stable framing with subtle shake; brief horizon roll. End on first tug of canopy and wind noise dropping.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/openai/sora-2/image-to-video/pro/input_image_0.png\\\",\\n \\\"duration\\\": 4,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/sora-2/image-to-video/pro\\\",\\n \\\"prompt\\\": \\\"Front-facing 'invisible' action-cam on a skydiver in freefall above bright clouds; camera locked on his face. He speaks over the wind with clear lipsync: 'This is insanely fun! You've got to try it—book a tandem and go!' Natural wind roar, voice close-mic'd and slightly compressed so it's intelligible. Midday sun, goggles and jumpsuit flutter, altimeter visible, parachute rig on shoulders. Energetic but stable framing with subtle shake; brief horizon roll. End on first tug of canopy and wind noise dropping.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/openai/sora-2/image-to-video/pro/input_image_0.png\\\",\\n \\\"duration\\\": 4,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/sora-2/image-to-video/pro\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Sora 2 Image to Video Pro" - modelId: "openai/sora-2/image-to-video/pro" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "sora-2/image-to-video/pro" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-06T22:02:41.752Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/openai/sora-2/text-to-video.md b/model-api-reference/video-generation/openai/sora-2/text-to-video.md deleted file mode 100644 index d40b05de..00000000 --- a/model-api-reference/video-generation/openai/sora-2/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sora 2 API Reference — OpenAI Sora 2 / Text To Video API" -description: "Sora 2 API reference for SandBase. Use model openai/sora-2/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/openai/sora-2/text-to-video" -apiReferenceJson: "{\"title\":\"Sora 2\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sora 2 by OpenAI - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/sora-2/text-to-video.\",\"default\":\"openai/sora-2/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated video in seconds\",\"default\":\"4\",\"constraints\":\"Allowed values: 4, 8, 12, 16, 20\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/sora-2/text-to-video\\\",\\n \\\"prompt\\\": \\\"A dramatic Hollywood breakup scene at dusk on a quiet suburban street. A man and a woman in their 30s face each other, speaking softly but emotionally, lips syncing to breakup dialogue. Cinematic lighting, warm sunset tones, shallow depth of field, gentle breeze moving autumn leaves, realistic natural sound, no background music\\\",\\n \\\"duration\\\": 4,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/sora-2/text-to-video\\\",\\n \\\"prompt\\\": \\\"A dramatic Hollywood breakup scene at dusk on a quiet suburban street. A man and a woman in their 30s face each other, speaking softly but emotionally, lips syncing to breakup dialogue. Cinematic lighting, warm sunset tones, shallow depth of field, gentle breeze moving autumn leaves, realistic natural sound, no background music\\\",\\n \\\"duration\\\": 4,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/sora-2/text-to-video\\\",\\n \\\"prompt\\\": \\\"A dramatic Hollywood breakup scene at dusk on a quiet suburban street. A man and a woman in their 30s face each other, speaking softly but emotionally, lips syncing to breakup dialogue. Cinematic lighting, warm sunset tones, shallow depth of field, gentle breeze moving autumn leaves, realistic natural sound, no background music\\\",\\n \\\"duration\\\": 4,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/sora-2/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Sora 2" - modelId: "openai/sora-2/text-to-video" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "sora-2/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-06T19:34:55.71Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/openai/sora-2/text-to-video/pro.md b/model-api-reference/video-generation/openai/sora-2/text-to-video/pro.md deleted file mode 100644 index 89cf995a..00000000 --- a/model-api-reference/video-generation/openai/sora-2/text-to-video/pro.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sora 2 Text to Video Pro API Reference" -description: "Sora 2 Text to Video Pro API reference for SandBase. Use model openai/sora-2/text-to-video/pro with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/openai/sora-2/text-to-video/pro" -apiReferenceJson: "{\"title\":\"Sora 2 Text to Video Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sora 2 Pro by OpenAI - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/sora-2/text-to-video/pro.\",\"default\":\"openai/sora-2/text-to-video/pro\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The text prompt describing the video you want to generate\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 720p, 1080p, true_1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the generated video in seconds\",\"default\":\"4\",\"constraints\":\"Allowed values: 4, 8, 12, 16, 20\"},{\"name\":\"character_ids\",\"type\":\"array\",\"required\":false,\"description\":\"Up to two character IDs (from create-character) to use in the video. Refer to characters by name in the prompt. When set, only the OpenAI provider is used.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/sora-2/text-to-video/pro\\\",\\n \\\"prompt\\\": \\\"A dramatic Hollywood breakup scene at dusk on a quiet suburban street. A man and a woman in their 30s face each other, speaking softly but emotionally, lips syncing to breakup dialogue. Cinematic lighting, warm sunset tones, shallow depth of field, gentle breeze moving autumn leaves, realistic natural sound, no background music\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 4\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/sora-2/text-to-video/pro\\\",\\n \\\"prompt\\\": \\\"A dramatic Hollywood breakup scene at dusk on a quiet suburban street. A man and a woman in their 30s face each other, speaking softly but emotionally, lips syncing to breakup dialogue. Cinematic lighting, warm sunset tones, shallow depth of field, gentle breeze moving autumn leaves, realistic natural sound, no background music\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 4\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/sora-2/text-to-video/pro\\\",\\n \\\"prompt\\\": \\\"A dramatic Hollywood breakup scene at dusk on a quiet suburban street. A man and a woman in their 30s face each other, speaking softly but emotionally, lips syncing to breakup dialogue. Cinematic lighting, warm sunset tones, shallow depth of field, gentle breeze moving autumn leaves, realistic natural sound, no background music\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 4\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/sora-2/text-to-video/pro\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Sora 2 Text to Video Pro" - modelId: "openai/sora-2/text-to-video/pro" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "sora-2/text-to-video/pro" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-06T21:56:38.344Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/openai/sora-2/video-to-video/remix.md b/model-api-reference/video-generation/openai/sora-2/video-to-video/remix.md deleted file mode 100644 index 5f75aa94..00000000 --- a/model-api-reference/video-generation/openai/sora-2/video-to-video/remix.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sora 2 Remix API Reference" -description: "Sora 2 Remix API reference for SandBase. Use model openai/sora-2/video-to-video/remix with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/openai/sora-2/video-to-video/remix" -apiReferenceJson: "{\"title\":\"Sora 2 Remix\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sora 2 Video To Video Remix is OpenAI's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to openai/sora-2/video-to-video/remix.\",\"default\":\"openai/sora-2/video-to-video/remix\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Updated text prompt that directs the remix generation\"},{\"name\":\"video_id\",\"type\":\"string\",\"required\":false,\"description\":\"The video_id from a previous Sora 2 generation. Note: You can only remix videos that were generated by Sora (via text-to-video or image-to-video endpoints), not arbitrary uploaded videos.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"openai/sora-2/video-to-video/remix\\\",\\n \\\"prompt\\\": \\\"Change the cat's fur color to purple.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"openai/sora-2/video-to-video/remix\\\",\\n \\\"prompt\\\": \\\"Change the cat's fur color to purple.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"openai/sora-2/video-to-video/remix\\\",\\n \\\"prompt\\\": \\\"Change the cat's fur color to purple.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"openai/sora-2/video-to-video/remix\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Sora 2 Remix" - modelId: "openai/sora-2/video-to-video/remix" - vendor: "OpenAI" - vendorSlug: "openai" - modelSlug: "sora-2/video-to-video/remix" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-08T23:13:08.227Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pika/v1.5/effects.md b/model-api-reference/video-generation/pika/v1.5/effects.md deleted file mode 100644 index a2254871..00000000 --- a/model-api-reference/video-generation/pika/v1.5/effects.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Pika V1.5 Effects API Reference" -description: "Pika V1.5 Effects API reference for SandBase. Use model pika/v1.5/effects with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pika/v1.5/effects" -apiReferenceJson: "{\"title\":\"Pika V1.5 Effects\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V1.5 Effects by Pika - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pika/v1.5/effects.\",\"default\":\"pika/v1.5/effects\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt to guide the effect\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image\"},{\"name\":\"pikaffect\",\"type\":\"string\",\"required\":false,\"description\":\"The Pikaffect to apply\",\"constraints\":\"Allowed values: Cake-ify, Crumble, Crush, Decapitate, Deflate, Dissolve, Explode, Eye-pop, Inflate, Levitate, Melt, Peel, Poke, Squish, Ta-da, Tear\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pika/v1.5/effects\\\",\\n \\\"prompt\\\": \\\"Cake-ify it\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pika/v1.5/effects/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pika/v1.5/effects\\\",\\n \\\"prompt\\\": \\\"Cake-ify it\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pika/v1.5/effects/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pika/v1.5/effects\\\",\\n \\\"prompt\\\": \\\"Cake-ify it\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pika/v1.5/effects/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pika/v1.5/effects\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Pika V1.5 Effects" - modelId: "pika/v1.5/effects" - vendor: "Pika" - vendorSlug: "pika" - modelSlug: "v1.5/effects" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-14T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pika/v2.1/image-to-video.md b/model-api-reference/video-generation/pika/v2.1/image-to-video.md deleted file mode 100644 index 94e2326c..00000000 --- a/model-api-reference/video-generation/pika/v2.1/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Pika V2.1 Image to Video API Reference" -description: "Pika V2.1 Image to Video API reference for SandBase. Use model pika/v2.1/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pika/v2.1/image-to-video" -apiReferenceJson: "{\"title\":\"Pika V2.1 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V2.1 is Pika's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pika/v2.1/image-to-video.\",\"default\":\"pika/v2.1/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image URL or image data used by this model.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pika/v2.1/image-to-video\\\",\\n \\\"prompt\\\": \\\"The flower blossoms into a vibrant pink lily. The lily's wide-open petals are lavishly adorned with sparkling glitter and an array of tiny, iridescent, multicolored gem-like stickers in shapes like stars, moons, and dolphins, catching the light playfully as a developing bud rises from the top of the main bloom.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pika/v2.1/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pika/v2.1/image-to-video\\\",\\n \\\"prompt\\\": \\\"The flower blossoms into a vibrant pink lily. The lily's wide-open petals are lavishly adorned with sparkling glitter and an array of tiny, iridescent, multicolored gem-like stickers in shapes like stars, moons, and dolphins, catching the light playfully as a developing bud rises from the top of the main bloom.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pika/v2.1/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pika/v2.1/image-to-video\\\",\\n \\\"prompt\\\": \\\"The flower blossoms into a vibrant pink lily. The lily's wide-open petals are lavishly adorned with sparkling glitter and an array of tiny, iridescent, multicolored gem-like stickers in shapes like stars, moons, and dolphins, catching the light playfully as a developing bud rises from the top of the main bloom.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pika/v2.1/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pika/v2.1/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Pika V2.1 Image to Video" - modelId: "pika/v2.1/image-to-video" - vendor: "Pika" - vendorSlug: "pika" - modelSlug: "v2.1/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-14T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pika/v2.1/text-to-video.md b/model-api-reference/video-generation/pika/v2.1/text-to-video.md deleted file mode 100644 index ba8db421..00000000 --- a/model-api-reference/video-generation/pika/v2.1/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Pika V2.1 Text to Video API Reference" -description: "Pika V2.1 Text to Video API reference for SandBase. Use model pika/v2.1/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pika/v2.1/text-to-video" -apiReferenceJson: "{\"title\":\"Pika V2.1 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V2.1 by Pika - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pika/v2.1/text-to-video.\",\"default\":\"pika/v2.1/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pika/v2.1/text-to-video\\\",\\n \\\"prompt\\\": \\\"A woman styled in a high-fashion brand editorial. the woman stands confidently in a whimsical outdoor setting against a soft, cloudy sky. She wears a bright yellow luxury brand monogram jacket over a crisp striped shirt, paired with flowing pink trousers, accessorized with oversized sunglasses, a golden chain necklace, and a bold luxury brand belt. Delicate flowers in the foreground add a dreamy and artistic touch, evoking a retro yet luxurious high fashion campaign aesthetic. the camera crane up from the flowers to the woman\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pika/v2.1/text-to-video\\\",\\n \\\"prompt\\\": \\\"A woman styled in a high-fashion brand editorial. the woman stands confidently in a whimsical outdoor setting against a soft, cloudy sky. She wears a bright yellow luxury brand monogram jacket over a crisp striped shirt, paired with flowing pink trousers, accessorized with oversized sunglasses, a golden chain necklace, and a bold luxury brand belt. Delicate flowers in the foreground add a dreamy and artistic touch, evoking a retro yet luxurious high fashion campaign aesthetic. the camera crane up from the flowers to the woman\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pika/v2.1/text-to-video\\\",\\n \\\"prompt\\\": \\\"A woman styled in a high-fashion brand editorial. the woman stands confidently in a whimsical outdoor setting against a soft, cloudy sky. She wears a bright yellow luxury brand monogram jacket over a crisp striped shirt, paired with flowing pink trousers, accessorized with oversized sunglasses, a golden chain necklace, and a bold luxury brand belt. Delicate flowers in the foreground add a dreamy and artistic touch, evoking a retro yet luxurious high fashion campaign aesthetic. the camera crane up from the flowers to the woman\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pika/v2.1/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Pika V2.1 Text to Video" - modelId: "pika/v2.1/text-to-video" - vendor: "Pika" - vendorSlug: "pika" - modelSlug: "v2.1/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-14T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pika/v2.2/frames.md b/model-api-reference/video-generation/pika/v2.2/frames.md deleted file mode 100644 index 54391107..00000000 --- a/model-api-reference/video-generation/pika/v2.2/frames.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Pika V2.2 Frames API Reference" -description: "Pika V2.2 Frames API reference for SandBase. Use model pika/v2.2/frames with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pika/v2.2/frames" -apiReferenceJson: "{\"title\":\"Pika V2.2 Frames\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V2.2 Frames is Pika's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pika/v2.2/frames.\",\"default\":\"pika/v2.2/frames\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Default prompt for all transitions. Individual transition prompts override this.\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"URLs of keyframe images (2-5 images) to create transitions between\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"transitions\",\"type\":\"array\",\"required\":false,\"description\":\"Configuration for each transition. Length must be len(image_urls) - 1. Total duration of all transitions must not exceed 25 seconds. If not provided, uses default 5-second transitions with the global prompt.\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pika/v2.2/frames\\\",\\n \\\"prompt\\\": \\\"smooth cinematic transition\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pika/v2.2/frames\\\",\\n \\\"prompt\\\": \\\"smooth cinematic transition\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pika/v2.2/frames\\\",\\n \\\"prompt\\\": \\\"smooth cinematic transition\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pika/v2.2/frames\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Pika V2.2 Frames" - modelId: "pika/v2.2/frames" - vendor: "Pika" - vendorSlug: "pika" - modelSlug: "v2.2/frames" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-07T23:56:01.434Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pika/v2.2/image-to-video.md b/model-api-reference/video-generation/pika/v2.2/image-to-video.md deleted file mode 100644 index 4c1ee038..00000000 --- a/model-api-reference/video-generation/pika/v2.2/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Pika V2.2 Image to Video API Reference" -description: "Pika V2.2 Image to Video API reference for SandBase. Use model pika/v2.2/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pika/v2.2/image-to-video" -apiReferenceJson: "{\"title\":\"Pika V2.2 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V2.2 is Pika's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pika/v2.2/image-to-video.\",\"default\":\"pika/v2.2/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pika/v2.2/image-to-video\\\",\\n \\\"prompt\\\": \\\"The man and the horse are slowly walking towards the camera, the camera orbits and dolly out\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pika/v2.2/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pika/v2.2/image-to-video\\\",\\n \\\"prompt\\\": \\\"The man and the horse are slowly walking towards the camera, the camera orbits and dolly out\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pika/v2.2/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pika/v2.2/image-to-video\\\",\\n \\\"prompt\\\": \\\"The man and the horse are slowly walking towards the camera, the camera orbits and dolly out\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pika/v2.2/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pika/v2.2/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Pika V2.2 Image to Video" - modelId: "pika/v2.2/image-to-video" - vendor: "Pika" - vendorSlug: "pika" - modelSlug: "v2.2/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-14T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pika/v2.2/scenes.md b/model-api-reference/video-generation/pika/v2.2/scenes.md deleted file mode 100644 index b5ca17ad..00000000 --- a/model-api-reference/video-generation/pika/v2.2/scenes.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Pika V2.2 Scenes API Reference" -description: "Pika V2.2 Scenes API reference for SandBase. Use model pika/v2.2/scenes with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pika/v2.2/scenes" -apiReferenceJson: "{\"title\":\"Pika V2.2 Scenes\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V2.2 Scenes is Pika's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pika/v2.2/scenes.\",\"default\":\"pika/v2.2/scenes\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the desired video\"},{\"name\":\"images\",\"type\":\"array\",\"required\":false,\"description\":\"URLs of images to combine into a video\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"1080p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"ingredients_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Mode for integrating multiple images. Precise mode is more accurate, creative mode is more creative.\",\"default\":\"precise\",\"constraints\":\"Allowed values: precise, creative\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pika/v2.2/scenes\\\",\\n \\\"prompt\\\": \\\"The gorilla is wearing the coat and sitting in the living room, cinematic scene, camera orbit and dolly out\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pika/v2.2/scenes\\\",\\n \\\"prompt\\\": \\\"The gorilla is wearing the coat and sitting in the living room, cinematic scene, camera orbit and dolly out\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pika/v2.2/scenes\\\",\\n \\\"prompt\\\": \\\"The gorilla is wearing the coat and sitting in the living room, cinematic scene, camera orbit and dolly out\\\",\\n \\\"duration\\\": 5,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pika/v2.2/scenes\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Pika V2.2 Scenes" - modelId: "pika/v2.2/scenes" - vendor: "Pika" - vendorSlug: "pika" - modelSlug: "v2.2/scenes" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-14T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pika/v2.2/text-to-video.md b/model-api-reference/video-generation/pika/v2.2/text-to-video.md deleted file mode 100644 index eab95a60..00000000 --- a/model-api-reference/video-generation/pika/v2.2/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Pika V2.2 Text to Video API Reference" -description: "Pika V2.2 Text to Video API reference for SandBase. Use model pika/v2.2/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pika/v2.2/text-to-video" -apiReferenceJson: "{\"title\":\"Pika V2.2 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V2.2 by Pika - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pika/v2.2/text-to-video.\",\"default\":\"pika/v2.2/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 1080p, 720p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 10\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pika/v2.2/text-to-video\\\",\\n \\\"prompt\\\": \\\"Large elegant white poodle standing proudly on the deck of a white yacht, wearing oversized glamorous sunglasses and a luxurious silk Gucci-style scarf tied around its neck, layered pearl necklaces draped across its chest, photographed from outside the yacht at a low upward angle, clear blue sky background, strong midday sunlight, washed-out faded tones, slightly overexposed 2000s fashion editorial aesthetic, cinematic analog film texture, playful luxury mood, glossy magazine style, bright harsh light and soft shadows, stylish and extravagant atmosphere. camera slow orbit and dolly in\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pika/v2.2/text-to-video\\\",\\n \\\"prompt\\\": \\\"Large elegant white poodle standing proudly on the deck of a white yacht, wearing oversized glamorous sunglasses and a luxurious silk Gucci-style scarf tied around its neck, layered pearl necklaces draped across its chest, photographed from outside the yacht at a low upward angle, clear blue sky background, strong midday sunlight, washed-out faded tones, slightly overexposed 2000s fashion editorial aesthetic, cinematic analog film texture, playful luxury mood, glossy magazine style, bright harsh light and soft shadows, stylish and extravagant atmosphere. camera slow orbit and dolly in\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pika/v2.2/text-to-video\\\",\\n \\\"prompt\\\": \\\"Large elegant white poodle standing proudly on the deck of a white yacht, wearing oversized glamorous sunglasses and a luxurious silk Gucci-style scarf tied around its neck, layered pearl necklaces draped across its chest, photographed from outside the yacht at a low upward angle, clear blue sky background, strong midday sunlight, washed-out faded tones, slightly overexposed 2000s fashion editorial aesthetic, cinematic analog film texture, playful luxury mood, glossy magazine style, bright harsh light and soft shadows, stylish and extravagant atmosphere. camera slow orbit and dolly in\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pika/v2.2/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Pika V2.2 Text to Video" - modelId: "pika/v2.2/text-to-video" - vendor: "Pika" - vendorSlug: "pika" - modelSlug: "v2.2/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-14T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pika/v2/additions.md b/model-api-reference/video-generation/pika/v2/additions.md deleted file mode 100644 index 84940669..00000000 --- a/model-api-reference/video-generation/pika/v2/additions.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Pika V2 Additions API Reference" -description: "Pika V2 Additions API reference for SandBase. Use model pika/v2/additions with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pika/v2/additions" -apiReferenceJson: "{\"title\":\"Pika V2 Additions\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V2 Additions by Pika - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pika/v2/additions.\",\"default\":\"pika/v2/additions\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing what to add\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to add\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input video\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pika/v2/additions\\\",\\n \\\"prompt\\\": \\\"A parrot in the shoulder of the person picking up cookies\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pika/v2/additions/input_image_1.jpg\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/pika/v2/additions/output_url_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pika/v2/additions\\\",\\n \\\"prompt\\\": \\\"A parrot in the shoulder of the person picking up cookies\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pika/v2/additions/input_image_1.jpg\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/pika/v2/additions/output_url_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pika/v2/additions\\\",\\n \\\"prompt\\\": \\\"A parrot in the shoulder of the person picking up cookies\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pika/v2/additions/input_image_1.jpg\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/pika/v2/additions/output_url_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pika/v2/additions\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Pika V2 Additions" - modelId: "pika/v2/additions" - vendor: "Pika" - vendorSlug: "pika" - modelSlug: "v2/additions" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-14T00:00:00Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pika/v2/turbo/image-to-video.md b/model-api-reference/video-generation/pika/v2/turbo/image-to-video.md deleted file mode 100644 index 96a84c85..00000000 --- a/model-api-reference/video-generation/pika/v2/turbo/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Pika V2 Image to Video Turbo API Reference" -description: "Pika V2 Image to Video Turbo API reference for SandBase. Use model pika/v2/turbo/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pika/v2/turbo/image-to-video" -apiReferenceJson: "{\"title\":\"Pika V2 Image to Video Turbo\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V2 Turbo is Pika's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pika/v2/turbo/image-to-video.\",\"default\":\"pika/v2/turbo/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image URL or image data used by this model.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pika/v2/turbo/image-to-video\\\",\\n \\\"prompt\\\": \\\"Camera slow dolly out\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pika/v2/turbo/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pika/v2/turbo/image-to-video\\\",\\n \\\"prompt\\\": \\\"Camera slow dolly out\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pika/v2/turbo/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pika/v2/turbo/image-to-video\\\",\\n \\\"prompt\\\": \\\"Camera slow dolly out\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pika/v2/turbo/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pika/v2/turbo/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Pika V2 Image to Video Turbo" - modelId: "pika/v2/turbo/image-to-video" - vendor: "Pika" - vendorSlug: "pika" - modelSlug: "v2/turbo/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-14T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pika/v2/turbo/text-to-video.md b/model-api-reference/video-generation/pika/v2/turbo/text-to-video.md deleted file mode 100644 index 9793901d..00000000 --- a/model-api-reference/video-generation/pika/v2/turbo/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Pika V2 Text to Video Turbo API Reference" -description: "Pika V2 Text to Video Turbo API reference for SandBase. Use model pika/v2/turbo/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pika/v2/turbo/text-to-video" -apiReferenceJson: "{\"title\":\"Pika V2 Text to Video Turbo\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V2 Turbo by Pika - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pika/v2/turbo/text-to-video.\",\"default\":\"pika/v2/turbo/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pika/v2/turbo/text-to-video\\\",\\n \\\"prompt\\\": \\\"A luxurious tea scene where a luxury brand teapot pours tea into an oversized luxury cup. Steam rises, creating an ethereal moment. camera dolly in\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pika/v2/turbo/text-to-video\\\",\\n \\\"prompt\\\": \\\"A luxurious tea scene where a luxury brand teapot pours tea into an oversized luxury cup. Steam rises, creating an ethereal moment. camera dolly in\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pika/v2/turbo/text-to-video\\\",\\n \\\"prompt\\\": \\\"A luxurious tea scene where a luxury brand teapot pours tea into an oversized luxury cup. Steam rises, creating an ethereal moment. camera dolly in\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pika/v2/turbo/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Pika V2 Text to Video Turbo" - modelId: "pika/v2/turbo/text-to-video" - vendor: "Pika" - vendorSlug: "pika" - modelSlug: "v2/turbo/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-14T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixelcut/video-background-removal.md b/model-api-reference/video-generation/pixelcut/video-background-removal.md deleted file mode 100644 index 0f23d702..00000000 --- a/model-api-reference/video-generation/pixelcut/video-background-removal.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Pixelcut Video Background Removal API Reference" -description: "Pixelcut Video Background Removal API reference for SandBase. Use model pixelcut/video-background-removal with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixelcut/video-background-removal" -apiReferenceJson: "{\"title\":\"Pixelcut Video Background Removal\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Video Background Removal by Pixelcut - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixelcut/video-background-removal.\",\"default\":\"pixelcut/video-background-removal\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input video\"},{\"name\":\"output_format\",\"type\":\"string\",\"required\":false,\"description\":\"Output video format. Auto-detected if not set (defaults to webm_vp9 for transparent).\",\"constraints\":\"Allowed values: webm_vp9, mp4_h264, mp4_h265, mov_proresks, mov_h265, mkv_h264, mkv_h265, mkv_vp9, gif\"},{\"name\":\"background_color\",\"type\":\"string\",\"required\":false,\"description\":\"Custom solid background color (only used when background='custom').\"},{\"name\":\"background\",\"type\":\"string\",\"required\":false,\"description\":\"Output background: transparent, a named preset color, or 'custom' to use the background_color color picker.\",\"default\":\"transparent\",\"constraints\":\"Allowed values: transparent, black, white, green, blue, magenta, custom\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixelcut/video-background-removal\\\",\\n \\\"video\\\": \\\"https://cdn3.pixelcut.app/fal/video-background-removal/sample.mp4\\\",\\n \\\"output_format\\\": \\\"webm_vp9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixelcut/video-background-removal\\\",\\n \\\"video\\\": \\\"https://cdn3.pixelcut.app/fal/video-background-removal/sample.mp4\\\",\\n \\\"output_format\\\": \\\"webm_vp9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixelcut/video-background-removal\\\",\\n \\\"video\\\": \\\"https://cdn3.pixelcut.app/fal/video-background-removal/sample.mp4\\\",\\n \\\"output_format\\\": \\\"webm_vp9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixelcut/video-background-removal\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Pixelcut Video Background Removal" - modelId: "pixelcut/video-background-removal" - vendor: "Pixelcut" - vendorSlug: "pixelcut" - modelSlug: "video-background-removal" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-11T17:35:22.832Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/c1/reference-to-video.md b/model-api-reference/video-generation/pixverse/c1/reference-to-video.md deleted file mode 100644 index bd6ac45e..00000000 --- a/model-api-reference/video-generation/pixverse/c1/reference-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse C1 Reference to Video API Reference" -description: "PixVerse C1 Reference to Video API reference for SandBase. Use model pixverse/c1/reference-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/c1/reference-to-video" -apiReferenceJson: "{\"title\":\"PixVerse C1 Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"C1 is PixVerse's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/c1/reference-to-video.\",\"default\":\"pixverse/c1/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt for the reference-to-video generation. Use @ref_name to refer to uploaded references.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds (1-15)\",\"default\":\"5\",\"constraints\":\"Range: 1 to 15\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"},{\"name\":\"image_references\",\"type\":\"array\",\"required\":false,\"description\":\"List of reference images with type and name. Use @ref_name in the prompt to refer to each reference.\"},{\"name\":\"generate_audio_switch\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable audio generation (BGM, SFX, dialogue)\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/c1/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A @character walks through a magical forest\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/c1/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A @character walks through a magical forest\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/c1/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A @character walks through a magical forest\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/c1/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse C1 Reference to Video" - modelId: "pixverse/c1/reference-to-video" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "c1/reference-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-09T23:44:36.305Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/c1/text-to-video.md b/model-api-reference/video-generation/pixverse/c1/text-to-video.md deleted file mode 100644 index b314a246..00000000 --- a/model-api-reference/video-generation/pixverse/c1/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse C1 Text to Video API Reference" -description: "PixVerse C1 Text to Video API reference for SandBase. Use model pixverse/c1/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/c1/text-to-video" -apiReferenceJson: "{\"title\":\"PixVerse C1 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"C1 by PixVerse - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/c1/text-to-video.\",\"default\":\"pixverse/c1/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds (1-15)\",\"default\":\"5\",\"constraints\":\"Range: 1 to 15\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"},{\"name\":\"generate_audio_switch\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable audio generation (BGM, SFX, dialogue)\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/c1/text-to-video\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, luminous diamond skin glistening under a vast moon's radiance, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/c1/text-to-video\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, luminous diamond skin glistening under a vast moon's radiance, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/c1/text-to-video\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, luminous diamond skin glistening under a vast moon's radiance, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/c1/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse C1 Text to Video" - modelId: "pixverse/c1/text-to-video" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "c1/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-09T23:44:23.016Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/c1/transition.md b/model-api-reference/video-generation/pixverse/c1/transition.md deleted file mode 100644 index 5b1c8c44..00000000 --- a/model-api-reference/video-generation/pixverse/c1/transition.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse C1 Transition API Reference" -description: "PixVerse C1 Transition API reference for SandBase. Use model pixverse/c1/transition with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/c1/transition" -apiReferenceJson: "{\"title\":\"PixVerse C1 Transition\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"C1 Transition is PixVerse's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/c1/transition.\",\"default\":\"pixverse/c1/transition\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt for the transition\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to use as the last frame\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds (1-15)\",\"default\":\"5\",\"constraints\":\"Range: 1 to 15\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"},{\"name\":\"generate_audio_switch\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable audio generation (BGM, SFX, dialogue)\",\"default\":\"false\"},{\"name\":\"first_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to use as the first frame\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/c1/transition\\\",\\n \\\"prompt\\\": \\\"Scene slowly transition into cat swimming under water\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/c1/transition\\\",\\n \\\"prompt\\\": \\\"Scene slowly transition into cat swimming under water\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/c1/transition\\\",\\n \\\"prompt\\\": \\\"Scene slowly transition into cat swimming under water\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/c1/transition\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse C1 Transition" - modelId: "pixverse/c1/transition" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "c1/transition" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-09T23:43:40.351Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/extend.md b/model-api-reference/video-generation/pixverse/extend.md deleted file mode 100644 index 296444eb..00000000 --- a/model-api-reference/video-generation/pixverse/extend.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse Extend API Reference" -description: "PixVerse Extend API reference for SandBase. Use model pixverse/extend with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/extend" -apiReferenceJson: "{\"title\":\"PixVerse Extend\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Extend by PixVerse - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/extend.\",\"default\":\"pixverse/extend\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Prompt describing how to extend the video\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input video to extend\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. 1080p videos are limited to 5 seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for generation\"},{\"name\":\"generate_audio_switch\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable audio generation (BGM, SFX, dialogue). Supported in v5.6+ models.\",\"default\":\"false\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the extended video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/extend\\\",\\n \\\"prompt\\\": \\\"A kid is talking into camera\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/pixverse/extend/output_url_0.mp4\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/extend\\\",\\n \\\"prompt\\\": \\\"A kid is talking into camera\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/pixverse/extend/output_url_0.mp4\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/extend\\\",\\n \\\"prompt\\\": \\\"A kid is talking into camera\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/pixverse/extend/output_url_0.mp4\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/extend\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse Extend" - modelId: "pixverse/extend" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "extend" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-30T20:57:59.382Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/extend/fast.md b/model-api-reference/video-generation/pixverse/extend/fast.md deleted file mode 100644 index 754a7353..00000000 --- a/model-api-reference/video-generation/pixverse/extend/fast.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse Extend Fast API Reference" -description: "PixVerse Extend Fast API reference for SandBase. Use model pixverse/extend/fast with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/extend/fast" -apiReferenceJson: "{\"title\":\"PixVerse Extend Fast\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Extend Fast is PixVerse's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/extend/fast.\",\"default\":\"pixverse/extend/fast\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Prompt describing how to extend the video\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input video to extend\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video. Fast mode doesn't support 1080p\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for generation\"},{\"name\":\"generate_audio_switch\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable audio generation (BGM, SFX, dialogue). Supported in v5.6+ models.\",\"default\":\"false\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the extended video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/extend/fast\\\",\\n \\\"prompt\\\": \\\"A kid is talking into camera\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/pixverse/extend/fast/output_url_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/extend/fast\\\",\\n \\\"prompt\\\": \\\"A kid is talking into camera\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/pixverse/extend/fast/output_url_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/extend/fast\\\",\\n \\\"prompt\\\": \\\"A kid is talking into camera\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/pixverse/extend/fast/output_url_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/extend/fast\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse Extend Fast" - modelId: "pixverse/extend/fast" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "extend/fast" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-30T20:58:06.204Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/lipsync.md b/model-api-reference/video-generation/pixverse/lipsync.md deleted file mode 100644 index 01b09af2..00000000 --- a/model-api-reference/video-generation/pixverse/lipsync.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse Lipsync API Reference" -description: "PixVerse Lipsync API reference for SandBase. Use model pixverse/lipsync with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/lipsync" -apiReferenceJson: "{\"title\":\"PixVerse Lipsync\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Lipsync is PixVerse's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/lipsync.\",\"default\":\"pixverse/lipsync\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input video\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input audio. If not provided, TTS will be used.\"},{\"name\":\"text\",\"type\":\"string\",\"required\":false,\"description\":\"Text content for TTS when audio_url is not provided\"},{\"name\":\"voice_id\",\"type\":\"string\",\"required\":false,\"description\":\"Voice to use for TTS when audio_url is not provided\",\"default\":\"Auto\",\"constraints\":\"Allowed values: Emily, James, Isabella, Liam, Chloe, Adrian, Harper, Ava, Sophia, Julia, Mason, Jack, Oliver, Ethan, Auto\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/lipsync\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/pixverse/lipsync/output_url_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/pixverse/lipsync/input_audio_1.mp3\\\",\\n \\\"text\\\": \\\"Hello, this is a test message.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/lipsync\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/pixverse/lipsync/output_url_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/pixverse/lipsync/input_audio_1.mp3\\\",\\n \\\"text\\\": \\\"Hello, this is a test message.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/lipsync\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/pixverse/lipsync/output_url_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/pixverse/lipsync/input_audio_1.mp3\\\",\\n \\\"text\\\": \\\"Hello, this is a test message.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/lipsync\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse Lipsync" - modelId: "pixverse/lipsync" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "lipsync" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-06-30T20:57:46.375Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/sound-effects.md b/model-api-reference/video-generation/pixverse/sound-effects.md deleted file mode 100644 index 47b4f9d0..00000000 --- a/model-api-reference/video-generation/pixverse/sound-effects.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse Sound-effects API Reference" -description: "PixVerse Sound-effects API reference for SandBase. Use model pixverse/sound-effects with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/sound-effects" -apiReferenceJson: "{\"title\":\"PixVerse Sound-effects\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sound Effects is PixVerse's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/sound-effects.\",\"default\":\"pixverse/sound-effects\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Description of the sound effect to generate. If empty, a random sound effect will be generated\",\"default\":\"\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input video to add sound effects to\"},{\"name\":\"original_sound_switch\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original audio from the video\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/sound-effects\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/pixverse/sound-effects/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/sound-effects\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/pixverse/sound-effects/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/sound-effects\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/pixverse/sound-effects/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/sound-effects\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse Sound-effects" - modelId: "pixverse/sound-effects" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "sound-effects" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-07-07T20:56:55.765Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/swap.md b/model-api-reference/video-generation/pixverse/swap.md deleted file mode 100644 index 21e1890e..00000000 --- a/model-api-reference/video-generation/pixverse/swap.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse Swap API Reference" -description: "PixVerse Swap API reference for SandBase. Use model pixverse/swap with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/swap" -apiReferenceJson: "{\"title\":\"PixVerse Swap\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Swap by PixVerse - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/swap.\",\"default\":\"pixverse/swap\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the target image for swapping\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the external video to swap\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The output resolution (1080p not supported)\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p\"},{\"name\":\"original_sound_switch\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to keep the original audio\",\"default\":\"true\"},{\"name\":\"keyframe_id\",\"type\":\"integer\",\"required\":false,\"description\":\"The keyframe ID to use for face/object mapping. The input video is normalized to 24 FPS before processing, so keyframe 1 = first frame, keyframe 24 = 1 second in, etc. Valid range: 1 to (duration_seconds * 24).\",\"default\":\"1\",\"constraints\":\"Minimum: 1\"},{\"name\":\"swap_mode\",\"type\":\"string\",\"required\":false,\"description\":\"The swap mode to use\",\"default\":\"person\",\"constraints\":\"Allowed values: person, object, background\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for generation\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/swap\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/swap/input_image_0.jpg\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/pixverse/swap/output_url_1.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/swap\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/swap/input_image_0.jpg\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/pixverse/swap/output_url_1.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/swap\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/swap/input_image_0.jpg\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/pixverse/swap/output_url_1.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/swap\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse Swap" - modelId: "pixverse/swap" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "swap" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-10T14:14:52.148Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v3.5/effects.md b/model-api-reference/video-generation/pixverse/v3.5/effects.md deleted file mode 100644 index eff61b4a..00000000 --- a/model-api-reference/video-generation/pixverse/v3.5/effects.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V3.5 Effects API Reference" -description: "PixVerse V3.5 Effects API reference for SandBase. Use model pixverse/v3.5/effects with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v3.5/effects" -apiReferenceJson: "{\"title\":\"PixVerse V3.5 Effects\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V3.5 Effects by PixVerse - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v3.5/effects.\",\"default\":\"pixverse/v3.5/effects\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Optional URL of the image to use as the first frame. If not provided, generates from text\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8\"},{\"name\":\"effect\",\"type\":\"string\",\"required\":false,\"description\":\"The effect to apply to the video\",\"constraints\":\"Allowed values: Kiss Me AI, Kiss, Muscle Surge, Warmth of Jesus, Anything, Robot, The Tiger Touch, Hug, Holy Wings, Microwave, Zombie Mode, Squid Game, Baby Face, Black Myth: Wukong, Long Hair Magic, Leggy Run, Fin-tastic Mermaid, Punch Face, Creepy Devil Smile, Thunder God, Eye Zoom Challenge, Who's Arrested?, Baby Arrived, Werewolf Rage, Bald Swipe, BOOM DROP, Huge Cutie, Liquid Metal, Sharksnap!, Dust Me Away, 3D Figurine Factor, Bikini Up, My Girlfriends, My Boyfriends, Subject 3 Fever, Earth Zoom, Pole Dance, Vroom Dance, GhostFace Terror, Dragon Evoker, Skeletal Bae, Summoning succubus, Halloween Voodoo Doll, 3D Naked-Eye AD, Package Explosion, Dishes Served, Ocean ad, Supermarket AD, Tree doll, Come Feel My Abs, The Bicep Flex, London Elite Vibe, Flora Nymph Gown, Christmas Costume, It's Snowy, Reindeer Cruiser, Snow Globe Maker, Pet Christmas Outfit, Adopt a Polar Pal, Cat Christmas Box, Starlight Gift Box, Xmas Poster, Pet Christmas Tree, City Santa Hat, Stocking Sweetie, Christmas Night, Xmas Front Page Karma, Grinch's Xmas Hijack, Giant Product, Truck Fashion Shoot, Beach AD, Shoal Surround, Mechanical Assembly, Lighting AD, Billboard AD, Product close-up, Parachute Delivery, Dreamlike Cloud, Macaron Machine, Poster AD, Truck AD, Graffiti AD, 3D Figurine Factory, The Exclusive First Class, Art Zoom Challenge, I Quit, Hitchcock Dolly Zoom, Smell the Lens, I believe I can fly, Strikout Dance, Courtside Cam, Pit Crew Moment, K-Baseball Sprint, Pixel World, Mint in Box, Hands up, Hand, Flora Nymph Go, Somber Embrace, Beam me up, Suit Swagger\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v3.5/effects\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v3.5/effects/input_image_0.webp\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v3.5/effects\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v3.5/effects/input_image_0.webp\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v3.5/effects\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v3.5/effects/input_image_0.webp\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v3.5/effects\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V3.5 Effects" - modelId: "pixverse/v3.5/effects" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v3.5/effects" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-04-01T02:53:00.99Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v3.5/image-to-video.md b/model-api-reference/video-generation/pixverse/v3.5/image-to-video.md deleted file mode 100644 index 02c2daae..00000000 --- a/model-api-reference/video-generation/pixverse/v3.5/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V3.5 Image to Video API Reference" -description: "PixVerse V3.5 Image to Video API reference for SandBase. Use model pixverse/v3.5/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v3.5/image-to-video" -apiReferenceJson: "{\"title\":\"PixVerse V3.5 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V3.5 is PixVerse's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v3.5/image-to-video.\",\"default\":\"pixverse/v3.5/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. 8s videos cost double. 1080p videos are limited to 5 seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v3.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v3.5/image-to-video/input_image_0.jpeg\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v3.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v3.5/image-to-video/input_image_0.jpeg\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v3.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v3.5/image-to-video/input_image_0.jpeg\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v3.5/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V3.5 Image to Video" - modelId: "pixverse/v3.5/image-to-video" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v3.5/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-01-29T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v3.5/image-to-video/fast.md b/model-api-reference/video-generation/pixverse/v3.5/image-to-video/fast.md deleted file mode 100644 index 7f55663a..00000000 --- a/model-api-reference/video-generation/pixverse/v3.5/image-to-video/fast.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V3.5 Image to Video Fast API Reference" -description: "PixVerse V3.5 Image to Video Fast API reference for SandBase. Use model pixverse/v3.5/image-to-video/fast with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v3.5/image-to-video/fast" -apiReferenceJson: "{\"title\":\"PixVerse V3.5 Image to Video Fast\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V3.5 Fast by PixVerse - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v3.5/image-to-video/fast.\",\"default\":\"pixverse/v3.5/image-to-video/fast\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v3.5/image-to-video/fast\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v3.5/image-to-video/fast/input_image_0.jpeg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v3.5/image-to-video/fast\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v3.5/image-to-video/fast/input_image_0.jpeg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v3.5/image-to-video/fast\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v3.5/image-to-video/fast/input_image_0.jpeg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v3.5/image-to-video/fast\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V3.5 Image to Video Fast" - modelId: "pixverse/v3.5/image-to-video/fast" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v3.5/image-to-video/fast" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-01-29T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v3.5/text-to-video.md b/model-api-reference/video-generation/pixverse/v3.5/text-to-video.md deleted file mode 100644 index ae7ed75c..00000000 --- a/model-api-reference/video-generation/pixverse/v3.5/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V3.5 Text to Video API Reference" -description: "PixVerse V3.5 Text to Video API reference for SandBase. Use model pixverse/v3.5/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v3.5/text-to-video" -apiReferenceJson: "{\"title\":\"PixVerse V3.5 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V3.5 by PixVerse - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v3.5/text-to-video.\",\"default\":\"pixverse/v3.5/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. 8s videos cost double. 1080p videos are limited to 5 seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v3.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v3.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v3.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v3.5/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V3.5 Text to Video" - modelId: "pixverse/v3.5/text-to-video" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v3.5/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-01-29T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v3.5/text-to-video/fast.md b/model-api-reference/video-generation/pixverse/v3.5/text-to-video/fast.md deleted file mode 100644 index 5aa917d8..00000000 --- a/model-api-reference/video-generation/pixverse/v3.5/text-to-video/fast.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V3.5 Text to Video Fast API Reference" -description: "PixVerse V3.5 Text to Video Fast API reference for SandBase. Use model pixverse/v3.5/text-to-video/fast with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v3.5/text-to-video/fast" -apiReferenceJson: "{\"title\":\"PixVerse V3.5 Text to Video Fast\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V3.5 Fast is PixVerse's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v3.5/text-to-video/fast.\",\"default\":\"pixverse/v3.5/text-to-video/fast\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v3.5/text-to-video/fast\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v3.5/text-to-video/fast\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v3.5/text-to-video/fast\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v3.5/text-to-video/fast\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V3.5 Text to Video Fast" - modelId: "pixverse/v3.5/text-to-video/fast" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v3.5/text-to-video/fast" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-01-29T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v3.5/transition.md b/model-api-reference/video-generation/pixverse/v3.5/transition.md deleted file mode 100644 index 0de91347..00000000 --- a/model-api-reference/video-generation/pixverse/v3.5/transition.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V3.5 Transition API Reference" -description: "PixVerse V3.5 Transition API reference for SandBase. Use model pixverse/v3.5/transition with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v3.5/transition" -apiReferenceJson: "{\"title\":\"PixVerse V3.5 Transition\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V3.5 Transition is PixVerse's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v3.5/transition.\",\"default\":\"pixverse/v3.5/transition\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt for the transition\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to use as the last frame\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"},{\"name\":\"first_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to use as the first frame\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v3.5/transition\\\",\\n \\\"prompt\\\": \\\"Scene slowly transition into cat swimming under water\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v3.5/transition\\\",\\n \\\"prompt\\\": \\\"Scene slowly transition into cat swimming under water\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v3.5/transition\\\",\\n \\\"prompt\\\": \\\"Scene slowly transition into cat swimming under water\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v3.5/transition\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V3.5 Transition" - modelId: "pixverse/v3.5/transition" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v3.5/transition" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-04-01T02:35:42.865Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v4.5/effects.md b/model-api-reference/video-generation/pixverse/v4.5/effects.md deleted file mode 100644 index f6787fcc..00000000 --- a/model-api-reference/video-generation/pixverse/v4.5/effects.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V4.5 Effects API Reference" -description: "PixVerse V4.5 Effects API reference for SandBase. Use model pixverse/v4.5/effects with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v4.5/effects" -apiReferenceJson: "{\"title\":\"PixVerse V4.5 Effects\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V4.5 Effects by PixVerse - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v4.5/effects.\",\"default\":\"pixverse/v4.5/effects\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Optional URL of the image to use as the first frame. If not provided, generates from text\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8\"},{\"name\":\"effect\",\"type\":\"string\",\"required\":false,\"description\":\"The effect to apply to the video\",\"constraints\":\"Allowed values: Kiss Me AI, Kiss, Muscle Surge, Warmth of Jesus, Anything, Robot, The Tiger Touch, Hug, Holy Wings, Microwave, Zombie Mode, Squid Game, Baby Face, Black Myth: Wukong, Long Hair Magic, Leggy Run, Fin-tastic Mermaid, Punch Face, Creepy Devil Smile, Thunder God, Eye Zoom Challenge, Who's Arrested?, Baby Arrived, Werewolf Rage, Bald Swipe, BOOM DROP, Huge Cutie, Liquid Metal, Sharksnap!, Dust Me Away, 3D Figurine Factor, Bikini Up, My Girlfriends, My Boyfriends, Subject 3 Fever, Earth Zoom, Pole Dance, Vroom Dance, GhostFace Terror, Dragon Evoker, Skeletal Bae, Summoning succubus, Halloween Voodoo Doll, 3D Naked-Eye AD, Package Explosion, Dishes Served, Ocean ad, Supermarket AD, Tree doll, Come Feel My Abs, The Bicep Flex, London Elite Vibe, Flora Nymph Gown, Christmas Costume, It's Snowy, Reindeer Cruiser, Snow Globe Maker, Pet Christmas Outfit, Adopt a Polar Pal, Cat Christmas Box, Starlight Gift Box, Xmas Poster, Pet Christmas Tree, City Santa Hat, Stocking Sweetie, Christmas Night, Xmas Front Page Karma, Grinch's Xmas Hijack, Giant Product, Truck Fashion Shoot, Beach AD, Shoal Surround, Mechanical Assembly, Lighting AD, Billboard AD, Product close-up, Parachute Delivery, Dreamlike Cloud, Macaron Machine, Poster AD, Truck AD, Graffiti AD, 3D Figurine Factory, The Exclusive First Class, Art Zoom Challenge, I Quit, Hitchcock Dolly Zoom, Smell the Lens, I believe I can fly, Strikout Dance, Courtside Cam, Pit Crew Moment, K-Baseball Sprint, Pixel World, Mint in Box, Hands up, Hand, Flora Nymph Go, Somber Embrace, Beam me up, Suit Swagger\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v4.5/effects\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v4.5/effects/input_image_0.webp\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v4.5/effects\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v4.5/effects/input_image_0.webp\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v4.5/effects\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v4.5/effects/input_image_0.webp\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v4.5/effects\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V4.5 Effects" - modelId: "pixverse/v4.5/effects" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v4.5/effects" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-15T15:44:19.595Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v4.5/image-to-video.md b/model-api-reference/video-generation/pixverse/v4.5/image-to-video.md deleted file mode 100644 index 4d716cc4..00000000 --- a/model-api-reference/video-generation/pixverse/v4.5/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V4.5 Image to Video API Reference" -description: "PixVerse V4.5 Image to Video API reference for SandBase. Use model pixverse/v4.5/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v4.5/image-to-video" -apiReferenceJson: "{\"title\":\"PixVerse V4.5 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V4.5 is PixVerse's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v4.5/image-to-video.\",\"default\":\"pixverse/v4.5/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. 8s videos cost double. 1080p videos are limited to 5 seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v4.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman warrior with her hammer walking with his glacier wolf.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v4.5/image-to-video/output_url_0.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v4.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman warrior with her hammer walking with his glacier wolf.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v4.5/image-to-video/output_url_0.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v4.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman warrior with her hammer walking with his glacier wolf.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v4.5/image-to-video/output_url_0.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v4.5/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V4.5 Image to Video" - modelId: "pixverse/v4.5/image-to-video" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v4.5/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-15T15:53:06.944Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v4.5/image-to-video/fast.md b/model-api-reference/video-generation/pixverse/v4.5/image-to-video/fast.md deleted file mode 100644 index d080db6c..00000000 --- a/model-api-reference/video-generation/pixverse/v4.5/image-to-video/fast.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V4.5 Image to Video Fast API Reference" -description: "PixVerse V4.5 Image to Video Fast API reference for SandBase. Use model pixverse/v4.5/image-to-video/fast with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v4.5/image-to-video/fast" -apiReferenceJson: "{\"title\":\"PixVerse V4.5 Image to Video Fast\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V4.5 Fast by PixVerse - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v4.5/image-to-video/fast.\",\"default\":\"pixverse/v4.5/image-to-video/fast\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v4.5/image-to-video/fast\\\",\\n \\\"prompt\\\": \\\"A woman warrior with her hammer walking with his glacier wolf.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v4.5/image-to-video/fast/output_url_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v4.5/image-to-video/fast\\\",\\n \\\"prompt\\\": \\\"A woman warrior with her hammer walking with his glacier wolf.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v4.5/image-to-video/fast/output_url_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v4.5/image-to-video/fast\\\",\\n \\\"prompt\\\": \\\"A woman warrior with her hammer walking with his glacier wolf.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v4.5/image-to-video/fast/output_url_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v4.5/image-to-video/fast\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V4.5 Image to Video Fast" - modelId: "pixverse/v4.5/image-to-video/fast" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v4.5/image-to-video/fast" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-15T15:55:20.848Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v4.5/text-to-video.md b/model-api-reference/video-generation/pixverse/v4.5/text-to-video.md deleted file mode 100644 index 63cc33e8..00000000 --- a/model-api-reference/video-generation/pixverse/v4.5/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V4.5 Text to Video API Reference" -description: "PixVerse V4.5 Text to Video API reference for SandBase. Use model pixverse/v4.5/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v4.5/text-to-video" -apiReferenceJson: "{\"title\":\"PixVerse V4.5 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V4.5 by PixVerse - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v4.5/text-to-video.\",\"default\":\"pixverse/v4.5/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. 8s videos cost double. 1080p videos are limited to 5 seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v4.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v4.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v4.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v4.5/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V4.5 Text to Video" - modelId: "pixverse/v4.5/text-to-video" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v4.5/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-15T15:48:45.845Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v4.5/text-to-video/fast.md b/model-api-reference/video-generation/pixverse/v4.5/text-to-video/fast.md deleted file mode 100644 index 876467f3..00000000 --- a/model-api-reference/video-generation/pixverse/v4.5/text-to-video/fast.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V4.5 Text to Video Fast API Reference" -description: "PixVerse V4.5 Text to Video Fast API reference for SandBase. Use model pixverse/v4.5/text-to-video/fast with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v4.5/text-to-video/fast" -apiReferenceJson: "{\"title\":\"PixVerse V4.5 Text to Video Fast\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V4.5 Fast is PixVerse's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v4.5/text-to-video/fast.\",\"default\":\"pixverse/v4.5/text-to-video/fast\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v4.5/text-to-video/fast\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v4.5/text-to-video/fast\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v4.5/text-to-video/fast\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v4.5/text-to-video/fast\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V4.5 Text to Video Fast" - modelId: "pixverse/v4.5/text-to-video/fast" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v4.5/text-to-video/fast" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-15T15:51:13.967Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v4.5/transition.md b/model-api-reference/video-generation/pixverse/v4.5/transition.md deleted file mode 100644 index 45871314..00000000 --- a/model-api-reference/video-generation/pixverse/v4.5/transition.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V4.5 Transition API Reference" -description: "PixVerse V4.5 Transition API reference for SandBase. Use model pixverse/v4.5/transition with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v4.5/transition" -apiReferenceJson: "{\"title\":\"PixVerse V4.5 Transition\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V4.5 Transition is PixVerse's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v4.5/transition.\",\"default\":\"pixverse/v4.5/transition\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt for the transition\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to use as the last frame\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"},{\"name\":\"first_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v4.5/transition\\\",\\n \\\"prompt\\\": \\\"Scene slowly transition into cat swimming under water\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v4.5/transition\\\",\\n \\\"prompt\\\": \\\"Scene slowly transition into cat swimming under water\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v4.5/transition\\\",\\n \\\"prompt\\\": \\\"Scene slowly transition into cat swimming under water\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v4.5/transition\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V4.5 Transition" - modelId: "pixverse/v4.5/transition" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v4.5/transition" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-15T15:57:02.859Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v4/effects.md b/model-api-reference/video-generation/pixverse/v4/effects.md deleted file mode 100644 index a969ffe8..00000000 --- a/model-api-reference/video-generation/pixverse/v4/effects.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V4 Effects API Reference" -description: "PixVerse V4 Effects API reference for SandBase. Use model pixverse/v4/effects with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v4/effects" -apiReferenceJson: "{\"title\":\"PixVerse V4 Effects\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V4 Effects by PixVerse - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v4/effects.\",\"default\":\"pixverse/v4/effects\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Optional URL of the image to use as the first frame. If not provided, generates from text\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8\"},{\"name\":\"effect\",\"type\":\"string\",\"required\":false,\"description\":\"The effect to apply to the video\",\"constraints\":\"Allowed values: Kiss Me AI, Kiss, Muscle Surge, Warmth of Jesus, Anything, Robot, The Tiger Touch, Hug, Holy Wings, Microwave, Zombie Mode, Squid Game, Baby Face, Black Myth: Wukong, Long Hair Magic, Leggy Run, Fin-tastic Mermaid, Punch Face, Creepy Devil Smile, Thunder God, Eye Zoom Challenge, Who's Arrested?, Baby Arrived, Werewolf Rage, Bald Swipe, BOOM DROP, Huge Cutie, Liquid Metal, Sharksnap!, Dust Me Away, 3D Figurine Factor, Bikini Up, My Girlfriends, My Boyfriends, Subject 3 Fever, Earth Zoom, Pole Dance, Vroom Dance, GhostFace Terror, Dragon Evoker, Skeletal Bae, Summoning succubus, Halloween Voodoo Doll, 3D Naked-Eye AD, Package Explosion, Dishes Served, Ocean ad, Supermarket AD, Tree doll, Come Feel My Abs, The Bicep Flex, London Elite Vibe, Flora Nymph Gown, Christmas Costume, It's Snowy, Reindeer Cruiser, Snow Globe Maker, Pet Christmas Outfit, Adopt a Polar Pal, Cat Christmas Box, Starlight Gift Box, Xmas Poster, Pet Christmas Tree, City Santa Hat, Stocking Sweetie, Christmas Night, Xmas Front Page Karma, Grinch's Xmas Hijack, Giant Product, Truck Fashion Shoot, Beach AD, Shoal Surround, Mechanical Assembly, Lighting AD, Billboard AD, Product close-up, Parachute Delivery, Dreamlike Cloud, Macaron Machine, Poster AD, Truck AD, Graffiti AD, 3D Figurine Factory, The Exclusive First Class, Art Zoom Challenge, I Quit, Hitchcock Dolly Zoom, Smell the Lens, I believe I can fly, Strikout Dance, Courtside Cam, Pit Crew Moment, K-Baseball Sprint, Pixel World, Mint in Box, Hands up, Hand, Flora Nymph Go, Somber Embrace, Beam me up, Suit Swagger\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v4/effects\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v4/effects/input_image_0.webp\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v4/effects\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v4/effects/input_image_0.webp\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v4/effects\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v4/effects/input_image_0.webp\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v4/effects\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V4 Effects" - modelId: "pixverse/v4/effects" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v4/effects" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-04-23T17:11:05.284Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v4/image-to-video.md b/model-api-reference/video-generation/pixverse/v4/image-to-video.md deleted file mode 100644 index 091d5ef4..00000000 --- a/model-api-reference/video-generation/pixverse/v4/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V4 Image to Video API Reference" -description: "PixVerse V4 Image to Video API reference for SandBase. Use model pixverse/v4/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v4/image-to-video" -apiReferenceJson: "{\"title\":\"PixVerse V4 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V4 is PixVerse's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v4/image-to-video.\",\"default\":\"pixverse/v4/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. 8s videos cost double. 1080p videos are limited to 5 seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v4/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman warrior with her hammer walking with his glacier wolf.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v4/image-to-video/output_url_0.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v4/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman warrior with her hammer walking with his glacier wolf.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v4/image-to-video/output_url_0.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v4/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman warrior with her hammer walking with his glacier wolf.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v4/image-to-video/output_url_0.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v4/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V4 Image to Video" - modelId: "pixverse/v4/image-to-video" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v4/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-04-01T02:54:43.687Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v4/image-to-video/fast.md b/model-api-reference/video-generation/pixverse/v4/image-to-video/fast.md deleted file mode 100644 index 328fee85..00000000 --- a/model-api-reference/video-generation/pixverse/v4/image-to-video/fast.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V4 Image to Video Fast API Reference" -description: "PixVerse V4 Image to Video Fast API reference for SandBase. Use model pixverse/v4/image-to-video/fast with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v4/image-to-video/fast" -apiReferenceJson: "{\"title\":\"PixVerse V4 Image to Video Fast\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V4 Fast by PixVerse - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v4/image-to-video/fast.\",\"default\":\"pixverse/v4/image-to-video/fast\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v4/image-to-video/fast\\\",\\n \\\"prompt\\\": \\\"A woman warrior with her hammer walking with his glacier wolf.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v4/image-to-video/fast/output_url_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v4/image-to-video/fast\\\",\\n \\\"prompt\\\": \\\"A woman warrior with her hammer walking with his glacier wolf.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v4/image-to-video/fast/output_url_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v4/image-to-video/fast\\\",\\n \\\"prompt\\\": \\\"A woman warrior with her hammer walking with his glacier wolf.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v4/image-to-video/fast/output_url_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v4/image-to-video/fast\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V4 Image to Video Fast" - modelId: "pixverse/v4/image-to-video/fast" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v4/image-to-video/fast" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-04-01T02:56:53.842Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v4/text-to-video.md b/model-api-reference/video-generation/pixverse/v4/text-to-video.md deleted file mode 100644 index 397b3e4e..00000000 --- a/model-api-reference/video-generation/pixverse/v4/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V4 Text to Video API Reference" -description: "PixVerse V4 Text to Video API reference for SandBase. Use model pixverse/v4/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v4/text-to-video" -apiReferenceJson: "{\"title\":\"PixVerse V4 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V4 by PixVerse - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v4/text-to-video.\",\"default\":\"pixverse/v4/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. 8s videos cost double. 1080p videos are limited to 5 seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v4/text-to-video\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v4/text-to-video\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v4/text-to-video\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v4/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V4 Text to Video" - modelId: "pixverse/v4/text-to-video" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v4/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-04-01T02:42:23.743Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v4/text-to-video/fast.md b/model-api-reference/video-generation/pixverse/v4/text-to-video/fast.md deleted file mode 100644 index b6dd8745..00000000 --- a/model-api-reference/video-generation/pixverse/v4/text-to-video/fast.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V4 Text to Video Fast API Reference" -description: "PixVerse V4 Text to Video Fast API reference for SandBase. Use model pixverse/v4/text-to-video/fast with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v4/text-to-video/fast" -apiReferenceJson: "{\"title\":\"PixVerse V4 Text to Video Fast\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V4 Fast is PixVerse's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v4/text-to-video/fast.\",\"default\":\"pixverse/v4/text-to-video/fast\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v4/text-to-video/fast\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v4/text-to-video/fast\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v4/text-to-video/fast\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v4/text-to-video/fast\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V4 Text to Video Fast" - modelId: "pixverse/v4/text-to-video/fast" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v4/text-to-video/fast" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-04-01T02:33:43.392Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v5.5/effects.md b/model-api-reference/video-generation/pixverse/v5.5/effects.md deleted file mode 100644 index e8cef676..00000000 --- a/model-api-reference/video-generation/pixverse/v5.5/effects.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V5.5 Effects API Reference" -description: "PixVerse V5.5 Effects API reference for SandBase. Use model pixverse/v5.5/effects with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v5.5/effects" -apiReferenceJson: "{\"title\":\"PixVerse V5.5 Effects\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V5.5 Effects by PixVerse - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v5.5/effects.\",\"default\":\"pixverse/v5.5/effects\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Optional URL of the image to use as the first frame. If not provided, generates from text\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8, 10\"},{\"name\":\"effect\",\"type\":\"string\",\"required\":false,\"description\":\"The effect to apply to the video\",\"constraints\":\"Allowed values: Kiss Me AI, Kiss, Muscle Surge, Warmth of Jesus, Anything, Robot, The Tiger Touch, Hug, Holy Wings, Microwave, Zombie Mode, Squid Game, Baby Face, Black Myth: Wukong, Long Hair Magic, Leggy Run, Fin-tastic Mermaid, Punch Face, Creepy Devil Smile, Thunder God, Eye Zoom Challenge, Who's Arrested?, Baby Arrived, Werewolf Rage, Bald Swipe, BOOM DROP, Huge Cutie, Liquid Metal, Sharksnap!, Dust Me Away, 3D Figurine Factor, Bikini Up, My Girlfriends, My Boyfriends, Subject 3 Fever, Earth Zoom, Pole Dance, Vroom Dance, GhostFace Terror, Dragon Evoker, Skeletal Bae, Summoning succubus, Halloween Voodoo Doll, 3D Naked-Eye AD, Package Explosion, Dishes Served, Ocean ad, Supermarket AD, Tree doll, Come Feel My Abs, The Bicep Flex, London Elite Vibe, Flora Nymph Gown, Christmas Costume, It's Snowy, Reindeer Cruiser, Snow Globe Maker, Pet Christmas Outfit, Adopt a Polar Pal, Cat Christmas Box, Starlight Gift Box, Xmas Poster, Pet Christmas Tree, City Santa Hat, Stocking Sweetie, Christmas Night, Xmas Front Page Karma, Grinch's Xmas Hijack, Giant Product, Truck Fashion Shoot, Beach AD, Shoal Surround, Mechanical Assembly, Lighting AD, Billboard AD, Product close-up, Parachute Delivery, Dreamlike Cloud, Macaron Machine, Poster AD, Truck AD, Graffiti AD, 3D Figurine Factory, The Exclusive First Class, Art Zoom Challenge, I Quit, Hitchcock Dolly Zoom, Smell the Lens, I believe I can fly, Strikout Dance, Courtside Cam, Pit Crew Moment, K-Baseball Sprint, Pixel World, Mint in Box, Hands up, Hand, Flora Nymph Go, Somber Embrace, Beam me up, Suit Swagger\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v5.5/effects\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v5.5/effects/input_image_0.webp\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v5.5/effects\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v5.5/effects/input_image_0.webp\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v5.5/effects\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v5.5/effects/input_image_0.webp\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v5.5/effects\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V5.5 Effects" - modelId: "pixverse/v5.5/effects" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v5.5/effects" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-02T08:44:21.318Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v5.5/image-to-video.md b/model-api-reference/video-generation/pixverse/v5.5/image-to-video.md deleted file mode 100644 index 66ece371..00000000 --- a/model-api-reference/video-generation/pixverse/v5.5/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V5.5 Image to Video API Reference" -description: "PixVerse V5.5 Image to Video API reference for SandBase. Use model pixverse/v5.5/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v5.5/image-to-video" -apiReferenceJson: "{\"title\":\"PixVerse V5.5 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V5.5 is PixVerse's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v5.5/image-to-video.\",\"default\":\"pixverse/v5.5/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. Longer durations cost more. 1080p videos are limited to 5 or 8 seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8, 10\"},{\"name\":\"generate_audio_switch\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable audio generation (BGM, SFX, dialogue)\",\"default\":\"false\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v5.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman warrior with her hammer walking with his glacier wolf.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v5.5/image-to-video/output_url_0.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v5.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman warrior with her hammer walking with his glacier wolf.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v5.5/image-to-video/output_url_0.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v5.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman warrior with her hammer walking with his glacier wolf.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v5.5/image-to-video/output_url_0.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v5.5/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V5.5 Image to Video" - modelId: "pixverse/v5.5/image-to-video" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v5.5/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-01T17:08:41.56Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v5.5/text-to-video.md b/model-api-reference/video-generation/pixverse/v5.5/text-to-video.md deleted file mode 100644 index c22ef1b7..00000000 --- a/model-api-reference/video-generation/pixverse/v5.5/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V5.5 Text to Video API Reference" -description: "PixVerse V5.5 Text to Video API reference for SandBase. Use model pixverse/v5.5/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v5.5/text-to-video" -apiReferenceJson: "{\"title\":\"PixVerse V5.5 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V5.5 by PixVerse - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v5.5/text-to-video.\",\"default\":\"pixverse/v5.5/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. Longer durations cost more. 1080p videos are limited to 5 or 8 seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8, 10\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"},{\"name\":\"generate_audio_switch\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable audio generation (BGM, SFX, dialogue)\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v5.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v5.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v5.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v5.5/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V5.5 Text to Video" - modelId: "pixverse/v5.5/text-to-video" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v5.5/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-01T16:59:49.183Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v5.5/transition.md b/model-api-reference/video-generation/pixverse/v5.5/transition.md deleted file mode 100644 index 53523b70..00000000 --- a/model-api-reference/video-generation/pixverse/v5.5/transition.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V5.5 Transition API Reference" -description: "PixVerse V5.5 Transition API reference for SandBase. Use model pixverse/v5.5/transition with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v5.5/transition" -apiReferenceJson: "{\"title\":\"PixVerse V5.5 Transition\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V5.5 Transition is PixVerse's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v5.5/transition.\",\"default\":\"pixverse/v5.5/transition\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt for the transition\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to use as the last frame\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. Longer durations cost more. 1080p videos are limited to 5 or 8 seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8, 10\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"},{\"name\":\"first_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"generate_audio_switch\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable audio generation (BGM, SFX, dialogue)\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v5.5/transition\\\",\\n \\\"prompt\\\": \\\"Scene slowly transition into cat swimming under water\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v5.5/transition\\\",\\n \\\"prompt\\\": \\\"Scene slowly transition into cat swimming under water\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v5.5/transition\\\",\\n \\\"prompt\\\": \\\"Scene slowly transition into cat swimming under water\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v5.5/transition\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V5.5 Transition" - modelId: "pixverse/v5.5/transition" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v5.5/transition" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-02T08:44:08.938Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v5.6/image-to-video.md b/model-api-reference/video-generation/pixverse/v5.6/image-to-video.md deleted file mode 100644 index 2e27f67e..00000000 --- a/model-api-reference/video-generation/pixverse/v5.6/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V5.6 Image to Video API Reference" -description: "PixVerse V5.6 Image to Video API reference for SandBase. Use model pixverse/v5.6/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v5.6/image-to-video" -apiReferenceJson: "{\"title\":\"PixVerse V5.6 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V5.6 is PixVerse's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v5.6/image-to-video.\",\"default\":\"pixverse/v5.6/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. 1080p videos are limited to 5 or 8 seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8, 10\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"},{\"name\":\"generate_audio_switch\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable audio generation (BGM, SFX, dialogue)\",\"default\":\"false\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v5.6/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman warrior with her hammer walking with his glacier wolf.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v5.6/image-to-video/output_url_0.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v5.6/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman warrior with her hammer walking with his glacier wolf.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v5.6/image-to-video/output_url_0.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v5.6/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman warrior with her hammer walking with his glacier wolf.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v5.6/image-to-video/output_url_0.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v5.6/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V5.6 Image to Video" - modelId: "pixverse/v5.6/image-to-video" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v5.6/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-26T17:16:21.492Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v5.6/text-to-video.md b/model-api-reference/video-generation/pixverse/v5.6/text-to-video.md deleted file mode 100644 index cd5dd636..00000000 --- a/model-api-reference/video-generation/pixverse/v5.6/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V5.6 Text to Video API Reference" -description: "PixVerse V5.6 Text to Video API reference for SandBase. Use model pixverse/v5.6/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v5.6/text-to-video" -apiReferenceJson: "{\"title\":\"PixVerse V5.6 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V5.6 by PixVerse - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v5.6/text-to-video.\",\"default\":\"pixverse/v5.6/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. 1080p videos are limited to 5 or 8 seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8, 10\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"},{\"name\":\"generate_audio_switch\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable audio generation (BGM, SFX, dialogue)\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v5.6/text-to-video\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v5.6/text-to-video\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v5.6/text-to-video\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v5.6/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V5.6 Text to Video" - modelId: "pixverse/v5.6/text-to-video" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v5.6/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-26T17:02:31.936Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v5.6/transition.md b/model-api-reference/video-generation/pixverse/v5.6/transition.md deleted file mode 100644 index b6711c07..00000000 --- a/model-api-reference/video-generation/pixverse/v5.6/transition.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V5.6 Transition API Reference" -description: "PixVerse V5.6 Transition API reference for SandBase. Use model pixverse/v5.6/transition with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v5.6/transition" -apiReferenceJson: "{\"title\":\"PixVerse V5.6 Transition\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V5.6 Transition is PixVerse's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v5.6/transition.\",\"default\":\"pixverse/v5.6/transition\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt for the transition\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to use as the last frame\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. 1080p videos are limited to 5 or 8 seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8, 10\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"},{\"name\":\"first_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"generate_audio_switch\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable audio generation (BGM, SFX, dialogue)\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v5.6/transition\\\",\\n \\\"prompt\\\": \\\"Scene slowly transition into cat swimming under water\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v5.6/transition\\\",\\n \\\"prompt\\\": \\\"Scene slowly transition into cat swimming under water\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v5.6/transition\\\",\\n \\\"prompt\\\": \\\"Scene slowly transition into cat swimming under water\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v5.6/transition\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V5.6 Transition" - modelId: "pixverse/v5.6/transition" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v5.6/transition" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-26T17:28:03.386Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v5/effects.md b/model-api-reference/video-generation/pixverse/v5/effects.md deleted file mode 100644 index 877dba08..00000000 --- a/model-api-reference/video-generation/pixverse/v5/effects.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V5 Effects API Reference" -description: "PixVerse V5 Effects API reference for SandBase. Use model pixverse/v5/effects with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v5/effects" -apiReferenceJson: "{\"title\":\"PixVerse V5 Effects\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V5 Effects by PixVerse - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v5/effects.\",\"default\":\"pixverse/v5/effects\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Optional URL of the image to use as the first frame. If not provided, generates from text\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8\"},{\"name\":\"effect\",\"type\":\"string\",\"required\":false,\"description\":\"The effect to apply to the video\",\"constraints\":\"Allowed values: Kiss Me AI, Kiss, Muscle Surge, Warmth of Jesus, Anything, Robot, The Tiger Touch, Hug, Holy Wings, Microwave, Zombie Mode, Squid Game, Baby Face, Black Myth: Wukong, Long Hair Magic, Leggy Run, Fin-tastic Mermaid, Punch Face, Creepy Devil Smile, Thunder God, Eye Zoom Challenge, Who's Arrested?, Baby Arrived, Werewolf Rage, Bald Swipe, BOOM DROP, Huge Cutie, Liquid Metal, Sharksnap!, Dust Me Away, 3D Figurine Factor, Bikini Up, My Girlfriends, My Boyfriends, Subject 3 Fever, Earth Zoom, Pole Dance, Vroom Dance, GhostFace Terror, Dragon Evoker, Skeletal Bae, Summoning succubus, Halloween Voodoo Doll, 3D Naked-Eye AD, Package Explosion, Dishes Served, Ocean ad, Supermarket AD, Tree doll, Come Feel My Abs, The Bicep Flex, London Elite Vibe, Flora Nymph Gown, Christmas Costume, It's Snowy, Reindeer Cruiser, Snow Globe Maker, Pet Christmas Outfit, Adopt a Polar Pal, Cat Christmas Box, Starlight Gift Box, Xmas Poster, Pet Christmas Tree, City Santa Hat, Stocking Sweetie, Christmas Night, Xmas Front Page Karma, Grinch's Xmas Hijack, Giant Product, Truck Fashion Shoot, Beach AD, Shoal Surround, Mechanical Assembly, Lighting AD, Billboard AD, Product close-up, Parachute Delivery, Dreamlike Cloud, Macaron Machine, Poster AD, Truck AD, Graffiti AD, 3D Figurine Factory, The Exclusive First Class, Art Zoom Challenge, I Quit, Hitchcock Dolly Zoom, Smell the Lens, I believe I can fly, Strikout Dance, Courtside Cam, Pit Crew Moment, K-Baseball Sprint, Pixel World, Mint in Box, Hands up, Hand, Flora Nymph Go, Somber Embrace, Beam me up, Suit Swagger\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v5/effects\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v5/effects/input_image_0.webp\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v5/effects\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v5/effects/input_image_0.webp\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v5/effects\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v5/effects/input_image_0.webp\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v5/effects\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V5 Effects" - modelId: "pixverse/v5/effects" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v5/effects" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-23T10:55:07.548Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v5/image-to-video.md b/model-api-reference/video-generation/pixverse/v5/image-to-video.md deleted file mode 100644 index ae2db60d..00000000 --- a/model-api-reference/video-generation/pixverse/v5/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V5 Image to Video API Reference" -description: "PixVerse V5 Image to Video API reference for SandBase. Use model pixverse/v5/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v5/image-to-video" -apiReferenceJson: "{\"title\":\"PixVerse V5 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V5 is PixVerse's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v5/image-to-video.\",\"default\":\"pixverse/v5/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. 8s videos cost double. 1080p videos are limited to 5 seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v5/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman warrior with her hammer walking with his glacier wolf.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v5/image-to-video/output_url_0.png\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v5/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman warrior with her hammer walking with his glacier wolf.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v5/image-to-video/output_url_0.png\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v5/image-to-video\\\",\\n \\\"prompt\\\": \\\"A woman warrior with her hammer walking with his glacier wolf.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/pixverse/v5/image-to-video/output_url_0.png\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v5/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V5 Image to Video" - modelId: "pixverse/v5/image-to-video" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v5/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-23T10:53:29.956Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v5/text-to-video.md b/model-api-reference/video-generation/pixverse/v5/text-to-video.md deleted file mode 100644 index 3cf49881..00000000 --- a/model-api-reference/video-generation/pixverse/v5/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V5 Text to Video API Reference" -description: "PixVerse V5 Text to Video API reference for SandBase. Use model pixverse/v5/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v5/text-to-video" -apiReferenceJson: "{\"title\":\"PixVerse V5 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V5 by PixVerse - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v5/text-to-video.\",\"default\":\"pixverse/v5/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. 8s videos cost double. 1080p videos are limited to 5 seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v5/text-to-video\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v5/text-to-video\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v5/text-to-video\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v5/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V5 Text to Video" - modelId: "pixverse/v5/text-to-video" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v5/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-23T10:50:22.733Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v5/transition.md b/model-api-reference/video-generation/pixverse/v5/transition.md deleted file mode 100644 index e77e15b9..00000000 --- a/model-api-reference/video-generation/pixverse/v5/transition.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V5 Transition API Reference" -description: "PixVerse V5 Transition API reference for SandBase. Use model pixverse/v5/transition with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v5/transition" -apiReferenceJson: "{\"title\":\"PixVerse V5 Transition\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V5 Transition is PixVerse's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v5/transition.\",\"default\":\"pixverse/v5/transition\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt for the transition\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to use as the last frame\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds\",\"default\":\"5\",\"constraints\":\"Allowed values: 5, 8\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"},{\"name\":\"first_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to use as the first frame\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v5/transition\\\",\\n \\\"prompt\\\": \\\"Scene slowly transition into cat swimming under water\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v5/transition\\\",\\n \\\"prompt\\\": \\\"Scene slowly transition into cat swimming under water\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v5/transition\\\",\\n \\\"prompt\\\": \\\"Scene slowly transition into cat swimming under water\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v5/transition\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V5 Transition" - modelId: "pixverse/v5/transition" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v5/transition" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-23T10:56:18.163Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v6/extend.md b/model-api-reference/video-generation/pixverse/v6/extend.md deleted file mode 100644 index 261c4994..00000000 --- a/model-api-reference/video-generation/pixverse/v6/extend.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V6 Extend API Reference" -description: "PixVerse V6 Extend API reference for SandBase. Use model pixverse/v6/extend with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v6/extend" -apiReferenceJson: "{\"title\":\"PixVerse V6 Extend\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V6 Extend is PixVerse's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v6/extend.\",\"default\":\"pixverse/v6/extend\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Prompt describing how to extend the video\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input video to extend\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. v6 supports values from 1 to 15 seconds\",\"default\":\"5\",\"constraints\":\"Range: 1 to 15\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for generation\"},{\"name\":\"generate_audio_switch\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable audio generation (BGM, SFX, dialogue).\",\"default\":\"false\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the extended video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v6/extend\\\",\\n \\\"prompt\\\": \\\"A kid is talking into camera\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/pixverse/v6/extend/output_url_0.mp4\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v6/extend\\\",\\n \\\"prompt\\\": \\\"A kid is talking into camera\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/pixverse/v6/extend/output_url_0.mp4\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v6/extend\\\",\\n \\\"prompt\\\": \\\"A kid is talking into camera\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/pixverse/v6/extend/output_url_0.mp4\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v6/extend\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V6 Extend" - modelId: "pixverse/v6/extend" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v6/extend" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-29T11:11:49.66Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v6/text-to-video.md b/model-api-reference/video-generation/pixverse/v6/text-to-video.md deleted file mode 100644 index 917e282b..00000000 --- a/model-api-reference/video-generation/pixverse/v6/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V6 Text to Video API Reference" -description: "PixVerse V6 Text to Video API reference for SandBase. Use model pixverse/v6/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v6/text-to-video" -apiReferenceJson: "{\"title\":\"PixVerse V6 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V6 by PixVerse - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v6/text-to-video.\",\"default\":\"pixverse/v6/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt that describes the image or asset to generate.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. v6 supports values from 1 to 15 seconds\",\"default\":\"5\",\"constraints\":\"Range: 1 to 15\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"},{\"name\":\"generate_audio_switch\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable audio generation (BGM, SFX, dialogue)\",\"default\":\"false\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v6/text-to-video\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v6/text-to-video\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v6/text-to-video\\\",\\n \\\"prompt\\\": \\\"Epic low-cut camera capture of a girl clad in ultraviolet threads, Peter Max art style depiction, luminous diamond skin glistening under a vast moon's radiance, embodied in a superhuman flight among mystical ruins, symbolizing a deity's ritual ascent, hyper-detailed\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v6/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V6 Text to Video" - modelId: "pixverse/v6/text-to-video" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v6/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-29T09:43:09.635Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/pixverse/v6/transition.md b/model-api-reference/video-generation/pixverse/v6/transition.md deleted file mode 100644 index 0e5ed9f1..00000000 --- a/model-api-reference/video-generation/pixverse/v6/transition.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "PixVerse V6 Transition API Reference" -description: "PixVerse V6 Transition API reference for SandBase. Use model pixverse/v6/transition with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/pixverse/v6/transition" -apiReferenceJson: "{\"title\":\"PixVerse V6 Transition\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"V6 Transition is PixVerse's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to pixverse/v6/transition.\",\"default\":\"pixverse/v6/transition\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt for the transition\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to use as the last frame\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the generated video\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"The duration of the generated video in seconds. v6 supports values from 1 to 15 seconds\",\"default\":\"5\",\"constraints\":\"Range: 1 to 15\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of the model will output the same video every time.\"},{\"name\":\"first_image_url\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of the generated video\",\"constraints\":\"Allowed values: anime, 3d_animation, clay, comic, cyberpunk\"},{\"name\":\"generate_audio_switch\",\"type\":\"boolean\",\"required\":false,\"description\":\"Enable audio generation (BGM, SFX, dialogue)\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"pixverse/v6/transition\\\",\\n \\\"prompt\\\": \\\"Scene slowly transition into cat swimming under water\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"pixverse/v6/transition\\\",\\n \\\"prompt\\\": \\\"Scene slowly transition into cat swimming under water\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"pixverse/v6/transition\\\",\\n \\\"prompt\\\": \\\"Scene slowly transition into cat swimming under water\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"pixverse/v6/transition\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "PixVerse V6 Transition" - modelId: "pixverse/v6/transition" - vendor: "PixVerse" - vendorSlug: "pixverse" - modelSlug: "v6/transition" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-29T11:13:01.862Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/sonilo/1.1/video-to-music.md b/model-api-reference/video-generation/sonilo/1.1/video-to-music.md deleted file mode 100644 index c66c8f4a..00000000 --- a/model-api-reference/video-generation/sonilo/1.1/video-to-music.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "V1.1 API Reference" -description: "V1.1 API reference for SandBase. Use model sonilo/1.1/video-to-music with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/sonilo/1.1/video-to-music" -apiReferenceJson: "{\"title\":\"V1.1\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"1.1 Video To Music by Sonilo - advanced AI model for video-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sonilo/1.1/video-to-music.\",\"default\":\"sonilo/1.1/video-to-music\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Optional text prompt steering the musical style. If omitted, a prompt is generated automatically from the video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Public http(s) URL of the source video to score.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Optional. Length (seconds) of the video segment to score. When set, scores a segment of this length starting at Start Offset (or from the beginning if Start Offset is unset). Defaults (None) to the rest of the video: the whole video when Start Offset is unset, or from Start Offset to the end when it is set.\",\"constraints\":\"Range: 1 to 600\"},{\"name\":\"num_samples\",\"type\":\"integer\",\"required\":false,\"description\":\"How many distinct music tracks to generate for the video.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 3\"},{\"name\":\"start_offset\",\"type\":\"number\",\"required\":false,\"description\":\"Optional. Start scoring from this offset (seconds) into the video. Requires Start Offset + Duration <= Video Duration.\",\"constraints\":\"Range: 0 to 600\"},{\"name\":\"prompt_influence\",\"type\":\"number\",\"required\":false,\"description\":\"Turn it up to match the text prompt\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sonilo/1.1/video-to-music\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://v3b.fal.media/files/b/0a9ddd00/2QssaYyFxstvVlmIraSns_Sonilo_Demo_Original_1.mp4\\\",\\n \\\"duration\\\": 1\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"sonilo/1.1/video-to-music\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://v3b.fal.media/files/b/0a9ddd00/2QssaYyFxstvVlmIraSns_Sonilo_Demo_Original_1.mp4\\\",\\n \\\"duration\\\": 1\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"sonilo/1.1/video-to-music\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://v3b.fal.media/files/b/0a9ddd00/2QssaYyFxstvVlmIraSns_Sonilo_Demo_Original_1.mp4\\\",\\n \\\"duration\\\": 1\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"sonilo/1.1/video-to-music\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "V1.1" - modelId: "sonilo/1.1/video-to-music" - vendor: "Sonilo" - vendorSlug: "sonilo" - modelSlug: "1.1/video-to-music" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-03T18:40:46.335Z" - capabilities: ["video-to-audio"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/sonilo/1.1/video-to-sound-effects.md b/model-api-reference/video-generation/sonilo/1.1/video-to-sound-effects.md deleted file mode 100644 index 394d6c2a..00000000 --- a/model-api-reference/video-generation/sonilo/1.1/video-to-sound-effects.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "V1.1 Video to Sound Effects API Reference" -description: "V1.1 Video to Sound Effects API reference for SandBase. Use model sonilo/1.1/video-to-sound-effects with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/sonilo/1.1/video-to-sound-effects" -apiReferenceJson: "{\"title\":\"V1.1 Video to Sound Effects\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"1.1 Video To Sound Effects by Sonilo - advanced AI model for video-to-audio. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sonilo/1.1/video-to-sound-effects.\",\"default\":\"sonilo/1.1/video-to-sound-effects\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Optional. Describe the kind of sound you want; it steers the generated audio for every scene. Leave empty to caption the video automatically.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The video to add sound to (public URL, or upload a file). The generated audio matches the video's length.\"},{\"name\":\"audio_format\",\"type\":\"string\",\"required\":false,\"description\":\"Format of the returned audio file: aac (default), mp3, wav, or flac. (The video with sound is always AAC.)\",\"default\":\"aac\",\"constraints\":\"Allowed values: wav, mp3, aac, flac\"},{\"name\":\"segments\",\"type\":\"array\",\"required\":false,\"description\":\"Optional. Split the video into time ranges, each with its own sound description. Leave empty to split into scenes automatically.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-audio\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sonilo/1.1/video-to-sound-effects\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/falserverless/model_tests/video_models/mmaudio_input.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"sonilo/1.1/video-to-sound-effects\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/Falserverless/model_tests/video_models/mmaudio_input.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"sonilo/1.1/video-to-sound-effects\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/falserverless/model_tests/video_models/mmaudio_input.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"sonilo/1.1/video-to-sound-effects\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "V1.1 Video to Sound Effects" - modelId: "sonilo/1.1/video-to-sound-effects" - vendor: "Sonilo" - vendorSlug: "sonilo" - modelSlug: "1.1/video-to-sound-effects" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-07-21T09:44:30.217Z" - capabilities: ["video-to-audio"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/sonilo/1.1/video-to-video-music.md b/model-api-reference/video-generation/sonilo/1.1/video-to-video-music.md deleted file mode 100644 index 0866ab6c..00000000 --- a/model-api-reference/video-generation/sonilo/1.1/video-to-video-music.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "V1.1 Video to Video Music API Reference" -description: "V1.1 Video to Video Music API reference for SandBase. Use model sonilo/1.1/video-to-video-music with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/sonilo/1.1/video-to-video-music" -apiReferenceJson: "{\"title\":\"V1.1 Video to Video Music\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"1.1 Video To Video Music by Sonilo - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sonilo/1.1/video-to-video-music.\",\"default\":\"sonilo/1.1/video-to-video-music\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Optional text prompt steering the musical style. If omitted, a prompt is generated automatically from the video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Public http(s) URL of the source video to score.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Optional. Length (seconds) of the video segment to score. When set, scores a segment of this length starting at Start Offset (or from the beginning if Start Offset is unset). Defaults (None) to the rest of the video.\",\"constraints\":\"Range: 1 to 600\"},{\"name\":\"num_samples\",\"type\":\"integer\",\"required\":false,\"description\":\"How many distinct scored videos to generate.\",\"default\":\"1\",\"constraints\":\"Range: 1 to 3\"},{\"name\":\"start_offset\",\"type\":\"number\",\"required\":false,\"description\":\"Optional. Start scoring from this offset (seconds) into the video. Requires Start Offset + Duration <= Video Duration.\",\"constraints\":\"Range: 0 to 600\"},{\"name\":\"keep_speech_vocal\",\"type\":\"boolean\",\"required\":false,\"description\":\"Keep the original video's speech/vocals. When on, the source audio is separated (music source separation), and only the isolated vocals are blended over the generated music with automatic ducking (the music dips under speech). When off (default), the original soundtrack is dropped and the video carries only the generated music.\",\"default\":\"false\"},{\"name\":\"prompt_influence\",\"type\":\"number\",\"required\":false,\"description\":\"Turn it up to match the text prompt\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sonilo/1.1/video-to-video-music\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://v3b.fal.media/files/b/0a9ddd00/2QssaYyFxstvVlmIraSns_Sonilo_Demo_Original_1.mp4\\\",\\n \\\"duration\\\": 1\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"sonilo/1.1/video-to-video-music\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://v3b.fal.media/files/b/0a9ddd00/2QssaYyFxstvVlmIraSns_Sonilo_Demo_Original_1.mp4\\\",\\n \\\"duration\\\": 1\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"sonilo/1.1/video-to-video-music\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://v3b.fal.media/files/b/0a9ddd00/2QssaYyFxstvVlmIraSns_Sonilo_Demo_Original_1.mp4\\\",\\n \\\"duration\\\": 1\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"sonilo/1.1/video-to-video-music\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "V1.1 Video to Video Music" - modelId: "sonilo/1.1/video-to-video-music" - vendor: "Sonilo" - vendorSlug: "sonilo" - modelSlug: "1.1/video-to-video-music" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-07-21T09:44:44.451Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/sonilo/1.1/video-to-video-sound-effects.md b/model-api-reference/video-generation/sonilo/1.1/video-to-video-sound-effects.md deleted file mode 100644 index 5117fed3..00000000 --- a/model-api-reference/video-generation/sonilo/1.1/video-to-video-sound-effects.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "V1.1 Video to Video Sound Effects API Reference" -description: "V1.1 Video to Video Sound Effects API reference for SandBase. Use model sonilo/1.1/video-to-video-sound-effects with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/sonilo/1.1/video-to-video-sound-effects" -apiReferenceJson: "{\"title\":\"V1.1 Video to Video Sound Effects\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"1.1 Video To Video Sound Effects by Sonilo - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sonilo/1.1/video-to-video-sound-effects.\",\"default\":\"sonilo/1.1/video-to-video-sound-effects\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Optional. Describe the kind of sound you want; it steers the generated audio for every scene. Leave empty to caption the video automatically.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The video to add sound to (public URL, or upload a file). The generated audio matches the video's length.\"},{\"name\":\"audio_format\",\"type\":\"string\",\"required\":false,\"description\":\"Format of the returned audio file: aac (default), mp3, wav, or flac. (The video with sound is always AAC.)\",\"default\":\"aac\",\"constraints\":\"Allowed values: wav, mp3, aac, flac\"},{\"name\":\"segments\",\"type\":\"array\",\"required\":false,\"description\":\"Optional. Split the video into time ranges, each with its own sound description. Leave empty to split into scenes automatically.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sonilo/1.1/video-to-video-sound-effects\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/falserverless/model_tests/video_models/mmaudio_input.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"sonilo/1.1/video-to-video-sound-effects\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/Falserverless/model_tests/video_models/mmaudio_input.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"sonilo/1.1/video-to-video-sound-effects\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://storage.googleapis.com/falserverless/model_tests/video_models/mmaudio_input.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"sonilo/1.1/video-to-video-sound-effects\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "V1.1 Video to Video Sound Effects" - modelId: "sonilo/1.1/video-to-video-sound-effects" - vendor: "Sonilo" - vendorSlug: "sonilo" - modelSlug: "1.1/video-to-video-sound-effects" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-07-21T09:44:23.393Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/stability-ai/stable-avatar.md b/model-api-reference/video-generation/stability-ai/stable-avatar.md deleted file mode 100644 index d14d599a..00000000 --- a/model-api-reference/video-generation/stability-ai/stable-avatar.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Stable Avatar API Reference" -description: "Stable Avatar API reference for SandBase. Use model stability-ai/stable-avatar with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/stability-ai/stable-avatar" -apiReferenceJson: "{\"title\":\"Stable Avatar\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Stable Avatar by stability-ai - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to stability-ai/stable-avatar.\",\"default\":\"stability-ai/stable-avatar\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to use for the video generation.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to use as a reference for the video generation.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the audio to use as a reference for the video generation.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"stability-ai/stable-avatar\\\",\\n \\\"prompt\\\": \\\"A person is in a relaxed pose. As the video progresses, the character speaks while arm and body movements are minimal and consistent with a natural speaking posture. Hand movements remain minimal. Don't blink too often. Preserve background integrity matching the reference image's spatial configuration, lighting conditions, and color temperature.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/stability-ai/stable-avatar/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/stability-ai/stable-avatar/input_audio_1.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"stability-ai/stable-avatar\\\",\\n \\\"prompt\\\": \\\"A person is in a relaxed pose. As the video progresses, the character speaks while arm and body movements are minimal and consistent with a natural speaking posture. Hand movements remain minimal. Don't blink too often. Preserve background integrity matching the reference image's spatial configuration, lighting conditions, and color temperature.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/stability-ai/stable-avatar/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/stability-ai/stable-avatar/input_audio_1.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"stability-ai/stable-avatar\\\",\\n \\\"prompt\\\": \\\"A person is in a relaxed pose. As the video progresses, the character speaks while arm and body movements are minimal and consistent with a natural speaking posture. Hand movements remain minimal. Don't blink too often. Preserve background integrity matching the reference image's spatial configuration, lighting conditions, and color temperature.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/stability-ai/stable-avatar/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/stability-ai/stable-avatar/input_audio_1.mp3\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"stability-ai/stable-avatar\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Stable Avatar" - modelId: "stability-ai/stable-avatar" - vendor: "stability-ai" - vendorSlug: "stability-ai" - modelSlug: "stable-avatar" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-08-14T03:19:21.185Z" - capabilities: ["audio-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/stability-ai/stable-video.md b/model-api-reference/video-generation/stability-ai/stable-video.md deleted file mode 100644 index 8913b189..00000000 --- a/model-api-reference/video-generation/stability-ai/stable-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "High Quality Stable Video Diffusion API Reference" -description: "High Quality Stable Video Diffusion API reference for SandBase. Use model stability-ai/stable-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/stability-ai/stable-video" -apiReferenceJson: "{\"title\":\"High Quality Stable Video Diffusion\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Stable Video by Stability AI - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to stability-ai/stable-video.\",\"default\":\"stability-ai/stable-video\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the image to use as a starting point for the generation.\"},{\"name\":\"cond_aug\",\"type\":\"number\",\"required\":false,\"description\":\"The conditoning augmentation determines the amount of noise that will be added to the conditioning frame. The higher the number, the more noise there will be, and the less the video will look like the initial image. Increase it for more motion.\",\"default\":\"0.02\",\"constraints\":\"Range: 0 to 10\"},{\"name\":\"motion_bucket_id\",\"type\":\"integer\",\"required\":false,\"description\":\"The motion bucket id determines the motion of the generated video. The higher the number, the more motion there will be.\",\"default\":\"127\",\"constraints\":\"Range: 1 to 255\"},{\"name\":\"fps\",\"type\":\"integer\",\"required\":false,\"description\":\"The frames per second of the generated video.\",\"default\":\"25\",\"constraints\":\"Range: 10 to 100\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The same seed and the same prompt given to the same version of Stable Diffusion will output the same image every time.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"stability-ai/stable-video\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/stability/stable-video/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"stability-ai/stable-video\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/stability/stable-video/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"stability-ai/stable-video\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/stability/stable-video/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"stability-ai/stable-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "High Quality Stable Video Diffusion" - modelId: "stability-ai/stable-video" - vendor: "Stability AI" - vendorSlug: "stability-ai" - modelSlug: "stable-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-09-16T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/sync/lipsync/3.0/image-to-video.md b/model-api-reference/video-generation/sync/lipsync/3.0/image-to-video.md new file mode 100644 index 00000000..79dce5a1 --- /dev/null +++ b/model-api-reference/video-generation/sync/lipsync/3.0/image-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Sync 3 Avatar Image to Video API Reference" +description: "Sync 3 Avatar Image to Video API reference for SandBase. Use model sync/lipsync/3.0/image-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/sync/lipsync/3.0/image-to-video" +apiReferenceJson: "{\"title\":\"Sync 3 Avatar Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sync 3 animates the face in a still image so it speaks the provided audio; the output matches the audio length.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sync/lipsync/3.0/image-to-video.\",\"default\":\"sync/lipsync/3.0/image-to-video\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image URL (face / character).\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":true,\"description\":\"Input audio URL.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sync/lipsync/3.0/image-to-video\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v3/input_audio_1.wav\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/echo-mimic-input-image.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"sync/lipsync/3.0/image-to-video\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v3/input_audio_1.wav\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/Falserverless/example_inputs/echo-mimic-input-image.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"sync/lipsync/3.0/image-to-video\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v3/input_audio_1.wav\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/echo-mimic-input-image.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"sync/lipsync/3.0/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Sync 3 Avatar Image to Video" + modelId: "sync/lipsync/3.0/image-to-video" + vendor: "Sync Labs" + vendorSlug: "sync" + modelSlug: "lipsync/3.0/image-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-06-22T18:42:24.951Z" + capabilities: ["image-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/sync/lipsync/3.0/video-to-video.md b/model-api-reference/video-generation/sync/lipsync/3.0/video-to-video.md new file mode 100644 index 00000000..2b3a76ee --- /dev/null +++ b/model-api-reference/video-generation/sync/lipsync/3.0/video-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Sync 3 Lipsync API Reference" +description: "Sync 3 Lipsync API reference for SandBase. Use model sync/lipsync/3.0/video-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/sync/lipsync/3.0/video-to-video" +apiReferenceJson: "{\"title\":\"Sync 3 Lipsync\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sync 3 by sync. re-animates the speaker's lips in an existing video to match new audio, with studio-grade identity preservation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sync/lipsync/3.0/video-to-video.\",\"default\":\"sync/lipsync/3.0/video-to-video\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":true,\"description\":\"Input audio URL.\"},{\"name\":\"sync_mode\",\"type\":\"string\",\"required\":false,\"description\":\"How to handle audio/video length mismatch.\",\"default\":\"cut_off\",\"constraints\":\"Allowed values: cut_off, loop, bounce, silence, remap\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Input video URL.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sync/lipsync/3.0/video-to-video\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v3/input_audio_1.wav\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v3/output_url_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"sync/lipsync/3.0/video-to-video\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v3/input_audio_1.wav\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v3/output_url_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"sync/lipsync/3.0/video-to-video\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v3/input_audio_1.wav\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v3/output_url_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"sync/lipsync/3.0/video-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Sync 3 Lipsync" + modelId: "sync/lipsync/3.0/video-to-video" + vendor: "Sync Labs" + vendorSlug: "sync" + modelSlug: "lipsync/3.0/video-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-04-06T11:59:40.659Z" + capabilities: ["video-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/sync/lipsync/react-1.md b/model-api-reference/video-generation/sync/lipsync/react-1.md deleted file mode 100644 index 82c95e38..00000000 --- a/model-api-reference/video-generation/sync/lipsync/react-1.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sync React-1 API Reference" -description: "Sync React-1 API reference for SandBase. Use model sync/lipsync/react-1 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/sync/lipsync/react-1" -apiReferenceJson: "{\"title\":\"Sync React-1\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Lipsync React 1 is Sync Labs's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sync/lipsync/react-1.\",\"default\":\"sync/lipsync/react-1\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL to the input video. Must be **15 seconds or shorter**.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL to the input audio. Must be **15 seconds or shorter**.\"},{\"name\":\"model_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Controls the edit region and movement scope for the model. Available options: - `lips`: Only lipsync using react-1 (minimal facial changes). - `face`: Lipsync + facial expressions without head movements. - `head`: Lipsync + facial expressions + natural talking head movements.\",\"default\":\"face\",\"constraints\":\"Allowed values: lips, face, head\"},{\"name\":\"lipsync_mode\",\"type\":\"string\",\"required\":false,\"description\":\"Lipsync mode when audio and video durations are out of sync.\",\"default\":\"bounce\",\"constraints\":\"Allowed values: cut_off, loop, bounce, silence, remap\"},{\"name\":\"temperature\",\"type\":\"number\",\"required\":false,\"description\":\"Controls the expresiveness of the lipsync.\",\"default\":\"0.5\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"emotion\",\"type\":\"string\",\"required\":false,\"description\":\"Emotion prompt for the generation. Currently supports single-word emotions only.\",\"constraints\":\"Allowed values: happy, angry, sad, neutral, disgusted, surprised\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sync/lipsync/react-1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/react-1/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/react-1/input_audio_1.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"sync/lipsync/react-1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/react-1/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/react-1/input_audio_1.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"sync/lipsync/react-1\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/react-1/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/react-1/input_audio_1.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"sync/lipsync/react-1\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Sync React-1" - modelId: "sync/lipsync/react-1" - vendor: "Sync Labs" - vendorSlug: "sync" - modelSlug: "lipsync/react-1" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-10T14:23:05.777Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/sync/lipsync/v2.md b/model-api-reference/video-generation/sync/lipsync/v2.md deleted file mode 100644 index fb6e707e..00000000 --- a/model-api-reference/video-generation/sync/lipsync/v2.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sync Lipsync 2.0 API Reference" -description: "Sync Lipsync 2.0 API reference for SandBase. Use model sync/lipsync/v2 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/sync/lipsync/v2" -apiReferenceJson: "{\"title\":\"Sync Lipsync 2.0\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Lipsync V2 by Sync Labs - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sync/lipsync/v2.\",\"default\":\"sync/lipsync/v2\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input video\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input audio\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sync/lipsync/v2\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v2/output_url_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v2/input_audio_1.wav\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"sync/lipsync/v2\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v2/output_url_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v2/input_audio_1.wav\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"sync/lipsync/v2\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v2/output_url_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v2/input_audio_1.wav\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"sync/lipsync/v2\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Sync Lipsync 2.0" - modelId: "sync/lipsync/v2" - vendor: "Sync Labs" - vendorSlug: "sync" - modelSlug: "lipsync/v2" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-04-01T18:57:06.699Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/sync/lipsync/v2/pro.md b/model-api-reference/video-generation/sync/lipsync/v2/pro.md deleted file mode 100644 index 4276bb1b..00000000 --- a/model-api-reference/video-generation/sync/lipsync/v2/pro.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Sync Lipsync API Reference" -description: "Sync Lipsync API reference for SandBase. Use model sync/lipsync/v2/pro with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/sync/lipsync/v2/pro" -apiReferenceJson: "{\"title\":\"Sync Lipsync\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Lipsync V2 Pro by Sync Labs - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sync/lipsync/v2/pro.\",\"default\":\"sync/lipsync/v2/pro\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input video\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input audio\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sync/lipsync/v2/pro\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v2/pro/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v2/pro/input_audio_1.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"sync/lipsync/v2/pro\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v2/pro/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v2/pro/input_audio_1.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"sync/lipsync/v2/pro\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v2/pro/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v2/pro/input_audio_1.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"sync/lipsync/v2/pro\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Sync Lipsync" - modelId: "sync/lipsync/v2/pro" - vendor: "Sync Labs" - vendorSlug: "sync" - modelSlug: "lipsync/v2/pro" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-02T16:39:37.207Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/sync/lipsync/v3.md b/model-api-reference/video-generation/sync/lipsync/v3.md deleted file mode 100644 index 38ced1f0..00000000 --- a/model-api-reference/video-generation/sync/lipsync/v3.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "sync-3 Lipsync API Reference" -description: "sync-3 Lipsync API reference for SandBase. Use model sync/lipsync/v3 with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/sync/lipsync/v3" -apiReferenceJson: "{\"title\":\"sync-3 Lipsync\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Lipsync V3 by Sync Labs - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sync/lipsync/v3.\",\"default\":\"sync/lipsync/v3\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input video\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input audio\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sync/lipsync/v3\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v3/output_url_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v3/input_audio_1.wav\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"sync/lipsync/v3\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v3/output_url_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v3/input_audio_1.wav\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"sync/lipsync/v3\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v3/output_url_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/sync/lipsync/v3/input_audio_1.wav\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"sync/lipsync/v3\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "sync-3 Lipsync" - modelId: "sync/lipsync/v3" - vendor: "Sync Labs" - vendorSlug: "sync" - modelSlug: "lipsync/v3" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-04-06T11:59:40.659Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/sync/sync-lipsync.md b/model-api-reference/video-generation/sync/sync-lipsync.md deleted file mode 100644 index 95a66944..00000000 --- a/model-api-reference/video-generation/sync/sync-lipsync.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "sync.so -- lipsync 1.9.0-beta API Reference" -description: "sync.so -- lipsync 1.9.0-beta API reference for SandBase. Use model sync/sync-lipsync with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/sync/sync-lipsync" -apiReferenceJson: "{\"title\":\"sync.so -- lipsync 1.9.0-beta\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sync Lipsync by Sync Labs - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sync/sync-lipsync.\",\"default\":\"sync/sync-lipsync\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input video\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input audio\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sync/sync-lipsync\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/sync/sync-lipsync/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/sync/sync-lipsync/input_audio_1.wav\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"sync/sync-lipsync\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/sync/sync-lipsync/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/sync/sync-lipsync/input_audio_1.wav\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"sync/sync-lipsync\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/sync/sync-lipsync/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/sync/sync-lipsync/input_audio_1.wav\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"sync/sync-lipsync\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "sync.so -- lipsync 1.9.0-beta" - modelId: "sync/sync-lipsync" - vendor: "Sync Labs" - vendorSlug: "sync" - modelSlug: "sync-lipsync" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-01-13T00:00:00Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/sync/sync-lipsync/3.0/image-to-video.md b/model-api-reference/video-generation/sync/sync-lipsync/3.0/image-to-video.md deleted file mode 100644 index 041914ed..00000000 --- a/model-api-reference/video-generation/sync/sync-lipsync/3.0/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "sync-3 Avatar Image to Video API Reference" -description: "sync-3 Avatar Image to Video API reference for SandBase. Use model sync/sync-lipsync/3.0/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/sync/sync-lipsync/3.0/image-to-video" -apiReferenceJson: "{\"title\":\"sync-3 Avatar Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Sync Lipsync 3.0 is Sync Labs's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to sync/sync-lipsync/3.0/image-to-video.\",\"default\":\"sync/sync-lipsync/3.0/image-to-video\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image. sync-3 animates the face in the image so it lip-syncs to the provided audio (image-to-video). Supported image formats: JPEG, PNG and WebP.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input audio. The output video matches its duration.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"sync/sync-lipsync/3.0/image-to-video\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/echo-mimic-input-image.png\\\",\\n \\\"audio\\\": \\\"https://fal.media/files/lion/vyFWygmZsIZlUO4s0nr2n.wav\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"sync/sync-lipsync/3.0/image-to-video\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/Falserverless/example_inputs/echo-mimic-input-image.png\\\",\\n \\\"audio\\\": \\\"https://fal.media/files/lion/vyFWygmZsIZlUO4s0nr2n.wav\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"sync/sync-lipsync/3.0/image-to-video\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/example_inputs/echo-mimic-input-image.png\\\",\\n \\\"audio\\\": \\\"https://fal.media/files/lion/vyFWygmZsIZlUO4s0nr2n.wav\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"sync/sync-lipsync/3.0/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "sync-3 Avatar Image to Video" - modelId: "sync/sync-lipsync/3.0/image-to-video" - vendor: "Sync Labs" - vendorSlug: "sync" - modelSlug: "sync-lipsync/3.0/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-06-22T18:42:24.951Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/tencent/hunyuan-avatar.md b/model-api-reference/video-generation/tencent/hunyuan-avatar.md deleted file mode 100644 index 948c2550..00000000 --- a/model-api-reference/video-generation/tencent/hunyuan-avatar.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan Avatar API Reference" -description: "Hunyuan Avatar API reference for SandBase. Use model tencent/hunyuan-avatar with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/tencent/hunyuan-avatar" -apiReferenceJson: "{\"title\":\"Hunyuan Avatar\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan Avatar by Tencent - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-avatar.\",\"default\":\"tencent/hunyuan-avatar\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the reference image.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the audio file.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-avatar\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-avatar/input_image_0.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-avatar/input_audio_2.WAV\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-avatar\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-avatar/input_image_0.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-avatar/input_audio_2.WAV\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-avatar\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-avatar/input_image_0.jpg\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-avatar/input_audio_2.WAV\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-avatar\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan Avatar" - modelId: "tencent/hunyuan-avatar" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-avatar" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-29T18:26:58.1Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/tencent/hunyuan-custom.md b/model-api-reference/video-generation/tencent/hunyuan-custom.md deleted file mode 100644 index f77494cd..00000000 --- a/model-api-reference/video-generation/tencent/hunyuan-custom.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan Custom API Reference" -description: "Hunyuan Custom API reference for SandBase. Use model tencent/hunyuan-custom with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/tencent/hunyuan-custom" -apiReferenceJson: "{\"title\":\"Hunyuan Custom\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan Custom by Tencent - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-custom.\",\"default\":\"tencent/hunyuan-custom\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation (max 500 characters).\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image input.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate. 720p generations cost 1.5x more than 480p generations.\",\"default\":\"512p\",\"constraints\":\"Allowed values: 512p, 720p\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-custom\\\",\\n \\\"prompt\\\": \\\"Realistic, High-quality. A woman is playing a violin.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-custom/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-custom\\\",\\n \\\"prompt\\\": \\\"Realistic, High-quality. A woman is playing a violin.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-custom/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-custom\\\",\\n \\\"prompt\\\": \\\"Realistic, High-quality. A woman is playing a violin.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-custom/input_image_0.png\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-custom\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan Custom" - modelId: "tencent/hunyuan-custom" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-custom" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-14T10:59:20.323Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/tencent/hunyuan-portrait.md b/model-api-reference/video-generation/tencent/hunyuan-portrait.md deleted file mode 100644 index 479dae63..00000000 --- a/model-api-reference/video-generation/tencent/hunyuan-portrait.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan Portrait API Reference" -description: "Hunyuan Portrait API reference for SandBase. Use model tencent/hunyuan-portrait with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/tencent/hunyuan-portrait" -apiReferenceJson: "{\"title\":\"Hunyuan Portrait\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan Portrait by Tencent - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-portrait.\",\"default\":\"tencent/hunyuan-portrait\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"The URL of the source image.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the driving video.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-portrait\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-portrait/input_image_0.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-portrait/input_video_1.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-portrait\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-portrait/input_image_0.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-portrait/input_video_1.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-portrait\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-portrait/input_image_0.png\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-portrait/input_video_1.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-portrait\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan Portrait" - modelId: "tencent/hunyuan-portrait" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-portrait" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-27T13:49:00.211Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/tencent/hunyuan-video-lora.md b/model-api-reference/video-generation/tencent/hunyuan-video-lora.md deleted file mode 100644 index d90d99e6..00000000 --- a/model-api-reference/video-generation/tencent/hunyuan-video-lora.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan Video LoRA Inference API Reference" -description: "Hunyuan Video LoRA Inference API reference for SandBase. Use model tencent/hunyuan-video-lora with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/tencent/hunyuan-video-lora" -apiReferenceJson: "{\"title\":\"Hunyuan Video LoRA Inference\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan Video Lora by Tencent - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-video-lora.\",\"default\":\"tencent/hunyuan-video-lora\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 580p, 720p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"The seed to use for generating the video.\"},{\"name\":\"num_frames\",\"type\":\"string\",\"required\":false,\"description\":\"The number of frames to generate.\",\"default\":\"129\",\"constraints\":\"Allowed values: 129, 85\"},{\"name\":\"loras\",\"type\":\"array\",\"required\":false,\"description\":\"The LoRAs to use for the image generation. You can use any number of LoRAs and they will be merged together to generate the final image.\",\"default\":\"\"},{\"name\":\"pro_mode\",\"type\":\"boolean\",\"required\":false,\"description\":\"By default, generations are done with 35 steps. Pro mode does 55 steps which results in higher quality videos but will take more time and cost 2x more billing units.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-video-lora\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-video-lora\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-video-lora\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-video-lora\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan Video LoRA Inference" - modelId: "tencent/hunyuan-video-lora" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-video-lora" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-01-16T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/tencent/hunyuan-video/1.5/image-to-video.md b/model-api-reference/video-generation/tencent/hunyuan-video/1.5/image-to-video.md deleted file mode 100644 index 9045e568..00000000 --- a/model-api-reference/video-generation/tencent/hunyuan-video/1.5/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan Video 1.5 Image to Video API Reference" -description: "Hunyuan Video 1.5 Image to Video API reference for SandBase. Use model tencent/hunyuan-video/1.5/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/tencent/hunyuan-video/1.5/image-to-video" -apiReferenceJson: "{\"title\":\"Hunyuan Video 1.5 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan Video 1.5 by Tencent - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-video/1.5/image-to-video.\",\"default\":\"tencent/hunyuan-video/1.5/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the reference image for image-to-video generation.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video.\",\"default\":\"480p\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-video/1.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stark starting line divides two powerful cars, engines revving for the challenge ahead. They surge forward in the heat of competition, a blur of speed and chrome. The finish line looms as they race for victory.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-video/1.5/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-video/1.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stark starting line divides two powerful cars, engines revving for the challenge ahead. They surge forward in the heat of competition, a blur of speed and chrome. The finish line looms as they race for victory.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-video/1.5/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-video/1.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stark starting line divides two powerful cars, engines revving for the challenge ahead. They surge forward in the heat of competition, a blur of speed and chrome. The finish line looms as they race for victory.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-video/1.5/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-video/1.5/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan Video 1.5 Image to Video" - modelId: "tencent/hunyuan-video/1.5/image-to-video" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-video/1.5/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-17T13:34:51.999Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/tencent/hunyuan-video/1.5/text-to-video.md b/model-api-reference/video-generation/tencent/hunyuan-video/1.5/text-to-video.md index 97a86e6d..c995be43 100644 --- a/model-api-reference/video-generation/tencent/hunyuan-video/1.5/text-to-video.md +++ b/model-api-reference/video-generation/tencent/hunyuan-video/1.5/text-to-video.md @@ -4,7 +4,7 @@ description: "Hunyuan Video 1.5 Text to Video API reference for SandBase. Use mo aside: false outline: false apiReferenceKey: "video/tencent/hunyuan-video/1.5/text-to-video" -apiReferenceJson: "{\"title\":\"Hunyuan Video 1.5 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan Video 1.5 is Tencent's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-video/1.5/text-to-video.\",\"default\":\"tencent/hunyuan-video/1.5/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video.\",\"default\":\"480p\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-video/1.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-video/1.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-video/1.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-video/1.5/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Hunyuan Video 1.5 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan Video 1.5 is Tencent's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-video/1.5/text-to-video.\",\"default\":\"tencent/hunyuan-video/1.5/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video.\",\"default\":\"480p\",\"constraints\":\"Allowed values: 480p\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducible generation.\",\"constraints\":\"Range: 0 to 2147483647\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-video/1.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-video/1.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-video/1.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-video/1.5/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Hunyuan Video 1.5 Text to Video" modelId: "tencent/hunyuan-video/1.5/text-to-video" diff --git a/model-api-reference/video-generation/tencent/hunyuan-video/foley.md b/model-api-reference/video-generation/tencent/hunyuan-video/foley.md deleted file mode 100644 index 8d6ac099..00000000 --- a/model-api-reference/video-generation/tencent/hunyuan-video/foley.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan Video Foley API Reference" -description: "Hunyuan Video Foley API reference for SandBase. Use model tencent/hunyuan-video/foley with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/tencent/hunyuan-video/foley" -apiReferenceJson: "{\"title\":\"Hunyuan Video Foley\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan Video Foley is Tencent's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-video/foley.\",\"default\":\"tencent/hunyuan-video/foley\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"The URL of the video to generate audio for.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-video/foley\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-video/foley/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-video/foley\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-video/foley/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-video/foley\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-video/foley/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-video/foley\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan Video Foley" - modelId: "tencent/hunyuan-video/foley" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-video/foley" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-08T16:50:54.317Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/tencent/hunyuan-video/image-to-video.md b/model-api-reference/video-generation/tencent/hunyuan-video/image-to-video.md deleted file mode 100644 index a4e65498..00000000 --- a/model-api-reference/video-generation/tencent/hunyuan-video/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan Video Image to Video API Reference" -description: "Hunyuan Video Image to Video API reference for SandBase. Use model tencent/hunyuan-video/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/tencent/hunyuan-video/image-to-video" -apiReferenceJson: "{\"title\":\"Hunyuan Video Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan Video by Tencent - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-video/image-to-video.\",\"default\":\"tencent/hunyuan-video/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image input.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-video/image-to-video\\\",\\n \\\"prompt\\\": \\\"Two muscular cats boxing in a boxing ring.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-video/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-video/image-to-video\\\",\\n \\\"prompt\\\": \\\"Two muscular cats boxing in a boxing ring.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-video/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-video/image-to-video\\\",\\n \\\"prompt\\\": \\\"Two muscular cats boxing in a boxing ring.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-video/image-to-video/input_image_0.jpg\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-video/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan Video Image to Video" - modelId: "tencent/hunyuan-video/image-to-video" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-video/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-06T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/tencent/hunyuan-video/text-to-video.md b/model-api-reference/video-generation/tencent/hunyuan-video/text-to-video.md deleted file mode 100644 index 0e8a1cc6..00000000 --- a/model-api-reference/video-generation/tencent/hunyuan-video/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan Video Text to Video API Reference" -description: "Hunyuan Video Text to Video API reference for SandBase. Use model tencent/hunyuan-video/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/tencent/hunyuan-video/text-to-video" -apiReferenceJson: "{\"title\":\"Hunyuan Video Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan Video is Tencent's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-video/text-to-video.\",\"default\":\"tencent/hunyuan-video/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 580p, 720p\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-video/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-video/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-video/text-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-video/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan Video Text to Video" - modelId: "tencent/hunyuan-video/text-to-video" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-video/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2024-10-22T00:00:00Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/tencent/hunyuan-video/video-to-video.md b/model-api-reference/video-generation/tencent/hunyuan-video/video-to-video.md deleted file mode 100644 index ac33ced6..00000000 --- a/model-api-reference/video-generation/tencent/hunyuan-video/video-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Hunyuan Video to Video API Reference" -description: "Hunyuan Video to Video API reference for SandBase. Use model tencent/hunyuan-video/video-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/tencent/hunyuan-video/video-to-video" -apiReferenceJson: "{\"title\":\"Hunyuan Video to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Hunyuan Video Video To Video by Tencent - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to tencent/hunyuan-video/video-to-video.\",\"default\":\"tencent/hunyuan-video/video-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"The prompt to generate the video from.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the video input.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"The resolution of the video to generate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 580p, 720p\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"tencent/hunyuan-video/video-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a dark blue leather jacket, a long pink dress, and bright yellow boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-video/video-to-video/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"tencent/hunyuan-video/video-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a dark blue leather jacket, a long pink dress, and bright yellow boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-video/video-to-video/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"tencent/hunyuan-video/video-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a dark blue leather jacket, a long pink dress, and bright yellow boots, and carries a black purse.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/tencent/hunyuan-video/video-to-video/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"tencent/hunyuan-video/video-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Hunyuan Video to Video" - modelId: "tencent/hunyuan-video/video-to-video" - vendor: "Tencent" - vendorSlug: "tencent" - modelSlug: "hunyuan-video/video-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-01-30T00:00:00Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/topaz/upscale/video.md b/model-api-reference/video-generation/topaz/upscale/video.md index bdc331b9..cd73dd56 100644 --- a/model-api-reference/video-generation/topaz/upscale/video.md +++ b/model-api-reference/video-generation/topaz/upscale/video.md @@ -4,7 +4,7 @@ description: "Topaz Video Upscale API reference for SandBase. Use model topaz/up aside: false outline: false apiReferenceKey: "video/topaz/upscale/video" -apiReferenceJson: "{\"title\":\"Topaz Video Upscale\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Upscale Video is Topaz Labs's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to topaz/upscale/video.\",\"default\":\"topaz/upscale/video\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the video to upscale\"},{\"name\":\"noise\",\"type\":\"number\",\"required\":false,\"description\":\"Noise reduction level (0.0-1.0). Default varies by model.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"upscale_factor\",\"type\":\"number\",\"required\":false,\"description\":\"Factor to upscale the video by (e.g. 2.0 doubles width and height)\",\"default\":\"2\",\"constraints\":\"Range: 1 to 4\"},{\"name\":\"halo\",\"type\":\"number\",\"required\":false,\"description\":\"Halo reduction level (0.0-1.0). Default varies by model.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"compression\",\"type\":\"number\",\"required\":false,\"description\":\"Compression artifact removal level (0.0-1.0). Default varies by model.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"grain\",\"type\":\"number\",\"required\":false,\"description\":\"Film grain amount (0.0-0.1). Default varies by model.\",\"constraints\":\"Range: 0 to 0.1\"},{\"name\":\"recover_detail\",\"type\":\"number\",\"required\":false,\"description\":\"Recover original detail level (0.0-1.0). Higher values preserve more original detail.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"target_fps\",\"type\":\"integer\",\"required\":false,\"description\":\"Target FPS for frame interpolation. If set, frame interpolation will be enabled.\",\"constraints\":\"Range: 16 to 60\"},{\"name\":\"H264_output\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use H264 codec for output video. Default is H265.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"topaz/upscale/video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/topaz/upscale/video/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"topaz/upscale/video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/topaz/upscale/video/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"topaz/upscale/video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/topaz/upscale/video/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"topaz/upscale/video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Topaz Video Upscale\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Upscale Video is Topaz Labs's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to topaz/upscale/video.\",\"default\":\"topaz/upscale/video\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the video to upscale\"},{\"name\":\"noise\",\"type\":\"number\",\"required\":false,\"description\":\"Noise reduction level (0.0-1.0). Default varies by model.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"upscale_factor\",\"type\":\"number\",\"required\":false,\"description\":\"Factor to upscale the video by (e.g. 2.0 doubles width and height)\",\"default\":\"2\",\"constraints\":\"Range: 1 to 4\"},{\"name\":\"halo\",\"type\":\"number\",\"required\":false,\"description\":\"Halo reduction level (0.0-1.0). Default varies by model.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"compression\",\"type\":\"number\",\"required\":false,\"description\":\"Compression artifact removal level (0.0-1.0). Default varies by model.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"grain\",\"type\":\"number\",\"required\":false,\"description\":\"Film grain amount (0.0-0.1). Default varies by model.\",\"constraints\":\"Range: 0 to 0.1\"},{\"name\":\"recover_detail\",\"type\":\"number\",\"required\":false,\"description\":\"Recover original detail level (0.0-1.0). Higher values preserve more original detail.\",\"constraints\":\"Range: 0 to 1\"},{\"name\":\"target_fps\",\"type\":\"integer\",\"required\":false,\"description\":\"Target FPS for frame interpolation. If set, frame interpolation will be enabled.\",\"constraints\":\"Range: 16 to 60\"},{\"name\":\"H264_output\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use H264 codec for output video. Default is H265.\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"topaz/upscale/video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/topaz/upscale/video/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"topaz/upscale/video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/topaz/upscale/video/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"topaz/upscale/video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/topaz/upscale/video/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"topaz/upscale/video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Topaz Video Upscale" modelId: "topaz/upscale/video" diff --git a/model-api-reference/video-generation/veed/avatars/audio-to-video.md b/model-api-reference/video-generation/veed/avatars/audio-to-video.md deleted file mode 100644 index 7ea38ca2..00000000 --- a/model-api-reference/video-generation/veed/avatars/audio-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "VEED Avatars Audio to Video API Reference" -description: "VEED Avatars Audio to Video API reference for SandBase. Use model veed/avatars/audio-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/veed/avatars/audio-to-video" -apiReferenceJson: "{\"title\":\"VEED Avatars Audio to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Avatars Audio To Video by VEED - advanced AI model for audio-to-video. Delivers high-quality results with fast inference, suitable for both creative and production workflows.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to veed/avatars/audio-to-video.\",\"default\":\"veed/avatars/audio-to-video\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\"},{\"name\":\"avatar_id\",\"type\":\"string\",\"required\":false,\"description\":\"The avatar to use for the video\",\"constraints\":\"Allowed values: emily_vertical_primary, emily_vertical_secondary, marcus_vertical_primary, marcus_vertical_secondary, mira_vertical_primary, mira_vertical_secondary, jasmine_vertical_primary, jasmine_vertical_secondary, jasmine_vertical_walking, aisha_vertical_walking, elena_vertical_primary, elena_vertical_secondary, any_male_vertical_primary, any_female_vertical_primary, any_male_vertical_secondary, any_female_vertical_secondary, any_female_vertical_walking, emily_primary, emily_side, marcus_primary, marcus_side, aisha_walking, elena_primary, elena_side, any_male_primary, any_female_primary, any_male_side, any_female_side\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"audio-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"veed/avatars/audio-to-video\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/veed/avatars/audio-to-video/input_audio_0.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"veed/avatars/audio-to-video\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/veed/avatars/audio-to-video/input_audio_0.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"veed/avatars/audio-to-video\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/veed/avatars/audio-to-video/input_audio_0.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"veed/avatars/audio-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "VEED Avatars Audio to Video" - modelId: "veed/avatars/audio-to-video" - vendor: "VEED" - vendorSlug: "veed" - modelSlug: "avatars/audio-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-28T14:17:50.831Z" - capabilities: ["audio-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/veed/avatars/text-to-video.md b/model-api-reference/video-generation/veed/avatars/text-to-video.md deleted file mode 100644 index 1405bf61..00000000 --- a/model-api-reference/video-generation/veed/avatars/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "VEED Avatars Text to Video API Reference" -description: "VEED Avatars Text to Video API reference for SandBase. Use model veed/avatars/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/veed/avatars/text-to-video" -apiReferenceJson: "{\"title\":\"VEED Avatars Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Avatars is VEED's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to veed/avatars/text-to-video.\",\"default\":\"veed/avatars/text-to-video\"},{\"name\":\"text\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\"},{\"name\":\"avatar_id\",\"type\":\"string\",\"required\":false,\"description\":\"The avatar to use for the video\",\"constraints\":\"Allowed values: emily_vertical_primary, emily_vertical_secondary, marcus_vertical_primary, marcus_vertical_secondary, mira_vertical_primary, mira_vertical_secondary, jasmine_vertical_primary, jasmine_vertical_secondary, jasmine_vertical_walking, aisha_vertical_walking, elena_vertical_primary, elena_vertical_secondary, any_male_vertical_primary, any_female_vertical_primary, any_male_vertical_secondary, any_female_vertical_secondary, any_female_vertical_walking, emily_primary, emily_side, marcus_primary, marcus_side, aisha_walking, elena_primary, elena_side, any_male_primary, any_female_primary, any_male_side, any_female_side\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"veed/avatars/text-to-video\\\",\\n \\\"text\\\": \\\"\\\\nEver wondered how to get that flawless glow? \\\\nIntroducing our new skincare line, designed for real life. \\\\nStep one: Cleanse with our gentle, nourishing formula. \\\\nStep two: Apply our hydrating serum for that dewy look. \\\\nStep three: Lock it in with our lightweight moisturizer. \\\\nFeel the difference with every application. \\\\nSee the glow? That's the magic of our skincare. \\\\nUse code 'GLOW20' for an exclusive discount. \\\\nJoin the skincare revolution today!\\\\n\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"veed/avatars/text-to-video\\\",\\n \\\"text\\\": \\\"\\\\nEver wondered how to get that flawless glow? \\\\nIntroducing our new skincare line, designed for real life. \\\\nStep one: Cleanse with our gentle, nourishing formula. \\\\nStep two: Apply our hydrating serum for that dewy look. \\\\nStep three: Lock it in with our lightweight moisturizer. \\\\nFeel the difference with every application. \\\\nSee the glow? That's the magic of our skincare. \\\\nUse code 'GLOW20' for an exclusive discount. \\\\nJoin the skincare revolution today!\\\\n\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"veed/avatars/text-to-video\\\",\\n \\\"text\\\": \\\"\\\\nEver wondered how to get that flawless glow? \\\\nIntroducing our new skincare line, designed for real life. \\\\nStep one: Cleanse with our gentle, nourishing formula. \\\\nStep two: Apply our hydrating serum for that dewy look. \\\\nStep three: Lock it in with our lightweight moisturizer. \\\\nFeel the difference with every application. \\\\nSee the glow? That's the magic of our skincare. \\\\nUse code 'GLOW20' for an exclusive discount. \\\\nJoin the skincare revolution today!\\\\n\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"veed/avatars/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "VEED Avatars Text to Video" - modelId: "veed/avatars/text-to-video" - vendor: "VEED" - vendorSlug: "veed" - modelSlug: "avatars/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-28T14:20:10.759Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/veed/fabric-1.0/fast/image-to-video.md b/model-api-reference/video-generation/veed/fabric-1.0/fast/image-to-video.md deleted file mode 100644 index 300dbfa4..00000000 --- a/model-api-reference/video-generation/veed/fabric-1.0/fast/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "VEED Fabric 1.0 Fast Image to Video API Reference" -description: "VEED Fabric 1.0 Fast Image to Video API reference for SandBase. Use model veed/fabric-1.0/fast/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/veed/fabric-1.0/fast/image-to-video" -apiReferenceJson: "{\"title\":\"VEED Fabric 1.0 Fast Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Fabric 1.0 Fast by VEED - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to veed/fabric-1.0/fast/image-to-video.\",\"default\":\"veed/fabric-1.0/fast/image-to-video\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image URL or image data used by this model.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution\",\"constraints\":\"Allowed values: 720p, 480p\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"veed/fabric-1.0/fast/image-to-video\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/veed/fabric-1.0/fast/image-to-video/input_image_1.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/veed/fabric-1.0/fast/image-to-video/input_audio_0.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"veed/fabric-1.0/fast/image-to-video\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/veed/fabric-1.0/fast/image-to-video/input_image_1.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/veed/fabric-1.0/fast/image-to-video/input_audio_0.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"veed/fabric-1.0/fast/image-to-video\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/veed/fabric-1.0/fast/image-to-video/input_image_1.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/veed/fabric-1.0/fast/image-to-video/input_audio_0.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"veed/fabric-1.0/fast/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "VEED Fabric 1.0 Fast Image to Video" - modelId: "veed/fabric-1.0/fast/image-to-video" - vendor: "VEED" - vendorSlug: "veed" - modelSlug: "fabric-1.0/fast/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-01T14:00:46.685Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/veed/fabric-1.0/image-to-video.md b/model-api-reference/video-generation/veed/fabric-1.0/image-to-video.md deleted file mode 100644 index c68c1c2f..00000000 --- a/model-api-reference/video-generation/veed/fabric-1.0/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "VEED Fabric 1.0 Image to Video API Reference" -description: "VEED Fabric 1.0 Image to Video API reference for SandBase. Use model veed/fabric-1.0/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/veed/fabric-1.0/image-to-video" -apiReferenceJson: "{\"title\":\"VEED Fabric 1.0 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Fabric 1.0 is VEED's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to veed/fabric-1.0/image-to-video.\",\"default\":\"veed/fabric-1.0/image-to-video\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image URL or image data used by this model.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution\",\"default\":\"480p\",\"constraints\":\"Allowed values: 720p, 480p\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"veed/fabric-1.0/image-to-video\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/veed/fabric-1.0/image-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/veed/fabric-1.0/image-to-video/input_audio_1.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"veed/fabric-1.0/image-to-video\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/veed/fabric-1.0/image-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/veed/fabric-1.0/image-to-video/input_audio_1.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"veed/fabric-1.0/image-to-video\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/veed/fabric-1.0/image-to-video/input_image_0.png\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/veed/fabric-1.0/image-to-video/input_audio_1.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"veed/fabric-1.0/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "VEED Fabric 1.0 Image to Video" - modelId: "veed/fabric-1.0/image-to-video" - vendor: "VEED" - vendorSlug: "veed" - modelSlug: "fabric-1.0/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-09-19T22:01:20.442Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/veed/fabric-1.0/text-to-video.md b/model-api-reference/video-generation/veed/fabric-1.0/text-to-video.md deleted file mode 100644 index 624e5fca..00000000 --- a/model-api-reference/video-generation/veed/fabric-1.0/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "VEED Fabric 1.0 Text to Video API Reference" -description: "VEED Fabric 1.0 Text to Video API reference for SandBase. Use model veed/fabric-1.0/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/veed/fabric-1.0/text-to-video" -apiReferenceJson: "{\"title\":\"VEED Fabric 1.0 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Fabric 1.0 by VEED - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to veed/fabric-1.0/text-to-video.\",\"default\":\"veed/fabric-1.0/text-to-video\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"Input image URL or image data used by this model.\"},{\"name\":\"text\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution\",\"constraints\":\"Allowed values: 720p, 480p\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"veed/fabric-1.0/text-to-video\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/veed/fabric-1.0/text-to-video/input_image_0.png\\\",\\n \\\"text\\\": \\\"Create talking videos with VEED Fabric-One API.\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"veed/fabric-1.0/text-to-video\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/veed/fabric-1.0/text-to-video/input_image_0.png\\\",\\n \\\"text\\\": \\\"Create talking videos with VEED Fabric-One API.\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"veed/fabric-1.0/text-to-video\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/veed/fabric-1.0/text-to-video/input_image_0.png\\\",\\n \\\"text\\\": \\\"Create talking videos with VEED Fabric-One API.\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"veed/fabric-1.0/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "VEED Fabric 1.0 Text to Video" - modelId: "veed/fabric-1.0/text-to-video" - vendor: "VEED" - vendorSlug: "veed" - modelSlug: "fabric-1.0/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-12T15:22:12.764Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/veed/lipsync.md b/model-api-reference/video-generation/veed/lipsync.md deleted file mode 100644 index ee59a368..00000000 --- a/model-api-reference/video-generation/veed/lipsync.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "VEED Lipsync API Reference — VEED Lipsync API" -description: "VEED Lipsync API reference for SandBase. Use model veed/lipsync with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/veed/lipsync" -apiReferenceJson: "{\"title\":\"VEED Lipsync\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Lipsync is VEED's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to veed/lipsync.\",\"default\":\"veed/lipsync\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"veed/lipsync\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/veed/lipsync/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/veed/lipsync/input_audio_1.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"veed/lipsync\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/veed/lipsync/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/veed/lipsync/input_audio_1.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"veed/lipsync\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/veed/lipsync/input_video_0.mp4\\\",\\n \\\"audio\\\": \\\"https://static.sandbase.ai/examples/veed/lipsync/input_audio_1.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"veed/lipsync\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "VEED Lipsync" - modelId: "veed/lipsync" - vendor: "VEED" - vendorSlug: "veed" - modelSlug: "lipsync" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-28T16:17:01.408Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/veed/lipsync/2.0.md b/model-api-reference/video-generation/veed/lipsync/2.0.md index 1761f931..e50d4e78 100644 --- a/model-api-reference/video-generation/veed/lipsync/2.0.md +++ b/model-api-reference/video-generation/veed/lipsync/2.0.md @@ -1,12 +1,12 @@ --- -title: "VEED Lipsync API Reference — VEED Lipsync / 2.0 API" -description: "VEED Lipsync API reference for SandBase. Use model veed/lipsync/2.0 with /v1/run; see request and response examples." +title: "VEED Lipsync 2.0 API Reference" +description: "VEED Lipsync 2.0 API reference for SandBase. Use model veed/lipsync/2.0 with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/veed/lipsync/2.0" -apiReferenceJson: "{\"title\":\"VEED Lipsync\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Lipsync 2.0 is VEED's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to veed/lipsync/2.0.\",\"default\":\"veed/lipsync/2.0\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Source video to lipsync\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":false,\"description\":\"New audio track to articulate\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"veed/lipsync/2.0\\\",\\n \\\"video\\\": \\\"https://v3.fal.media/files/monkey/q1fDPhrpfjfsaRmbhTed4_influencer.mp4\\\",\\n \\\"audio\\\": \\\"https://v3.fal.media/files/rabbit/Ql3ade3wEKlZXRQLRbhxm_tts.mp3\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"veed/lipsync/2.0\\\",\\n \\\"video\\\": \\\"https://v3.fal.media/files/monkey/q1fDPhrpfjfsaRmbhTed4_influencer.mp4\\\",\\n \\\"audio\\\": \\\"https://v3.fal.media/files/rabbit/Ql3ade3wEKlZXRQLRbhxm_tts.mp3\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"veed/lipsync/2.0\\\",\\n \\\"video\\\": \\\"https://v3.fal.media/files/monkey/q1fDPhrpfjfsaRmbhTed4_influencer.mp4\\\",\\n \\\"audio\\\": \\\"https://v3.fal.media/files/rabbit/Ql3ade3wEKlZXRQLRbhxm_tts.mp3\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"veed/lipsync/2.0\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"VEED Lipsync 2.0\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"VEED Lipsync 2.0 makes the person in a video articulate a new audio track.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to veed/lipsync/2.0.\",\"default\":\"veed/lipsync/2.0\"},{\"name\":\"audio\",\"type\":\"string\",\"required\":true,\"description\":\"Input audio URL.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"Input video URL.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"veed/lipsync/2.0\\\",\\n \\\"audio\\\": \\\"https://v3.fal.media/files/rabbit/Ql3ade3wEKlZXRQLRbhxm_tts.mp3\\\",\\n \\\"video\\\": \\\"https://v3.fal.media/files/monkey/q1fDPhrpfjfsaRmbhTed4_influencer.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"veed/lipsync/2.0\\\",\\n \\\"audio\\\": \\\"https://v3.fal.media/files/rabbit/Ql3ade3wEKlZXRQLRbhxm_tts.mp3\\\",\\n \\\"video\\\": \\\"https://v3.fal.media/files/monkey/q1fDPhrpfjfsaRmbhTed4_influencer.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"veed/lipsync/2.0\\\",\\n \\\"audio\\\": \\\"https://v3.fal.media/files/rabbit/Ql3ade3wEKlZXRQLRbhxm_tts.mp3\\\",\\n \\\"video\\\": \\\"https://v3.fal.media/files/monkey/q1fDPhrpfjfsaRmbhTed4_influencer.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"veed/lipsync/2.0\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "VEED Lipsync" + modelName: "VEED Lipsync 2.0" modelId: "veed/lipsync/2.0" vendor: "VEED" vendorSlug: "veed" diff --git a/model-api-reference/video-generation/veed/subtitles.md b/model-api-reference/video-generation/veed/subtitles.md deleted file mode 100644 index c14ce697..00000000 --- a/model-api-reference/video-generation/veed/subtitles.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Subtitles API Reference" -description: "Subtitles API reference for SandBase. Use model veed/subtitles with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/veed/subtitles" -apiReferenceJson: "{\"title\":\"Subtitles\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Subtitles is VEED's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to veed/subtitles.\",\"default\":\"veed/subtitles\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Upload or paste a URL to the video you want to subtitle.\"},{\"name\":\"srt_content\",\"type\":\"string\",\"required\":false,\"description\":\"Paste raw SRT subtitle text. Alternative to srt_file_url. When provided, transcription is skipped.\"},{\"name\":\"customization\",\"type\":\"string\",\"required\":false,\"description\":\"Optional preset overrides: vertical position, shadow intensity, and per-tier text styling (font, weight, hex colour) for each word-importance tier. Any omitted field keeps the preset's default.\"},{\"name\":\"preset\",\"type\":\"string\",\"required\":false,\"description\":\"Each style defines fonts, colors, layout, and animation. Two tiers with different pricing: - Dynamic presets (2x multiplier): glass, whisper, glide2, fusion, glide, terminal, handwritten. Richer, context-aware rendering that adapts to the input. - Basic presets (1x multiplier): simple, plain, beans, corpo, boo, shadeplay, casper, capri, lowkey, vinta, diego, ali, slay, kitty, hustle, karl, sprout, flex, mint, rizz, vegas. Fixed, lightweight styling with predictable output.\",\"constraints\":\"Allowed values: glass, whisper, glide2, fusion, glide, terminal, handwritten, simple, plain, beans, corpo, boo, shadeplay, casper, capri, lowkey, vinta, diego, ali, slay, kitty, hustle, karl, sprout, flex, mint, rizz, vegas\"},{\"name\":\"language\",\"type\":\"string\",\"required\":false,\"description\":\"Improves transcription accuracy, and should match the source audio (not output subtitles).\",\"constraints\":\"Allowed values: af-ZA, am-ET, ar-AE, ar-BH, ar-DZ, ar-EG, ar-IL, ar-IQ, ar-JO, ar-KW, ar-LB, ar-MA, ar-OM, ar-PS, ar-QA, ar-SA, ar-TN, ast-ES, az-AZ, ba, bas, be-BY, bg-BG, br, bs-BA, ca-ES, ceb-PH, ckb-IQ, cs-CZ, cy-GB, da-DK, de-DE, dyu, el-GR, en-AU, en-GB, en-IN, en-NZ, en-US, eo, es-AR, es-BO, es-CL, es-CO, es-CR, es-DO, es-EC, es-ES, es-GT, es-HN, es-MX, es-NI, es-PA, es-PE, es-PR, es-PY, es-SV, es-US, es-UY, es-VE, et-EE, eu-ES, fa-IR, ff, fi-FI, fil-PH, fo, fr-CA, fr-FR, fy, ga, gd, gl-ES, ha-NG, haw, he-IL, hr-HR, hsb, ht, hu-HU, hy-AM, id-ID, ig, is-IS, it-IT, ja-JP, ja-Latn-JP, jv-ID, ka-GE, kab, kam-KE, kea-CV, kk-KZ, ko-KR, ku, ky-KG, la, lb-LU, lg, lij, ln-CD, lo-LA, lt-LT, luo-KE, lv-LV, mg, mi-NZ, mk-MK, mn-MN, ms-MY, mt-MT, nb-NO, nl-NL, nn, nso-ZA, ny-MW, oc-FR, pl-PL, ps-AF, pt-BR, pt-PT, ro-RO, roh, ru-RU, rw-RW, sah, sk-SK, sl-SI, sm, sn-ZW, so-SO, sq-AL, sr-Latn-RS, sr-RS, srd, ss, su-ID, sv-SE, sw-KE, sw-TZ, tg-TJ, th-TH, tk, tn, tok, ton, tr-TR, ts-ZA, tt, uk-UA, umb-AO, ur-IN, ur-PK, uz-UZ, vi-VN, vro, wo-SN, xh-ZA, yi, yo-NG, yue-Hant-HK, zh, zh-HK, zh-TW, zu-ZA\"},{\"name\":\"srt_file_url\",\"type\":\"string\",\"required\":false,\"description\":\"Upload or paste a URL to your .srt subtitles file. When provided, transcription is skipped.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"veed/subtitles\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/veed/subtitles/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"veed/subtitles\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/veed/subtitles/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"veed/subtitles\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/veed/subtitles/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"veed/subtitles\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Subtitles" - modelId: "veed/subtitles" - vendor: "VEED" - vendorSlug: "veed" - modelSlug: "subtitles" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-05-18T09:03:09.763Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/veed/video-bg-removal.md b/model-api-reference/video-generation/veed/video-bg-removal.md deleted file mode 100644 index bf35446a..00000000 --- a/model-api-reference/video-generation/veed/video-bg-removal.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "VEED Video Background Removal API Reference" -description: "VEED Video Background Removal API reference for SandBase. Use model veed/video-bg-removal with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/veed/video-bg-removal" -apiReferenceJson: "{\"title\":\"VEED Video Background Removal\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Video Bg Removal by VEED - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to veed/video-bg-removal.\",\"default\":\"veed/video-bg-removal\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"veed/video-bg-removal\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/veed/video-bg-removal/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"veed/video-bg-removal\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/veed/video-bg-removal/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"veed/video-bg-removal\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/veed/video-bg-removal/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"veed/video-bg-removal\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "VEED Video Background Removal" - modelId: "veed/video-bg-removal" - vendor: "VEED" - vendorSlug: "veed" - modelSlug: "video-bg-removal" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-28T16:15:50.575Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/veed/video-bg-removal/fast.md b/model-api-reference/video-generation/veed/video-bg-removal/fast.md deleted file mode 100644 index 156e353f..00000000 --- a/model-api-reference/video-generation/veed/video-bg-removal/fast.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "VEED Video Background Removal Fast API Reference" -description: "VEED Video Background Removal Fast API reference for SandBase. Use model veed/video-bg-removal/fast with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/veed/video-bg-removal/fast" -apiReferenceJson: "{\"title\":\"VEED Video Background Removal Fast\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Video Bg Removal Fast is VEED's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to veed/video-bg-removal/fast.\",\"default\":\"veed/video-bg-removal/fast\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"veed/video-bg-removal/fast\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/veed/video-bg-removal/fast/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"veed/video-bg-removal/fast\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/veed/video-bg-removal/fast/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"veed/video-bg-removal/fast\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/veed/video-bg-removal/fast/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"veed/video-bg-removal/fast\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "VEED Video Background Removal Fast" - modelId: "veed/video-bg-removal/fast" - vendor: "VEED" - vendorSlug: "veed" - modelSlug: "video-bg-removal/fast" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-12-01T13:33:43.631Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/veed/video-bg-removal/green-screen.md b/model-api-reference/video-generation/veed/video-bg-removal/green-screen.md deleted file mode 100644 index dfb4c33b..00000000 --- a/model-api-reference/video-generation/veed/video-bg-removal/green-screen.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "VEED Video Background Removal Green Screen API Reference" -description: "VEED Video Background Removal Green Screen API reference for SandBase. Use model veed/video-bg-removal/green-screen with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/veed/video-bg-removal/green-screen" -apiReferenceJson: "{\"title\":\"VEED Video Background Removal Green Screen\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Video Bg Removal Green Screen is VEED's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to veed/video-bg-removal/green-screen.\",\"default\":\"veed/video-bg-removal/green-screen\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"Request parameter supported by this model.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"veed/video-bg-removal/green-screen\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/veed/video-bg-removal/green-screen/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"veed/video-bg-removal/green-screen\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/veed/video-bg-removal/green-screen/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"veed/video-bg-removal/green-screen\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/veed/video-bg-removal/green-screen/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"veed/video-bg-removal/green-screen\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "VEED Video Background Removal Green Screen" - modelId: "veed/video-bg-removal/green-screen" - vendor: "VEED" - vendorSlug: "veed" - modelSlug: "video-bg-removal/green-screen" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-11-28T16:14:11.401Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/vidu/2.0/image-to-video.md b/model-api-reference/video-generation/vidu/2.0/image-to-video.md deleted file mode 100644 index 2f16fcfe..00000000 --- a/model-api-reference/video-generation/vidu/2.0/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Vidu 2.0 Image to Video API Reference" -description: "Vidu 2.0 Image to Video API reference for SandBase. Use model vidu/2.0/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/vidu/2.0/image-to-video" -apiReferenceJson: "{\"title\":\"Vidu 2.0 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Vidu 2.0 is Shengshu's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to vidu/2.0/image-to-video.\",\"default\":\"vidu/2.0/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation, max 1500 characters\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"movement_amplitude\",\"type\":\"string\",\"required\":false,\"description\":\"The movement amplitude of objects in the frame\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, small, medium, large\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for generation\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"vidu/2.0/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/shengshu/vidu/2.0/image-to-video/input_image_0.webp\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"vidu/2.0/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/shengshu/vidu/2.0/image-to-video/input_image_0.webp\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"vidu/2.0/image-to-video\\\",\\n \\\"prompt\\\": \\\"A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/shengshu/vidu/2.0/image-to-video/input_image_0.webp\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"vidu/2.0/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Vidu 2.0 Image to Video" - modelId: "vidu/2.0/image-to-video" - vendor: "Vidu" - vendorSlug: "vidu" - modelSlug: "2.0/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-12T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/vidu/2.0/reference-to-video.md b/model-api-reference/video-generation/vidu/2.0/reference-to-video.md deleted file mode 100644 index 1e4afd71..00000000 --- a/model-api-reference/video-generation/vidu/2.0/reference-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Vidu 2.0 Reference to Video API Reference" -description: "Vidu 2.0 Reference to Video API reference for SandBase. Use model vidu/2.0/reference-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/vidu/2.0/reference-to-video" -apiReferenceJson: "{\"title\":\"Vidu 2.0 Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Vidu 2.0 is Shengshu's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to vidu/2.0/reference-to-video.\",\"default\":\"vidu/2.0/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation, max 1500 characters\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for generation\"},{\"name\":\"movement_amplitude\",\"type\":\"string\",\"required\":false,\"description\":\"The movement amplitude of objects in the frame\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, small, medium, large\"},{\"name\":\"reference_image_urls\",\"type\":\"array\",\"required\":false,\"description\":\"URLs of the reference images to use for consistent subject appearance\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"vidu/2.0/reference-to-video\\\",\\n \\\"prompt\\\": \\\"The little devil is looking at the apple on the beach and walking around it.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"vidu/2.0/reference-to-video\\\",\\n \\\"prompt\\\": \\\"The little devil is looking at the apple on the beach and walking around it.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"vidu/2.0/reference-to-video\\\",\\n \\\"prompt\\\": \\\"The little devil is looking at the apple on the beach and walking around it.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"vidu/2.0/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Vidu 2.0 Reference to Video" - modelId: "vidu/2.0/reference-to-video" - vendor: "Vidu" - vendorSlug: "vidu" - modelSlug: "2.0/reference-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-12T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/vidu/2.0/start-end-to-video.md b/model-api-reference/video-generation/vidu/2.0/start-end-to-video.md deleted file mode 100644 index 2ab81a26..00000000 --- a/model-api-reference/video-generation/vidu/2.0/start-end-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Vidu 2.0 Start-End to Video API Reference" -description: "Vidu 2.0 Start-End to Video API reference for SandBase. Use model vidu/2.0/start-end-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/vidu/2.0/start-end-to-video" -apiReferenceJson: "{\"title\":\"Vidu 2.0 Start-End to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Vidu 2.0 Start End To Video is Shengshu's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to vidu/2.0/start-end-to-video.\",\"default\":\"vidu/2.0/start-end-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation, max 1500 characters\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to use as the last frame\"},{\"name\":\"movement_amplitude\",\"type\":\"string\",\"required\":false,\"description\":\"The movement amplitude of objects in the frame\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, small, medium, large\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for generation\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"vidu/2.0/start-end-to-video\\\",\\n \\\"prompt\\\": \\\"Transform the car frame into a complete vehicle.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/shengshu/vidu/2.0/start-end-to-video/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"vidu/2.0/start-end-to-video\\\",\\n \\\"prompt\\\": \\\"Transform the car frame into a complete vehicle.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/shengshu/vidu/2.0/start-end-to-video/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"vidu/2.0/start-end-to-video\\\",\\n \\\"prompt\\\": \\\"Transform the car frame into a complete vehicle.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/shengshu/vidu/2.0/start-end-to-video/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"vidu/2.0/start-end-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Vidu 2.0 Start-End to Video" - modelId: "vidu/2.0/start-end-to-video" - vendor: "Vidu" - vendorSlug: "vidu" - modelSlug: "2.0/start-end-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-12T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/vidu/2.0/template-to-video.md b/model-api-reference/video-generation/vidu/2.0/template-to-video.md deleted file mode 100644 index ef7cdfc5..00000000 --- a/model-api-reference/video-generation/vidu/2.0/template-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Vidu 2.0 Template to Video API Reference" -description: "Vidu 2.0 Template to Video API reference for SandBase. Use model vidu/2.0/template-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/vidu/2.0/template-to-video" -apiReferenceJson: "{\"title\":\"Vidu 2.0 Template to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Vidu 2.0 Template To Video by Shengshu - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to vidu/2.0/template-to-video.\",\"default\":\"vidu/2.0/template-to-video\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for generation\"},{\"name\":\"template\",\"type\":\"string\",\"required\":false,\"description\":\"AI video template to use. Pricing varies by template: Standard templates (hug, kiss, love_pose, etc.) cost 4 credits ($0.20), Premium templates (lunar_newyear, dynasty_dress, dreamy_wedding, etc.) cost 6 credits ($0.30), and Advanced templates (live_photo) cost 10 credits ($0.50).\",\"default\":\"hug\",\"constraints\":\"Allowed values: dreamy_wedding, romantic_lift, sweet_proposal, couple_arrival, cupid_arrow, pet_lovers, lunar_newyear, hug, kiss, dynasty_dress, wish_sender, love_pose, hair_swap, youth_rewind, morphlab, live_photo, emotionlab, live_memory, interaction, christmas, pet_finger, eat_mushrooms, beast_chase_library, beast_chase_supermarket, petal_scattered, emoji_figure, hair_color_change, multiple_people_kissing, beast_chase_amazon, beast_chase_mountain, balloonman_explodes_pro, get_thinner, jump2pool, bodyshake, jiggle_up, shake_it_dance, subject_3, pubg_winner_hit, shake_it_down, blueprint_supreme, hip_twist, motor_dance, rat_dance, kwok_dance, leg_sweep_dance, heeseung_march, shake_to_max, dame_un_grrr, i_know, lit_bounce, wave_dance, chill_dance, hip_flicking, sakura_season, zongzi_wrap, zongzi_drop, dragonboat_shot, rain_kiss, child_memory, couple_drop, couple_walk, flower_receive, love_drop, cheek_kiss, carry_me, blow_kiss, love_fall, french_kiss_8s, workday_feels, love_story, bloom_magic, ghibli, minecraft, box_me, claw_me, clayshot, manga_meme, quad_meme, pixel_me, clayshot_duo, irasutoya, american_comic, simpsons_comic, yayoi_kusama_style, pop_art, jojo_style, slice_therapy, balloon_flyaway, flying, paperman, pinch, bloom_doorobear, gender_swap, nap_me, sexy_me, spin360, smooth_shift, paper_fall, jump_to_cloud, pilot, sweet_dreams, soul_depart, punch_hit, watermelon_hit, split_stance_pet, make_face, break_glass, split_stance_human, covered_liquid_metal, fluffy_plunge, pet_belly_dance, water_float, relax_cut, head_to_balloon, cloning, across_the_universe_jungle, clothes_spinning_remnant, across_the_universe_jurassic, across_the_universe_moon, fisheye_pet, hitchcock_zoom, cute_bangs, earth_zoom_out, fisheye_human, drive_yacht, virtual_singer, earth_zoom_in, aliens_coming, drive_ferrari, bjd_style, virtual_fitting, orbit, zoom_in, ai_outfit, spin180, orbit_dolly, orbit_dolly_fast, auto_spin, walk_forward, outfit_show, zoom_in_fast, zoom_out_image, zoom_out_startend, muscling, captain_america, hulk, cap_walk, hulk_dive, exotic_princess, beast_companion, cartoon_doll, golden_epoch, oscar_gala, fashion_stride, star_carpet, flame_carpet, frost_carpet, mecha_x, style_me, tap_me, saber_warrior, pet2human, graduation, fishermen, happy_birthday, fairy_me, ladudu_me, ladudu_me_random, squid_game, superman, grow_wings, clevage, fly_with_doraemon, creatice_product_down, pole_dance, hug_from_behind, creatice_product_up_cybercity, creatice_product_up_bluecircuit, creatice_product_up, run_fast, background_explosion\"},{\"name\":\"input_image_urls\",\"type\":\"array\",\"required\":false,\"description\":\"URLs of the images to use with the template. Number of images required varies by template: 'dynasty_dress' and 'shop_frame' accept 1-2 images, 'wish_sender' requires exactly 3 images, all other templates accept only 1 image.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"vidu/2.0/template-to-video\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"vidu/2.0/template-to-video\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"vidu/2.0/template-to-video\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"vidu/2.0/template-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Vidu 2.0 Template to Video" - modelId: "vidu/2.0/template-to-video" - vendor: "Vidu" - vendorSlug: "vidu" - modelSlug: "2.0/template-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-03-12T00:00:00Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/vidu/q1/image-to-video.md b/model-api-reference/video-generation/vidu/q1/image-to-video.md deleted file mode 100644 index 5f646ab9..00000000 --- a/model-api-reference/video-generation/vidu/q1/image-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Vidu Q1 Image to Video API Reference" -description: "Vidu Q1 Image to Video API reference for SandBase. Use model vidu/q1/image-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/vidu/q1/image-to-video" -apiReferenceJson: "{\"title\":\"Vidu Q1 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Vidu Q1 by Shengshu - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to vidu/q1/image-to-video.\",\"default\":\"vidu/q1/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation, max 1500 characters\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"movement_amplitude\",\"type\":\"string\",\"required\":false,\"description\":\"The movement amplitude of objects in the frame\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, small, medium, large\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"vidu/q1/image-to-video\\\",\\n \\\"prompt\\\": \\\"The astronaut waved and the camera moved up.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/shengshu/vidu/q1/image-to-video/input_image_0.jpg\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"vidu/q1/image-to-video\\\",\\n \\\"prompt\\\": \\\"The astronaut waved and the camera moved up.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/shengshu/vidu/q1/image-to-video/input_image_0.jpg\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"vidu/q1/image-to-video\\\",\\n \\\"prompt\\\": \\\"The astronaut waved and the camera moved up.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/shengshu/vidu/q1/image-to-video/input_image_0.jpg\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"vidu/q1/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Vidu Q1 Image to Video" - modelId: "vidu/q1/image-to-video" - vendor: "Vidu" - vendorSlug: "vidu" - modelSlug: "q1/image-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-09T03:08:30.159Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/vidu/q1/reference-to-video.md b/model-api-reference/video-generation/vidu/q1/reference-to-video.md deleted file mode 100644 index e0d1d1cf..00000000 --- a/model-api-reference/video-generation/vidu/q1/reference-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Vidu Q1 Reference to Video API Reference" -description: "Vidu Q1 Reference to Video API reference for SandBase. Use model vidu/q1/reference-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/vidu/q1/reference-to-video" -apiReferenceJson: "{\"title\":\"Vidu Q1 Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Vidu Q1 by Shengshu - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to vidu/q1/reference-to-video.\",\"default\":\"vidu/q1/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation, max 1500 characters\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for generation\"},{\"name\":\"bgm\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to add background music to the generated video\",\"default\":\"false\"},{\"name\":\"movement_amplitude\",\"type\":\"string\",\"required\":false,\"description\":\"The movement amplitude of objects in the frame\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, small, medium, large\"},{\"name\":\"reference_image_urls\",\"type\":\"array\",\"required\":false,\"description\":\"URLs of the reference images to use for consistent subject appearance. Q1 model supports up to 7 reference images.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"vidu/q1/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A young woman and a monkey inside a colorful house\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"vidu/q1/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A young woman and a monkey inside a colorful house\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"vidu/q1/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A young woman and a monkey inside a colorful house\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"vidu/q1/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Vidu Q1 Reference to Video" - modelId: "vidu/q1/reference-to-video" - vendor: "Vidu" - vendorSlug: "vidu" - modelSlug: "q1/reference-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-07-08T11:41:46.993Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/vidu/q1/start-end-to-video.md b/model-api-reference/video-generation/vidu/q1/start-end-to-video.md deleted file mode 100644 index 7bc49d29..00000000 --- a/model-api-reference/video-generation/vidu/q1/start-end-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Vidu Q1 Start-End to Video API Reference" -description: "Vidu Q1 Start-End to Video API reference for SandBase. Use model vidu/q1/start-end-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/vidu/q1/start-end-to-video" -apiReferenceJson: "{\"title\":\"Vidu Q1 Start-End to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Vidu Q1 Start End To Video by Shengshu - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to vidu/q1/start-end-to-video.\",\"default\":\"vidu/q1/start-end-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation, max 1500 characters\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the first frame\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to use as the last frame\"},{\"name\":\"movement_amplitude\",\"type\":\"string\",\"required\":false,\"description\":\"The movement amplitude of objects in the frame\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, small, medium, large\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"vidu/q1/start-end-to-video\\\",\\n \\\"prompt\\\": \\\"Dragon lands on a rock\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/shengshu/vidu/q1/start-end-to-video/input_image_0.png\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"vidu/q1/start-end-to-video\\\",\\n \\\"prompt\\\": \\\"Dragon lands on a rock\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/shengshu/vidu/q1/start-end-to-video/input_image_0.png\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"vidu/q1/start-end-to-video\\\",\\n \\\"prompt\\\": \\\"Dragon lands on a rock\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/shengshu/vidu/q1/start-end-to-video/input_image_0.png\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"vidu/q1/start-end-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Vidu Q1 Start-End to Video" - modelId: "vidu/q1/start-end-to-video" - vendor: "Vidu" - vendorSlug: "vidu" - modelSlug: "q1/start-end-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-09T03:12:59.443Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/vidu/q1/text-to-video.md b/model-api-reference/video-generation/vidu/q1/text-to-video.md deleted file mode 100644 index a46de6ee..00000000 --- a/model-api-reference/video-generation/vidu/q1/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Vidu Q1 Text to Video API Reference" -description: "Vidu Q1 Text to Video API reference for SandBase. Use model vidu/q1/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/vidu/q1/text-to-video" -apiReferenceJson: "{\"title\":\"Vidu Q1 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Vidu Q1 is Shengshu's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to vidu/q1/text-to-video.\",\"default\":\"vidu/q1/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation, max 1500 characters\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Seed for the random number generator\"},{\"name\":\"movement_amplitude\",\"type\":\"string\",\"required\":false,\"description\":\"The movement amplitude of objects in the frame\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, small, medium, large\"},{\"name\":\"style\",\"type\":\"string\",\"required\":false,\"description\":\"The style of output video\",\"default\":\"general\",\"constraints\":\"Allowed values: general, anime\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"vidu/q1/text-to-video\\\",\\n \\\"prompt\\\": \\\"In an ultra-realistic fashion photography style featuring light blue and pale amber tones, an astronaut in a spacesuit walks through the fog. The background consists of enchanting white and golden lights, creating a minimalist still life and an impressive panoramic scene.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"vidu/q1/text-to-video\\\",\\n \\\"prompt\\\": \\\"In an ultra-realistic fashion photography style featuring light blue and pale amber tones, an astronaut in a spacesuit walks through the fog. The background consists of enchanting white and golden lights, creating a minimalist still life and an impressive panoramic scene.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"vidu/q1/text-to-video\\\",\\n \\\"prompt\\\": \\\"In an ultra-realistic fashion photography style featuring light blue and pale amber tones, an astronaut in a spacesuit walks through the fog. The background consists of enchanting white and golden lights, creating a minimalist still life and an impressive panoramic scene.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"vidu/q1/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Vidu Q1 Text to Video" - modelId: "vidu/q1/text-to-video" - vendor: "Vidu" - vendorSlug: "vidu" - modelSlug: "q1/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-05-09T03:10:36.806Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/vidu/q2/image-to-video/pro.md b/model-api-reference/video-generation/vidu/q2/image-to-video/pro.md deleted file mode 100644 index 82c69b5f..00000000 --- a/model-api-reference/video-generation/vidu/q2/image-to-video/pro.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Vidu Q2 Image to Video Pro API Reference" -description: "Vidu Q2 Image to Video Pro API reference for SandBase. Use model vidu/q2/image-to-video/pro with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/vidu/q2/image-to-video/pro" -apiReferenceJson: "{\"title\":\"Vidu Q2 Image to Video Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Vidu Q2 Pro by Shengshu - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to vidu/q2/image-to-video/pro.\",\"default\":\"vidu/q2/image-to-video/pro\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation, max 3000 characters\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the starting frame\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to use as the ending frame. When provided, generates a transition video between start and end frames.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the video in seconds\",\"default\":\"4\",\"constraints\":\"Allowed values: 2, 3, 4, 5, 6, 7, 8\"},{\"name\":\"bgm\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to add background music to the video (only for 4-second videos)\",\"default\":\"false\"},{\"name\":\"movement_amplitude\",\"type\":\"string\",\"required\":false,\"description\":\"The movement amplitude of objects in the frame\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, small, medium, large\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"vidu/q2/image-to-video/pro\\\",\\n \\\"prompt\\\": \\\"A woman walking through a vibrant city street at night, neon lights reflecting off wet pavement.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/shengshu/vidu/q2/image-to-video/pro/input_image_0.webp\\\",\\n \\\"duration\\\": 4\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"vidu/q2/image-to-video/pro\\\",\\n \\\"prompt\\\": \\\"A woman walking through a vibrant city street at night, neon lights reflecting off wet pavement.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/shengshu/vidu/q2/image-to-video/pro/input_image_0.webp\\\",\\n \\\"duration\\\": 4\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"vidu/q2/image-to-video/pro\\\",\\n \\\"prompt\\\": \\\"A woman walking through a vibrant city street at night, neon lights reflecting off wet pavement.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/shengshu/vidu/q2/image-to-video/pro/input_image_0.webp\\\",\\n \\\"duration\\\": 4\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"vidu/q2/image-to-video/pro\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Vidu Q2 Image to Video Pro" - modelId: "vidu/q2/image-to-video/pro" - vendor: "Vidu" - vendorSlug: "vidu" - modelSlug: "q2/image-to-video/pro" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-24T09:11:00.692Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/vidu/q2/image-to-video/turbo.md b/model-api-reference/video-generation/vidu/q2/image-to-video/turbo.md deleted file mode 100644 index 1854960c..00000000 --- a/model-api-reference/video-generation/vidu/q2/image-to-video/turbo.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Vidu Q2 Image to Video Turbo API Reference" -description: "Vidu Q2 Image to Video Turbo API reference for SandBase. Use model vidu/q2/image-to-video/turbo with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/vidu/q2/image-to-video/turbo" -apiReferenceJson: "{\"title\":\"Vidu Q2 Image to Video Turbo\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Vidu Q2 Turbo by Shengshu - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to vidu/q2/image-to-video/turbo.\",\"default\":\"vidu/q2/image-to-video/turbo\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation, max 3000 characters\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the image to use as the starting frame\"},{\"name\":\"end_image\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the image to use as the ending frame. When provided, generates a transition video between start and end frames.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the video in seconds\",\"default\":\"4\",\"constraints\":\"Allowed values: 2, 3, 4, 5, 6, 7, 8\"},{\"name\":\"movement_amplitude\",\"type\":\"string\",\"required\":false,\"description\":\"The movement amplitude of objects in the frame\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, small, medium, large\"},{\"name\":\"bgm\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to add background music to the video (only for 4-second videos)\",\"default\":\"false\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"vidu/q2/image-to-video/turbo\\\",\\n \\\"prompt\\\": \\\"A woman walking through a vibrant city street at night, neon lights reflecting off wet pavement.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/shengshu/vidu/q2/image-to-video/turbo/input_image_0.webp\\\",\\n \\\"duration\\\": 4\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"vidu/q2/image-to-video/turbo\\\",\\n \\\"prompt\\\": \\\"A woman walking through a vibrant city street at night, neon lights reflecting off wet pavement.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/shengshu/vidu/q2/image-to-video/turbo/input_image_0.webp\\\",\\n \\\"duration\\\": 4\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"vidu/q2/image-to-video/turbo\\\",\\n \\\"prompt\\\": \\\"A woman walking through a vibrant city street at night, neon lights reflecting off wet pavement.\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/shengshu/vidu/q2/image-to-video/turbo/input_image_0.webp\\\",\\n \\\"duration\\\": 4\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"vidu/q2/image-to-video/turbo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Vidu Q2 Image to Video Turbo" - modelId: "vidu/q2/image-to-video/turbo" - vendor: "Vidu" - vendorSlug: "vidu" - modelSlug: "q2/image-to-video/turbo" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-24T09:28:39.019Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/vidu/q2/reference-to-video/pro.md b/model-api-reference/video-generation/vidu/q2/reference-to-video/pro.md deleted file mode 100644 index af75e41a..00000000 --- a/model-api-reference/video-generation/vidu/q2/reference-to-video/pro.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Vidu Q2 Reference to Video Pro API Reference" -description: "Vidu Q2 Reference to Video Pro API reference for SandBase. Use model vidu/q2/reference-to-video/pro with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/vidu/q2/reference-to-video/pro" -apiReferenceJson: "{\"title\":\"Vidu Q2 Reference to Video Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Vidu Q2 Pro by Shengshu - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to vidu/q2/reference-to-video/pro.\",\"default\":\"vidu/q2/reference-to-video/pro\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation, max 2000 characters\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution\",\"default\":\"720p\",\"constraints\":\"Allowed values: 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the video in seconds (0 for automatic duration)\",\"default\":\"4\",\"constraints\":\"Range: 1 to 8\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"},{\"name\":\"reference_video_urls\",\"type\":\"array\",\"required\":false,\"description\":\"URLs of the reference videos for video editing or motion reference. Supports up to 2 videos.\"},{\"name\":\"movement_amplitude\",\"type\":\"string\",\"required\":false,\"description\":\"The movement amplitude of objects in the frame\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, small, medium, large\"},{\"name\":\"bgm\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to add background music to the generated video\",\"default\":\"false\"},{\"name\":\"reference_image_urls\",\"type\":\"array\",\"required\":false,\"description\":\"URLs of the reference images for subject appearance. If videos are provided, up to 4 images are allowed; otherwise up to 7 images.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"vidu/q2/reference-to-video/pro\\\",\\n \\\"prompt\\\": \\\"@Figure 1 Character Reference@Refer to the special effects, movements, and camera work of Video 1.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 4\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"vidu/q2/reference-to-video/pro\\\",\\n \\\"prompt\\\": \\\"@Figure 1 Character Reference@Refer to the special effects, movements, and camera work of Video 1.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 4\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"vidu/q2/reference-to-video/pro\\\",\\n \\\"prompt\\\": \\\"@Figure 1 Character Reference@Refer to the special effects, movements, and camera work of Video 1.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 4\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"vidu/q2/reference-to-video/pro\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Vidu Q2 Reference to Video Pro" - modelId: "vidu/q2/reference-to-video/pro" - vendor: "Vidu" - vendorSlug: "vidu" - modelSlug: "q2/reference-to-video/pro" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-19T19:49:20.023Z" - capabilities: ["image-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/vidu/q2/text-to-video.md b/model-api-reference/video-generation/vidu/q2/text-to-video.md deleted file mode 100644 index dce701fe..00000000 --- a/model-api-reference/video-generation/vidu/q2/text-to-video.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Vidu Q2 Text to Video API Reference" -description: "Vidu Q2 Text to Video API reference for SandBase. Use model vidu/q2/text-to-video with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/vidu/q2/text-to-video" -apiReferenceJson: "{\"title\":\"Vidu Q2 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Vidu Q2 is Shengshu's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to vidu/q2/text-to-video.\",\"default\":\"vidu/q2/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation, max 3000 characters\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 520p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the video in seconds\",\"default\":\"4\",\"constraints\":\"Allowed values: 2, 3, 4, 5, 6, 7, 8\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"},{\"name\":\"movement_amplitude\",\"type\":\"string\",\"required\":false,\"description\":\"The movement amplitude of objects in the frame\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, small, medium, large\"},{\"name\":\"bgm\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to add background music to the video (only for 4-second videos)\",\"default\":\"false\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"vidu/q2/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic shot of a futuristic city at sunset, with flying cars and towering skyscrapers.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 4\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"vidu/q2/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic shot of a futuristic city at sunset, with flying cars and towering skyscrapers.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 4\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"vidu/q2/text-to-video\\\",\\n \\\"prompt\\\": \\\"A cinematic shot of a futuristic city at sunset, with flying cars and towering skyscrapers.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 4\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"vidu/q2/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Vidu Q2 Text to Video" - modelId: "vidu/q2/text-to-video" - vendor: "Vidu" - vendorSlug: "vidu" - modelSlug: "q2/text-to-video" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-22T16:40:07.242Z" - capabilities: ["text-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/vidu/q2/video-extension/pro.md b/model-api-reference/video-generation/vidu/q2/video-extension/pro.md deleted file mode 100644 index edb2fc46..00000000 --- a/model-api-reference/video-generation/vidu/q2/video-extension/pro.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Vidu Q2 Video Extension Pro API Reference" -description: "Vidu Q2 Video Extension Pro API reference for SandBase. Use model vidu/q2/video-extension/pro with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/vidu/q2/video-extension/pro" -apiReferenceJson: "{\"title\":\"Vidu Q2 Video Extension Pro\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Vidu Q2 Video Extension is Shengshu's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to vidu/q2/video-extension/pro.\",\"default\":\"vidu/q2/video-extension/pro\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"text prompt to guide the video extension\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the video to extend\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution\",\"default\":\"720p\",\"constraints\":\"Allowed values: 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the extension in seconds\",\"default\":\"4\",\"constraints\":\"Allowed values: 2, 3, 4, 5, 6, 7\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"vidu/q2/video-extension/pro\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/shengshu/vidu/q2/video-extension/pro/output_url_0.mp4\\\",\\n \\\"duration\\\": 4\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"vidu/q2/video-extension/pro\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/shengshu/vidu/q2/video-extension/pro/output_url_0.mp4\\\",\\n \\\"duration\\\": 4\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"vidu/q2/video-extension/pro\\\",\\n \\\"prompt\\\": \\\"A cinematic product photo of a matte black smart speaker on a marble table, soft studio lighting\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/shengshu/vidu/q2/video-extension/pro/output_url_0.mp4\\\",\\n \\\"duration\\\": 4\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"vidu/q2/video-extension/pro\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Vidu Q2 Video Extension Pro" - modelId: "vidu/q2/video-extension/pro" - vendor: "Vidu" - vendorSlug: "vidu" - modelSlug: "q2/video-extension/pro" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2025-10-24T10:03:48.146Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/vidu/q3/reference-to-video/mix.md b/model-api-reference/video-generation/vidu/q3/reference-to-video/mix.md index 6c5857a1..a028abe5 100644 --- a/model-api-reference/video-generation/vidu/q3/reference-to-video/mix.md +++ b/model-api-reference/video-generation/vidu/q3/reference-to-video/mix.md @@ -4,7 +4,7 @@ description: "Vidu Q3 Reference to Video Mix API reference for SandBase. Use mod aside: false outline: false apiReferenceKey: "video/vidu/q3/reference-to-video/mix" -apiReferenceJson: "{\"title\":\"Vidu Q3 Reference to Video Mix\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Vidu Q3 Mix by Shengshu - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to vidu/q3/reference-to-video/mix.\",\"default\":\"vidu/q3/reference-to-video/mix\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation, max 2000 characters\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use direct audio-video generation. When true, outputs video with sound.\",\"default\":\"true\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the video in seconds (1-16 for Q3 models)\",\"default\":\"5\",\"constraints\":\"Range: 1 to 16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"},{\"name\":\"reference_image_urls\",\"type\":\"array\",\"required\":false,\"description\":\"URLs of 1 to 4 reference images used to keep subjects or scenes consistent\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"vidu/q3/reference-to-video/mix\\\",\\n \\\"prompt\\\": \\\"A character walking through a beach catching an apple.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"audio\\\": true,\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"vidu/q3/reference-to-video/mix\\\",\\n \\\"prompt\\\": \\\"A character walking through a beach catching an apple.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"audio\\\": True,\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"vidu/q3/reference-to-video/mix\\\",\\n \\\"prompt\\\": \\\"A character walking through a beach catching an apple.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"audio\\\": true,\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"vidu/q3/reference-to-video/mix\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Vidu Q3 Reference to Video Mix\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Vidu Q3 Mix by Shengshu - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to vidu/q3/reference-to-video/mix.\",\"default\":\"vidu/q3/reference-to-video/mix\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation, max 2000 characters\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 4:3, 3:4, 1:1\"},{\"name\":\"audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use direct audio-video generation. When true, outputs video with sound.\",\"default\":\"true\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the video in seconds (1-16 for Q3 models)\",\"default\":\"5\",\"constraints\":\"Range: 1 to 16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"},{\"name\":\"reference_image_urls\",\"type\":\"array\",\"required\":true,\"description\":\"URLs of 1 to 4 reference images used to keep subjects or scenes consistent\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"vidu/q3/reference-to-video/mix\\\",\\n \\\"prompt\\\": \\\"A character walking through a beach catching an apple.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"audio\\\": true,\\n \\\"duration\\\": 5,\\n \\\"reference_image_urls\\\": [\\n \\\"https://static.sandbase.ai/examples/shengshu/vidu/q3/reference-to-video/mix/input_reference_image_urls_0.png\\\",\\n \\\"https://static.sandbase.ai/examples/shengshu/vidu/q3/reference-to-video/mix/input_reference_image_urls_1.png\\\",\\n \\\"https://static.sandbase.ai/examples/shengshu/vidu/q3/reference-to-video/mix/input_reference_image_urls_2.png\\\"\\n ]\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"vidu/q3/reference-to-video/mix\\\",\\n \\\"prompt\\\": \\\"A character walking through a beach catching an apple.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"audio\\\": True,\\n \\\"duration\\\": 5,\\n \\\"reference_image_urls\\\": [\\n \\\"https://static.sandbase.ai/examples/shengshu/vidu/q3/reference-to-video/mix/input_reference_image_urls_0.png\\\",\\n \\\"https://static.sandbase.ai/examples/shengshu/vidu/q3/reference-to-video/mix/input_reference_image_urls_1.png\\\",\\n \\\"https://static.sandbase.ai/examples/shengshu/vidu/q3/reference-to-video/mix/input_reference_image_urls_2.png\\\"\\n ]\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"vidu/q3/reference-to-video/mix\\\",\\n \\\"prompt\\\": \\\"A character walking through a beach catching an apple.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"audio\\\": true,\\n \\\"duration\\\": 5,\\n \\\"reference_image_urls\\\": [\\n \\\"https://static.sandbase.ai/examples/shengshu/vidu/q3/reference-to-video/mix/input_reference_image_urls_0.png\\\",\\n \\\"https://static.sandbase.ai/examples/shengshu/vidu/q3/reference-to-video/mix/input_reference_image_urls_1.png\\\",\\n \\\"https://static.sandbase.ai/examples/shengshu/vidu/q3/reference-to-video/mix/input_reference_image_urls_2.png\\\"\\n ]\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"vidu/q3/reference-to-video/mix\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Vidu Q3 Reference to Video Mix" modelId: "vidu/q3/reference-to-video/mix" @@ -14,7 +14,7 @@ seo: protocol: "Video Generation Reference" endpoint: "/v1/run" publishedAt: "2026-04-08T16:23:13.982Z" - capabilities: ["image-to-video"] + capabilities: ["reference-to-video"] category: "Video Generation" --- diff --git a/model-api-reference/video-generation/vidu/q3/text-to-video.md b/model-api-reference/video-generation/vidu/q3/text-to-video.md index c6a0f891..44a78628 100644 --- a/model-api-reference/video-generation/vidu/q3/text-to-video.md +++ b/model-api-reference/video-generation/vidu/q3/text-to-video.md @@ -4,7 +4,7 @@ description: "Vidu Q3 Text to Video API reference for SandBase. Use model vidu/q aside: false outline: false apiReferenceKey: "video/vidu/q3/text-to-video" -apiReferenceJson: "{\"title\":\"Vidu Q3 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Vidu Q3 is Shengshu's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to vidu/q3/text-to-video.\",\"default\":\"vidu/q3/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation, max 2000 characters\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use direct audio-video generation. When true, outputs video with sound.\",\"default\":\"true\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the video in seconds\",\"default\":\"5\",\"constraints\":\"Range: 1 to 16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"vidu/q3/text-to-video\\\",\\n \\\"prompt\\\": \\\"In an ultra-realistic fashion photography style featuring light blue and pale amber tones, an astronaut in a spacesuit walks through the fog.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"audio\\\": true,\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"vidu/q3/text-to-video\\\",\\n \\\"prompt\\\": \\\"In an ultra-realistic fashion photography style featuring light blue and pale amber tones, an astronaut in a spacesuit walks through the fog.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"audio\\\": True,\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"vidu/q3/text-to-video\\\",\\n \\\"prompt\\\": \\\"In an ultra-realistic fashion photography style featuring light blue and pale amber tones, an astronaut in a spacesuit walks through the fog.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"audio\\\": true,\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"vidu/q3/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Vidu Q3 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Vidu Q3 is Shengshu's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to vidu/q3/text-to-video.\",\"default\":\"vidu/q3/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation, max 2000 characters\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 4:3, 3:4, 1:1\"},{\"name\":\"audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use direct audio-video generation. When true, outputs video with sound.\",\"default\":\"true\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the video in seconds\",\"default\":\"5\",\"constraints\":\"Range: 1 to 16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"vidu/q3/text-to-video\\\",\\n \\\"prompt\\\": \\\"In an ultra-realistic fashion photography style featuring light blue and pale amber tones, an astronaut in a spacesuit walks through the fog.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"audio\\\": true,\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"vidu/q3/text-to-video\\\",\\n \\\"prompt\\\": \\\"In an ultra-realistic fashion photography style featuring light blue and pale amber tones, an astronaut in a spacesuit walks through the fog.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"audio\\\": True,\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"vidu/q3/text-to-video\\\",\\n \\\"prompt\\\": \\\"In an ultra-realistic fashion photography style featuring light blue and pale amber tones, an astronaut in a spacesuit walks through the fog.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"audio\\\": true,\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"vidu/q3/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Vidu Q3 Text to Video" modelId: "vidu/q3/text-to-video" diff --git a/model-api-reference/video-generation/vidu/q3/text-to-video/turbo.md b/model-api-reference/video-generation/vidu/q3/text-to-video/turbo.md index 8aec6f4d..db26610d 100644 --- a/model-api-reference/video-generation/vidu/q3/text-to-video/turbo.md +++ b/model-api-reference/video-generation/vidu/q3/text-to-video/turbo.md @@ -4,7 +4,7 @@ description: "Vidu Q3 Text to Video Turbo API reference for SandBase. Use model aside: false outline: false apiReferenceKey: "video/vidu/q3/text-to-video/turbo" -apiReferenceJson: "{\"title\":\"Vidu Q3 Text to Video Turbo\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Vidu Q3 Turbo is Shengshu's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to vidu/q3/text-to-video/turbo.\",\"default\":\"vidu/q3/text-to-video/turbo\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation, max 2000 characters\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use direct audio-video generation. When true, outputs video with sound.\",\"default\":\"true\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the video in seconds\",\"default\":\"5\",\"constraints\":\"Range: 1 to 16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"vidu/q3/text-to-video/turbo\\\",\\n \\\"prompt\\\": \\\"In an ultra-realistic fashion photography style featuring light blue and pale amber tones, an astronaut in a spacesuit walks through the fog.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"audio\\\": true,\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"vidu/q3/text-to-video/turbo\\\",\\n \\\"prompt\\\": \\\"In an ultra-realistic fashion photography style featuring light blue and pale amber tones, an astronaut in a spacesuit walks through the fog.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"audio\\\": True,\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"vidu/q3/text-to-video/turbo\\\",\\n \\\"prompt\\\": \\\"In an ultra-realistic fashion photography style featuring light blue and pale amber tones, an astronaut in a spacesuit walks through the fog.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"audio\\\": true,\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"vidu/q3/text-to-video/turbo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Vidu Q3 Text to Video Turbo\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Vidu Q3 Turbo is Shengshu's text-to-video AI model. Turn written scripts and prompts into professional-quality video clips with realistic motion, lighting, and scene composition.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to vidu/q3/text-to-video/turbo.\",\"default\":\"vidu/q3/text-to-video/turbo\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation, max 2000 characters\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 4:3, 3:4, 1:1\"},{\"name\":\"audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to use direct audio-video generation. When true, outputs video with sound.\",\"default\":\"true\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution\",\"default\":\"720p\",\"constraints\":\"Allowed values: 360p, 540p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the video in seconds\",\"default\":\"5\",\"constraints\":\"Range: 1 to 16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"vidu/q3/text-to-video/turbo\\\",\\n \\\"prompt\\\": \\\"In an ultra-realistic fashion photography style featuring light blue and pale amber tones, an astronaut in a spacesuit walks through the fog.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"audio\\\": true,\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"vidu/q3/text-to-video/turbo\\\",\\n \\\"prompt\\\": \\\"In an ultra-realistic fashion photography style featuring light blue and pale amber tones, an astronaut in a spacesuit walks through the fog.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"audio\\\": True,\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"vidu/q3/text-to-video/turbo\\\",\\n \\\"prompt\\\": \\\"In an ultra-realistic fashion photography style featuring light blue and pale amber tones, an astronaut in a spacesuit walks through the fog.\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"audio\\\": true,\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"vidu/q3/text-to-video/turbo\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Vidu Q3 Text to Video Turbo" modelId: "vidu/q3/text-to-video/turbo" diff --git a/model-api-reference/video-generation/vidu/q4/image-to-video.md b/model-api-reference/video-generation/vidu/q4/image-to-video.md new file mode 100644 index 00000000..1803ff4f --- /dev/null +++ b/model-api-reference/video-generation/vidu/q4/image-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Vidu Q4 Image to Video API Reference" +description: "Vidu Q4 Image to Video API reference for SandBase. Use model vidu/q4/image-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/vidu/q4/image-to-video" +apiReferenceJson: "{\"title\":\"Vidu Q4 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Vidu Q4 Preview by Shengshu animates a first-frame image into a 3 to 16 second video at up to 4K. Prompts can direct motion, camera cuts, and spoken dialogue, with native speech and sound effects.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to vidu/q4/image-to-video.\",\"default\":\"vidu/q4/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":false,\"description\":\"Text prompt for video generation, max 5000 characters. Can direct motion, camera cuts, and spoken dialogue.\",\"default\":\"\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL or base64 data URI of the image to use as the first frame. Supports png, jpeg, jpg and webp up to 50 MB.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution. Sets the per-second rate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 540p, 720p, 1080p, 2K, 4K\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the video in seconds (3-16)\",\"default\":\"5\",\"constraints\":\"Range: 3 to 16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"vidu/q4/image-to-video\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/web-examples/vidu/stylish_woman.webp\\\",\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"vidu/q4/image-to-video\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/Falserverless/web-examples/vidu/stylish_woman.webp\\\",\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"vidu/q4/image-to-video\\\",\\n \\\"prompt\\\": \\\"\\\",\\n \\\"image\\\": \\\"https://storage.googleapis.com/falserverless/web-examples/vidu/stylish_woman.webp\\\",\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"vidu/q4/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Vidu Q4 Image to Video" + modelId: "vidu/q4/image-to-video" + vendor: "Vidu" + vendorSlug: "vidu" + modelSlug: "q4/image-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-10-07T20:20:15.855Z" + capabilities: ["image-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/vidu/q4/reference-to-video.md b/model-api-reference/video-generation/vidu/q4/reference-to-video.md new file mode 100644 index 00000000..6eefdfb1 --- /dev/null +++ b/model-api-reference/video-generation/vidu/q4/reference-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Vidu Q4 Reference to Video API Reference" +description: "Vidu Q4 Reference to Video API reference for SandBase. Use model vidu/q4/reference-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/vidu/q4/reference-to-video" +apiReferenceJson: "{\"title\":\"Vidu Q4 Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Vidu Q4 Preview by Shengshu builds a 3 to 16 second video at up to 4K from up to 12 reference images and 3 voice clips, keeping characters, products, and voices consistent across the clip.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to vidu/q4/reference-to-video.\",\"default\":\"vidu/q4/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt for video generation, max 5000 characters. Refer to references by position: [@reference_image_1], [@reference_image_2], ... for images and [reference_audio_1], [reference_audio_2], ... for audio clips.\"},{\"name\":\"reference_image_urls\",\"type\":\"array\",\"required\":true,\"description\":\"URLs of 1 to 12 reference images (png, jpeg, jpg, webp) used to keep characters, products, objects, or locations consistent.\"},{\"name\":\"reference_audio_urls\",\"type\":\"array\",\"required\":false,\"description\":\"URLs of up to 3 mp3 reference audio clips (3-12 seconds each, max 50 MB) used to keep voices consistent.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the output video.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 9:16, 4:3, 3:4, 1:1\"},{\"name\":\"audio\",\"type\":\"boolean\",\"required\":false,\"description\":\"Whether to generate audio (dialogue and sound effects) with the video. When false, the output video is silent.\",\"default\":\"true\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Output video resolution. Sets the per-second rate.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 540p, 720p, 1080p, 2K, 4K\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Duration of the video in seconds (3-16)\",\"default\":\"5\",\"constraints\":\"Range: 3 to 16\"},{\"name\":\"seed\",\"type\":\"integer\",\"required\":false,\"description\":\"Random seed for reproducibility. If None, a random seed is chosen.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"vidu/q4/reference-to-video\\\",\\n \\\"prompt\\\": \\\"[@reference_image_1] walks along the beach at sunset holding [@reference_image_2], then turns to the camera and smiles.\\\",\\n \\\"reference_image_urls\\\": [\\n \\\"https://storage.googleapis.com/falserverless/web-examples/vidu/new-examples/reference1.png\\\",\\n \\\"https://storage.googleapis.com/falserverless/web-examples/vidu/new-examples/reference2.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"audio\\\": true,\\n \\\"duration\\\": 5\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"vidu/q4/reference-to-video\\\",\\n \\\"prompt\\\": \\\"[@reference_image_1] walks along the beach at sunset holding [@reference_image_2], then turns to the camera and smiles.\\\",\\n \\\"reference_image_urls\\\": [\\n \\\"https://storage.googleapis.com/Falserverless/web-examples/vidu/new-examples/reference1.png\\\",\\n \\\"https://storage.googleapis.com/Falserverless/web-examples/vidu/new-examples/reference2.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"audio\\\": True,\\n \\\"duration\\\": 5\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"vidu/q4/reference-to-video\\\",\\n \\\"prompt\\\": \\\"[@reference_image_1] walks along the beach at sunset holding [@reference_image_2], then turns to the camera and smiles.\\\",\\n \\\"reference_image_urls\\\": [\\n \\\"https://storage.googleapis.com/falserverless/web-examples/vidu/new-examples/reference1.png\\\",\\n \\\"https://storage.googleapis.com/falserverless/web-examples/vidu/new-examples/reference2.png\\\"\\n ],\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"audio\\\": true,\\n \\\"duration\\\": 5\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"vidu/q4/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Vidu Q4 Reference to Video" + modelId: "vidu/q4/reference-to-video" + vendor: "Vidu" + vendorSlug: "vidu" + modelSlug: "q4/reference-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-10-07T20:19:57.578Z" + capabilities: ["reference-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/xai/grok-imagine-video/1.5/image-to-video.md b/model-api-reference/video-generation/xai/grok-imagine-video/1.5/image-to-video.md index a4290f30..972ed6ad 100644 --- a/model-api-reference/video-generation/xai/grok-imagine-video/1.5/image-to-video.md +++ b/model-api-reference/video-generation/xai/grok-imagine-video/1.5/image-to-video.md @@ -1,12 +1,12 @@ --- -title: "Grok Imagine Video 1.5 API Reference" -description: "Grok Imagine Video 1.5 API reference for SandBase. Use model xai/grok-imagine-video/1.5/image-to-video with /v1/run; see request and response examples." +title: "Grok Imagine Video 1.5 Image to Video API Reference" +description: "Grok Imagine Video 1.5 Image to Video API reference for SandBase. Use model xai/grok-imagine-video/1.5/image-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/xai/grok-imagine-video/1.5/image-to-video" -apiReferenceJson: "{\"title\":\"Grok Imagine Video 1.5\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Grok Imagine Video 1.5 is xAI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xai/grok-imagine-video/1.5/image-to-video.\",\"default\":\"xai/grok-imagine-video/1.5/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of desired changes or motion in the video.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image for video generation.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the output video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds.\",\"default\":\"6\",\"constraints\":\"Range: 1 to 15\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xai/grok-imagine-video/1.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"Medieval knight in ornate armor walking through a mystical forest, bioluminescent plants pulsing with light, ancient stone ruins overgrown with glowing vines, over-the-shoulder camera, dark fantasy aesthetic, volumetric fog and Lumen lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/1.5/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/1.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"Medieval knight in ornate armor walking through a mystical forest, bioluminescent plants pulsing with light, ancient stone ruins overgrown with glowing vines, over-the-shoulder camera, dark fantasy aesthetic, volumetric fog and Lumen lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/1.5/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/1.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"Medieval knight in ornate armor walking through a mystical forest, bioluminescent plants pulsing with light, ancient stone ruins overgrown with glowing vines, over-the-shoulder camera, dark fantasy aesthetic, volumetric fog and Lumen lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/1.5/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"xai/grok-imagine-video/1.5/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Grok Imagine Video 1.5 Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Grok Imagine Video 1.5 is xAI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xai/grok-imagine-video/1.5/image-to-video.\",\"default\":\"xai/grok-imagine-video/1.5/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of desired changes or motion in the video.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image for video generation.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the output video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds.\",\"default\":\"6\",\"constraints\":\"Range: 1 to 15\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xai/grok-imagine-video/1.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"Medieval knight in ornate armor walking through a mystical forest, bioluminescent plants pulsing with light, ancient stone ruins overgrown with glowing vines, over-the-shoulder camera, dark fantasy aesthetic, volumetric fog and Lumen lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/1.5/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/1.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"Medieval knight in ornate armor walking through a mystical forest, bioluminescent plants pulsing with light, ancient stone ruins overgrown with glowing vines, over-the-shoulder camera, dark fantasy aesthetic, volumetric fog and Lumen lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/1.5/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/1.5/image-to-video\\\",\\n \\\"prompt\\\": \\\"Medieval knight in ornate armor walking through a mystical forest, bioluminescent plants pulsing with light, ancient stone ruins overgrown with glowing vines, over-the-shoulder camera, dark fantasy aesthetic, volumetric fog and Lumen lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/1.5/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"xai/grok-imagine-video/1.5/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Grok Imagine Video 1.5" + modelName: "Grok Imagine Video 1.5 Image to Video" modelId: "xai/grok-imagine-video/1.5/image-to-video" vendor: "xAI" vendorSlug: "xai" diff --git a/model-api-reference/video-generation/xai/grok-imagine-video/1.5/lite/image-to-video.md b/model-api-reference/video-generation/xai/grok-imagine-video/1.5/lite/image-to-video.md new file mode 100644 index 00000000..67299b05 --- /dev/null +++ b/model-api-reference/video-generation/xai/grok-imagine-video/1.5/lite/image-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Grok Imagine Video 1.5 Lite Image to Video API Reference" +description: "SandBase API reference for model xai/grok-imagine-video/1.5/lite/image-to-video. Call /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/xai/grok-imagine-video/1.5/lite/image-to-video" +apiReferenceJson: "{\"title\":\"Grok Imagine Video 1.5 Lite Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Grok Imagine Video 1.5 Lite, the low-cost tier of xAI's video model, animates an image into a 1-15 second video with native audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xai/grok-imagine-video/1.5/lite/image-to-video.\",\"default\":\"xai/grok-imagine-video/1.5/lite/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of desired changes or motion in the video.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image for video generation.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the output video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds.\",\"default\":\"6\",\"constraints\":\"Range: 1 to 15\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xai/grok-imagine-video/1.5/lite/image-to-video\\\",\\n \\\"prompt\\\": \\\"Medieval knight in ornate armor walking through a mystical forest, bioluminescent plants pulsing with light, ancient stone ruins overgrown with glowing vines, over-the-shoulder camera, dark fantasy aesthetic, volumetric fog and Lumen lighting\\\",\\n \\\"image\\\": \\\"https://v3b.fal.media/files/b/0a8b90e0/BFLE9VDlZqsryU-UA3BoD_image_004.png\\\",\\n \\\"duration\\\": 6\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/1.5/lite/image-to-video\\\",\\n \\\"prompt\\\": \\\"Medieval knight in ornate armor walking through a mystical forest, bioluminescent plants pulsing with light, ancient stone ruins overgrown with glowing vines, over-the-shoulder camera, dark fantasy aesthetic, volumetric fog and Lumen lighting\\\",\\n \\\"image\\\": \\\"https://v3b.fal.media/files/b/0a8b90e0/BFLE9VDlZqsryU-UA3BoD_image_004.png\\\",\\n \\\"duration\\\": 6\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/1.5/lite/image-to-video\\\",\\n \\\"prompt\\\": \\\"Medieval knight in ornate armor walking through a mystical forest, bioluminescent plants pulsing with light, ancient stone ruins overgrown with glowing vines, over-the-shoulder camera, dark fantasy aesthetic, volumetric fog and Lumen lighting\\\",\\n \\\"image\\\": \\\"https://v3b.fal.media/files/b/0a8b90e0/BFLE9VDlZqsryU-UA3BoD_image_004.png\\\",\\n \\\"duration\\\": 6\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"xai/grok-imagine-video/1.5/lite/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Grok Imagine Video 1.5 Lite Image to Video" + modelId: "xai/grok-imagine-video/1.5/lite/image-to-video" + vendor: "xAI" + vendorSlug: "xai" + modelSlug: "grok-imagine-video/1.5/lite/image-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-10-01T20:37:27.18Z" + capabilities: ["image-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/xai/grok-imagine-video/1.5/lite/text-to-video.md b/model-api-reference/video-generation/xai/grok-imagine-video/1.5/lite/text-to-video.md new file mode 100644 index 00000000..64cd7ea9 --- /dev/null +++ b/model-api-reference/video-generation/xai/grok-imagine-video/1.5/lite/text-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Grok Imagine Video 1.5 Lite Text to Video API Reference" +description: "SandBase API reference for model xai/grok-imagine-video/1.5/lite/text-to-video. Call /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/xai/grok-imagine-video/1.5/lite/text-to-video" +apiReferenceJson: "{\"title\":\"Grok Imagine Video 1.5 Lite Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Grok Imagine Video 1.5 Lite, the low-cost tier of xAI's video model, turns a text prompt into a 1-15 second video with native audio.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xai/grok-imagine-video/1.5/lite/text-to-video.\",\"default\":\"xai/grok-imagine-video/1.5/lite/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of the desired video.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 4:3, 3:2, 1:1, 2:3, 3:4, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the output video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds.\",\"default\":\"6\",\"constraints\":\"Range: 1 to 15\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xai/grok-imagine-video/1.5/lite/text-to-video\\\",\\n \\\"prompt\\\": \\\"Anime schoolgirl bursting out of house door, cherry blossoms blowing, morning light, speed lines indicating rush, chibi-ready expressions, classic shojo aesthetic, vibrant colors\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 6\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/1.5/lite/text-to-video\\\",\\n \\\"prompt\\\": \\\"Anime schoolgirl bursting out of house door, cherry blossoms blowing, morning light, speed lines indicating rush, chibi-ready expressions, classic shojo aesthetic, vibrant colors\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 6\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/1.5/lite/text-to-video\\\",\\n \\\"prompt\\\": \\\"Anime schoolgirl bursting out of house door, cherry blossoms blowing, morning light, speed lines indicating rush, chibi-ready expressions, classic shojo aesthetic, vibrant colors\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 6\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"xai/grok-imagine-video/1.5/lite/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Grok Imagine Video 1.5 Lite Text to Video" + modelId: "xai/grok-imagine-video/1.5/lite/text-to-video" + vendor: "xAI" + vendorSlug: "xai" + modelSlug: "grok-imagine-video/1.5/lite/text-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-10-01T20:36:39.299Z" + capabilities: ["text-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/xai/grok-imagine-video/1.5/reference-to-video.md b/model-api-reference/video-generation/xai/grok-imagine-video/1.5/reference-to-video.md new file mode 100644 index 00000000..7c2de744 --- /dev/null +++ b/model-api-reference/video-generation/xai/grok-imagine-video/1.5/reference-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Grok Imagine Video 1.5 Reference to Video API Reference" +description: "SandBase API reference for model xai/grok-imagine-video/1.5/reference-to-video. Call /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/xai/grok-imagine-video/1.5/reference-to-video" +apiReferenceJson: "{\"title\":\"Grok Imagine Video 1.5 Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Grok Imagine Video 1.5 is xAI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xai/grok-imagine-video/1.5/reference-to-video.\",\"default\":\"xai/grok-imagine-video/1.5/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the video. Tag references as , , etc.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the output video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds.\",\"default\":\"8\",\"constraints\":\"Range: 1 to 15\"},{\"name\":\"images\",\"type\":\"array\",\"required\":true,\"description\":\"One or more reference image URLs to guide the video generation as style and content references. Reference in prompt as , , etc. Maximum 7 images.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xai/grok-imagine-video/1.5/reference-to-video\\\",\\n \\\"prompt\\\": \\\"The person from walks through a rainy neon-lit street.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8,\\n \\\"images\\\": [\\n \\\"https://v3b.fal.media/files/b/0a8b90e0/BFLE9VDlZqsryU-UA3BoD_image_004.png\\\"\\n ]\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/1.5/reference-to-video\\\",\\n \\\"prompt\\\": \\\"The person from walks through a rainy neon-lit street.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8,\\n \\\"images\\\": [\\n \\\"https://v3b.fal.media/files/b/0a8b90e0/BFLE9VDlZqsryU-UA3BoD_image_004.png\\\"\\n ]\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/1.5/reference-to-video\\\",\\n \\\"prompt\\\": \\\"The person from walks through a rainy neon-lit street.\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8,\\n \\\"images\\\": [\\n \\\"https://v3b.fal.media/files/b/0a8b90e0/BFLE9VDlZqsryU-UA3BoD_image_004.png\\\"\\n ]\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"xai/grok-imagine-video/1.5/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Grok Imagine Video 1.5 Reference to Video" + modelId: "xai/grok-imagine-video/1.5/reference-to-video" + vendor: "xAI" + vendorSlug: "xai" + modelSlug: "grok-imagine-video/1.5/reference-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-08-01T01:31:24.473Z" + capabilities: ["reference-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/xai/grok-imagine-video/1.5/text-to-video.md b/model-api-reference/video-generation/xai/grok-imagine-video/1.5/text-to-video.md new file mode 100644 index 00000000..faa96137 --- /dev/null +++ b/model-api-reference/video-generation/xai/grok-imagine-video/1.5/text-to-video.md @@ -0,0 +1,21 @@ +--- +title: "Grok Imagine Video 1.5 Text to Video API Reference" +description: "Grok Imagine Video 1.5 Text to Video API reference for SandBase. Use model xai/grok-imagine-video/1.5/text-to-video with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/xai/grok-imagine-video/1.5/text-to-video" +apiReferenceJson: "{\"title\":\"Grok Imagine Video 1.5 Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Grok Imagine Video 1.5 by xAI - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xai/grok-imagine-video/1.5/text-to-video.\",\"default\":\"xai/grok-imagine-video/1.5/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of the desired video.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the output video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p, 1080p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds.\",\"default\":\"6\",\"constraints\":\"Range: 1 to 15\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xai/grok-imagine-video/1.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"Anime schoolgirl bursting out of house door, cherry blossoms blowing, morning light, speed lines indicating rush, chibi-ready expressions, classic shojo aesthetic, vibrant colors\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 6\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/1.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"Anime schoolgirl bursting out of house door, cherry blossoms blowing, morning light, speed lines indicating rush, chibi-ready expressions, classic shojo aesthetic, vibrant colors\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 6\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/1.5/text-to-video\\\",\\n \\\"prompt\\\": \\\"Anime schoolgirl bursting out of house door, cherry blossoms blowing, morning light, speed lines indicating rush, chibi-ready expressions, classic shojo aesthetic, vibrant colors\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 6\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"xai/grok-imagine-video/1.5/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Grok Imagine Video 1.5 Text to Video" + modelId: "xai/grok-imagine-video/1.5/text-to-video" + vendor: "xAI" + vendorSlug: "xai" + modelSlug: "grok-imagine-video/1.5/text-to-video" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-08-01T01:31:06.928Z" + capabilities: ["text-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/xai/grok-imagine-video/edit.md b/model-api-reference/video-generation/xai/grok-imagine-video/edit.md deleted file mode 100644 index f53e0a10..00000000 --- a/model-api-reference/video-generation/xai/grok-imagine-video/edit.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Grok Imagine Video Edit API Reference" -description: "Grok Imagine Video Edit API reference for SandBase. Use model xai/grok-imagine-video/edit with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/xai/grok-imagine-video/edit" -apiReferenceJson: "{\"title\":\"Grok Imagine Video Edit\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Grok Imagine Video Edit is xAI's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xai/grok-imagine-video/edit.\",\"default\":\"xai/grok-imagine-video/edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of the desired edit.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the input video to edit. The video will be resized to a maximum area of 854x480 pixels and truncated to 8 seconds.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the output video.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, 480p, 720p\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xai/grok-imagine-video/edit\\\",\\n \\\"prompt\\\": \\\"Colorize the video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/edit/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/edit\\\",\\n \\\"prompt\\\": \\\"Colorize the video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/edit/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/edit\\\",\\n \\\"prompt\\\": \\\"Colorize the video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/edit/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"xai/grok-imagine-video/edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Grok Imagine Video Edit" - modelId: "xai/grok-imagine-video/edit" - vendor: "xAI" - vendorSlug: "xai" - modelSlug: "grok-imagine-video/edit" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-01-29T00:27:49.985Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/xai/grok-imagine-video/extend.md b/model-api-reference/video-generation/xai/grok-imagine-video/extend.md deleted file mode 100644 index 4eb81b13..00000000 --- a/model-api-reference/video-generation/xai/grok-imagine-video/extend.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Grok Imagine Video Extend API Reference" -description: "Grok Imagine Video Extend API reference for SandBase. Use model xai/grok-imagine-video/extend with /v1/run; see request and response examples." -aside: false -outline: false -apiReferenceKey: "video/xai/grok-imagine-video/extend" -apiReferenceJson: "{\"title\":\"Grok Imagine Video Extend\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Grok Imagine Video Extend is xAI's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xai/grok-imagine-video/extend.\",\"default\":\"xai/grok-imagine-video/extend\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of what should happen next in the video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":false,\"description\":\"URL of the source video to extend. Must be MP4 format (H.264, H.265, or AV1 codec), 2-15 seconds long.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Length of the extension in seconds.\",\"default\":\"6\",\"constraints\":\"Range: 2 to 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xai/grok-imagine-video/extend\\\",\\n \\\"prompt\\\": \\\"The camera slowly zooms out to reveal the city skyline at sunset\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/extend/input_video_0.mp4\\\",\\n \\\"duration\\\": 6\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/extend\\\",\\n \\\"prompt\\\": \\\"The camera slowly zooms out to reveal the city skyline at sunset\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/extend/input_video_0.mp4\\\",\\n \\\"duration\\\": 6\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/extend\\\",\\n \\\"prompt\\\": \\\"The camera slowly zooms out to reveal the city skyline at sunset\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/extend/input_video_0.mp4\\\",\\n \\\"duration\\\": 6\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"xai/grok-imagine-video/extend\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" -seo: - modelName: "Grok Imagine Video Extend" - modelId: "xai/grok-imagine-video/extend" - vendor: "xAI" - vendorSlug: "xai" - modelSlug: "grok-imagine-video/extend" - protocol: "Video Generation Reference" - endpoint: "/v1/run" - publishedAt: "2026-03-24T17:54:09.171Z" - capabilities: ["video-to-video"] - category: "Video Generation" ---- - - diff --git a/model-api-reference/video-generation/xai/grok-imagine-video/image-to-video.md b/model-api-reference/video-generation/xai/grok-imagine-video/image-to-video.md index 40dc168a..432136dc 100644 --- a/model-api-reference/video-generation/xai/grok-imagine-video/image-to-video.md +++ b/model-api-reference/video-generation/xai/grok-imagine-video/image-to-video.md @@ -1,12 +1,12 @@ --- -title: "Grok Imagine Video API Reference — XAI Video / Image To Video" -description: "Grok Imagine Video API reference for SandBase. Use model xai/grok-imagine-video/image-to-video with /v1/run; see request and response examples." +title: "Grok Imagine Video Image to Video API Reference" +description: "Grok Imagine Video Image to Video API reference for SandBase. Use model xai/grok-imagine-video/image-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/xai/grok-imagine-video/image-to-video" -apiReferenceJson: "{\"title\":\"Grok Imagine Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Grok Imagine Video is xAI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xai/grok-imagine-video/image-to-video.\",\"default\":\"xai/grok-imagine-video/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of desired changes or motion in the video.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image for video generation.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the output video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds.\",\"default\":\"6\",\"constraints\":\"Range: 1 to 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xai/grok-imagine-video/image-to-video\\\",\\n \\\"prompt\\\": \\\"Medieval knight in ornate armor walking through a mystical forest, bioluminescent plants pulsing with light, ancient stone ruins overgrown with glowing vines, over-the-shoulder camera, dark fantasy aesthetic, volumetric fog and Lumen lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/image-to-video\\\",\\n \\\"prompt\\\": \\\"Medieval knight in ornate armor walking through a mystical forest, bioluminescent plants pulsing with light, ancient stone ruins overgrown with glowing vines, over-the-shoulder camera, dark fantasy aesthetic, volumetric fog and Lumen lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/image-to-video\\\",\\n \\\"prompt\\\": \\\"Medieval knight in ornate armor walking through a mystical forest, bioluminescent plants pulsing with light, ancient stone ruins overgrown with glowing vines, over-the-shoulder camera, dark fantasy aesthetic, volumetric fog and Lumen lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6,\\n \\\"aspect_ratio\\\": \\\"21:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"xai/grok-imagine-video/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Grok Imagine Video Image to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Grok Imagine Video is xAI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xai/grok-imagine-video/image-to-video.\",\"default\":\"xai/grok-imagine-video/image-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of desired changes or motion in the video.\"},{\"name\":\"image\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input image for video generation.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the output video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds.\",\"default\":\"6\",\"constraints\":\"Range: 1 to 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"Output aspect ratio. Omit to match the input image.\",\"constraints\":\"Allowed values: 16:9, 4:3, 3:2, 1:1, 2:3, 3:4, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xai/grok-imagine-video/image-to-video\\\",\\n \\\"prompt\\\": \\\"Medieval knight in ornate armor walking through a mystical forest, bioluminescent plants pulsing with light, ancient stone ruins overgrown with glowing vines, over-the-shoulder camera, dark fantasy aesthetic, volumetric fog and Lumen lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/image-to-video\\\",\\n \\\"prompt\\\": \\\"Medieval knight in ornate armor walking through a mystical forest, bioluminescent plants pulsing with light, ancient stone ruins overgrown with glowing vines, over-the-shoulder camera, dark fantasy aesthetic, volumetric fog and Lumen lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/image-to-video\\\",\\n \\\"prompt\\\": \\\"Medieval knight in ornate armor walking through a mystical forest, bioluminescent plants pulsing with light, ancient stone ruins overgrown with glowing vines, over-the-shoulder camera, dark fantasy aesthetic, volumetric fog and Lumen lighting\\\",\\n \\\"image\\\": \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/image-to-video/input_image_0.png\\\",\\n \\\"duration\\\": 6,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"xai/grok-imagine-video/image-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Grok Imagine Video" + modelName: "Grok Imagine Video Image to Video" modelId: "xai/grok-imagine-video/image-to-video" vendor: "xAI" vendorSlug: "xai" diff --git a/model-api-reference/video-generation/xai/grok-imagine-video/reference-to-video.md b/model-api-reference/video-generation/xai/grok-imagine-video/reference-to-video.md index 5f9cb067..ad676779 100644 --- a/model-api-reference/video-generation/xai/grok-imagine-video/reference-to-video.md +++ b/model-api-reference/video-generation/xai/grok-imagine-video/reference-to-video.md @@ -4,7 +4,7 @@ description: "Grok Imagine Video Reference to Video API reference for SandBase. aside: false outline: false apiReferenceKey: "video/xai/grok-imagine-video/reference-to-video" -apiReferenceJson: "{\"title\":\"Grok Imagine Video Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Grok Imagine Video is xAI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xai/grok-imagine-video/reference-to-video.\",\"default\":\"xai/grok-imagine-video/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the video to generate. Use @Image1, @Image2, etc. to reference specific images from reference_image_urls in order.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the output video.\",\"default\":\"480p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds.\",\"default\":\"8\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"reference_image_urls\",\"type\":\"array\",\"required\":false,\"description\":\"One or more reference image URLs to guide the video generation as style and content references. Reference in prompt as @Image1, @Image2, etc. Maximum 7 images.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"image-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xai/grok-imagine-video/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A @Image1 running through a sunlit meadow, cinematic slow motion\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A @Image1 running through a sunlit meadow, cinematic slow motion\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A @Image1 running through a sunlit meadow, cinematic slow motion\\\",\\n \\\"aspect_ratio\\\": \\\"21:9\\\",\\n \\\"duration\\\": 8\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"xai/grok-imagine-video/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Grok Imagine Video Reference to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Grok Imagine Video is xAI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xai/grok-imagine-video/reference-to-video.\",\"default\":\"xai/grok-imagine-video/reference-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text prompt describing the video to generate. Use @Image1, @Image2, etc. to reference specific images from reference_image_urls in order.\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 4:3, 3:2, 1:1, 2:3, 3:4, 9:16\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the output video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds.\",\"default\":\"8\",\"constraints\":\"Range: 1 to 10\"},{\"name\":\"reference_image_urls\",\"type\":\"array\",\"required\":true,\"description\":\"One or more reference image URLs to guide the video generation as style and content references. Reference in prompt as @Image1, @Image2, etc. Maximum 7 images.\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"reference-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xai/grok-imagine-video/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A @Image1 running through a sunlit meadow, cinematic slow motion\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 8,\\n \\\"reference_image_urls\\\": [\\n \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/reference-to-video/input_reference_image_urls_0.png\\\"\\n ]\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A @Image1 running through a sunlit meadow, cinematic slow motion\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 8,\\n \\\"reference_image_urls\\\": [\\n \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/reference-to-video/input_reference_image_urls_0.png\\\"\\n ]\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/reference-to-video\\\",\\n \\\"prompt\\\": \\\"A @Image1 running through a sunlit meadow, cinematic slow motion\\\",\\n \\\"aspect_ratio\\\": \\\"16:9\\\",\\n \\\"duration\\\": 8,\\n \\\"reference_image_urls\\\": [\\n \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/reference-to-video/input_reference_image_urls_0.png\\\"\\n ]\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"xai/grok-imagine-video/reference-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: modelName: "Grok Imagine Video Reference to Video" modelId: "xai/grok-imagine-video/reference-to-video" @@ -14,7 +14,7 @@ seo: protocol: "Video Generation Reference" endpoint: "/v1/run" publishedAt: "2026-03-24T17:55:41.616Z" - capabilities: ["image-to-video"] + capabilities: ["reference-to-video"] category: "Video Generation" --- diff --git a/model-api-reference/video-generation/xai/grok-imagine-video/text-to-video.md b/model-api-reference/video-generation/xai/grok-imagine-video/text-to-video.md index 40923912..55c1813a 100644 --- a/model-api-reference/video-generation/xai/grok-imagine-video/text-to-video.md +++ b/model-api-reference/video-generation/xai/grok-imagine-video/text-to-video.md @@ -1,12 +1,12 @@ --- -title: "Grok Imagine Video API Reference — XAI Video / Text To Video" -description: "Grok Imagine Video API reference for SandBase. Use model xai/grok-imagine-video/text-to-video with /v1/run; see request and response examples." +title: "Grok Imagine Video Text to Video API Reference" +description: "Grok Imagine Video Text to Video API reference for SandBase. Use model xai/grok-imagine-video/text-to-video with /v1/run; see request and response examples." aside: false outline: false apiReferenceKey: "video/xai/grok-imagine-video/text-to-video" -apiReferenceJson: "{\"title\":\"Grok Imagine Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Grok Imagine Video by xAI - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xai/grok-imagine-video/text-to-video.\",\"default\":\"xai/grok-imagine-video/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of the desired video.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the output video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds.\",\"default\":\"6\",\"constraints\":\"Range: 1 to 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xai/grok-imagine-video/text-to-video\\\",\\n \\\"prompt\\\": \\\"Anime schoolgirl bursting out of house door, cherry blossoms blowing, morning light, speed lines indicating rush, chibi-ready expressions, classic shojo aesthetic, vibrant colors\\\",\\n \\\"duration\\\": 6,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/text-to-video\\\",\\n \\\"prompt\\\": \\\"Anime schoolgirl bursting out of house door, cherry blossoms blowing, morning light, speed lines indicating rush, chibi-ready expressions, classic shojo aesthetic, vibrant colors\\\",\\n \\\"duration\\\": 6,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/text-to-video\\\",\\n \\\"prompt\\\": \\\"Anime schoolgirl bursting out of house door, cherry blossoms blowing, morning light, speed lines indicating rush, chibi-ready expressions, classic shojo aesthetic, vibrant colors\\\",\\n \\\"duration\\\": 6,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"xai/grok-imagine-video/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +apiReferenceJson: "{\"title\":\"Grok Imagine Video Text to Video\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Grok Imagine Video by xAI - generate cinematic videos from text descriptions with AI. Create high-quality video content with natural motion, camera control, and optional audio generation.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xai/grok-imagine-video/text-to-video.\",\"default\":\"xai/grok-imagine-video/text-to-video\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of the desired video.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the output video.\",\"default\":\"720p\",\"constraints\":\"Allowed values: 480p, 720p\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Video duration in seconds.\",\"default\":\"6\",\"constraints\":\"Range: 1 to 15\"},{\"name\":\"aspect_ratio\",\"type\":\"string\",\"required\":false,\"description\":\"The aspect ratio of the generated image.\",\"default\":\"16:9\",\"constraints\":\"Allowed values: 16:9, 4:3, 3:2, 1:1, 2:3, 3:4, 9:16\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"text-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xai/grok-imagine-video/text-to-video\\\",\\n \\\"prompt\\\": \\\"Anime schoolgirl bursting out of house door, cherry blossoms blowing, morning light, speed lines indicating rush, chibi-ready expressions, classic shojo aesthetic, vibrant colors\\\",\\n \\\"duration\\\": 6,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/text-to-video\\\",\\n \\\"prompt\\\": \\\"Anime schoolgirl bursting out of house door, cherry blossoms blowing, morning light, speed lines indicating rush, chibi-ready expressions, classic shojo aesthetic, vibrant colors\\\",\\n \\\"duration\\\": 6,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/text-to-video\\\",\\n \\\"prompt\\\": \\\"Anime schoolgirl bursting out of house door, cherry blossoms blowing, morning light, speed lines indicating rush, chibi-ready expressions, classic shojo aesthetic, vibrant colors\\\",\\n \\\"duration\\\": 6,\\n \\\"aspect_ratio\\\": \\\"16:9\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"xai/grok-imagine-video/text-to-video\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" seo: - modelName: "Grok Imagine Video" + modelName: "Grok Imagine Video Text to Video" modelId: "xai/grok-imagine-video/text-to-video" vendor: "xAI" vendorSlug: "xai" diff --git a/model-api-reference/video-generation/xai/grok-imagine-video/video-edit.md b/model-api-reference/video-generation/xai/grok-imagine-video/video-edit.md new file mode 100644 index 00000000..ce327bd1 --- /dev/null +++ b/model-api-reference/video-generation/xai/grok-imagine-video/video-edit.md @@ -0,0 +1,21 @@ +--- +title: "Grok Imagine Video Edit API Reference" +description: "Grok Imagine Video Edit API reference for SandBase. Use model xai/grok-imagine-video/video-edit with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/xai/grok-imagine-video/video-edit" +apiReferenceJson: "{\"title\":\"Grok Imagine Video Edit\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Grok Imagine Video Edit is xAI's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xai/grok-imagine-video/video-edit.\",\"default\":\"xai/grok-imagine-video/video-edit\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of the desired edit.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the input video to edit. The video will be resized to a maximum area of 854x480 pixels and truncated to 8 seconds.\"},{\"name\":\"resolution\",\"type\":\"string\",\"required\":false,\"description\":\"Resolution of the output video.\",\"default\":\"auto\",\"constraints\":\"Allowed values: auto, 480p, 720p\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xai/grok-imagine-video/video-edit\\\",\\n \\\"prompt\\\": \\\"Colorize the video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/edit/input_video_0.mp4\\\"\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/video-edit\\\",\\n \\\"prompt\\\": \\\"Colorize the video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/edit/input_video_0.mp4\\\"\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/video-edit\\\",\\n \\\"prompt\\\": \\\"Colorize the video\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/edit/input_video_0.mp4\\\"\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"xai/grok-imagine-video/video-edit\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Grok Imagine Video Edit" + modelId: "xai/grok-imagine-video/video-edit" + vendor: "xAI" + vendorSlug: "xai" + modelSlug: "grok-imagine-video/video-edit" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-01-29T00:27:49.985Z" + capabilities: ["video-to-video"] + category: "Video Generation" +--- + + diff --git a/model-api-reference/video-generation/xai/grok-imagine-video/video-extend.md b/model-api-reference/video-generation/xai/grok-imagine-video/video-extend.md new file mode 100644 index 00000000..c31cb8ec --- /dev/null +++ b/model-api-reference/video-generation/xai/grok-imagine-video/video-extend.md @@ -0,0 +1,21 @@ +--- +title: "Grok Imagine Video Extend API Reference" +description: "Grok Imagine Video Extend API reference for SandBase. Use model xai/grok-imagine-video/video-extend with /v1/run; see request and response examples." +aside: false +outline: false +apiReferenceKey: "video/xai/grok-imagine-video/video-extend" +apiReferenceJson: "{\"title\":\"Grok Imagine Video Extend\",\"operation\":\"Video Generation\",\"method\":\"POST\",\"path\":\"/v1/run\",\"description\":\"Grok Imagine Video Extend is xAI's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.\",\"groups\":[{\"title\":\"Request body\",\"description\":\"Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.\",\"fields\":[{\"name\":\"model\",\"type\":\"string\",\"required\":true,\"description\":\"Model identifier. Set to xai/grok-imagine-video/video-extend.\",\"default\":\"xai/grok-imagine-video/video-extend\"},{\"name\":\"prompt\",\"type\":\"string\",\"required\":true,\"description\":\"Text description of what should happen next in the video.\"},{\"name\":\"video\",\"type\":\"string\",\"required\":true,\"description\":\"URL of the source video to extend. Must be MP4 format (H.264, H.265, or AV1 codec), 2-15 seconds long.\"},{\"name\":\"duration\",\"type\":\"integer\",\"required\":false,\"description\":\"Length of the extension in seconds.\",\"default\":\"6\",\"constraints\":\"Range: 2 to 10\"}]},{\"title\":\"Response Schema\",\"description\":\"The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.\"},{\"name\":\"status\",\"type\":\"string\",\"required\":true,\"description\":\"Current public run status.\",\"constraints\":\"Allowed values: pending, running, completed, failed, timeout\"},{\"name\":\"model\",\"type\":\"string\",\"required\":false,\"description\":\"Public SandBase model name used for this run.\"},{\"name\":\"outputs\",\"type\":\"array\",\"required\":false,\"description\":\"Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.\"},{\"name\":\"error\",\"type\":\"object\",\"required\":false,\"description\":\"Present only for failed or timeout runs. Contains a public error type and sanitized message.\"},{\"name\":\"error.type\",\"type\":\"string\",\"required\":false,\"description\":\"Stable public error category.\"},{\"name\":\"error.message\",\"type\":\"string\",\"required\":false,\"description\":\"Sanitized error message safe to show to clients.\"},{\"name\":\"usage\",\"type\":\"object\",\"required\":false,\"description\":\"Usage details when available.\"}]},{\"title\":\"Model capabilities\",\"fields\":[{\"name\":\"capability_tags\",\"type\":\"array\",\"required\":true,\"description\":\"Capabilities declared by the model registry.\",\"default\":\"video-to-video\"},{\"name\":\"execution_mode\",\"type\":\"string\",\"required\":true,\"description\":\"Execution mode declared by the model registry.\",\"default\":\"async\"}]}],\"examples\":[{\"label\":\"cURL\",\"language\":\"bash\",\"code\":\"# 1. Submit a generation request\\ncurl -X POST https://api.sandbase.ai/v1/run \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\" \\\\\\n -H \\\"Content-Type: application/json\\\" \\\\\\n -d '{\\n \\\"model\\\": \\\"xai/grok-imagine-video/video-extend\\\",\\n \\\"prompt\\\": \\\"The camera slowly zooms out to reveal the city skyline at sunset\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/extend/input_video_0.mp4\\\",\\n \\\"duration\\\": 6\\n}'\\n\\n# 2. If the response is still running, poll the returned id\\ncurl https://api.sandbase.ai/v1/run/f3d2e8a1-7c4b-4a12-9d2e-123456789abc \\\\\\n -H \\\"Authorization: Bearer $SANDBASE_API_KEY\\\"\"},{\"label\":\"Python\",\"language\":\"python\",\"code\":\"import os\\nimport time\\nimport requests\\n\\napi_url = \\\"https://api.sandbase.ai\\\"\\nheaders = {\\n \\\"Authorization\\\": f\\\"Bearer {os.environ['SANDBASE_API_KEY']}\\\",\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n}\\npayload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/video-extend\\\",\\n \\\"prompt\\\": \\\"The camera slowly zooms out to reveal the city skyline at sunset\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/extend/input_video_0.mp4\\\",\\n \\\"duration\\\": 6\\n}\\n\\nresponse = requests.post(f\\\"{api_url}/v1/run\\\", headers=headers, json=payload)\\nresponse.raise_for_status()\\nresult = response.json()\\n\\nwhile result[\\\"status\\\"] in (\\\"pending\\\", \\\"running\\\"):\\n time.sleep(2)\\n result = requests.get(f\\\"{api_url}/v1/run/\\\" + result[\\\"id\\\"], headers=headers).json()\\n\\nprint(result)\"},{\"label\":\"TypeScript\",\"language\":\"typescript\",\"code\":\"const apiUrl = \\\"https://api.sandbase.ai\\\";\\nconst headers = {\\n Authorization: `Bearer ${process.env.SANDBASE_API_KEY}`,\\n \\\"Content-Type\\\": \\\"application/json\\\",\\n};\\n\\nconst payload = {\\n \\\"model\\\": \\\"xai/grok-imagine-video/video-extend\\\",\\n \\\"prompt\\\": \\\"The camera slowly zooms out to reveal the city skyline at sunset\\\",\\n \\\"video\\\": \\\"https://static.sandbase.ai/examples/xai/grok-imagine-video/extend/input_video_0.mp4\\\",\\n \\\"duration\\\": 6\\n};\\n\\nconst submit = await fetch(apiUrl + \\\"/v1/run\\\", {\\n method: \\\"POST\\\",\\n headers,\\n body: JSON.stringify(payload),\\n});\\nif (!submit.ok) throw new Error(await submit.text());\\nlet result = await submit.json();\\n\\nwhile ([\\\"pending\\\", \\\"running\\\"].includes(result.status)) {\\n await new Promise((resolve) => setTimeout(resolve, 2000));\\n const poll = await fetch(apiUrl + \\\"/v1/run/\\\" + result.id, { headers });\\n if (!poll.ok) throw new Error(await poll.text());\\n result = await poll.json();\\n}\\n\\nconsole.log(result);\"}],\"response\":{\"status\":\"202 Accepted\",\"code\":\"{\\n \\\"id\\\": \\\"f3d2e8a1-7c4b-4a12-9d2e-123456789abc\\\",\\n \\\"model\\\": \\\"xai/grok-imagine-video/video-extend\\\",\\n \\\"status\\\": \\\"running\\\"\\n}\"}}" +seo: + modelName: "Grok Imagine Video Extend" + modelId: "xai/grok-imagine-video/video-extend" + vendor: "xAI" + vendorSlug: "xai" + modelSlug: "grok-imagine-video/video-extend" + protocol: "Video Generation Reference" + endpoint: "/v1/run" + publishedAt: "2026-03-24T17:54:09.171Z" + capabilities: ["video-to-video"] + category: "Video Generation" +--- + + diff --git a/public/llms-full.txt b/public/llms-full.txt index 758e6d56..63d55787 100644 --- a/public/llms-full.txt +++ b/public/llms-full.txt @@ -145,7 +145,7 @@ Video example (async): curl https://api.sandbase.ai/v1/run \ -H "Authorization: Bearer sk-YOUR_KEY" \ -H "Content-Type: application/json" \ - -d '{"model": "kwaivgi/kling-video/3.0/turbo/standard/text-to-video", "prompt": "A drone over mountains", "duration": 5}' + -d '{"model": "kwaivgi/kling-video/v3/standard/text-to-video", "prompt": "A drone over mountains", "duration": 5}' ``` Response: {"id": "6a7b9c10-2d3e-4f50-8a61-23456789abcd", "status": "running"} diff --git a/scripts/generate-llm-model-api-reference.mjs b/scripts/generate-llm-model-api-reference.mjs index 352bde19..a899f301 100644 --- a/scripts/generate-llm-model-api-reference.mjs +++ b/scripts/generate-llm-model-api-reference.mjs @@ -271,8 +271,20 @@ function isEnabled(model) { // Some registry entries remain enabled for runtime compatibility after their // upstream operation has been withdrawn. Keep those entries out of public // pages and navigation when the registry explicitly marks them unavailable. +// Mirror the apiserver public catalog filters (sandbase-apiserver +// internal/service/model.go): models whose name or display name contains the +// hidden fragment, and models tagged protocol-ingress-only, stay routable at +// runtime but never appear in the public catalog. The protocol-ingress-only +// models are documented by hand under official-native-api instead. +const hiddenPublicModelNameFragment = '0622' +const protocolIngressOnlyCapability = 'protocol-ingress-only' + function isPubliclyDocumented(model) { - return !/no longer available online/i.test(String(model.description ?? '')) + if (/no longer available online/i.test(String(model.description ?? ''))) return false + const names = [model.name, model.display_name].map((value) => String(value ?? '').toLowerCase()) + if (names.some((value) => value.includes(hiddenPublicModelNameFragment))) return false + const tags = Array.isArray(model.capability_tags) ? model.capability_tags : [] + return !tags.some((tag) => String(tag).trim().toLowerCase() === protocolIngressOnlyCapability) } function slugPath(model) { @@ -424,6 +436,20 @@ function endpointFor(model, category) { return model.vendor_slug === 'anthropic' ? '/v1/messages' : '/v1/chat/completions' } +// Per-call price notes for Platform APIs are maintained in this repository +// because the registry descriptions no longer carry them. Keep them on the +// published pages until pricing for these operations is finalized. +const platformPriceNotes = JSON.parse( + fs.readFileSync(path.join(docsRoot, 'scripts', 'platform-api-price-notes.json'), 'utf8'), +) + +function platformDescription(model) { + const description = cleanDescription(model) + const note = platformPriceNotes[model.name] + if (!note || description.includes(note)) return description + return `${description.replace(/\s+$/, '')}${/[.!?。]$/.test(description) ? '' : '.'} ${note}` +} + function seoDescription(model, protocol, category) { const endpoint = endpointFor(model, category) const modelTitle = cleanTitle(model) @@ -432,7 +458,11 @@ function seoDescription(model, protocol, category) { if (base.length <= 170) return base const concise = `SandBase API reference for model ${model.name}. Call ${endpoint}; see request and response examples.` if (concise.length <= 170) return concise - return `SandBase API reference: ${model.name} via ${endpoint}. See request and response examples.` + const compact = `SandBase API reference: ${model.name} via ${endpoint}. See request and response examples.` + if (compact.length <= 170) return compact + // Platform endpoints repeat the long operation name; drop the endpoint so + // the SEO description stays within the 170-character limit. + return `SandBase API reference for ${model.name}. See request and response examples.`.slice(0, 170) } function yamlString(value) { @@ -756,15 +786,19 @@ function exampleValueForField(name, schema = {}) { function requestBodyForSchema(model) { const schema = requestSchema(model) const required = new Set(schema.required ?? []) - const orderedNames = Array.isArray(schema['x-order-properties']) ? schema['x-order-properties'] : Object.keys(schema.properties ?? {}) + // x-order-properties can lag behind the schema; append any property it + // omits so required fields are never dropped from the example. + const declaredOrder = Array.isArray(schema['x-order-properties']) ? schema['x-order-properties'] : [] + const orderedNames = [...new Set([...declaredOrder, ...Object.keys(schema.properties ?? {})])] + const preferredOptional = ['prompt', 'image', 'image_url', 'video', 'video_url', 'audio', 'audio_url', 'text', 'input', 'voice', 'aspect_ratio', 'duration', 'output_format'] + const names = orderedNames.filter((name) => schema.properties?.[name] && name !== 'model') + // Required fields are always present so the example is accepted as-is; + // optional illustrative fields only fill the remaining example slots. + const optionalBudget = Math.max(0, 6 - 1 - names.filter((name) => required.has(name)).length) + const optional = new Set(names.filter((name) => !required.has(name) && preferredOptional.includes(name)).slice(0, optionalBudget)) const body = { model: model.name } - for (const name of orderedNames) { - const fieldSchema = schema.properties?.[name] - if (!fieldSchema || name === 'model') continue - if (required.has(name) || ['prompt', 'image', 'image_url', 'video', 'video_url', 'audio', 'audio_url', 'text', 'input', 'voice', 'aspect_ratio', 'duration', 'output_format'].includes(name)) { - body[name] = exampleValueForField(name, fieldSchema) - } - if (Object.keys(body).length >= 6) break + for (const name of names) { + if (required.has(name) || optional.has(name)) body[name] = exampleValueForField(name, schema.properties[name]) } return body } @@ -1153,7 +1187,7 @@ function platformReference(model) { operation: `${model.vendor} API Operation`, method: 'POST', path: apiPath, - description: cleanDescription(model), + description: platformDescription(model), groups: [ { title: 'Request body', @@ -1589,6 +1623,43 @@ const removedPlatformPages = requestedModelNames.size ? 0 : cleanLegacyPlatformOverview() + cleanManagedPlatformPages(expectedPlatformPages) +// Remove generated model pages whose registry entry is disabled, deleted, or +// hidden from the public catalog. Only files emitted by this generator (their +// frontmatter carries an apiReferenceKey for the category) are touched; +// hand-written pages such as "reference moved" redirects are left alone. +function cleanManagedModelPages(category, expectedPaths, pagesRoot = path.join(modelApiRoot, category.slug)) { + let removed = 0 + if (!fs.existsSync(pagesRoot)) return removed + const keyPrefix = `apiReferenceKey: ${yamlString(`${category.key}/`).slice(0, -1)}` + const visit = (dir) => { + for (const entry of fs.readdirSync(dir, { withFileTypes: true })) { + const fullPath = path.join(dir, entry.name) + if (entry.isDirectory()) { + visit(fullPath) + continue + } + if (!entry.name.endsWith('.md') || expectedPaths.has(path.resolve(fullPath))) continue + const content = fs.readFileSync(fullPath, 'utf8') + const frontmatter = content.startsWith('---\n') ? content.slice(0, content.indexOf('\n---', 4) + 1) : '' + if (!frontmatter.split('\n').some((line) => line.startsWith(keyPrefix))) continue + fs.unlinkSync(fullPath) + removed += 1 + } + if (dir !== pagesRoot && fs.readdirSync(dir).length === 0) fs.rmdirSync(dir) + } + visit(pagesRoot) + return removed +} + +const removedModelPages = requestedModelNames.size + ? 0 + : categoryData + .filter((category) => category.key !== 'api') + .reduce((total, category) => total + cleanManagedModelPages( + category, + new Set(category.models.map((model) => path.resolve(modelApiRoot, category.slug, `${slugPath(model)}.md`))), + ), 0) + const seoTitleCounts = new Map() for (const category of categoryData) { for (const model of category.models) { @@ -1848,11 +1919,13 @@ const platformInputModels = walk(apiRegistryRoot).map((file) => JSON.parse(fs.re const platformDisabledCount = platformInputModels.filter((model) => model.enabled === false).length const platformNonApiCount = platformInputModels.filter((model) => model.type !== 'api').length console.log(`Platform APIs skipped ${platformInputModels.length - platformData.models.length} entries (disabled: ${platformDisabledCount}, non-api: ${platformNonApiCount}); removed ${removedPlatformPages} managed orphan pages.`) +console.log(`Model categories removed ${removedModelPages} generated pages that are no longer in the public catalog.`) export { assertExampleMatchesSchema, assertUniquePlatformModels, cleanLegacyPlatformOverview, + cleanManagedModelPages, cleanManagedPlatformPages, classifyPlatformModel, loadModels, @@ -1860,6 +1933,7 @@ export { normalizePlatformClassifierText, isPubliclyDocumented, platformGeneratedMarker, + platformDescription, platformFields, platformReference, publicPlatformResponseBody, diff --git a/scripts/generate-llm-model-api-reference.test.mjs b/scripts/generate-llm-model-api-reference.test.mjs index 1c123c1b..84b975ff 100644 --- a/scripts/generate-llm-model-api-reference.test.mjs +++ b/scripts/generate-llm-model-api-reference.test.mjs @@ -11,9 +11,11 @@ import { assertUniquePlatformModels, classifyPlatformModel, cleanLegacyPlatformOverview, + cleanManagedModelPages, cleanManagedPlatformPages, isPubliclyDocumented, normalizePlatformClassifierText, + platformDescription, platformGeneratedMarker, platformFields, platformReference, @@ -175,7 +177,7 @@ describe('Platform API reference generator', () => { assert.match(config, /sameAs: modelDetailUrl/) const operation = fs.readFileSync(path.join(platformRoot, 'cloudsway', 'search.md'), 'utf8') - assert.match(operation, /^ endpoint: "\/v1\/run"$/m) + assert.match(operation, /^ endpoint: "\/v1\/api\/cloudsway\/search"$/m) assert.match(operation, /^ category: "APIs"$/m) }) @@ -297,9 +299,9 @@ describe('Platform API reference generator', () => { generatedPlatformData(platform).groups.map((group) => [group.label, group.operations.length]), ])) assert.deepEqual(snapshot, { - tiktok: [['Ads', 12], ['Creator Analytics', 14], ['Search & Discovery', 34], ['Comments & Engagement', 7], ['Live', 15], ['Commerce', 14], ['Messaging', 1], ['Content & Video', 22], ['Users & Accounts', 18], ['Utilities', 21], ['Other', 2]], - youtube: [['Search & Discovery', 11], ['Comments & Community', 5], ['Videos & Media', 15], ['Channels & Users', 7]], - dataforseo: [['SERP', 26], ['Keywords', 8], ['Backlinks', 8], ['Business Data', 6], ['App Data', 5], ['Merchant', 4], ['On-Page', 6], ['Domain Analytics', 6], ['Content Analysis', 4], ['Labs', 12]], + tiktok: [['Ads', 11], ['Creator Analytics', 14], ['Search & Discovery', 31], ['Comments & Engagement', 5], ['Live', 15], ['Commerce', 8], ['Messaging', 1], ['Content & Video', 20], ['Users & Accounts', 16], ['Utilities', 21], ['Other', 2]], + youtube: [['Search & Discovery', 10], ['Comments & Community', 5], ['Videos & Media', 11], ['Channels & Users', 7]], + dataforseo: [['SERP', 26], ['Keywords', 8], ['Backlinks', 7], ['Business Data', 2], ['Merchant', 4], ['On-Page', 5], ['Domain Analytics', 6], ['Content Analysis', 4], ['Labs', 12]], firecrawl: [['Crawl', 1], ['Scrape', 2], ['Search', 1], ['Map', 1]], }) }) @@ -340,13 +342,18 @@ describe('Platform API reference generator', () => { }) test('keeps required media arrays as arrays in generated model examples', () => { - const page = fs.readFileSync(path.join(docsRoot, 'model-api-reference', 'video-generation', 'minimax', 'h3', 'video-regeneration.md'), 'utf8') - const encoded = page.match(/^apiReferenceJson: (.+)$/m)?.[1] - assert.ok(encoded) - const reference = JSON.parse(JSON.parse(encoded)) - for (const example of reference.examples) { - assert.match(example.code, /["']?videos["']?\s*[:=]\s*\[/, `${example.language} must submit videos as an array`) + const readReference = (...segments) => { + const page = fs.readFileSync(path.join(docsRoot, 'model-api-reference', ...segments), 'utf8') + const encoded = page.match(/^apiReferenceJson: (.+)$/m)?.[1] + assert.ok(encoded, segments.join('/')) + return JSON.parse(JSON.parse(encoded)) + } + const imageReference = readReference('video-generation', 'xai', 'grok-imagine-video', '1.5', 'reference-to-video.md') + assert.ok(imageReference.groups[0].fields.some((field) => field.name === 'images' && field.required)) + for (const example of imageReference.examples) { + assert.match(example.code, /["']?images["']?\s*[:=]\s*\[/, `${example.language} must submit required images as an array`) } + const reference = readReference('video-generation', 'minimax', 'h3', 'reference-to-video.md') const responseFields = reference.groups.find((group) => group.title === 'Response Schema').fields assert.deepEqual( responseFields.filter((field) => field.name.startsWith('usage.')).map((field) => field.name).sort(), @@ -496,6 +503,42 @@ describe('Platform API reference generator', () => { assert.throws(() => assertUniquePlatformModels([{ ...model, name: 'wrong/name' }], { slug: 'platform-apis' }), /name must equal vendor_slug\/model_slug/) }) + test('hides models the public catalog hides', () => { + assert.equal(isPubliclyDocumented({ name: 'vendor/model', capability_tags: ['chat'] }), true) + assert.equal(isPubliclyDocumented({ name: 'vidu/q3/image-to-video-exp0622' }), false) + assert.equal(isPubliclyDocumented({ name: 'vendor/model', display_name: 'Model Exp0622' }), false) + assert.equal(isPubliclyDocumented({ name: 'openai/gpt-image-2-official', capability_tags: ['text-to-image', ' Protocol-Ingress-Only '] }), false) + assert.equal(isPubliclyDocumented({ name: 'vendor/model', description: 'This model is no longer available online.' }), false) + }) + test('removes only generated model pages for the category', () => { + const root = fs.mkdtempSync(path.join(os.tmpdir(), 'sandbase-model-pages-')) + const category = { key: 'video', slug: 'video-generation' } + const page = (key) => `---\ntitle: "x"\napiReferenceKey: "${key}"\n---\n\n\n` + const kept = path.join(root, 'vendor', 'kept.md') + const orphan = path.join(root, 'vendor', 'old', 'orphan.md') + const otherCategory = path.join(root, 'vendor', 'other.md') + const redirect = path.join(root, 'vendor', 'moved.md') + fs.mkdirSync(path.dirname(orphan), { recursive: true }) + fs.writeFileSync(kept, page('video/vendor/kept')) + fs.writeFileSync(orphan, page('video/vendor/old/orphan')) + fs.writeFileSync(otherCategory, page('image/vendor/other')) + fs.writeFileSync(redirect, '---\ntitle: "Moved"\ncanonical: /docs/elsewhere\n---\n# This page has moved\n') + assert.equal(cleanManagedModelPages(category, new Set([path.resolve(kept)]), root), 1) + assert.equal(fs.existsSync(kept), true) + assert.equal(fs.existsSync(orphan), false) + assert.equal(fs.existsSync(path.dirname(orphan)), false) + assert.equal(fs.existsSync(otherCategory), true) + assert.equal(fs.existsSync(redirect), true) + }) + test('keeps maintained per-call price notes on Platform API descriptions', () => { + const notes = JSON.parse(fs.readFileSync(path.join(docsRoot, 'scripts', 'platform-api-price-notes.json'), 'utf8')) + const [name, note] = Object.entries(notes)[0] + const [vendor_slug, ...rest] = name.split('/') + const model = { name, vendor_slug, model_slug: rest.join('/'), description: 'Fetch data' } + assert.equal(platformDescription(model), `Fetch data. ${note}`) + assert.equal(platformDescription({ ...model, description: `Fetch data. ${note}` }), `Fetch data. ${note}`) + assert.equal(platformDescription({ ...model, name: 'vendor/without-note' }), 'Fetch data') + }) test('removes only managed orphan pages and refuses unknown files', () => { const root = fs.mkdtempSync(path.join(os.tmpdir(), 'sandbase-platform-pages-')) const expected = path.join(root, 'vendor', 'kept.md') diff --git a/scripts/platform-api-price-notes.json b/scripts/platform-api-price-notes.json new file mode 100644 index 00000000..b02ada69 --- /dev/null +++ b/scripts/platform-api-price-notes.json @@ -0,0 +1,100 @@ +{ + "douyin/app-v3/multi-video": "This interface charges a fixed price of 0.001$ * 10 = 0.01$ each time.", + "douyin/app-v3/multi-video-high-quality-play-url": "This interface is currently on sale for $0.25, and will return to the original price of $0.5 after the event ends. If there are less than 50 videos, they will be charged as 50 videos.", + "douyin/app-v3/multi-video-statistics": "Price: 0.025$ each time.", + "douyin/app-v3/multi-video-v2": "This interface charges a fixed price of 0.001$ * 50 = 0.05$ each time.", + "douyin/app-v3/video-high-quality-play-url": "Price: 0.005$ each time.", + "douyin/web/multi-video": "This interface charges a fixed price of 0.001$ * 50 = 0.05$ each time.", + "douyin/web/multi-video-high-quality-play-url": "This interface is currently on sale for $0.25, and will return to the original price of $0.5 after the event ends. If there are less than 50 videos, they will be charged as 50 videos.", + "douyin/web/video-high-quality-play-url": "Price: 0.005$ each time.", + "douyin/xingtu-v2/author-audience-distribution": "Price: 0.002$ / time", + "douyin/xingtu-v2/author-base-info": "Price: 0.002$ / time", + "douyin/xingtu-v2/author-business-card-info": "Price: 0.002$ / time", + "douyin/xingtu-v2/author-content-hot-keywords": "Price: 0.002$ / time", + "douyin/xingtu-v2/author-convert-ability": "Price: 0.002$ / time", + "douyin/xingtu-v2/author-convert-videos-or-products": "Price: 0.002$ / time", + "douyin/xingtu-v2/author-cp-info": "Price: 0.002$ / time", + "douyin/xingtu-v2/author-daily-fans": "Price: 0.002$ / time", + "douyin/xingtu-v2/author-fans-distribution": "Price: 0.002$ / time", + "douyin/xingtu-v2/author-homepage-videos": "Price: 0.002$ / time", + "douyin/xingtu-v2/author-hot-comment-tokens": "Price: 0.002$ / time", + "douyin/xingtu-v2/author-link-info": "Price: 0.002$ / time", + "douyin/xingtu-v2/author-local-info": "Price: 0.002$ / time", + "douyin/xingtu-v2/author-market-fields": "Price: 0.002$ / time", + "douyin/xingtu-v2/author-show-items": "Price: 0.002$ / time", + "douyin/xingtu-v2/author-spread-info": "Price: 0.002$ / time", + "douyin/xingtu-v2/content-trend-guide": "Price: 0.002$ / time", + "douyin/xingtu-v2/demander-mcn-list": "Price: 0.002$ / time", + "douyin/xingtu-v2/ip-activity-detail": "Price: 0.002$ / time", + "douyin/xingtu-v2/ip-activity-industry-list": "Price: 0.002$ / time", + "douyin/xingtu-v2/ip-activity-list": "Price: 0.002$ / time", + "douyin/xingtu-v2/item-play-count": "Price: 0.002$ / time", + "douyin/xingtu-v2/multi-get-author-info": "Price: 0.002$ / time", + "douyin/xingtu-v2/multi-get-item-stats": "Upstream bills as 20 regardless (fewer than 20 still counts as 20); fill 20 for best value. Price: 0.04$ / time (= 20 × single 0.002)", + "douyin/xingtu-v2/playlet-actor-rank-catalog": "Price: 0.002$ / time", + "douyin/xingtu-v2/playlet-actor-rank-list": "Price: 0.002$ / time", + "douyin/xingtu-v2/ranking-list-catalog": "Price: 0.002$ / time", + "douyin/xingtu-v2/ranking-list-data": "Price: 0.002$ / time", + "douyin/xingtu-v2/recommend-for-star-authors": "Price: 0.002$ / time", + "douyin/xingtu-v2/resource-list": "Price: 0.002$ / time", + "douyin/xingtu-v2/search-anchor": "Price: 0.002$ / time", + "douyin/xingtu-v2/search-creator": "Price: 0.002$ / time", + "douyin/xingtu-v2/search-toutiao-creator": "Price: 0.002$ / time", + "douyin/xingtu-v2/user-profile-qrcode": "Price: 0.002$ / time", + "douyin/xingtu-v2/xingtu-kolid-by-sec-user-id": "Price: 0.002$ / time", + "douyin/xingtu-v2/xingtu-kolid-by-uid": "Price: 0.002$ / time", + "douyin/xingtu-v2/xingtu-kolid-by-unique-id": "Price: 0.002$ / time", + "douyin/xingtu/author-content-hot-comment-keywords-v1": "Price: 0.02$ / time", + "douyin/xingtu/author-hot-comment-tokens-v1": "Price: 0.02$ / time", + "douyin/xingtu/kol-audience-portrait-v1": "Price: 0.02$ / time", + "douyin/xingtu/kol-base-info-v1": "Price: 0.02$ / time", + "douyin/xingtu/kol-convert-video-display-v1": "Price: 0.02$ / time", + "douyin/xingtu/kol-cp-info-v1": "Price: 0.02$ / time", + "douyin/xingtu/kol-daily-fans-v1": "Price: 0.02$ / time", + "douyin/xingtu/kol-fans-portrait-v1": "Price: 0.02$ / time", + "douyin/xingtu/kol-link-struct-v1": "Price: 0.02$ / time", + "douyin/xingtu/kol-rec-videos-v1": "Price: 0.02$ / time", + "douyin/xingtu/kol-service-price-v1": "Price: 0.02$ / time", + "douyin/xingtu/kol-touch-distribution-v1": "Price: 0.02$ / time", + "douyin/xingtu/kol-video-performance-v1": "Price: 0.02$ / time", + "douyin/xingtu/kol-xingtu-index-v1": "Price: 0.02$ / time", + "douyin/xingtu/search-kol-v2": "Price: 0.02$ / time", + "douyin/xingtu/sign-image": "Price: 0.001$ / time", + "douyin/xingtu/xingtu-kolid-by-sec-user-id": "Price: 0.001$ / time", + "douyin/xingtu/xingtu-kolid-by-uid": "Price: 0.001$ / time", + "douyin/xingtu/xingtu-kolid-by-unique-id": "Price: 0.001$ / time", + "threads/web/post-detail": "Price: 0.002$ / time", + "threads/web/post-detail-v2": "Price: 0.002$ / time", + "threads/web/search-profiles": "Price: 0.002$ / time", + "threads/web/search-recent": "Price: 0.002$ / time", + "threads/web/user-info": "Price: 0.002$ / time", + "threads/web/user-info-by-id": "Price: 0.002$ / time", + "threads/web/user-posts": "Price: 0.002$ / time", + "threads/web/user-replies": "Price: 0.002$ / time", + "threads/web/user-reposts": "Price: 0.002$ / time", + "tiktok/app-v3/multi-video": "This interface charges a fixed price of 0.001$ * 10 = 0.01$ each time.", + "tiktok/app-v3/multi-video-v2": "This interface charges a fixed price of 0.001$ * 25 = 0.025$ each time.", + "tiktok/web/generate-xgnarly-and-xbogus": "Price: $0.005/time.", + "wechat-channels/v2/channel-id-to-username": "Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.", + "wechat-channels/v2/channel-info": "Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.", + "wechat-channels/v2/collection-videos": "Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.", + "wechat-channels/v2/live-detail": "Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.", + "wechat-channels/v2/live-history": "Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.", + "wechat-channels/v2/search-channel-videos": "Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.", + "wechat-channels/v2/user-collections": "Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.", + "wechat-channels/v2/user-profile": "Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.", + "wechat-channels/v2/user-videos": "Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.", + "wechat-channels/v2/video-comments": "Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.", + "wechat-channels/v2/video-detail": "Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.", + "wechat-channels/v2/video-share-url": "Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.", + "wechat-mp/v2/account-articles": "Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.", + "wechat-mp/v2/account-profile": "Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.", + "wechat-mp/v2/article-ad": "Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.", + "wechat-mp/v2/article-comments": "Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.", + "wechat-mp/v2/article-detail": "Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.", + "wechat-mp/v2/article-stats": "Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.", + "wechat-mp/v2/comment-replies": "Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.", + "wechat-mp/v2/related-articles": "Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.", + "wechat-search/v2/search": "Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.", + "wechat-search/v2/search-videos": "Price: $0.01 per request ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response." +} diff --git a/scripts/validate-built-public-surface.mjs b/scripts/validate-built-public-surface.mjs index f16c9b03..38117cbf 100644 --- a/scripts/validate-built-public-surface.mjs +++ b/scripts/validate-built-public-surface.mjs @@ -47,11 +47,11 @@ const legacySeedance = readFileSync(path.join(dist, 'api-reference', 'volcengine assert.match(legacySeedance, //, 'Legacy Seedance page must remain noindex') // Video models formerly listed under Image Generation keep their old URLs as // noindex aliases that canonicalize to the Video Generation reference. -const movedVideoAlias = readFileSync(path.join(dist, 'model-api-reference', 'image-generation', 'veed', 'subtitles.html'), 'utf8') +const movedVideoAlias = readFileSync(path.join(dist, 'model-api-reference', 'image-generation', 'kwaivgi', 'kling-video', 'v3', 'pro', 'motion-control.html'), 'utf8') assert.match(movedVideoAlias, //, 'Moved video model alias must be noindex') -assert.match(movedVideoAlias, //, 'Moved video model alias must canonicalize to Video Generation') -assert.ok(!sitemap.includes('/docs/model-api-reference/image-generation/veed/subtitles'), 'Moved video model alias must not be in the sitemap') -assert.ok(sitemap.includes('/docs/model-api-reference/video-generation/veed/subtitles'), 'Moved video model reference must be in the sitemap') +assert.match(movedVideoAlias, //, 'Moved video model alias must canonicalize to Video Generation') +assert.ok(!sitemap.includes('/docs/model-api-reference/image-generation/kwaivgi/kling-video/v3/pro/motion-control'), 'Moved video model alias must not be in the sitemap') +assert.ok(sitemap.includes('/docs/model-api-reference/video-generation/kwaivgi/kling-video/v3/pro/motion-control'), 'Moved video model reference must be in the sitemap') const forbidden = [ [/\/v1\/generations(?:\/|\b)/i, 'withdrawn generation API'], diff --git a/scripts/validate-public-api-surface.mjs b/scripts/validate-public-api-surface.mjs index 843ce1c5..352023e6 100644 --- a/scripts/validate-public-api-surface.mjs +++ b/scripts/validate-public-api-surface.mjs @@ -724,7 +724,7 @@ function inspectPublishedSources(directory) { inspectPublishedSources(root) -const h3Models = ['text-to-video', 'image-to-video', 'reference-to-video', 'video-regeneration'] +const h3Models = ['text-to-video', 'image-to-video', 'reference-to-video'] for (const modelSlug of h3Models) { const relative = `model-api-reference/video-generation/minimax/h3/${modelSlug}.md` const content = readFileSync(path.join(root, relative), 'utf8') @@ -742,31 +742,6 @@ for (const modelSlug of h3Models) { /billing_breakdown|provider_cost|upstream_cost|credential|endpoint|task_id/, `${relative} must not expose internal MiniMax H3 settlement or routing fields`, ) - if (modelSlug === 'video-regeneration') { - for (const example of reference.examples) { - assert.match(example.code, /["']?videos["']?\s*[:=]\s*\[/, `${example.language} must submit the required videos array`) - } - } -} - -for (const resolution of ['480p', '720p']) { - const relative = `model-api-reference/video-generation/alibaba/wan/2.2/i2v-${resolution}-lora.md` - const content = readFileSync(path.join(root, relative), 'utf8') - const encoded = content.match(/^apiReferenceJson: (.+)$/m)?.[1] - assert.ok(encoded, `${relative} must contain its generated API reference`) - const reference = JSON.parse(JSON.parse(encoded)) - const requestFields = reference.groups.find((group) => group.title === 'Request body')?.fields ?? [] - const fieldByName = new Map(requestFields.map((field) => [field.name, field])) - assert.equal(fieldByName.get('duration')?.constraints, 'Allowed values: 5, 8', `${relative} must publish the implemented duration enum`) - for (const name of ['negative_prompt', 'last_image', 'loras', 'high_noise_loras', 'low_noise_loras', 'seed', 'enable_safety_checker']) { - assert.ok(fieldByName.has(name), `${relative} must document ${name}`) - } - for (const name of ['loras', 'high_noise_loras', 'low_noise_loras']) { - assert.equal(fieldByName.get(name)?.constraints, 'Items: 0 to 3', `${relative} must publish the ${name} item limit`) - assert.equal(fieldByName.get(`${name}[].path`)?.required, true, `${relative} must require ${name}[].path`) - assert.equal(fieldByName.get(`${name}[].scale`)?.default, '1', `${relative} must publish the ${name}[].scale default`) - } - assert.equal(fieldByName.has('resolution'), false, `${relative} must not expose the model-fixed resolution as input`) } console.log('public API surface: ok')